mirror of
https://github.com/sudoxnym/fdroiddata.git
synced 2026-07-14 02:01:42 +00:00
870 lines
49 KiB
YAML
870 lines
49 KiB
YAML
Categories:
|
|
- Navigation
|
|
License: GPL-3.0-only
|
|
SourceCode: https://0xacab.org/xandyx/radar-app/
|
|
IssueTracker: https://0xacab.org/xandyx/radar-app/-/issues
|
|
|
|
AutoName: Event Radar
|
|
|
|
RepoType: git
|
|
Repo: https://0xacab.org/xandyx/radar-app.git
|
|
|
|
Builds:
|
|
- versionName: '0.1'
|
|
versionCode: 1
|
|
commit: v0.1
|
|
submodules: true
|
|
sudo:
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
|
|
- apt-get --quiet install --yes build-essential
|
|
- apt-get --quiet install --yes make python3-pip
|
|
- apt-get --quiet install --yes python3-setuptools python3-qrcode
|
|
- pip3 install fonttools
|
|
output: build-android/radar-app-armeabi-v7a/build/outputs/apk/release/radar-app-armeabi-v7a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1i
|
|
- Qt5@5.12.11
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- $$SDK$$/tools/bin/sdkmanager 'cmake;3.18.1' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- ./init-repository -f --module-subset=essential,qtdeclarative,qtandroidextras,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
--branch
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export SSL_SUBMODULE_DIR=$(readlink -f ${PWD}/android_openssl)
|
|
- export OPENSSL_TARGET_DIR="${SSL_SUBMODULE_DIR}"/Qt-5.12.4_5.13.0/arm
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export QT_VERSION="5.12.11"
|
|
- export QT_TARGET_ARCH=android_armv7
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- rm -rf $PREFIX $QT_BUILD
|
|
- mkdir $PREFIX $QT_BUILD
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export CMAKE=$$SDK$$/cmake/3.18.1/bin/cmake
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=armeabi-v7a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-16
|
|
- export ANDROID_API_VERSION=android-28
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm -D__ANDROID_API__=16
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j`nproc` SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_TARGET_DIR}"/
|
|
- cd ${OPENSSL_TARGET_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch armeabi-v7a -android-ndk-platform
|
|
android-16 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
- echo "4. Building Qt..."
|
|
- make -s -j $(nproc)
|
|
- make install
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_TARGET_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- ${CMAKE} -DCMAKE_TOOLCHAIN_FILE=$$NDK$$/build/cmake/android.toolchain.cmake
|
|
-DCMAKE_BUILD_TYPE=Release -DQT_ANDROID_BUILD_TYPE=--release -DQT_VERSION=${QT_VERSION}
|
|
-DANDROID_TARGET_ARCH="armeabi-v7a" -DANDROID_ABI=${ANDROID_ABI} -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DANDROID_SSL_LIBS="${OPENSSL_TARGET_DIR}/libcrypto_1_1.so;${OPENSSL_TARGET_DIR}/libssl_1_1.so"
|
|
-DCMAKE_FIND_ROOT_PATH="${PREFIX}/" -DDOWNLOAD_URL="${DOWNLOAD_URL}" ..
|
|
- echo "6. Building Radar-App..."
|
|
- ${CMAKE} --build . -- -j $(nproc)
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.2'
|
|
versionCode: 2
|
|
commit: v0.2
|
|
submodules: true
|
|
sudo:
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
|
|
- apt-get --quiet install --yes build-essential
|
|
- apt-get --quiet install --yes make python3-pip
|
|
- apt-get --quiet install --yes python3-setuptools python3-qrcode
|
|
- pip3 install fonttools
|
|
output: build-android/radar-app-armeabi-v7a/build/outputs/apk/release/radar-app-armeabi-v7a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1o
|
|
- Qt5@5.12.12
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- $$SDK$$/tools/bin/sdkmanager 'cmake;3.18.1' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- ./init-repository -f --module-subset=essential,qtdeclarative,qtandroidextras,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
--branch
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export SSL_SUBMODULE_DIR=$(readlink -f ${PWD}/android_openssl)
|
|
- export OPENSSL_TARGET_DIR="${SSL_SUBMODULE_DIR}"/Qt-5.12.4_5.13.0/arm
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export QT_VERSION="5.12.12"
|
|
- export QT_TARGET_ARCH=android_armv7
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- rm -rf $PREFIX $QT_BUILD
|
|
- mkdir $PREFIX $QT_BUILD
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export CMAKE=$$SDK$$/cmake/3.18.1/bin/cmake
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=armeabi-v7a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-16
|
|
- export ANDROID_API_VERSION=android-28
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm -D__ANDROID_API__=16
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j`nproc` SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_TARGET_DIR}"/
|
|
- cd ${OPENSSL_TARGET_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch armeabi-v7a -android-ndk-platform
|
|
android-16 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
- echo "4. Building Qt..."
|
|
- make -s -j $(nproc)
|
|
- make install
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_TARGET_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- ${CMAKE} -DCMAKE_TOOLCHAIN_FILE=$$NDK$$/build/cmake/android.toolchain.cmake
|
|
-DCMAKE_BUILD_TYPE=Release -DQT_ANDROID_BUILD_TYPE=--release -DQT_VERSION=${QT_VERSION}
|
|
-DANDROID_TARGET_ARCH="armeabi-v7a" -DANDROID_ABI=${ANDROID_ABI} -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DANDROID_SSL_LIBS="${OPENSSL_TARGET_DIR}/libcrypto_1_1.so;${OPENSSL_TARGET_DIR}/libssl_1_1.so"
|
|
-DCMAKE_FIND_ROOT_PATH="${PREFIX}/" -DDOWNLOAD_URL="${DOWNLOAD_URL}" ..
|
|
- echo "6. Building Radar-App..."
|
|
- ${CMAKE} --build . -- -j $(nproc)
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.5'
|
|
versionCode: 5
|
|
commit: v0.5
|
|
submodules: true
|
|
sudo:
|
|
- echo "deb http://deb.debian.org/debian stretch main" > /etc/apt/sources.list.d/stretch.list
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get remove openjdk-11-jdk-headless openjdk-11-jre-headless
|
|
- apt-get install -y -t stretch openjdk-8-jdk-headless
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
|
|
- apt-get --quiet install --yes build-essential cmake
|
|
- apt-get --quiet install --yes make python3-pip python3 python-is-python3
|
|
- apt-get --quiet install --yes python3-setuptools python3-qrcode
|
|
- pip3 install fonttools
|
|
- sdkmanager 'platforms;android-28' > /dev/null
|
|
output: build-android/RadarApp-armeabi-v7a/build/outputs/apk/release/RadarApp-armeabi-v7a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1t
|
|
- Qt5@v5.12.12
|
|
prebuild:
|
|
- cd ../srclib/Qt5
|
|
- perl ./init-repository -f --module-subset=essential,qtandroidextras,qtdeclarative,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export SSL_SUBMODULE_DIR=$(readlink -f ${PWD}/android_openssl)
|
|
- export OPENSSL_TARGET_DIR="${SSL_SUBMODULE_DIR}"/Qt-5.12.4_5.13.0/arm
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export QT_TARGET_ARCH=android_armv7
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- rm -rf $PREFIX $QT_BUILD
|
|
- mkdir $PREFIX $QT_BUILD
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_NDK_HOME=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=armeabi-v7a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-16
|
|
- export ANDROID_API_VERSION=android-28
|
|
- export ANDROID_PLATFORM_LEVEL="16"
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm -D__ANDROID_API__=16
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j $(( $(nproc) + 1 )) SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_TARGET_DIR}"/
|
|
- cd ${OPENSSL_TARGET_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch armeabi-v7a -android-ndk-platform
|
|
android-16 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
> /tmp/configure.log 2>&1 || tail -1000 /tmp/configure.log
|
|
- echo "4. Building Qt..."
|
|
- make -s > /tmp/qt_make.log 2>&1 || tail -1000 /tmp/qt_make.log
|
|
- make -s install > /tmp/qt_make_install.log 2>&1 || tail -1000 /tmp/qt_make_install.log
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_TARGET_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$NDK/build/cmake/android.toolchain.cmake
|
|
-DCMAKE_FIND_ROOT_PATH:PATH="${PREFIX}" -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DDOWNLOAD_URL="${DOWNLOAD_URL}" -DANDROID_ABI:STRING=armeabi-v7a -DANDROID_NATIVE_API_LEVEL:STRING="$ANDROID_PLATFORM_LEVEL"
|
|
-DANDROID_PLATFORM="${ANDROID_PLATFORM_LEVEL}" -DANDROID_PLATFORM_LEVEL="${ANDROID_PLATFORM_LEVEL}"
|
|
-DANDROID_NDK:PATH=$NDK -DANDROID_STL:STRING=c++_shared -DANDROID_SSL_LIBS="${OPENSSL_TARGET_DIR}/libcrypto_1_1.so;${OPENSSL_TARGET_DIR}/libssl_1_1.so"
|
|
..
|
|
- echo "6. Building Radar-App..."
|
|
- cmake --build .
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.6'
|
|
versionCode: 6
|
|
commit: v0.6
|
|
submodules: true
|
|
sudo:
|
|
- apt-get update
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 build-essential
|
|
cmake make python3 python-is-python3 python3-setuptools python3-qrcode fonttools
|
|
python3-pyaxmlparser
|
|
- apt-get remove openjdk-11-jdk-headless openjdk-11-jre-headless
|
|
- echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list.d/stretch.list
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get install -y -t stretch openjdk-8-jdk-headless
|
|
output: build-android/RadarApp-armeabi-v7a/build/outputs/apk/release/RadarApp-armeabi-v7a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1u
|
|
- Qt5@v5.12.12
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- perl ./init-repository -f --module-subset=essential,qtandroidextras,qtdeclarative,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export SSL_SUBMODULE_DIR=$(readlink -f ${PWD}/android_openssl)
|
|
- export OPENSSL_TARGET_DIR="${SSL_SUBMODULE_DIR}"/Qt-5.12.4_5.13.0/arm
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export QT_TARGET_ARCH=android_armv7
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- rm -rf $PREFIX $QT_BUILD
|
|
- mkdir $PREFIX $QT_BUILD
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_NDK_HOME=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=armeabi-v7a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-16
|
|
- export ANDROID_API_VERSION=android-28
|
|
- export ANDROID_PLATFORM_LEVEL="16"
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm -D__ANDROID_API__=16
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j $(( $(nproc) + 1 )) SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_TARGET_DIR}"/
|
|
- cd ${OPENSSL_TARGET_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch armeabi-v7a -android-ndk-platform
|
|
android-16 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
> /tmp/configure.log 2>&1 || tail -1000 /tmp/configure.log
|
|
- echo "4. Building Qt..."
|
|
- make -s > /tmp/qt_make.log 2>&1 || tail -1000 /tmp/qt_make.log
|
|
- make -s install > /tmp/qt_make_install.log 2>&1 || tail -1000 /tmp/qt_make_install.log
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_TARGET_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$NDK/build/cmake/android.toolchain.cmake
|
|
-DCMAKE_FIND_ROOT_PATH:PATH="${PREFIX}" -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DDOWNLOAD_URL="${DOWNLOAD_URL}" -DANDROID_ABI:STRING=armeabi-v7a -DANDROID_NATIVE_API_LEVEL:STRING="$ANDROID_PLATFORM_LEVEL"
|
|
-DANDROID_PLATFORM="${ANDROID_PLATFORM_LEVEL}" -DANDROID_PLATFORM_LEVEL="${ANDROID_PLATFORM_LEVEL}"
|
|
-DANDROID_NDK:PATH=$NDK -DANDROID_STL:STRING=c++_shared -DANDROID_SSL_LIBS="${OPENSSL_TARGET_DIR}/libcrypto_1_1.so;${OPENSSL_TARGET_DIR}/libssl_1_1.so"
|
|
..
|
|
- echo "6. Building Radar-App..."
|
|
- cmake --build .
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.7'
|
|
versionCode: 70001
|
|
commit: v0.7
|
|
timeout: 9800
|
|
submodules: true
|
|
sudo:
|
|
- apt-get update
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 build-essential
|
|
cmake make python3 python-is-python3 python3-setuptools python3-qrcode fonttools
|
|
python3-pyaxmlparser
|
|
- apt-get remove openjdk-11-jdk-headless openjdk-11-jre-headless
|
|
- echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list.d/stretch.list
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get install -y -t stretch openjdk-8-jdk-headless
|
|
output: build-android/RadarApp-armeabi-v7a/build/outputs/apk/release/RadarApp-armeabi-v7a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1w
|
|
- Qt5@v5.12.12
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- perl ./init-repository -f --module-subset=essential,qtandroidextras,qtdeclarative,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export OPENSSL_INSTALL_DIR=$(readlink -f ${PWD}/../srclib)/install-openssl
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- export QT_TARGET_ARCH=android_armv7
|
|
- rm -rf $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- mkdir $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_NDK_HOME=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=armeabi-v7a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-16
|
|
- export ANDROID_API_VERSION=android-28
|
|
- export ANDROID_PLATFORM_LEVEL="16"
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm -D__ANDROID_API__=16 > /tmp/openssl.configure.log
|
|
2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j $(( $(nproc) + 1 )) SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
> /tmp/openssl.make.log 2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_INSTALL_DIR}"/
|
|
- cd ${OPENSSL_INSTALL_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch ${ANDROID_ABI} -android-ndk-platform
|
|
android-16 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
> /tmp/configure.log 2>&1 || tail -1000 /tmp/configure.log
|
|
- echo "4. Building Qt..."
|
|
- make -s > /tmp/qt_make.log 2>&1 || tail -1000 /tmp/qt_make.log
|
|
- make -s install > /tmp/qt_make_install.log 2>&1 || tail -1000 /tmp/qt_make_install.log
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_INSTALL_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$NDK/build/cmake/android.toolchain.cmake
|
|
-DOVERRIDE_VERSION_NAME:STRING="$$VERSION$$" -DOVERRIDE_VERSION_CODE:STRING="$$VERCODE$$"
|
|
-DCMAKE_FIND_ROOT_PATH:PATH="${PREFIX}" -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DDOWNLOAD_URL="${DOWNLOAD_URL}" -DANDROID_ABI:STRING=${ANDROID_ABI} -DANDROID_NATIVE_API_LEVEL:STRING="$ANDROID_PLATFORM_LEVEL"
|
|
-DANDROID_PLATFORM="${ANDROID_PLATFORM_LEVEL}" -DANDROID_PLATFORM_LEVEL="${ANDROID_PLATFORM_LEVEL}"
|
|
-DANDROID_NDK:PATH=$NDK -DANDROID_STL:STRING=c++_shared -DANDROID_SSL_LIBS="${OPENSSL_INSTALL_DIR}/libcrypto_1_1.so;${OPENSSL_INSTALL_DIR}/libssl_1_1.so"
|
|
..
|
|
- echo "6. Building Radar-App..."
|
|
- cmake --build .
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.7'
|
|
versionCode: 70002
|
|
commit: v0.7
|
|
timeout: 9800
|
|
submodules: true
|
|
sudo:
|
|
- apt-get update
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 build-essential
|
|
cmake make python3 python-is-python3 python3-setuptools python3-qrcode fonttools
|
|
python3-pyaxmlparser
|
|
- apt-get remove openjdk-11-jdk-headless openjdk-11-jre-headless
|
|
- echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list.d/stretch.list
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get install -y -t stretch openjdk-8-jdk-headless
|
|
output: build-android/RadarApp-arm64-v8a/build/outputs/apk/release/RadarApp-arm64-v8a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1w
|
|
- Qt5@v5.12.12
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- perl ./init-repository -f --module-subset=essential,qtandroidextras,qtdeclarative,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export OPENSSL_INSTALL_DIR=$(readlink -f ${PWD}/../srclib)/install-openssl
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- export QT_TARGET_ARCH=arm64
|
|
- rm -rf $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- mkdir $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_NDK_HOME=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=arm64-v8a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-21
|
|
- export ANDROID_API_VERSION=android-28
|
|
- export ANDROID_PLATFORM_LEVEL="16"
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm64 -D__ANDROID_API__=21 > /tmp/openssl.configure.log
|
|
2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j $(( $(nproc) + 1 )) SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
> /tmp/openssl.make.log 2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_INSTALL_DIR}"/
|
|
- cd ${OPENSSL_INSTALL_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch ${ANDROID_ABI} -android-ndk-platform
|
|
android-21 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
> /tmp/configure.log 2>&1 || tail -1000 /tmp/configure.log
|
|
- echo "4. Building Qt..."
|
|
- make -s > /tmp/qt_make.log 2>&1 || tail -1000 /tmp/qt_make.log
|
|
- make -s install > /tmp/qt_make_install.log 2>&1 || tail -1000 /tmp/qt_make_install.log
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_INSTALL_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$NDK/build/cmake/android.toolchain.cmake
|
|
-DOVERRIDE_VERSION_NAME:STRING="$$VERSION$$" -DOVERRIDE_VERSION_CODE:STRING="$$VERCODE$$"
|
|
-DCMAKE_FIND_ROOT_PATH:PATH="${PREFIX}" -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DDOWNLOAD_URL="${DOWNLOAD_URL}" -DANDROID_ABI:STRING=${ANDROID_ABI} -DANDROID_NATIVE_API_LEVEL:STRING="$ANDROID_PLATFORM_LEVEL"
|
|
-DANDROID_PLATFORM="${ANDROID_PLATFORM_LEVEL}" -DANDROID_PLATFORM_LEVEL="${ANDROID_PLATFORM_LEVEL}"
|
|
-DANDROID_NDK:PATH=$NDK -DANDROID_STL:STRING=c++_shared -DANDROID_SSL_LIBS="${OPENSSL_INSTALL_DIR}/libcrypto_1_1.so;${OPENSSL_INSTALL_DIR}/libssl_1_1.so"
|
|
..
|
|
- echo "6. Building Radar-App..."
|
|
- cmake --build .
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.8'
|
|
versionCode: 80001
|
|
commit: v0.8
|
|
timeout: 9800
|
|
submodules: true
|
|
sudo:
|
|
- apt-get update
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 build-essential
|
|
cmake make python3 python-is-python3 python3-setuptools python3-qrcode fonttools
|
|
python3-pyaxmlparser
|
|
- apt-get remove openjdk-11-jdk-headless openjdk-11-jre-headless
|
|
- echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list.d/stretch.list
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get install -y -t stretch openjdk-8-jdk-headless
|
|
output: build-android/RadarApp-armeabi-v7a/build/outputs/apk/release/RadarApp-armeabi-v7a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1w
|
|
- Qt5@v5.12.12
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- perl ./init-repository -f --module-subset=essential,qtandroidextras,qtdeclarative,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export OPENSSL_INSTALL_DIR=$(readlink -f ${PWD}/../srclib)/install-openssl
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- export QT_TARGET_ARCH=android_armv7
|
|
- rm -rf $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- mkdir $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_NDK_HOME=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=armeabi-v7a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-16
|
|
- export ANDROID_API_VERSION=android-28
|
|
- export ANDROID_PLATFORM_LEVEL="16"
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm -D__ANDROID_API__=16 > /tmp/openssl.configure.log
|
|
2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j $(( $(nproc) + 1 )) SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
> /tmp/openssl.make.log 2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_INSTALL_DIR}"/
|
|
- cd ${OPENSSL_INSTALL_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch ${ANDROID_ABI} -android-ndk-platform
|
|
android-16 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
> /tmp/configure.log 2>&1 || tail -1000 /tmp/configure.log
|
|
- echo "4. Building Qt..."
|
|
- make -s > /tmp/qt_make.log 2>&1 || tail -1000 /tmp/qt_make.log
|
|
- make -s install > /tmp/qt_make_install.log 2>&1 || tail -1000 /tmp/qt_make_install.log
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_INSTALL_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$NDK/build/cmake/android.toolchain.cmake
|
|
-DOVERRIDE_VERSION_NAME:STRING="$$VERSION$$" -DOVERRIDE_VERSION_CODE:STRING="$$VERCODE$$"
|
|
-DCMAKE_FIND_ROOT_PATH:PATH="${PREFIX}" -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DDOWNLOAD_URL="${DOWNLOAD_URL}" -DANDROID_ABI:STRING=${ANDROID_ABI} -DANDROID_NATIVE_API_LEVEL:STRING="$ANDROID_PLATFORM_LEVEL"
|
|
-DANDROID_PLATFORM="${ANDROID_PLATFORM_LEVEL}" -DANDROID_PLATFORM_LEVEL="${ANDROID_PLATFORM_LEVEL}"
|
|
-DANDROID_NDK:PATH=$NDK -DANDROID_STL:STRING=c++_shared -DANDROID_SSL_LIBS="${OPENSSL_INSTALL_DIR}/libcrypto_1_1.so;${OPENSSL_INSTALL_DIR}/libssl_1_1.so"
|
|
..
|
|
- echo "6. Building Radar-App..."
|
|
- cmake --build .
|
|
- popd
|
|
ndk: r19c
|
|
|
|
- versionName: '0.8'
|
|
versionCode: 80002
|
|
commit: v0.8
|
|
timeout: 9800
|
|
submodules: true
|
|
sudo:
|
|
- apt-get update
|
|
- apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1 build-essential
|
|
cmake make python3 python-is-python3 python3-setuptools python3-qrcode fonttools
|
|
python3-pyaxmlparser
|
|
- apt-get remove openjdk-11-jdk-headless openjdk-11-jre-headless
|
|
- echo "deb http://archive.debian.org/debian/ stretch main" > /etc/apt/sources.list.d/stretch.list
|
|
- apt-get --quiet update --yes --yes
|
|
- apt-get install -y -t stretch openjdk-8-jdk-headless
|
|
output: build-android/RadarApp-arm64-v8a/build/outputs/apk/release/RadarApp-arm64-v8a-release-unsigned.apk
|
|
srclibs:
|
|
- OpenSSL@OpenSSL_1_1_1w
|
|
- Qt5@v5.12.12
|
|
prebuild:
|
|
- $$SDK$$/tools/bin/sdkmanager 'platforms;android-28' > /dev/null
|
|
- cd ../srclib/Qt5
|
|
- perl ./init-repository -f --module-subset=essential,qtandroidextras,qtdeclarative,qtlocation,qtquickcontrols2,qtgraphicaleffects
|
|
scandelete:
|
|
- android_openssl/
|
|
build:
|
|
- export JAVA_HOME=$(readlink -f /usr/bin/javac | sed "s:/bin/javac::")
|
|
- export PATH=${JAVA_HOME}/bin:${PATH}
|
|
- export OPENSSL_INSTALL_DIR=$(readlink -f ${PWD}/../srclib)/install-openssl
|
|
- export QT_BUILD=$(readlink -f ${PWD}/../srclib)/build-qt
|
|
- export PREFIX=$(readlink -f ${PWD}/../srclib)/install-qt
|
|
- export QT_TARGET_ARCH=arm64
|
|
- rm -rf $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- mkdir $PREFIX $QT_BUILD $OPENSSL_INSTALL_DIR
|
|
- export CMAKE_PREFIX_PATH=${PREFIX}/lib/cmake
|
|
- export QT_QMAKE_EXECUTABLE=${PREFIX}/bin/qmake
|
|
- export ANDROID_NDK_ROOT=$$NDK$$
|
|
- export ANDROID_NDK_HOME=$$NDK$$
|
|
- export ANDROID_SDK_ROOT=$$SDK$$
|
|
- export ANDROID_HOME=$$SDK$$
|
|
- export ANDROID_NDK_VERSION="19.2.5345600"
|
|
- export ANDROID_ABI=arm64-v8a
|
|
- export DOWNLOAD_URL="https://f-droid.org/packages/org.radar.app/"
|
|
- export ANDROID_NDK_PLATFORM=android-21
|
|
- export ANDROID_API_VERSION=android-28
|
|
- export ANDROID_PLATFORM_LEVEL="16"
|
|
- echo "1. Generating QR Code for URL='${DOWNLOAD_URL}' ..."
|
|
- python3-qr "${DOWNLOAD_URL}" > images/qrcode-apk.png
|
|
- echo "2. Building OpenSSL..."
|
|
- pushd $$OpenSSL$$
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
./Configure shared android-arm64 -D__ANDROID_API__=21 > /tmp/openssl.configure.log
|
|
2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
make -s -j $(( $(nproc) + 1 )) SHLIB_VERSION_NUMBER= SHLIB_EXT=_1_1.so build_libs
|
|
> /tmp/openssl.make.log 2>&1
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libcrypto_1_1.so
|
|
- PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/linux-x86_64/bin:$PATH
|
|
llvm-strip --strip-all libssl_1_1.so
|
|
- cp libcrypto_1_1.so libssl_1_1.so "${OPENSSL_INSTALL_DIR}"/
|
|
- cd ${OPENSSL_INSTALL_DIR}
|
|
- ln -s libcrypto_1_1.so libcrypto.so
|
|
- ln -s libssl_1_1.so libssl.so
|
|
- popd
|
|
- echo "3. Configuring Qt..."
|
|
- pushd ${QT_BUILD}
|
|
- $$Qt5$$/configure -xplatform android-clang --disable-rpath -opensource -confirm-license
|
|
-silent -prefix $PREFIX -release -nomake tests -nomake examples -no-sql-mysql
|
|
-no-widgets -no-dbus -no-use-gold-linker -sysconfdir /etc/xdg -opengl es2
|
|
-openssl -I $$OpenSSL$$/include -android-sdk $$SDK$$ -android-ndk $$NDK$$
|
|
-android-ndk-host linux-x86_64 -android-arch ${ANDROID_ABI} -android-ndk-platform
|
|
android-21 -skip qtwebengine -skip qtgamepad -skip qtwebchannel -skip qtwebview
|
|
-skip qtwebsockets -skip qtwebglplugin -skip qtmultimedia -skip qtserialport
|
|
-skip qttranslations -skip qtnetworkauth -skip qt3d -skip qtsensors -skip
|
|
qtwayland -skip qtxmlpatterns -skip qtscxml -skip qtscript -skip qtconnectivity
|
|
-skip qttools -no-feature-quickcontrols2-fusion -no-feature-quickcontrols2-imagine
|
|
-no-feature-quickcontrols2-universal -feature-quickcontrols2-material -no-feature-geoservices_mapbox
|
|
-no-feature-geoservices_mapboxgl -no-feature-geoservices_here -no-feature-geoservices_itemsoverlay
|
|
-no-feature-geoservices_esri -no-feature-geoservices_osm -no-feature-gif -no-feature-ico
|
|
-no-feature-jpeg -no-feature-testlib -no-feature-xml -no-libjpeg -no-feature-debug
|
|
-no-feature-qml-debug -no-feature-qml-profiler -no-feature-testlib -no-feature-itemmodeltester
|
|
> /tmp/configure.log 2>&1 || tail -1000 /tmp/configure.log
|
|
- echo "4. Building Qt..."
|
|
- make -s > /tmp/qt_make.log 2>&1 || tail -1000 /tmp/qt_make.log
|
|
- make -s install > /tmp/qt_make_install.log 2>&1 || tail -1000 /tmp/qt_make_install.log
|
|
- popd
|
|
- pushd $$OpenSSL$$
|
|
- git clean -dffx
|
|
- popd
|
|
- pushd "${OPENSSL_INSTALL_DIR}"
|
|
- rm libssl.so libcrypto.so
|
|
- popd
|
|
- echo "5. Configuring Radar-App..."
|
|
- install -d build-android
|
|
- pushd build-android
|
|
- cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$NDK/build/cmake/android.toolchain.cmake
|
|
-DOVERRIDE_VERSION_NAME:STRING="$$VERSION$$" -DOVERRIDE_VERSION_CODE:STRING="$$VERCODE$$"
|
|
-DCMAKE_FIND_ROOT_PATH:PATH="${PREFIX}" -DCMAKE_PREFIX_PATH:PATH="${PREFIX}/lib/cmake"
|
|
-DDOWNLOAD_URL="${DOWNLOAD_URL}" -DANDROID_ABI:STRING=${ANDROID_ABI} -DANDROID_NATIVE_API_LEVEL:STRING="$ANDROID_PLATFORM_LEVEL"
|
|
-DANDROID_PLATFORM="${ANDROID_PLATFORM_LEVEL}" -DANDROID_PLATFORM_LEVEL="${ANDROID_PLATFORM_LEVEL}"
|
|
-DANDROID_NDK:PATH=$NDK -DANDROID_STL:STRING=c++_shared -DANDROID_SSL_LIBS="${OPENSSL_INSTALL_DIR}/libcrypto_1_1.so;${OPENSSL_INSTALL_DIR}/libssl_1_1.so"
|
|
..
|
|
- echo "6. Building Radar-App..."
|
|
- cmake --build .
|
|
- popd
|
|
ndk: r19c
|
|
|
|
MaintainerNotes: |-
|
|
Build process includes the following steps:
|
|
1. Generation of a picture with QR-code of APK download URL.
|
|
2. Configuration and building of OpenSSL libraries libssl and libcrypto with Android NDK.
|
|
Suffix '_1_1' (SHLIB_EXT=_1_1.so) is added, beacause it is required for Qt to load APK-provided SSL libs instead of ones from Android installation.
|
|
Built libraries are processed with llvm-strip to remove unneeded symbols from SO-libs.
|
|
3. Configuration of Qt library to build it with Android NDK Toolchain, skipping modules and features that application does not use.
|
|
Qt modules, needed for App: qtdeclarative,qtandroidextras,qtlocation,qtquickcontrols2,qtgraphicaleffects. They are being loaded in prebuild section.
|
|
-android-ndk-platform is set to android-16 in order to support older devices running Android 4.1.
|
|
4. Build and installation of Qt library. Build takes more than 1 hour on CI.
|
|
5. Configuration of radar-app using CMake. Note that ANDROID_SSL_LIBS must be specified in order 'libcrypto_1_1.so;libssl_1_1.so' to get them loaded properly in the runtime.
|
|
6. On the final stage, build is being done. Submodule qt-android-cmake [https://github.com/LaurentGomila/qt-android-cmake] has allowed us to configure APK build using CMake.
|
|
|
|
AutoUpdateMode: None
|
|
UpdateCheckMode: None
|
|
CurrentVersion: '0.8'
|
|
CurrentVersionCode: 80002
|