diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 71 |
1 files changed, 48 insertions, 23 deletions
@@ -4,65 +4,90 @@ # Contributor: Andrea Scarpino <andrea@archlinux.org> pkgname=qt6-base-headless -_qtver=6.0.4 +_qtver=6.7.0 pkgver=${_qtver/-/} pkgrel=1 arch=(x86_64) url='https://www.qt.io' license=(GPL3 LGPL3 FDL custom) pkgdesc='A cross-platform application and UI framework - headless build, no QtGui or QtWidgets' -depends=(sqlite double-conversion brotli libb2) # md4c - not supported yet -makedepends=(cmake ninja mariadb-libs unixodbc postgresql xmlstarlet systemd) +depends=(brotli + double-conversion + libb2 + sqlite + zlib + zstd) +makedepends=(cmake + git + mariadb-libs + ninja + postgresql + systemd + unixodbc + xmlstarlet) optdepends=('postgresql-libs: PostgreSQL driver' 'mariadb-libs: MariaDB driver' + 'md4c: C Markdown parser' 'unixodbc: ODBC driver' 'shared-mime-info: Freedesktop.org Shared MIME Info') groups=(qt6) conflicts=(qt6-base) provides=(qt6-base) -_pkgfn="qtbase-everywhere-src-${_qtver}" -source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/$_qtver/submodules/$_pkgfn.tar.xz" - qt6-base-cflags.patch - qt6-base-nostrip.patch) -sha256sums=('c42757932d7cb264a043cc2a0eed30774d938f63db67bfff11d8e319c0c8799a' - 'cf707cd970650f8b60f8897692b36708ded9ba116723ec8fcd885576783fe85c' - '4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094') +_pkgfn=qtbase +source=(git+https://code.qt.io/qt/$_pkgfn#tag=v$pkgver + qt6-base-cflags.patch + qt6-base-nostrip.patch + fix-wrong-cpp-if.patch::https://code.qt.io/cgit/qt/qtbase.git/patch/?id=68102202) +sha256sums=('ee87abbfdf2d5bb204056bcb6c53e21c03e1abd779e3669faa56db7249c5e39e' + '5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78' + '4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094' + '81c4821fb1c258603474771a267d450aa8b5d1d298443bc04620d70719c7eab7') prepare() { - patch -d $_pkgfn -p1 -i ../qt6-base-cflags.patch # Use system CFLAGS - patch -d $_pkgfn -p1 -i ../qt6-base-nostrip.patch # Don't strip binaries with qmake + 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 < fix-wrong-cpp-if.patch # https://bugreports.qt.io/browse/QTBUG-123937 } build() { - cmake -G Ninja -B build -S "$_pkgfn" \ + 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 \ - -DQT_FEATURE_journald=ON \ - -DQT_FEATURE_openssl_linked=ON \ - -DQT_FEATURE_system_sqlite=ON \ + -DFEATURE_journald=ON \ + -DFEATURE_openssl_linked=ON \ + -DFEATURE_system_sqlite=ON \ + -DFEATURE_no_direct_extern_access=ON \ + -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \ + -DCMAKE_MESSAGE_LOG_LEVEL=STATUS \ \ -DQT_FEATURE_gui=OFF \ -DQT_FEATURE_widgets=OFF \ -DQT_FEATURE_freetype=OFF \ - -DQT_FEATURE_harfbuzz=OFF + -DQT_FEATURE_harfbuzz=OFF \ + -DQT_FEATURE_zstd=ON cmake --build build } package() { + optdepends+=('qt6-translations: Translations') DESTDIR="$pkgdir" cmake --install build - install -Dm644 $_pkgfn/LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase + install -Dm644 $_pkgfn/LICENSES/* -t "$pkgdir"/usr/share/licenses/$pkgbase - # Symlinks for backwards compatibility - mkdir -p "$pkgdir"/usr/bin - for _b in $(ls "$pkgdir"/usr/lib/qt6/bin); do - ln -rs "$pkgdir"/usr/lib/qt6/bin/$_b "$pkgdir"/usr/bin/$_b-qt6 - done +# 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 } |