Fix building local Armadillo with old CMake #25
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
# SPDX-License-Identifier: GPL-3.0-or-later | |
# SPDX-FileCopyrightText: 2022 Carles Fernandez-Prades <carles.fernandez@cttc.es> | |
on: | |
push: | |
paths: | |
- "src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/**" | |
- "CMakeLists.txt" | |
pull_request: | |
paths: | |
- "src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr/**" | |
- "CMakeLists.txt" | |
workflow_dispatch: | |
name: Build volk_gnsssdr on Android NDK | |
jobs: | |
build: | |
name: Build on Android NDK ${{ matrix.arch.name }} | |
strategy: | |
fail-fast: false | |
matrix: | |
arch: | |
- { name: armeabi-v7a, allow_fail: false } | |
- { name: arm64-v8a, allow_fail: false } | |
- { name: x86, allow_fail: false } | |
- { name: x86_64, allow_fail: false } | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Update repositories | |
run: sudo apt update | |
- name: Install dependencies | |
run: sudo apt install -y cmake openjdk-11-jre-headless wget unzip make python3-mako | |
# Setup Android SDK, and auto-accept licenses | |
- name: Install Android SDK | |
run: | | |
wget --quiet --output-document=android-sdk.zip https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip | |
mkdir android-sdk-linux | |
unzip -qq android-sdk.zip -d android-sdk-linux | |
export ANDROID_HOME=./android-sdk-linux | |
echo y | $ANDROID_HOME/cmdline-tools/bin/sdkmanager --sdk_root=android-sdk-linux --update | |
(echo y; echo y; echo y; echo y; echo y; echo y; echo y; echo y) | $ANDROID_HOME/cmdline-tools/bin/sdkmanager --sdk_root=android-sdk-linux --licenses | |
# Call SDKManager to install the Android NDK | |
- name: Install Android NDK | |
run: $GITHUB_WORKSPACE/android-sdk-linux/cmdline-tools/bin/sdkmanager --sdk_root=$GITHUB_WORKSPACE/android-sdk-linux --install "ndk;24.0.8215888" --channel=3 | |
# Setup build directory | |
- name: Setup ${{ matrix.arch.name }} | |
shell: bash | |
run: | | |
cd $GITHUB_WORKSPACE/ | |
cd build | |
cmake -DCMAKE_TOOLCHAIN_FILE=$GITHUB_WORKSPACE/android-sdk-linux/ndk/24.0.8215888/build/cmake/android.toolchain.cmake \ | |
-DANDROID_ABI=${{ matrix.arch.name }} \ | |
-DANDROID_PLATFORM=android-24 \ | |
../src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr | |
# Build | |
- name: Build ${{ matrix.arch.name }} | |
shell: bash | |
run: cd $GITHUB_WORKSPACE/build && make | |
continue-on-error: ${{ matrix.arch.allow_fail }} |