Merge pull request #1018 from kiwix/ci-ios

Test iOS cross-compile in CI
This commit is contained in:
Kelson 2023-11-23 08:32:30 +01:00 committed by GitHub
commit f8aae395f3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 26 additions and 7 deletions

View File

@ -8,7 +8,17 @@ on:
jobs: jobs:
macOS: macOS:
runs-on: macos-13 strategy:
fail-fast: false
matrix:
os:
- macos-13
target:
- native_dyn
- iOS_arm64
- iOS_x86_64
runs-on: ${{ matrix.os }}
env: env:
HOME: /Users/runner HOME: /Users/runner
steps: steps:
@ -23,21 +33,30 @@ jobs:
rm -f /usr/local/bin/2to3 /usr/local/bin/2to3-3.11 /usr/local/bin/idle3 /usr/local/bin/idle3.11 /usr/local/bin/pydoc3 /usr/local/bin/pydoc3.11 /usr/local/bin/python3 /usr/local/bin/python3-config /usr/local/bin/python3.11 /usr/local/bin/python3.11-config rm -f /usr/local/bin/2to3 /usr/local/bin/2to3-3.11 /usr/local/bin/idle3 /usr/local/bin/idle3.11 /usr/local/bin/pydoc3 /usr/local/bin/pydoc3.11 /usr/local/bin/python3 /usr/local/bin/python3-config /usr/local/bin/python3.11 /usr/local/bin/python3.11-config
brew install pkg-config ninja meson brew install pkg-config ninja meson
- name: Install dependencies - name: Install deps
env: shell: bash
ARCHIVE_NAME: deps2_macos_native_dyn_libkiwix.tar.xz
run: | run: |
wget -O- https://tmp.kiwix.org/ci/${{env.ARCHIVE_NAME}} | tar -xJ -C ${{env.HOME}} ARCHIVE_NAME=deps2_macos_${{matrix.target}}_libkiwix.tar.xz
wget -O- http://tmp.kiwix.org/ci/${ARCHIVE_NAME} | tar -xJ -C $HOME
- name: Compile source code - name: Compile
env: env:
PKG_CONFIG_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib/pkgconfig PKG_CONFIG_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib/pkgconfig
CPPFLAGS: -I${{env.HOME}}/BUILD_native_dyn/INSTALL/include CPPFLAGS: -I${{env.HOME}}/BUILD_native_dyn/INSTALL/include
shell: bash
run: | run: |
meson . build --default-library=shared -Db_coverage=true MESON_OPTION="--default-library=shared -Db_coverage=true"
MESON_CROSSFILE="$HOME/BUILD_${{matrix.target}}/meson_cross_file.txt"
if [[ ! "${{matrix.target}}" =~ native_.* ]]; then
MESON_OPTION="$MESON_OPTION --cross-file $MESON_CROSSFILE -Dstatic-linkage=true"
cat $MESON_CROSSFILE
fi
export PKG_CONFIG_PATH=$HOME/BUILD_${{matrix.target}}/INSTALL/lib/pkgconfig
meson . build ${MESON_OPTION}
ninja -C build ninja -C build
- name: Test libkiwix - name: Test libkiwix
if: startsWith(matrix.target, 'native_')
env: env:
SKIP_BIG_MEMORY_TEST: 1 SKIP_BIG_MEMORY_TEST: 1
LD_LIBRARY_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib:${{env.HOME}}/BUILD_native_dyn/INSTALL/lib64 LD_LIBRARY_PATH: ${{env.HOME}}/BUILD_native_dyn/INSTALL/lib:${{env.HOME}}/BUILD_native_dyn/INSTALL/lib64