diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 84 |
1 files changed, 46 insertions, 38 deletions
@@ -7,28 +7,33 @@ _android_arch=x86-64 pkgname=android-${_android_arch}-qt5 -pkgver=5.13.0 -pkgrel=2 +pkgver=5.13.1 +pkgrel=1 pkgdesc="Qt 5 for Android" arch=('any') url='https://www.qt.io' license=('GPL3' 'LGPL') -makedepends=('android-environment' - 'libgl' +makedepends=('libgl' 'sqlite' 'zlib' 'python2' + 'python' # Qt Qml requires Python 3 'ruby' 'gperf' 'libxslt' - 'fontconfig') + 'fontconfig' + 'java-environment-openjdk<=8' + 'android-environment' + 'android-pkg-config') depends=('java-runtime-headless-openjdk<=8' - 'apache-ant' - 'android-pkg-config' - 'android-ndk' - 'android-sdk' - 'android-sdk-build-tools' - 'android-sdk-platform-tools') + 'apache-ant' + 'android-ndk' + 'android-sdk' + 'android-sdk-build-tools' + 'android-sdk-platform-tools' + "android-${_android_arch}-zlib" + "android-${_android_arch}-libpng" + "android-${_android_arch}-libjpeg-turbo") groups=('android-qt5') case "$_android_arch" in @@ -56,11 +61,15 @@ options=(!strip !buildflags staticlibs !emptydirs) _pkgfqn="qt-everywhere-src-${pkgver}" install="${pkgname}.install" source=("http://download.qt-project.org/official_releases/qt/${pkgver:0:4}/${pkgver}/single/${_pkgfqn}.tar.xz" - "0001-Fix-clang-build.patch" - "0002-Disable-mapbox.patch") -md5sums=('3c168d9a3a08248ff36f4f54c82e437f' - 'SKIP' - 'SKIP') + "0001-Fix-clang-libc-build-under-Android.patch" + "0002-Disable-mapboxgl.patch" + "0003-Support-pkg-config-under-Android.patch" + "0004-Use-pkg-config-to-find-libjpeg.patch") +md5sums=('d66b1da335d0c25325fdf493e9044c38' + '0658c31a909beba3e73e503060df5fba' + '2fafec93d1dc9da0797095b815a60d88' + '621a2b82623d5514be88d15700e9eb20' + '9e4577ed83ed53a7758f4bfbb5ddbe98') prepare() { cd ${_pkgfqn} @@ -71,8 +80,16 @@ prepare() { # Platform specific patches. - patch -Np1 -i "../0001-Fix-clang-build.patch" - patch -Np1 -i "../0002-Disable-mapbox.patch" + patch -Np1 -i "../0001-Fix-clang-libc-build-under-Android.patch" + + # Skip building mapboxgl as it increases compile time significantly and + # likely not a lot of people actually using it; if you need it, just remove the + # following line: + patch -Np1 -i "../0002-Disable-mapboxgl.patch" + + patch -Np1 -i "../0003-Support-pkg-config-under-Android.patch" + patch -Np1 -i "../0004-Use-pkg-config-to-find-libjpeg.patch" + sed -i "s/android-16/android-$ANDROID_MINIMUM_PLATFORM/g" qtbase/mkspecs/features/android/sdk.prf sed -i "s/android-16/android-$ANDROID_MINIMUM_PLATFORM/g" qtbase/src/android/jar/jar.pro sed -i "s/android-16/android-$ANDROID_MINIMUM_PLATFORM/g" qtgamepad/src/plugins/gamepads/android/jar/jar.pro @@ -95,21 +112,6 @@ build() { export PKG_CONFIG=$ANDROID_PKGCONFIG export PYTHON=/usr/bin/python2 - case "$_android_arch" in - aarch64) - target_arch=arm64-v8a - ;; - armv7a-eabi) - target_arch=armeabi-v7a - ;; - x86) - target_arch=x86 - ;; - x86-64) - target_arch=x86_64 - ;; - esac - configue_opts=" -confirm-license -opensource @@ -124,16 +126,21 @@ build() { -android-ndk ${ANDROID_NDK_HOME} -android-ndk-host linux-x86_64 -android-toolchain-version 4.9 - -skip qttranslations -skip qtserialport -no-warnings-are-errors -pkg-config - -qt-zlib + -pkg-config + -system-zlib + -system-libpng + -system-libjpeg -qt-freetype - -android-arch ${target_arch} - -android-ndk-platform ${ANDROID_NDK_PLATFORM}" + -android-arch ${ANDROID_ABI} + -android-ndk-platform ${ANDROID_NDK_PLATFORM} + -recheck-all + -optimized-qmake + -I${ANDROID_PREFIX}/include" - [[ $ANDROID_DEBUG_BUILD ]] \ + [[ $QT_ANDROID_DEBUG_BUILD ]] \ && configue_opts+=' -debug-and-release' \ || configue_opts+=' -release' @@ -157,6 +164,7 @@ package() { source android-env ${_android_arch} make INSTALL_ROOT=${pkgdir} install + find ${pkgdir}/${ANDROID_PREFIX_BIN} -type f ! -name '*.pl' -exec strip -s {} \; find ${pkgdir}/${ANDROID_PREFIX_LIB} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; # find ${pkgdir}/${ANDROID_PREFIX_LIB} -type f \( -name 'lib*.a' ! -name 'libQt5Bootstrap.a' ! -name 'libQt5QmlDevTools.a' \) -exec ${ANDROID_STRIP} -g {} \; |