From 0e955084984236e0e99b4fd6218c447aa929885d Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Sun, 18 Oct 2020 22:10:59 -0700 Subject: [PATCH] Initial support for building binaires on push to github --- .github/workflows/package.yml | 26 ++++++++++++++++++++++++ scripts/package-linux.sh | 38 +++++++++++++++++++++++++++++++++++ 2 files changed, 64 insertions(+) create mode 100644 .github/workflows/package.yml create mode 100755 scripts/package-linux.sh diff --git a/.github/workflows/package.yml b/.github/workflows/package.yml new file mode 100644 index 00000000..46db6703 --- /dev/null +++ b/.github/workflows/package.yml @@ -0,0 +1,26 @@ +name: Package bygfoot + +on: push + +env: + BYGFOOT_VERSION: "2.3.3-unofficial-git-${{ github.sha }}" + +jobs: + package-linux: + runs-on: + - ubuntu-16.04 + steps: + - name: Checkout sources + uses: actions/checkout@v2 + + - name: Install dependencies + run: sudo apt-get install libglib2.0-dev libgtk2.0-dev libpango1.0-dev libatk1.0-dev libfreetype6-dev ninja-build + + - name: Package Bygfoot + run: ./scripts/package-linux.sh . + + - name: Upload artifact + uses: actions/upload-artifact@v2 + with: + name: "bygfoot-${{ env.BYGFOOT_VERSION }}" + path: "*.bz2" diff --git a/scripts/package-linux.sh b/scripts/package-linux.sh new file mode 100755 index 00000000..1ee8b89d --- /dev/null +++ b/scripts/package-linux.sh @@ -0,0 +1,38 @@ +#!/bin/bash + +set -ex + +srcdir=$1 + +version="2.3.3" + +if [ -n "$BYGFOOT_VERSION" ]; then + version=$BYGFOOT_VERSION +fi + +builddir=./build-$version +installdir=./bygfoot-$version + +mkdir -p $builddir +mkdir -p $installdir + +cmake -G Ninja -B $builddir -S $srcdir -DCMAKE_INSTALL_PREFIX=$installdir -DCMAKE_C_FLAGS=-DVERS=\"\\\"$version\\\"\" +ninja -v -C $builddir install + +# FIXME: This is a work-around for bygfoot not being able to find the +# bygfoot_constants file when its packaged this way. + +mv $installdir/bin/bygfoot $installdir/bin/.bygfoot-bin + + +cat < $installdir/bin/bygfoot +#!/bin/bash +cd \`dirname "\$0"\` +cd ../share/bygfoot +../../bin/.bygfoot-bin +EOF + +chmod a+x $installdir/bin/bygfoot + +tar -cjf bygfoot-$version.tar.bz2 $installdir +