From 4f1b22c668bc3ebe51052e85816fc515795d40ad Mon Sep 17 00:00:00 2001 From: Serhii Snitsaruk Date: Thu, 20 Jun 2024 19:20:53 +0200 Subject: [PATCH] GHA: Add GDExtension Android libs to build workflow --- .github/workflows/gdextension.yml | 46 +++++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/.github/workflows/gdextension.yml b/.github/workflows/gdextension.yml index cfcf47a..3a3d842 100644 --- a/.github/workflows/gdextension.yml +++ b/.github/workflows/gdextension.yml @@ -104,6 +104,34 @@ jobs: arch: wasm32 should-build: true + - name: 🤖 Android (arm64, release) + runner: ubuntu-20.04 + platform: android + target: template_release + arch: arm64 + should-build: true + + - name: 🤖 Android (arm64, debug) + runner: ubuntu-20.04 + platform: android + target: template_debug + arch: arm64 + should-build: true + + - name: 🤖 Android (x86_64, release) + runner: ubuntu-20.04 + platform: android + target: template_release + arch: x86_64 + should-build: true + + - name: 🤖 Android (x86_64, debug) + runner: ubuntu-20.04 + platform: android + target: template_debug + arch: x86_64 + should-build: true + exclude: - { opts: { should-build: false } } @@ -166,13 +194,27 @@ jobs: emcc -v - name: Set up scons - if: matrix.opts.platform == 'windows' || matrix.opts.platform == 'macos' || matrix.opts.platform == 'web' + if: matrix.opts.platform != 'linux' run: | python -c "import sys; print(sys.version)" python -m pip install scons==4.4.0 python --version scons --version + - name: Set up Java 17 + if: matrix.opts.platform == 'android' + uses: actions/setup-java@v4 + with: + distribution: temurin + java-version: 17 + + - uses: nttld/setup-ndk@v1 + if: matrix.opts.platform == 'android' + id: setup-ndk + with: + ndk-version: r23c + link-to-sdk: true + - name: Set up MSVC problem matcher on Windows if: matrix.opts.platform == 'windows' uses: ammaraskar/msvc-problem-matcher@master @@ -218,7 +260,7 @@ jobs: ls -R out/ - name: Strip lib - if: matrix.opts.platform != 'windows' && matrix.opts.platform != 'web' + if: matrix.opts.platform != 'windows' && matrix.opts.platform != 'web' && (matrix.opts.platform != 'android' || matrix.opts.arch != 'arm64') run: | ls -l -R out/addons/limboai/bin/ echo "---"