# Maintainer: Antonio Rojas # Maintainer: Felix Yan # Contributor: Andrea Scarpino pkgname=qt6-base _qtver=6.5.1 pkgver=${_qtver/-/} pkgrel=2 arch=(x86_64) url='https://www.qt.io' license=(GPL3 LGPL3 FDL custom) pkgdesc='A cross-platform application and UI framework' depends=(libjpeg-turbo xcb-util-keysyms xcb-util-cursor libgl fontconfig xdg-utils shared-mime-info xcb-util-wm libxrender libxi sqlite mesa vulkan-headers tslib libinput libxkbcommon-x11 libproxy libcups double-conversion brotli libb2 md4c) makedepends=(cmake ninja libfbclient mariadb-libs unixodbc postgresql alsa-lib gst-plugins-base-libs gtk3 libpulse cups freetds xmlstarlet) optdepends=('qt6-wayland: to run Qt6 applications in a Wayland session' 'postgresql-libs: PostgreSQL driver' 'mariadb-libs: MariaDB driver' 'unixodbc: ODBC driver' 'libfbclient: Firebird/iBase driver' 'freetds: MS SQL driver' 'gtk3: GTK platform plugin' 'perl: for syncqt') groups=(qt6) _pkgfn=${pkgname/6-/}-everywhere-src-$_qtver source=(https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz qtbug-114204.patch::https://code.qt.io/cgit/qt/qtbase.git/patch/?id=9177dbd8 qt6-base-cflags.patch qt6-base-nostrip.patch) sha256sums=('db56fa1f4303a1189fe33418d25d1924931c7aef237f89eea9de58e858eebfed' '1730b675ede24d80c2e73a2f662cc73718f3060c0b8a707784d188bb11297c4e' '5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78' '4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094') prepare() { patch -d $_pkgfn -p1 < qt6-base-cflags.patch # Use system CFLAGS patch -d $_pkgfn -p1 < qt6-base-nostrip.patch # Don't strip binaries with qmake patch -d $_pkgfn -p1 < qtbug-114204.patch # Fix vertical tabbar regression } build() { cmake -B build -S $_pkgfn -G Ninja \ -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DINSTALL_BINDIR=lib/qt6/bin \ -DINSTALL_PUBLICBINDIR=usr/bin \ -DINSTALL_LIBEXECDIR=lib/qt6 \ -DINSTALL_DOCDIR=share/doc/qt6 \ -DINSTALL_ARCHDATADIR=lib/qt6 \ -DINSTALL_DATADIR=share/qt6 \ -DINSTALL_INCLUDEDIR=include/qt6 \ -DINSTALL_MKSPECSDIR=lib/qt6/mkspecs \ -DINSTALL_EXAMPLESDIR=share/doc/qt6/examples \ -DFEATURE_journald=ON \ -DFEATURE_openssl_linked=ON \ -DFEATURE_system_sqlite=ON \ -DFEATURE_system_xcb_xinput=ON \ -DFEATURE_no_direct_extern_access=ON \ -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \ -DCMAKE_MESSAGE_LOG_LEVEL=STATUS cmake --build build } package() { depends+=(qt6-translations) DESTDIR="$pkgdir" cmake --install build install -Dm644 $_pkgfn/LICENSES/* -t "$pkgdir"/usr/share/licenses/$pkgbase # Install symlinks for user-facing tools cd "$pkgdir" mkdir usr/bin while read _line; do ln -s $_line done < "$srcdir"/build/user_facing_tool_links.txt }