From 81eeb1f442b5f61acb7aea29ac551c8b35011f3c Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 3 Jan 2021 22:45:04 +0100 Subject: [PATCH] Add android-*-qt6-* packages * Cover only aarch64 for now * Not actually tested (it compiles at least) yet --- devel/generator/generate.pl | 10 +- .../templates/layouts/android-qt6-base.sh.ep | 108 ++++++++++++++++++ .../layouts/android-qt6-module.sh.ep | 92 +++++++++++++++ qt6-5compat/android-aarch64/PKGBUILD | 51 +++++++++ qt6-5compat/android-aarch64/PKGBUILD.sh.ep | 11 ++ .../android-aarch64/qt5compat-sha256.txt | 1 + ...Make-s-default-import-library-suffix.patch | 1 + .../0002-Fix-finding-D-Bus.patch | 1 + ...03-Fix-using-static-PCRE2-and-DBus-1.patch | 1 + ...ive-dependencies-of-static-libraries.patch | 1 + ...orkaround-for-conflict-with-rpcndr.h.patch | 1 + .../0006-Support-finding-MariaDB.patch | 1 + ...-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch | 1 + qt6-base/android-aarch64/PKGBUILD | 96 ++++++++++++++++ qt6-base/android-aarch64/PKGBUILD.sh.ep | 1 + qt6-base/android-aarch64/qtbase-sha256.txt | 1 + qt6-declarative/android-aarch64/PKGBUILD | 52 +++++++++ .../android-aarch64/PKGBUILD.sh.ep | 12 ++ .../android-aarch64/qtdeclarative-sha256.txt | 1 + qt6-imageformats/android-aarch64/PKGBUILD | 51 +++++++++ .../android-aarch64/PKGBUILD.sh.ep | 11 ++ .../android-aarch64/qtimageformats-sha256.txt | 1 + qt6-quick3d/android-aarch64/PKGBUILD | 51 +++++++++ qt6-quick3d/android-aarch64/PKGBUILD.sh.ep | 11 ++ .../android-aarch64/qtquick3d-sha256.txt | 1 + qt6-quickcontrols2/android-aarch64/PKGBUILD | 51 +++++++++ .../android-aarch64/PKGBUILD.sh.ep | 11 ++ .../qtquickcontrols2-sha256.txt | 1 + qt6-quicktimeline/android-aarch64/PKGBUILD | 51 +++++++++ .../android-aarch64/PKGBUILD.sh.ep | 11 ++ .../qtquicktimeline-sha256.txt | 1 + qt6-shadertools/android-aarch64/PKGBUILD | 52 +++++++++ .../android-aarch64/PKGBUILD.sh.ep | 12 ++ .../android-aarch64/qtshadertools-sha256.txt | 1 + qt6-svg/android-aarch64/PKGBUILD | 51 +++++++++ qt6-svg/android-aarch64/PKGBUILD.sh.ep | 11 ++ qt6-svg/android-aarch64/qtsvg-sha256.txt | 1 + ...Make-windeployqt-an-optional-feature.patch | 26 +++++ qt6-tools/android-aarch64/PKGBUILD | 63 ++++++++++ qt6-tools/android-aarch64/PKGBUILD.sh.ep | 11 ++ qt6-tools/android-aarch64/qttools-sha256.txt | 1 + qt6-translations/android-aarch64/PKGBUILD | 47 ++++++++ .../android-aarch64/PKGBUILD.sh.ep | 11 ++ .../android-aarch64/qttranslations-sha256.txt | 1 + 44 files changed, 979 insertions(+), 4 deletions(-) create mode 100644 devel/generator/templates/layouts/android-qt6-base.sh.ep create mode 100644 devel/generator/templates/layouts/android-qt6-module.sh.ep create mode 100644 qt6-5compat/android-aarch64/PKGBUILD create mode 100644 qt6-5compat/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-5compat/android-aarch64/qt5compat-sha256.txt create mode 120000 qt6-base/android-aarch64/0001-Use-CMake-s-default-import-library-suffix.patch create mode 120000 qt6-base/android-aarch64/0002-Fix-finding-D-Bus.patch create mode 120000 qt6-base/android-aarch64/0003-Fix-using-static-PCRE2-and-DBus-1.patch create mode 120000 qt6-base/android-aarch64/0004-Fix-transitive-dependencies-of-static-libraries.patch create mode 120000 qt6-base/android-aarch64/0005-Fix-libjpeg-workaround-for-conflict-with-rpcndr.h.patch create mode 120000 qt6-base/android-aarch64/0006-Support-finding-MariaDB.patch create mode 120000 qt6-base/android-aarch64/0007-Allow-overriding-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch create mode 100644 qt6-base/android-aarch64/PKGBUILD create mode 100644 qt6-base/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-base/android-aarch64/qtbase-sha256.txt create mode 100644 qt6-declarative/android-aarch64/PKGBUILD create mode 100644 qt6-declarative/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-declarative/android-aarch64/qtdeclarative-sha256.txt create mode 100644 qt6-imageformats/android-aarch64/PKGBUILD create mode 100644 qt6-imageformats/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-imageformats/android-aarch64/qtimageformats-sha256.txt create mode 100644 qt6-quick3d/android-aarch64/PKGBUILD create mode 100644 qt6-quick3d/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-quick3d/android-aarch64/qtquick3d-sha256.txt create mode 100644 qt6-quickcontrols2/android-aarch64/PKGBUILD create mode 100644 qt6-quickcontrols2/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-quickcontrols2/android-aarch64/qtquickcontrols2-sha256.txt create mode 100644 qt6-quicktimeline/android-aarch64/PKGBUILD create mode 100644 qt6-quicktimeline/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-quicktimeline/android-aarch64/qtquicktimeline-sha256.txt create mode 100644 qt6-shadertools/android-aarch64/PKGBUILD create mode 100644 qt6-shadertools/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-shadertools/android-aarch64/qtshadertools-sha256.txt create mode 100644 qt6-svg/android-aarch64/PKGBUILD create mode 100644 qt6-svg/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-svg/android-aarch64/qtsvg-sha256.txt create mode 100644 qt6-tools/android-aarch64/0001-Make-windeployqt-an-optional-feature.patch create mode 100644 qt6-tools/android-aarch64/PKGBUILD create mode 100644 qt6-tools/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-tools/android-aarch64/qttools-sha256.txt create mode 100644 qt6-translations/android-aarch64/PKGBUILD create mode 100644 qt6-translations/android-aarch64/PKGBUILD.sh.ep create mode 100644 qt6-translations/android-aarch64/qttranslations-sha256.txt diff --git a/devel/generator/generate.pl b/devel/generator/generate.pl index 48f11fbe..cb08e493 100755 --- a/devel/generator/generate.pl +++ b/devel/generator/generate.pl @@ -64,10 +64,8 @@ for my $qt_version (qw(qt5 qt6)) { # example: "-lfoo -lbar" => "/usr/lib/foo.a;/usr/lib/bar.a" $mojolicious->helper(expand_libs => sub { my $controller = shift; - my $is_static = $controller->stash('static_variant'); - my $is_mingw = $controller->stash('package_name_prefix') eq 'mingw-w64-'; - my $prefix = $is_mingw ? '/usr/$_arch' : '/usr'; - my $extension = $is_static ? 'a' : ($is_mingw ? 'dll.a' : 'so'); + my $prefix = $controller->stash('install_prefix'); + my $extension = $controller->stash('library_extension'); return join(';', map { my $library_name = $_; $library_name = $1 if $library_name =~ qr/\w*-l(.*)\w*/; @@ -131,6 +129,7 @@ for my $top_level_dir (@$top_level_dirs) { my $package_name_suffix = $variant_suffix_part ? "-$variant_suffix_part" : ""; my $is_static_variant = $variant_suffix_part =~ qr/static/; my $has_static_variant = $is_static_variant || -d "$default_package_name/$variant-static"; + my $is_mingw = $package_name_prefix eq 'mingw-w64-'; my $package_name = "$package_name_prefix$default_package_name$package_name_suffix"; next if defined $filter_regex && $package_name !~ $filter_regex; @@ -155,6 +154,9 @@ for my $top_level_dir (@$top_level_dirs) { static_suffix => $is_static_variant ? '-static' : '', static_deps => undef, static_makedeps => undef, + is_mingw => $is_mingw, + library_extension => $is_static_variant ? 'a' : ($is_mingw ? 'dll.a' : 'so'), + install_prefix => $is_mingw ? '/usr/$_arch' : '/usr', shared_config => !$is_static_variant, static_config => $is_static_variant || !$has_static_variant, no_libraries => 0, diff --git a/devel/generator/templates/layouts/android-qt6-base.sh.ep b/devel/generator/templates/layouts/android-qt6-base.sh.ep new file mode 100644 index 00000000..b84c85dd --- /dev/null +++ b/devel/generator/templates/layouts/android-qt6-base.sh.ep @@ -0,0 +1,108 @@ +# Maintainer: Martchus +<%== content_for 'additional_contributors' %>\ + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +# This file is created from PKGBUILD.sh.ep contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. +% if ($patch_files->size) { + +# All patches are managed at https://github.com/Martchus/qt<%== $qt_module %> +% } + +_android_arch=<%= $variant_prefix_part =~ s/android-// && $variant_prefix_part %> +pkgname=<%= $package_name %> +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework (android)' +depends=('java-runtime-headless-openjdk=8' 'ant' 'android-ndk' 'android-sdk' 'android-sdk-build-tools' + 'android-sdk-platform-tools' 'android-platform' "android-${_android_arch}-libjpeg-turbo" + "android-${_android_arch}-libpng" "android-${_android_arch}-openssl" "android-${_android_arch}-zlib") +makedepends=('android-cmake<%= $static_suffix %>' 'android-pkg-config' + 'java-environment-openjdk=8' 'qt6-base' 'ninja') +optdepends=('qt6-base: development tools') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qt<%== $qt_module %>-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"\ +<%== include 'fragments/source_file_list', relevant_files => $patch_files %>) +sha256sums=('<%== $qt_module_sha256 %>'\ +<%== include 'fragments/sha256_list', relevant_files => $patch_files %>) + +% if ($patch_files->size || content_for('prepare')->size) { +prepare () { + cd $_pkgfqn + +% if ($patch_files->size) { + # apply patches; further descriptions can be found in patch files itself + for patch in "$srcdir/"*.patch; do + msg2 "Applying patch $patch" + patch -p1 -i "$patch" + done +% } +<%== content_for 'prepare' %>\ +} + +% } +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake<%== $static_suffix %> -G Ninja -B build-$_android_arch -S $_pkgfqn \\ +% if ($static_variant) { + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}/static;${ANDROID_PREFIX}" \\ + -DCMAKE_INSTALL_PREFIX:PATH="${ANDROID_PREFIX}/static" \\ +% } +% else { + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \\ +% } + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \\ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \\ + -DQT_HOST_PATH=/usr \\ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \\ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \\ + -DANDROID_STL="c++_shared" \\ + -DFEATURE_pkg_config=ON \\ + -DFEATURE_system_pcre2=OFF \\ + -DFEATURE_system_freetype=OFF \\ + -DFEATURE_system_harfbuzz=OFF \\ + -DFEATURE_system_sqlite=OFF \\ + -DFEATURE_system_libjpeg=ON \\ + -DFEATURE_system_libpng=ON \\ + -DFEATURE_system_zlib=ON \\ + -DINSTALL_DOCDIR=share/doc/qt6 \\ + -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \\ + -DINPUT_openssl=<%== $static_variant ? 'linked' : 'runtime' %> +% if (0) { + -DINPUT_openssl=<%== $static_variant ? 'linked' : 'runtime' %> \\ + -DOPENSSL_CRYPTO_LIBRARY:FILEPATH=${ANDROID_PREFIX_LIB}/libcrypto.so \\ + -DOPENSSL_SSL_LIBRARY:PATH=${ANDROID_PREFIX_LIB}/libssl.so \\ + -DOPENSSL_INCLUDE_DIR:FILEPATH=${ANDROID_PREFIX_INCLUDE} \\ + -DJPEG_LIBRARY_RELEASE:PATH=${ANDROID_PREFIX_LIB}/libjpeg.so \\ + -DJPEG_INCLUDE_DIR:FILEPATH=${ANDROID_PREFIX_INCLUDE} \\ + -DPNG_LIBRARY_RELEASE:PATH=${ANDROID_PREFIX_LIB}/libpng.so \\ + -DPNG_PNG_INCLUDE_DIR:FILEPATH=${ANDROID_PREFIX_INCLUDE} +% } + VERBOSE=1 cmake --build build-$_android_arch + + # note: Avoid using `-DINSTALL_` options like in the regular package to avoid any problems with androiddeployqt. +} + +package() { + source android-env ${_android_arch} + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + install -Dm644 $_pkgfqn/LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgname + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}/<%== $static_variant ? 'static/' : '' %>" -type f -name '*.prl' \\ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true +} diff --git a/devel/generator/templates/layouts/android-qt6-module.sh.ep b/devel/generator/templates/layouts/android-qt6-module.sh.ep new file mode 100644 index 00000000..14e8b639 --- /dev/null +++ b/devel/generator/templates/layouts/android-qt6-module.sh.ep @@ -0,0 +1,92 @@ +# Maintainer: Martchus +<%== content_for 'additional_contributors' %>\ + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +<%== content_for 'comment_header' %>\ +_android_arch=<%= $variant_prefix_part =~ s/android-// && $variant_prefix_part %> +pkgname=android-$_android_arch-qt6-<%== $qt_module %><%== $static_suffix %> +<%== content %>\ +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qt<%== $qt_module %>-everywhere-src-${_qtver}" +% if (my $git_commit = stash('git_commit')) { +source=("$_pkgfqn::git://code.qt.io/qt/qt<%== $qt_module %>.git#commit=<%== $git_commit %>"\ +% } +% elsif (my $git_tag = stash('git_tag')) { +source=("$_pkgfqn::git://code.qt.io/qt/qt<%== $qt_module %>.git#tag=<%== $git_tag %>"\ +% } +% else { +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"\ +% } +<%== include 'fragments/source_file_list', relevant_files => $patch_files %>) +sha256sums=('<%== stash('git_commit') ? 'SKIP' : $qt_module_sha256 %>'\ +<%== include 'fragments/sha256_list', relevant_files => $patch_files %>) + +% if ($patch_files->size || content_for('prepare')->size) { +prepare () { + cd $_pkgfqn + +% if ($patch_files->size) { + # apply patches; further descriptions can be found in patch files itself + for patch in "$srcdir/"*.patch; do + msg2 "Applying patch $patch" + patch -p1 -i "$patch" + done +% } +<%== content_for 'prepare' %>\ +} + +% } +build() { + source android-env ${_android_arch} +<%== content_for 'before_build_config' %>\ + android-${_android_arch}-cmake<%== $static_suffix %> -G Ninja -B build-$_android_arch -S $_pkgfqn \\ +% if ($static_variant) { + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}/static;${ANDROID_PREFIX}" \\ + -DCMAKE_INSTALL_PREFIX:PATH="${ANDROID_PREFIX}/static" \\ +% } +% else { + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \\ +% } + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \\ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \\ + -DQT_HOST_PATH=/usr \\ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \\ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \\ + -DANDROID_STL="c++_shared" \\ + -DFEATURE_pkg_config=ON<%== content_for 'additional_cmake_args' %> +% if(0) { + -DFEATURE_pkg_config=ON \\ + -DOPENSSL_CRYPTO_LIBRARY:FILEPATH=${ANDROID_PREFIX_LIB}/libcrypto.so \\ + -DOPENSSL_SSL_LIBRARY:PATH=${ANDROID_PREFIX_LIB}/libssl.so \\ + -DOPENSSL_INCLUDE_DIR:FILEPATH=${ANDROID_PREFIX_INCLUDE} \\ + -DJPEG_LIBRARY_RELEASE:PATH=${ANDROID_PREFIX_LIB}/libjpeg.so \\ + -DJPEG_INCLUDE_DIR:FILEPATH=${ANDROID_PREFIX_INCLUDE} \\ + -DPNG_LIBRARY_RELEASE:PATH=${ANDROID_PREFIX_LIB}/libpng.so \\ + -DPNG_PNG_INCLUDE_DIR:FILEPATH=${ANDROID_PREFIX_INCLUDE}<%== content_for 'additional_cmake_args' %> +% } + cmake --build build-$_android_arch +} + +package() { +<%== content_for 'before_package_install' %>\ + DESTDIR="$pkgdir" cmake --install build-$_android_arch<%== content_for 'after_package_install' %> + +% unless ($static_variant) { +% unless (stash('no_libs')) { + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \\ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + +% } +% } + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base<%== $static_variant ? '-static' : '' %> "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-5compat/android-aarch64/PKGBUILD b/qt6-5compat/android-aarch64/PKGBUILD new file mode 100644 index 00000000..1db96cb0 --- /dev/null +++ b/qt6-5compat/android-aarch64/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-5compat +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Module that contains unsupported Qt 5 APIs (android)' +depends=('android-aarch64-qt6-base') +makedepends=('android-cmake' 'qt6-base' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qt5compat-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('13b9d78aa698609d07376e3e9e9d1a82a96084236aba0642f8ac695c181ab25f') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-5compat/android-aarch64/PKGBUILD.sh.ep b/qt6-5compat/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..19051582 --- /dev/null +++ b/qt6-5compat/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module'; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Module that contains unsupported Qt 5 APIs (android)' +depends=(<%== qt6deps qw(base) %>) +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-base' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-5compat/android-aarch64/qt5compat-sha256.txt b/qt6-5compat/android-aarch64/qt5compat-sha256.txt new file mode 100644 index 00000000..eb3f9b20 --- /dev/null +++ b/qt6-5compat/android-aarch64/qt5compat-sha256.txt @@ -0,0 +1 @@ +13b9d78aa698609d07376e3e9e9d1a82a96084236aba0642f8ac695c181ab25f diff --git a/qt6-base/android-aarch64/0001-Use-CMake-s-default-import-library-suffix.patch b/qt6-base/android-aarch64/0001-Use-CMake-s-default-import-library-suffix.patch new file mode 120000 index 00000000..ec6be50b --- /dev/null +++ b/qt6-base/android-aarch64/0001-Use-CMake-s-default-import-library-suffix.patch @@ -0,0 +1 @@ +../mingw-w64/0001-Use-CMake-s-default-import-library-suffix.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/0002-Fix-finding-D-Bus.patch b/qt6-base/android-aarch64/0002-Fix-finding-D-Bus.patch new file mode 120000 index 00000000..4436c596 --- /dev/null +++ b/qt6-base/android-aarch64/0002-Fix-finding-D-Bus.patch @@ -0,0 +1 @@ +../mingw-w64/0002-Fix-finding-D-Bus.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/0003-Fix-using-static-PCRE2-and-DBus-1.patch b/qt6-base/android-aarch64/0003-Fix-using-static-PCRE2-and-DBus-1.patch new file mode 120000 index 00000000..da87c14f --- /dev/null +++ b/qt6-base/android-aarch64/0003-Fix-using-static-PCRE2-and-DBus-1.patch @@ -0,0 +1 @@ +../mingw-w64/0003-Fix-using-static-PCRE2-and-DBus-1.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/0004-Fix-transitive-dependencies-of-static-libraries.patch b/qt6-base/android-aarch64/0004-Fix-transitive-dependencies-of-static-libraries.patch new file mode 120000 index 00000000..f578c4c8 --- /dev/null +++ b/qt6-base/android-aarch64/0004-Fix-transitive-dependencies-of-static-libraries.patch @@ -0,0 +1 @@ +../mingw-w64/0004-Fix-transitive-dependencies-of-static-libraries.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/0005-Fix-libjpeg-workaround-for-conflict-with-rpcndr.h.patch b/qt6-base/android-aarch64/0005-Fix-libjpeg-workaround-for-conflict-with-rpcndr.h.patch new file mode 120000 index 00000000..9e8f5c4e --- /dev/null +++ b/qt6-base/android-aarch64/0005-Fix-libjpeg-workaround-for-conflict-with-rpcndr.h.patch @@ -0,0 +1 @@ +../mingw-w64/0005-Fix-libjpeg-workaround-for-conflict-with-rpcndr.h.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/0006-Support-finding-MariaDB.patch b/qt6-base/android-aarch64/0006-Support-finding-MariaDB.patch new file mode 120000 index 00000000..ee8bc166 --- /dev/null +++ b/qt6-base/android-aarch64/0006-Support-finding-MariaDB.patch @@ -0,0 +1 @@ +../mingw-w64/0006-Support-finding-MariaDB.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/0007-Allow-overriding-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch b/qt6-base/android-aarch64/0007-Allow-overriding-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch new file mode 120000 index 00000000..b6654436 --- /dev/null +++ b/qt6-base/android-aarch64/0007-Allow-overriding-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch @@ -0,0 +1 @@ +../mingw-w64/0007-Allow-overriding-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch \ No newline at end of file diff --git a/qt6-base/android-aarch64/PKGBUILD b/qt6-base/android-aarch64/PKGBUILD new file mode 100644 index 00000000..b5c0658b --- /dev/null +++ b/qt6-base/android-aarch64/PKGBUILD @@ -0,0 +1,96 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +# This file is created from PKGBUILD.sh.ep contained by the mentioned repository. +# Do not edit it manually! See README.md in the repository's root directory +# for more information. + +# All patches are managed at https://github.com/Martchus/qtbase + +_android_arch=aarch64 +pkgname=android-aarch64-qt6-base +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework (android)' +depends=('java-runtime-headless-openjdk=8' 'ant' 'android-ndk' 'android-sdk' 'android-sdk-build-tools' + 'android-sdk-platform-tools' 'android-platform' "android-${_android_arch}-libjpeg-turbo" + "android-${_android_arch}-libpng" "android-${_android_arch}-openssl" "android-${_android_arch}-zlib") +makedepends=('android-cmake' 'android-pkg-config' + 'java-environment-openjdk=8' 'qt6-base' 'ninja') +optdepends=('qt6-base: development tools') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtbase-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" + '0001-Use-CMake-s-default-import-library-suffix.patch' + '0002-Fix-finding-D-Bus.patch' + '0003-Fix-using-static-PCRE2-and-DBus-1.patch' + '0004-Fix-transitive-dependencies-of-static-libraries.patch' + '0005-Fix-libjpeg-workaround-for-conflict-with-rpcndr.h.patch' + '0006-Support-finding-MariaDB.patch' + '0007-Allow-overriding-CMAKE_FIND_LIBRARY_SUFFIXES-to-pref.patch') +sha256sums=('ae227180272d199cbb15318e3353716afada5c57fd5185b812ae26912c958656' + '0907b860c3394efc457304e75ec0282799374a83f411e194250cd20f4f703051' + 'ba9f624f9393289930b10a1b976d094f4f023009d46ceaf1a05af0ef9981a65f' + '7b1b9b3b995e0ade88251bd97ca9b197511ed35657d7ec5643eaee22f7f83993' + 'aa30dd86403f39cc3de9512de05c86dbb69ca141bdb55ca4dd7578c03de174a9' + 'dd4db93874ae433a88dde68ebe5bed864c0af4a37cb81778a4154cda8f310b3d' + '713d91d944688677c3d56f07f7a9e8b9858a38709daf95cea99e5a87f8e429d2' + '56d024b76fa9dde2bcf8720a48bf9c43dc8b48256be6590d3da55fc68c27ad25') + +prepare () { + cd $_pkgfqn + + # apply patches; further descriptions can be found in patch files itself + for patch in "$srcdir/"*.patch; do + msg2 "Applying patch $patch" + patch -p1 -i "$patch" + done +} + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON \ + -DFEATURE_system_pcre2=OFF \ + -DFEATURE_system_freetype=OFF \ + -DFEATURE_system_harfbuzz=OFF \ + -DFEATURE_system_sqlite=OFF \ + -DFEATURE_system_libjpeg=ON \ + -DFEATURE_system_libpng=ON \ + -DFEATURE_system_zlib=ON \ + -DINSTALL_DOCDIR=share/doc/qt6 \ + -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \ + -DINPUT_openssl=runtime + VERBOSE=1 cmake --build build-$_android_arch + + # note: Avoid using `-DINSTALL_` options like in the regular package to avoid any problems with androiddeployqt. +} + +package() { + source android-env ${_android_arch} + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + install -Dm644 $_pkgfqn/LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgname + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}/" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true +} diff --git a/qt6-base/android-aarch64/PKGBUILD.sh.ep b/qt6-base/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..468edbad --- /dev/null +++ b/qt6-base/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1 @@ +% layout 'android-qt6-base'; diff --git a/qt6-base/android-aarch64/qtbase-sha256.txt b/qt6-base/android-aarch64/qtbase-sha256.txt new file mode 100644 index 00000000..c441384f --- /dev/null +++ b/qt6-base/android-aarch64/qtbase-sha256.txt @@ -0,0 +1 @@ +ae227180272d199cbb15318e3353716afada5c57fd5185b812ae26912c958656 diff --git a/qt6-declarative/android-aarch64/PKGBUILD b/qt6-declarative/android-aarch64/PKGBUILD new file mode 100644 index 00000000..787f5f8d --- /dev/null +++ b/qt6-declarative/android-aarch64/PKGBUILD @@ -0,0 +1,52 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-declarative +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Classes for QML and JavaScript languages (android)' +depends=('android-aarch64-qt6-base') +makedepends=('android-cmake' 'qt6-declarative' 'ninja' 'python' 'java-environment-openjdk=8') +optdepends=('qt6-declarative: development tools') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtdeclarative-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('8535fe31fa3e876b8f2d3954efcdca47b3813adf228c1640608fb9f4c7b2c1a6') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-declarative/android-aarch64/PKGBUILD.sh.ep b/qt6-declarative/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..c393db31 --- /dev/null +++ b/qt6-declarative/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,12 @@ +% layout 'android-qt6-module', has_binaries => 1; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Classes for QML and JavaScript languages (android)' +depends=(<%== qt6deps qw(base) %>) +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-declarative' 'ninja' 'python' 'java-environment-openjdk=8') +optdepends=('qt6-declarative: development tools') diff --git a/qt6-declarative/android-aarch64/qtdeclarative-sha256.txt b/qt6-declarative/android-aarch64/qtdeclarative-sha256.txt new file mode 100644 index 00000000..989eb316 --- /dev/null +++ b/qt6-declarative/android-aarch64/qtdeclarative-sha256.txt @@ -0,0 +1 @@ +8535fe31fa3e876b8f2d3954efcdca47b3813adf228c1640608fb9f4c7b2c1a6 diff --git a/qt6-imageformats/android-aarch64/PKGBUILD b/qt6-imageformats/android-aarch64/PKGBUILD new file mode 100644 index 00000000..bdec3af8 --- /dev/null +++ b/qt6-imageformats/android-aarch64/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-imageformats +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Plugins for additional image formats: TIFF, TGA, WBMP (android)' +depends=('android-aarch64-qt6-base' "android-${_android_arch}-libwebp") +makedepends=('android-cmake' 'qt6-base' 'ninja' 'java-environment-openjdk=8' 'git') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtimageformats-everywhere-src-${_qtver}" +source=("$_pkgfqn::git://code.qt.io/qt/qtimageformats.git#tag=v6.0.0") +sha256sums=('SKIP') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-imageformats/android-aarch64/PKGBUILD.sh.ep b/qt6-imageformats/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..dbd974b1 --- /dev/null +++ b/qt6-imageformats/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module', git_tag => 'v6.0.0'; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Plugins for additional image formats: TIFF, TGA, WBMP (android)' +depends=(<%== qt6deps qw(base) %> "android-${_android_arch}-libwebp") +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-base' 'ninja' 'java-environment-openjdk=8' 'git') diff --git a/qt6-imageformats/android-aarch64/qtimageformats-sha256.txt b/qt6-imageformats/android-aarch64/qtimageformats-sha256.txt new file mode 100644 index 00000000..cc2ecb63 --- /dev/null +++ b/qt6-imageformats/android-aarch64/qtimageformats-sha256.txt @@ -0,0 +1 @@ +SKIP diff --git a/qt6-quick3d/android-aarch64/PKGBUILD b/qt6-quick3d/android-aarch64/PKGBUILD new file mode 100644 index 00000000..15f71d48 --- /dev/null +++ b/qt6-quick3d/android-aarch64/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-quick3d +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Qt module and API for defining 3D content in Qt Quick (android)' +depends=('android-aarch64-qt6-declarative') +makedepends=('android-cmake' 'android-aarch64-qt6-shadertools' 'qt6-quick3d' 'qt6-shadertools' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtquick3d-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('0a9a3e765c343b55511900b173f9591df88b0787f67b9ecfb8f25203bfdb0aa8') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-quick3d/android-aarch64/PKGBUILD.sh.ep b/qt6-quick3d/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..b4e305f9 --- /dev/null +++ b/qt6-quick3d/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module', has_binaries => 1; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Qt module and API for defining 3D content in Qt Quick (android)' +depends=(<%== qt6deps qw(declarative) %>) +makedepends=('android-cmake<%== $static_suffix %>' <%== qt6deps qw(shadertools) %> 'qt6-quick3d' 'qt6-shadertools' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-quick3d/android-aarch64/qtquick3d-sha256.txt b/qt6-quick3d/android-aarch64/qtquick3d-sha256.txt new file mode 100644 index 00000000..9670602c --- /dev/null +++ b/qt6-quick3d/android-aarch64/qtquick3d-sha256.txt @@ -0,0 +1 @@ +0a9a3e765c343b55511900b173f9591df88b0787f67b9ecfb8f25203bfdb0aa8 diff --git a/qt6-quickcontrols2/android-aarch64/PKGBUILD b/qt6-quickcontrols2/android-aarch64/PKGBUILD new file mode 100644 index 00000000..8d4d970d --- /dev/null +++ b/qt6-quickcontrols2/android-aarch64/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-quickcontrols2 +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Next generation user interface controls based on Qt Quick (android)' +depends=('android-aarch64-qt6-declarative') +makedepends=('android-cmake' 'qt6-declarative' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtquickcontrols2-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('03fd2dbf030bf859e8069144bb6a282517063589c9d4025293eb89bcc580253b') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-quickcontrols2/android-aarch64/PKGBUILD.sh.ep b/qt6-quickcontrols2/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..1f9b5bd1 --- /dev/null +++ b/qt6-quickcontrols2/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module'; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Next generation user interface controls based on Qt Quick (android)' +depends=(<%== qt6deps qw(declarative) %>) +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-declarative' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-quickcontrols2/android-aarch64/qtquickcontrols2-sha256.txt b/qt6-quickcontrols2/android-aarch64/qtquickcontrols2-sha256.txt new file mode 100644 index 00000000..ff89e4ec --- /dev/null +++ b/qt6-quickcontrols2/android-aarch64/qtquickcontrols2-sha256.txt @@ -0,0 +1 @@ +03fd2dbf030bf859e8069144bb6a282517063589c9d4025293eb89bcc580253b diff --git a/qt6-quicktimeline/android-aarch64/PKGBUILD b/qt6-quicktimeline/android-aarch64/PKGBUILD new file mode 100644 index 00000000..dff71b4e --- /dev/null +++ b/qt6-quicktimeline/android-aarch64/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-quicktimeline +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Qt module for keyframe-based timeline construction (android)' +depends=('android-aarch64-qt6-declarative') +makedepends=('android-cmake' 'qt6-declarative' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtquicktimeline-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('7a71495c07a98279a852d518bc9ca0f07b49b495ceb65bfdd000c826ee156b0c') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-quicktimeline/android-aarch64/PKGBUILD.sh.ep b/qt6-quicktimeline/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..b690391b --- /dev/null +++ b/qt6-quicktimeline/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module'; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Qt module for keyframe-based timeline construction (android)' +depends=(<%== qt6deps qw(declarative) %>) +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-declarative' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-quicktimeline/android-aarch64/qtquicktimeline-sha256.txt b/qt6-quicktimeline/android-aarch64/qtquicktimeline-sha256.txt new file mode 100644 index 00000000..5929e07b --- /dev/null +++ b/qt6-quicktimeline/android-aarch64/qtquicktimeline-sha256.txt @@ -0,0 +1 @@ +7a71495c07a98279a852d518bc9ca0f07b49b495ceb65bfdd000c826ee156b0c diff --git a/qt6-shadertools/android-aarch64/PKGBUILD b/qt6-shadertools/android-aarch64/PKGBUILD new file mode 100644 index 00000000..9cb8890c --- /dev/null +++ b/qt6-shadertools/android-aarch64/PKGBUILD @@ -0,0 +1,52 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-shadertools +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Experimental module providing APIs and a host tool to host tool to perform graphics and compute shader conditioning for the upcoming Qt graphics abstraction layer (android)' +depends=('android-aarch64-qt6-base') +makedepends=('android-cmake' 'qt6-shadertools' 'ninja' 'java-environment-openjdk=8') +optdepends=('qt6-shadertools: development tools') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtshadertools-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('201b1376b65ef9f7fd19789781e0378ea813385217cd392c5c896699e6108e6c') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-shadertools/android-aarch64/PKGBUILD.sh.ep b/qt6-shadertools/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..962e582a --- /dev/null +++ b/qt6-shadertools/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,12 @@ +% layout 'android-qt6-module', has_binaries => 1; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Experimental module providing APIs and a host tool to host tool to perform graphics and compute shader conditioning for the upcoming Qt graphics abstraction layer (android)' +depends=(<%== qt6deps qw(base) %>) +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-shadertools' 'ninja' 'java-environment-openjdk=8') +optdepends=('qt6-shadertools: development tools') diff --git a/qt6-shadertools/android-aarch64/qtshadertools-sha256.txt b/qt6-shadertools/android-aarch64/qtshadertools-sha256.txt new file mode 100644 index 00000000..0e44d241 --- /dev/null +++ b/qt6-shadertools/android-aarch64/qtshadertools-sha256.txt @@ -0,0 +1 @@ +201b1376b65ef9f7fd19789781e0378ea813385217cd392c5c896699e6108e6c diff --git a/qt6-svg/android-aarch64/PKGBUILD b/qt6-svg/android-aarch64/PKGBUILD new file mode 100644 index 00000000..17a8dbb4 --- /dev/null +++ b/qt6-svg/android-aarch64/PKGBUILD @@ -0,0 +1,51 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-svg +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Classes for displaying the contents of SVG files (android)' +depends=('android-aarch64-qt6-base') +makedepends=('android-cmake' 'qt6-base' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qtsvg-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('9703c9a69e21ad373fb52d0107338da7ef0a46966f69107b0d879e9c366dd91b') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-svg/android-aarch64/PKGBUILD.sh.ep b/qt6-svg/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..802c1b4d --- /dev/null +++ b/qt6-svg/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module'; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='Classes for displaying the contents of SVG files (android)' +depends=(<%== qt6deps qw(base) %>) +makedepends=('android-cmake<%== $static_suffix %>' 'qt6-base' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-svg/android-aarch64/qtsvg-sha256.txt b/qt6-svg/android-aarch64/qtsvg-sha256.txt new file mode 100644 index 00000000..2a891cb5 --- /dev/null +++ b/qt6-svg/android-aarch64/qtsvg-sha256.txt @@ -0,0 +1 @@ +9703c9a69e21ad373fb52d0107338da7ef0a46966f69107b0d879e9c366dd91b diff --git a/qt6-tools/android-aarch64/0001-Make-windeployqt-an-optional-feature.patch b/qt6-tools/android-aarch64/0001-Make-windeployqt-an-optional-feature.patch new file mode 100644 index 00000000..76a8d8db --- /dev/null +++ b/qt6-tools/android-aarch64/0001-Make-windeployqt-an-optional-feature.patch @@ -0,0 +1,26 @@ +From 007674dc717498f33a8e30a558e8d6560369a0fd Mon Sep 17 00:00:00 2001 +From: Martchus +Date: Thu, 26 Nov 2020 01:53:27 +0100 +Subject: [PATCH] Make windeployqt an optional feature + +Change-Id: I3c797df913c07ed80929b41d367b1ebb41d8400f +--- + src/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 770f1cab..d5d34064 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -51,7 +51,7 @@ endif() + if(TARGET Qt::DBus) + add_subdirectory(qdbus) + endif() +-if(WIN32) ++if(QT_FEATURE_windeployqt) + add_subdirectory(windeployqt) + endif() + if(QT_FEATURE_commandlineparser AND TARGET Qt::Gui AND NOT ANDROID AND NOT QNX AND NOT UIKIT AND NOT WASM) +-- +2.29.2 + diff --git a/qt6-tools/android-aarch64/PKGBUILD b/qt6-tools/android-aarch64/PKGBUILD new file mode 100644 index 00000000..32a33abc --- /dev/null +++ b/qt6-tools/android-aarch64/PKGBUILD @@ -0,0 +1,63 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-tools +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework (tools, android)' +depends=('android-aarch64-qt6-base') +makedepends=('android-cmake' 'android-aarch64-qt6-declarative' 'qt6-declarative' 'qt6-tools' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qttools-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz" + '0001-Make-windeployqt-an-optional-feature.patch') +sha256sums=('b6dc559db447bf394d09dfb238d5c09108f834139a183888179e855c6566bfae' + 'f316cdb87dcc84d1fe9ebd262812118e35571aa0fadd3da6ac3b9f42af19b8bb') + +prepare () { + cd $_pkgfqn + + # apply patches; further descriptions can be found in patch files itself + for patch in "$srcdir/"*.patch; do + msg2 "Applying patch $patch" + patch -p1 -i "$patch" + done +} + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + # Drop QMAKE_PRL_BUILD_DIR because reference the build dir + find "$pkgdir/${ANDROID_PREFIX}" -type f -name '*.prl' \ + -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \; + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-tools/android-aarch64/PKGBUILD.sh.ep b/qt6-tools/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..79b584be --- /dev/null +++ b/qt6-tools/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module', has_binaries => 1; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework (tools, android)' +depends=(<%== qt6deps qw(base) %>) +makedepends=('android-cmake<%== $static_suffix %>' <%== qt6deps qw(declarative) %> 'qt6-declarative' 'qt6-tools' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-tools/android-aarch64/qttools-sha256.txt b/qt6-tools/android-aarch64/qttools-sha256.txt new file mode 100644 index 00000000..253cf3ba --- /dev/null +++ b/qt6-tools/android-aarch64/qttools-sha256.txt @@ -0,0 +1 @@ +b6dc559db447bf394d09dfb238d5c09108f834139a183888179e855c6566bfae diff --git a/qt6-translations/android-aarch64/PKGBUILD b/qt6-translations/android-aarch64/PKGBUILD new file mode 100644 index 00000000..f63bdf60 --- /dev/null +++ b/qt6-translations/android-aarch64/PKGBUILD @@ -0,0 +1,47 @@ +# Maintainer: Martchus + +# All my PKGBUILDs are managed at https://github.com/Martchus/PKGBUILDs where +# you also find the URL of a binary repository. + +_android_arch=aarch64 +pkgname=android-$_android_arch-qt6-translations +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework (Translations, android)' +depends=('android-aarch64-qt6-base') +makedepends=('android-cmake' 'android-aarch64-qt6-tools' 'qt6-tools' 'ninja' 'java-environment-openjdk=8') +options=('!strip' '!buildflags' 'staticlibs' '!emptydirs') +groups=(android-${_android_arch}-qt6) +_pkgfqn="qttranslations-everywhere-src-${_qtver}" +source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") +sha256sums=('ed6487425c17e88531e825c44820c1f47c9b7dc0918125e5d45ccc36fdc679d5') + +build() { + source android-env ${_android_arch} + android-${_android_arch}-cmake -G Ninja -B build-$_android_arch -S $_pkgfqn \ + -DCMAKE_FIND_ROOT_PATH="${ANDROID_PREFIX}" \ + -DQT_BINARY_DIR=${ANDROID_PREFIX_BIN} \ + -DQT_INCLUDE_DIRS_NO_SYSTEM=ON \ + -DQT_HOST_PATH=/usr \ + -DANDROID_SDK_ROOT=${ANDROID_HOME} \ + -DANDROID_NDK_ROOT=${ANDROID_NDK_HOME} \ + -DANDROID_STL="c++_shared" \ + -DFEATURE_pkg_config=ON + cmake --build build-$_android_arch +} + +package() { + DESTDIR="$pkgdir" cmake --install build-$_android_arch + + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.so' -exec ${ANDROID_STRIP} -g --strip-unneeded {} \; + find ${pkgdir}/${ANDROID_PREFIX} -type f -name 'lib*.a' -exec ${ANDROID_STRIP} -g {} \; + [[ -d "${pkgdir}/${ANDROID_PREFIX}/share/doc" ]] && rm -r "${pkgdir}/${ANDROID_PREFIX}/share/doc" || true + + install -d "$pkgdir"/usr/share/licenses + ln -s /usr/share/licenses/android-$_android_arch-qt6-base "$pkgdir"/usr/share/licenses/$pkgname + +} diff --git a/qt6-translations/android-aarch64/PKGBUILD.sh.ep b/qt6-translations/android-aarch64/PKGBUILD.sh.ep new file mode 100644 index 00000000..ae882078 --- /dev/null +++ b/qt6-translations/android-aarch64/PKGBUILD.sh.ep @@ -0,0 +1,11 @@ +% layout 'android-qt6-module', no_libs => 1; +\ +_qtver=6.0.0 +pkgver=${_qtver/-/} +pkgrel=1 +arch=(any) +url='https://www.qt.io' +license=(GPL3 LGPL3 FDL custom) +pkgdesc='A cross-platform application and UI framework (Translations, android)' +depends=(<%== qt6deps qw(base) %>) +makedepends=('android-cmake<%== $static_suffix %>' <%== qt6deps qw(tools) %> 'qt6-tools' 'ninja' 'java-environment-openjdk=8') diff --git a/qt6-translations/android-aarch64/qttranslations-sha256.txt b/qt6-translations/android-aarch64/qttranslations-sha256.txt new file mode 100644 index 00000000..e8d931a9 --- /dev/null +++ b/qt6-translations/android-aarch64/qttranslations-sha256.txt @@ -0,0 +1 @@ +ed6487425c17e88531e825c44820c1f47c9b7dc0918125e5d45ccc36fdc679d5