Attempt to add AppImage build #73
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: ci | |
on: | |
push: | |
# branches: [ master ] # Uncomment if you want to only run the workflow when pushing on to the master branch | |
pull_request: | |
jobs: | |
windows_x86_64: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW64 | |
update: true | |
install: mingw-w64-x86_64-gcc mingw-w64-x86_64-glfw mingw-w64-x86_64-libtre-git mingw-w64-x86_64-libpng scons make git | |
- name: Build Goxel | |
run: | | |
scons -j 4 mode=release | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: win_x86_64_binary | |
path: goxel.exe | |
if-no-files-found: error | |
windows_i686: | |
runs-on: windows-latest | |
defaults: | |
run: | |
shell: msys2 {0} | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW64 | |
update: true | |
install: mingw-w64-i686-gcc mingw-w64-i686-glfw mingw-w64-i686-libtre-git mingw-w64-i686-libpng scons make | |
- name: Build Goxel | |
run: | | |
export PATH=/mingw32/bin/:$PATH | |
scons -j 4 mode=release | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: win_i686_binary | |
path: goxel.exe | |
if-no-files-found: error | |
linux_x86_64: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Install GLFW3, PKG Config, Git, Gtk3, LibPNG & SCONS | |
run: | | |
sudo apt-get install libglfw3-dev pkg-config git libgtk-3-dev libpng-dev libpng16-16 scons | |
- name: Build Goxel | |
run: | | |
scons -j 4 mode=release | |
- name: Build AppImage | |
run: | | |
mkdir AppDir | |
DESTDIR=AppDir PREFIX=/usr make install | |
curl https://github.com/linuxdeploy/linuxdeploy/releases/download/1-alpha-20231206-1/linuxdeploy-x86_64.AppImage \ | |
--output linuxdeploy.AppImage -L -f | |
chmod +x linuxdeploy.AppImage | |
./linuxdeploy.AppImage --output=appimage --appdir AppDir | |
- name: Upload Binary | |
uses: actions/upload-artifact@v3 | |
with: | |
name: linux_x86_64_binary | |
path: goxel | |
if-no-files-found: error | |
- name: Upload AppImage | |
uses: actions/upload-artifact@v3 | |
with: | |
name: appimage | |
path: goxel*.AppImage | |
if-no-files-found: error | |
osx_x86_64: | |
runs-on: macos-11 | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Install scons, glfw3 & tre | |
run: brew install scons glfw tre | |
- name: Build | |
run: | | |
scons -j 4 mode=release | |
- name: Upload Artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: osx_binary | |
path: ./goxel | |
if-no-files-found: error | |
Success: # Not Neccessary | |
needs: [linux_x86_64, osx_x86_64, windows_x86_64, windows_i686] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive |