android64 build attempt #246
Workflow file for this run
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: Core Builds | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
workflow_dispatch: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
build-win64: | |
if: false | |
name: Windows 64-bit | |
runs-on: windows-latest | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup MSYS2 | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: UCRT64 | |
install: git make mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-cmake | |
- name: Build SDL2 and zlib | |
shell: msys2 {0} | |
run: | | |
make -f makefile.zlib | |
make -f makefile.sdl | |
- name: Build hatariB | |
shell: msys2 {0} | |
run: make | |
- name: Prepare Artifact | |
shell: pwsh | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
copy build/*.dll artifact/cores | |
mkdir artifact/info | |
copy info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $env:GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-win64--${{ env.BUILD_TAG }} | |
path: artifact/ | |
build-win32: | |
if: false | |
name: Windows 32-bit | |
runs-on: windows-latest | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup MSYS2 | |
uses: msys2/setup-msys2@v2 | |
with: | |
msystem: MINGW32 | |
install: git make mingw-w64-i686-gcc mingw-w64-i686-cmake | |
- name: Build SDL2 and zlib | |
shell: msys2 {0} | |
run: | | |
make -f makefile.zlib | |
make -f makefile.sdl | |
- name: Build hatariB | |
shell: msys2 {0} | |
run: make | |
- name: Prepare Artifact | |
shell: pwsh | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
copy build/*.dll artifact/cores | |
mkdir artifact/info | |
copy info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $env:GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-win32--${{ env.BUILD_TAG }} | |
path: artifact/ | |
build-ubuntu: | |
if: false | |
name: Ubuntu Linux | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup Ubuntu | |
run: | | |
sudo apt-get update | |
sudo apt-get install make gcc cmake | |
- name: Build SDL2 and zlib | |
run: | | |
make -f makefile.zlib | |
make -f makefile.sdl | |
- name: Build hatariB | |
run: make | |
- name: Prepare Artifact | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
cp build/*.so artifact/cores | |
mkdir artifact/info | |
cp info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-ubuntu--${{ env.BUILD_TAG }} | |
path: artifact/ | |
build-macos: | |
if: false | |
name: MacOS 10.13 | |
runs-on: macos-latest | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup MacOS | |
run: brew install make gcc@13 cmake | |
# brew's gcc has to be a specific version, make sure to update 13 above and below if upgrading | |
- name: Build SDL2 and zlib | |
run: | | |
export CC=/usr/local/bin/gcc-13 | |
export CFLAGS=-mmacosx-version-min=10.13 | |
make -f makefile.zlib | |
export CC=$(PWD)/SDL/build-scripts/clang-fat.sh | |
make -f makefile.sdl | |
- name: Build hatariB | |
run: | | |
export OS=MacOS | |
export CC=/usr/local/bin/gcc-13 | |
export CFLAGS=-mmacosx-version-min=10.13 | |
export CMAKEFLAGS="-DCMAKE_C_COMPILER=/usr/local/bin/gcc-13 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.13" | |
gmake | |
- name: Prepare Artifact | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
cp build/*.dylib artifact/cores | |
mkdir artifact/info | |
cp info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-macos--${{ env.BUILD_TAG }} | |
path: artifact/ | |
build-rpi32: | |
if: false | |
name: Raspberry Pi OS 32-bit | |
runs-on: ubuntu-20.04 | |
# ubuntu-latest was building with a newer GLIBC than current Rpi images, making them incompatible, | |
# but 20.04 builds seem to have an older GLIBC that is compatible. | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup Ubuntu | |
run: | | |
sudo apt-get update | |
sudo apt-get install make gcc gcc-arm-linux-gnueabihf cmake | |
- name: Build SDL2 and zlib | |
run: | | |
export CC=arm-linux-gnueabihf-gcc | |
export AR=arm-linux-gnueabihf-gcc-ar | |
make -f makefile.zlib | |
export RANLIB=arm-linux-gnueabihf-gcc-ranlib | |
export CONFIGURE_FLAGS="--build=x86_64-linux --host=arm-linux-gnueabihf --target=arm-linux-gnueabihf-gcc" | |
make -f makefile.sdl | |
- name: Build hatariB | |
run: | | |
export CC=arm-linux-gnueabihf-gcc | |
export CMAKEFLAGS="-DCMAKE_SYSTEM_NAME=arm-linux-gnueabihf" | |
make | |
# CMAKE_SYSTEM_NAME informs cmake that we are cross-compiling, so that it knows to build and run cpugen natively. | |
- name: Prepare Artifact | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
cp build/*.so artifact/cores | |
mkdir artifact/info | |
cp info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-rpi32--${{ env.BUILD_TAG }} | |
path: artifact/ | |
build-rpi64: | |
if: false | |
name: Raspberry Pi OS 64-bit | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup Ubuntu | |
run: | | |
sudo apt-get update | |
sudo apt-get install make gcc gcc-aarch64-linux-gnu cmake | |
- name: Build SDL2 and zlib | |
run: | | |
export CC=aarch64-linux-gnu-gcc | |
export AR=aarch64-linux-gnu-gcc-ar | |
make -f makefile.zlib | |
export RANLIB=aarch64-linux-gnu-gcc-ranlib | |
export CONFIGURE_FLAGS="--build=x86_64-linux --host=aarch64-linux-gnu --target=aarch64-linux-gnu-gcc" | |
make -f makefile.sdl | |
- name: Build hatariB | |
run: | | |
export CC=aarch64-linux-gnu-gcc | |
export CMAKEFLAGS="-DCMAKE_SYSTEM_NAME=aarch64-linux-gnu" | |
make | |
- name: Prepare Artifact | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
cp build/*.so artifact/cores | |
mkdir artifact/info | |
cp info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-rpi64--${{ env.BUILD_TAG }} | |
path: artifact/ | |
build-android64: | |
name: Android 64-bit | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Files | |
uses: actions/checkout@v4 | |
- name: Setup Ubuntu | |
run: | | |
sudo apt-get update | |
sudo apt-get install make gcc cmake | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'temurin' | |
- name: Setup Android SDK | |
uses: android-actions/setup-android@v3 | |
- name: Build SDL2 and zlib | |
run: | | |
export TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64 | |
ls $TOOLCHAIN/bin | |
export CC="$TOOLCHAIN/bin/aarch64-linux-android26-clang" | |
export AR="$TOOLCHAIN/bin/$HOST-ar" | |
make -f makefile.zlib | |
export RANLIB="$TOOLCHAIN/bin/$HOST-ranlib" | |
export CONFIGURE_FLAGS="--build=x86_64-linux --host=aarch64-linux-android --target=$CC" | |
make -f makefile.sdl | |
- name: Build hatariB | |
run: | | |
export TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64 | |
export CC="$TOOLCHAIN/bin/aarch64-linux-android26-clang" | |
export CMAKEFLAGS="-DCMAKE_SYSTEM_NAME=aarch64-linux-android" | |
make | |
- name: Prepare Artifact | |
run: | | |
mkdir artifact | |
cp README.md artifact | |
mkdir artifact/cores | |
cp build/*.so artifact/cores | |
mkdir artifact/info | |
cp info/*.* artifact/info | |
echo "BUILD_TAG=$(git log -1 --format="%ad--%h" --date=format-local:"%Y-%m-%d-%H%M%S")" >> $GITHUB_ENV | |
- name: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: hatarib-android64--${{ env.BUILD_TAG }} | |
path: artifact/ |