Skip to content

Bump version to 0.30.1, update CHANGELOG #289

Bump version to 0.30.1, update CHANGELOG

Bump version to 0.30.1, update CHANGELOG #289

Workflow file for this run

name: Build binaries
on:
workflow_dispatch:
# also test this workflow and build scripts in CI when changed
push:
paths:
- '.github/workflows/binaries.yaml'
- 'macosx/*.sh'
- 'win32/*.sh'
pull_request:
paths:
- '.github/workflows/binaries.yaml'
- 'macosx/*.sh'
- 'win32/*.sh'
jobs:
build-ubuntu:
runs-on: ubuntu-22.04
steps:
- name: Install dependencies
run: |
sudo apt-get update -y -qq
sudo apt-get install coreutils build-essential libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev p7zip libgtest-dev
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Build RELEASE
run: make native CONF=RELEASE -j4
- name: Run tests
run: make test CONF=RELEASE
- name: Get version
run: |
echo "POP_VERSION=`./build/linux-x86_64/poptracker --version`" >> $GITHUB_ENV
echo "POP_NAME=poptracker_`./build/linux-x86_64/poptracker --version | tr '.' '-'`" >> $GITHUB_ENV
- name: Build DIST # this builds a release ZIP, maybe .deb in the future
run: make CONF=DIST
- name: Store DIST
uses: actions/upload-artifact@v4
with:
name: ubuntu-22-04-dist
path: dist
build-appimage:
runs-on: ubuntu-22.04
steps:
- name: Install dependencies
run: |
sudo apt-get update -y -qq
sudo apt-get install coreutils build-essential libsdl2-dev libsdl2-image-dev libsdl2-ttf-dev p7zip wget libgtest-dev
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Get appimage-builder
run: |
wget -q -O appimage-builder https://github.com/AppImageCrafters/appimage-builder/releases/download/v1.1.0/appimage-builder-1.1.0-x86_64.AppImage
chmod +x appimage-builder
./appimage-builder --appimage-extract
echo -e '#/bin/sh\n./squashfs-root/AppRun "$@"' > appimage-builder
- name: Build AppImage
run: |
./appimage-builder --recipe linux/AppImageBuilder.yml
- name: Store AppImage
uses: actions/upload-artifact@v4
with:
name: AppImage
path: "*.AppImage"
if-no-files-found: error
build-macos:
runs-on: macos-13
steps:
- name: Install dependencies
run: |
brew install coreutils SDL2 sdl2_ttf sdl2_image [email protected] automake libtool autoconf googletest || true
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Cache/restore macosx-libs
uses: actions/cache@v4
with:
key: libs-${{ runner.os }}-${{ runner.arch }}-${{ env.cache-name }}-${{ hashFiles('macosx/*.sh') }}
path: |
macosx/build
macosx/libs
- name: Build RELEASE
run: make native CONF=RELEASE -j4
- name: Run tests
run: make test CONF=RELEASE
- name: Get version
run: |
echo "POP_VERSION=`./build/darwin-x86_64/poptracker --version`" >> $GITHUB_ENV
echo "POP_NAME=poptracker_`./build/darwin-x86_64/poptracker --version | tr '.' '-'`" >> $GITHUB_ENV
- name: Build DIST # this builds the app bundle, zips it and maybe .dmg in the future
run: make CONF=DIST
- name: Check DIST
run: |
du -sh ./build/darwin-x86_64/poptracker.app
cd ./build/darwin-x86_64/poptracker.app/Contents/MacOS
otool -L ./poptracker
./poptracker --version
./poptracker --list-packs
- name: Store app bundle
uses: actions/upload-artifact@v4
with:
name: ${{ env.POP_NAME }}_macos
path: build/darwin-x86_64/poptracker.app
- name: Store ZIP/DMG
uses: actions/upload-artifact@v4
with:
name: macos-dist
path: dist
build-msys:
runs-on: windows-latest
steps:
- uses: msys2/setup-msys2@v2
with:
update: true
install: >-
base-devel
coreutils
make
mingw-w64-x86_64-toolchain
autoconf-wrapper
mingw-w64-x86_64-autotools
mingw64/mingw-w64-x86_64-SDL2
mingw64/mingw-w64-x86_64-SDL2_image
mingw64/mingw-w64-x86_64-SDL2_ttf
mingw64/mingw-w64-x86_64-freetype
mingw64/mingw-w64-x86_64-openssl
mingw64/mingw-w64-x86_64-gtest
p7zip
mingw-w64-x86_64-advancecomp
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Cache/restore win32-libs
uses: actions/cache@v4
with:
key: libs-${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('win32/*.sh') }}
path: |
win32-lib
win32-lib-src
- name: Build libs
shell: msys2 {0}
run: |
mkdir -p win32-lib-src
cd win32-lib-src
../win32/native-compile-libs-win32.sh
- name: Uninstall system libs
shell: msys2 {0}
run: |
pacman -R --noconfirm mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-SDL2_ttf
- name: Build RELEASE
shell: msys2 {0}
run: make native CONF=RELEASE -j4
- name: Run tests
shell: msys2 {0}
run: make test CONF=RELEASE
- name: Get version
shell: msys2 {0}
run: |
echo "POP_VERSION=`./build/win64/poptracker --version`" >> $GITHUB_ENV
echo "POP_NAME=poptracker_`./build/win64/poptracker --version | tr '.' '-'`" >> $GITHUB_ENV
- name: Build DIST # this builds a release ZIP
shell: msys2 {0}
run: make CONF=DIST
- name: Store DIST
uses: actions/upload-artifact@v4
with:
name: win64-msys-dist
path: dist
- name: Build DEBUG
shell: msys2 {0}
run: |
make clean
make native CONF=DEBUG -j4
7z a -mx=9 dist/poptracker-win64-debug.zip build/win64/poptracker.exe
- name: Store DEBUG
uses: actions/upload-artifact@v4
with:
name: win64-msys-debug
path: dist/poptracker-win64-debug.zip