diff --git a/.github/workflows/build-curl.yaml b/.github/workflows/build-curl.yaml index a75b406..cc7b862 100644 --- a/.github/workflows/build-curl.yaml +++ b/.github/workflows/build-curl.yaml @@ -7,6 +7,10 @@ on: workflow_dispatch: inputs: + android_runtime_prefix: + description: "Android Runtime Prefix" + required: true + default: "/data/data/dev.sanmer.shell" android_ndk_version: description: "Android NDK Version" required: true @@ -17,6 +21,10 @@ on: default: "30" env: + ANDROID_RUNTIME_PREFIX: "/data/local/tmp" + ANDROID_NDK_VERSION: "28.2.13676358" + ANDROID_SDK_VERSION: "30" + LIBUNISTRING_VERSION: "1.3" LIBIDN2_VERSION: "2.3.8" LIBPSL_VERSION: "0.21.5" @@ -135,24 +143,34 @@ jobs: - name: Set up Android NDK run: | - sdkmanager --install "ndk;${{ inputs.android_ndk_version }}" - ANDROID_NDK_ROOT="${ANDROID_SDK_ROOT}/ndk/${{ inputs.android_ndk_version }}" + ANDROID_NDK_VERSION=${{ inputs.android_ndk_version || env.ANDROID_NDK_VERSION }} + ANDROID_SDK_VERSION=${{ inputs.android_sdk_version || env.ANDROID_SDK_VERSION }} + echo "ANDROID_NDK_VERSION=${ANDROID_NDK_VERSION}" >> $GITHUB_ENV + echo "ANDROID_SDK_VERSION=${ANDROID_SDK_VERSION}" >> $GITHUB_ENV + + sdkmanager --install "ndk;${ANDROID_NDK_VERSION}" + ANDROID_NDK_ROOT="${ANDROID_SDK_ROOT}/ndk/${ANDROID_NDK_VERSION}" ANDROID_NDK_BUILD=`ls ${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/` ANDROID_NDK_PATH="${ANDROID_NDK_ROOT}/toolchains/llvm/prebuilt/${ANDROID_NDK_BUILD}/bin" echo "ANDROID_NDK_ROOT=${ANDROID_NDK_ROOT}" >> $GITHUB_ENV echo "ANDROID_NDK_PATH=${ANDROID_NDK_PATH}" >> $GITHUB_ENV - $ANDROID_NDK_PATH/${{ matrix.host }}${{ inputs.android_sdk_version }}-clang --version + + ANDROID_NDK_CC=${{ matrix.host }}${ANDROID_SDK_VERSION}-clang + ANDROID_NDK_CXX=${{ matrix.host }}${ANDROID_SDK_VERSION}-clang++ + echo "ANDROID_NDK_CC=${ANDROID_NDK_CC}" >> $GITHUB_ENV + echo "ANDROID_NDK_CXX=${ANDROID_NDK_CXX}" >> $GITHUB_ENV + ${ANDROID_NDK_PATH}/${ANDROID_NDK_CC} --version - name: Set up Runtime Prefix run: | - echo "RUNTIME_PREFIX=/data/data/dev.sanmer.shell" >> $GITHUB_ENV + echo "RUNTIME_PREFIX=${{ inputs.android_runtime_prefix || env.ANDROID_RUNTIME_PREFIX }}" >> $GITHUB_ENV - name: Build Libunistring working-directory: libunistring run: | export PATH=${ANDROID_NDK_PATH}:${PATH} - export CC=${{ matrix.host }}${{ inputs.android_sdk_version }}-clang - export CXX=${{ matrix.host }}${{ inputs.android_sdk_version }}-clang++ + export CC=${ANDROID_NDK_CC} + export CXX=${ANDROID_NDK_CXX} export AR=llvm-ar export RANLIB=llvm-ranlib export STRIP=llvm-strip @@ -169,8 +187,8 @@ jobs: working-directory: libidn2 run: | export PATH=${ANDROID_NDK_PATH}:${PATH} - export CC=${{ matrix.host }}${{ inputs.android_sdk_version }}-clang - export CXX=${{ matrix.host }}${{ inputs.android_sdk_version }}-clang++ + export CC=${ANDROID_NDK_CC} + export CXX=${ANDROID_NDK_CXX} export AR=llvm-ar export RANLIB=llvm-ranlib export STRIP=llvm-strip @@ -190,8 +208,8 @@ jobs: working-directory: libpsl run: | export PATH=${ANDROID_NDK_PATH}:${PATH} - export CC=${{ matrix.host }}${{ inputs.android_sdk_version }}-clang - export CXX=${{ matrix.host }}${{ inputs.android_sdk_version }}-clang++ + export CC=${ANDROID_NDK_CC} + export CXX=${ANDROID_NDK_CXX} export AR=llvm-ar export RANLIB=llvm-ranlib export STRIP=llvm-strip @@ -212,7 +230,7 @@ jobs: run: | export PATH=${ANDROID_NDK_PATH}:${PATH} - ./Configure ${{ matrix.platform }} -D__ANDROID_API__=${{ inputs.android_sdk_version }} \ + ./Configure ${{ matrix.platform }} -D__ANDROID_API__=${ANDROID_SDK_VERSION} \ --release \ --prefix=${GITHUB_WORKSPACE}/local \ --openssldir=${RUNTIME_PREFIX}/etc/ssl \ @@ -230,7 +248,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ @@ -244,7 +262,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ @@ -260,7 +278,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ @@ -279,7 +297,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ @@ -295,7 +313,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ @@ -311,7 +329,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \ @@ -331,7 +349,7 @@ jobs: cmake -S . -B build \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/local \ - -DANDROID_PLATFORM=android-${{ inputs.android_sdk_version }} \ + -DANDROID_PLATFORM=android-${ANDROID_SDK_VERSION} \ -DANDROID_ABI=${{ matrix.target }} \ -DCMAKE_TOOLCHAIN_FILE=${ANDROID_NDK_ROOT}/build/cmake/android.toolchain.cmake \ -DCMAKE_POSITION_INDEPENDENT_CODE=ON \