Squashed commit of the following: #54
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build NifSkope | |
on: | |
workflow_dispatch: | |
pull_request: | |
push: | |
branches: | |
- develop | |
tags-ignore: | |
- 'v2*' | |
jobs: | |
build_windows: | |
runs-on: windows-latest | |
name: Build MSYS2 | |
steps: | |
- name: 'Checkout' | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
submodules: recursive | |
- name: 'Setup MSYS2' | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: UCRT64 | |
update: true | |
cache: true | |
install: 'base-devel mingw-w64-ucrt-x86_64-gcc msys/p7zip mingw-w64-ucrt-x86_64-qt6-base mingw-w64-ucrt-x86_64-qt6-3d mingw-w64-ucrt-x86_64-qt6-5compat mingw-w64-ucrt-x86_64-qt6-imageformats mingw-w64-ucrt-x86_64-qt6-tools' | |
- name: 'Build with qmake' | |
shell: msys2 {0} | |
run: | | |
qmake6 noavx2=1 NifSkope.pro | |
make -j 8 | |
mv -f release/NifSkope.exe release/NifSkope_noavx2.exe | |
- name: 'Upload Artifacts' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build-win | |
path: | | |
release | |
build_linux: | |
runs-on: 'ubuntu-24.04' | |
name: Build Linux | |
steps: | |
- name: 'Checkout' | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
submodules: recursive | |
- name: 'Install required packages' | |
run: | | |
sudo apt-get update | |
sudo apt-get -y install libsdl2-dev qt6-base-dev qt6-base-private-dev qt6-base-dev-tools qt6-5compat-dev qt6-3d-dev qmake6 qt6-image-formats-plugins 7zip | |
- name: 'Build with qmake' | |
run: | | |
qmake6 noavx2=1 NifSkope.pro | |
make -j 8 | |
mv -f release/NifSkope release/NifSkope_noavx2 | |
- name: 'Upload Artifacts' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build-linux | |
path: 'release' | |
build_macos: | |
runs-on: macos-latest | |
name: Build MacOS | |
steps: | |
- name: 'Checkout' | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
submodules: recursive | |
- name: 'Install required packages' | |
uses: jurplel/install-qt-action@v4 | |
with: | |
version: '6.7.2' | |
modules: 'qt5compat' | |
- name: 'Install clang' | |
run: brew install llvm | |
- name: 'Build with qmake' | |
run: | | |
qmake6 QMAKE_APPLE_DEVICE_ARCHS="x86_64" noavx2=1 NifSkope.pro | |
make -j 8 | |
- name: 'Create DMG image' | |
run: | | |
rm release/shaders/stf_default.* | |
cp res/stf_compat.* release/shaders/ | |
mv release/*.xml release/shaders release/qt.conf release/style.qss release/*.txt release/NifSkope.app/Contents/MacOS/ | |
macdeployqt release/NifSkope.app -dmg | |
- name: 'Upload Artifacts' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build-macos | |
path: release/NifSkope.dmg | |
build_clang64: | |
runs-on: windows-latest | |
name: Build MSYS2-CLANG64 | |
steps: | |
- name: 'Checkout' | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
submodules: recursive | |
- name: 'Setup MSYS2' | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: CLANG64 | |
update: true | |
cache: true | |
install: 'base-devel mingw-w64-clang-x86_64-gcc msys/p7zip mingw-w64-clang-x86_64-qt6-base mingw-w64-clang-x86_64-qt6-3d mingw-w64-clang-x86_64-qt6-5compat mingw-w64-clang-x86_64-qt6-imageformats mingw-w64-clang-x86_64-qt6-tools' | |
- name: 'Build with qmake' | |
shell: msys2 {0} | |
run: | | |
qmake6 NifSkope.pro | |
make -j 8 | |
- name: 'Upload Artifacts' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: build-clang64 | |
path: | | |
release |