upg qt6-base

This commit is contained in:
joborun linux 2023-10-12 22:17:42 +03:00
parent f0cb12aa03
commit 771ed3aa2e
3 changed files with 148 additions and 36 deletions

View File

@ -6,42 +6,52 @@
#-----------------------------------------| DESCRIPTION |---------------------------------------
pkgname=qt6-base
_qtver=6.5.3
_qtver=6.6.0
pkgver=${_qtver/-/}
pkgrel=01
pkgrel=02
url='https://www.qt.io'
pkgdesc='A cross-platform application and UI framework w/o systemd'
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'
depends=(brotli dbus double-conversion fontconfig freetype2 gcc-libs
glib2 glibc harfbuzz icu krb5 libb2 libcups libdrm
libgl libice libinput libjpeg-turbo libpng libproxy libsm
libx11 libxcb libxkbcommon libxkbcommon-x11 md4c mesa mtdev
openssl pcre2 shared-mime-info sqlite tslib vulkan-headers
xcb-util-cursor xcb-util-image xcb-util-keysyms xcb-util-renderutil
xcb-util-wm xdg-utils zlib)
makedepends=(alsa-lib cmake cups freetds gst-plugins-base-libs
gtk3 libfbclient libpulse mariadb-libs ninja
postgresql unixodbc xmlstarlet)
optdepends=('freetds: MS SQL driver'
'gdk-pixbuf2: GTK platform plugin'
'gtk3: GTK platform plugin'
'perl: for syncqt')
'libfbclient: Firebird/iBase driver'
'mariadb-libs: MariaDB driver'
'pango: GTK platform plugin'
'perl: for syncqt'
'postgresql-libs: PostgreSQL driver'
'qt6-wayland: to run Qt6 applications in a Wayland session'
'unixodbc: ODBC driver')
groups=(qt6)
#options=(debug) # uncomment this to have qt6-base-debug produced
_pkgfn="${pkgname/6-/}-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)
qt6-base-nostrip.patch
libxkbcommon-1.6.patch::https://code.qt.io/cgit/qt/qtbase.git/patch/?id=8af35d27)
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 < libxkbcommon-1.6.patch # Fix build with libxkbcommon 1.6
}
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 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DINSTALL_LIBEXECDIR=lib/qt6 \
-DINSTALL_DOCDIR=share/doc/qt6 \
-DINSTALL_ARCHDATADIR=lib/qt6 \
@ -56,6 +66,7 @@ build() {
-DFEATURE_system_sqlite=ON \
-DFEATURE_system_xcb_xinput=ON \
-DFEATURE_zstd=OFF \
-DFEATURE_no_direct_extern_access=ON \
-DFEATURE_IPv6_ifname=OFF \
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \
-DCMAKE_MESSAGE_LOG_LEVEL=STATUS
@ -68,6 +79,7 @@ package() {
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
@ -82,8 +94,10 @@ arch=(x86_64)
license=(GPL3 LGPL3 FDL custom)
sha256sums=(df2f4a230be4ea04f9798f2c19ab1413a3b8ec6a80bef359f50284235307b546 # qtbase-everywhere-src-6.5.3.tar.xz
sha256sums=(039d53312acb5897a9054bd38c9ccbdab72500b71fdccdb3f4f0844b0dd39e0e # qtbase-everywhere-src-6.6.0.tar.xz
5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78 # qt6-base-cflags.patch
4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094) # qt6-base-nostrip.patch
4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094 # qt6-base-nostrip.patch
f3e81eca8e41b93889943a20da94d683fb5b706cb0f9dc8b851d653df3a1bbf6) # libxkbcommon-1.6.patch
## 1a5297075a40fb5c43883df176ec0105940264a55376ae63b85a91f02a762749 qt6-base-6.6.0-02-x86_64.pkg.tar.lz
## 90bd555085d2ed10682ce8e378dfa054f3956f58599086396111951e44960d4b qt6-base-6.5.3-01-x86_64.pkg.tar.lz

View File

@ -3,38 +3,94 @@
# Contributor: Andrea Scarpino <andrea@archlinux.org>
pkgname=qt6-base
_qtver=6.5.3
_qtver=6.6.0
pkgver=${_qtver/-/}
pkgrel=1
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'
depends=(brotli
dbus
double-conversion
fontconfig
freetype2
gcc-libs
glib2
glibc
harfbuzz
icu
krb5
libb2
libcups
libdrm
libgl
libice
libinput
libjpeg-turbo
libpng
libproxy
libsm
libx11
libxcb
libxkbcommon
libxkbcommon-x11
md4c
mesa
mtdev
openssl
pcre2
shared-mime-info
sqlite
systemd-libs
tslib
vulkan-headers
xcb-util-cursor
xcb-util-image
xcb-util-keysyms
xcb-util-renderutil
xcb-util-wm
xdg-utils
zlib
zstd)
makedepends=(alsa-lib
cmake
cups
freetds
gst-plugins-base-libs
gtk3
libfbclient
libpulse
mariadb-libs
ninja
postgresql
unixodbc
xmlstarlet)
optdepends=('freetds: MS SQL driver'
'gdk-pixbuf2: GTK platform plugin'
'gtk3: GTK platform plugin'
'perl: for syncqt')
'libfbclient: Firebird/iBase driver'
'mariadb-libs: MariaDB driver'
'pango: GTK platform plugin'
'perl: for syncqt'
'postgresql-libs: PostgreSQL driver'
'qt6-wayland: to run Qt6 applications in a Wayland session'
'unixodbc: ODBC driver')
groups=(qt6)
_pkgfn=${pkgname/6-/}-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=('df2f4a230be4ea04f9798f2c19ab1413a3b8ec6a80bef359f50284235307b546'
qt6-base-nostrip.patch
libxkbcommon-1.6.patch::https://code.qt.io/cgit/qt/qtbase.git/patch/?id=8af35d27)
sha256sums=('039d53312acb5897a9054bd38c9ccbdab72500b71fdccdb3f4f0844b0dd39e0e'
'5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78'
'4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094')
'4b93f6a79039e676a56f9d6990a324a64a36f143916065973ded89adc621e094'
'f3e81eca8e41b93889943a20da94d683fb5b706cb0f9dc8b851d653df3a1bbf6')
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 < libxkbcommon-1.6.patch # Fix build with libxkbcommon 1.6
}
build() {

View File

@ -0,0 +1,42 @@
From 8af35d27e8f02bbb99aef4ac495ed406e50e3cca Mon Sep 17 00:00:00 2001
From: Liang Qi <liang.qi@qt.io>
Date: Tue, 10 Oct 2023 14:08:48 +0200
Subject: xkb: fix build with libxkbcommon 1.6.0 and later
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
A few XKB_KEY_dead_* defines got removed from 1.6.0. See also
https://github.com/xkbcommon/libxkbcommon/blob/6073565903488cb5b9a8d37fdc4a7c2f9d7ad04d/NEWS#L9-L14
https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/merge_requests/70/diffs?commit_id=cb44799b72f611eb4c9d7cc185bc3b09e070be08
Pick-to: 6.6 6.5 6.2 5.15
Fixes: QTBUG-117950
Change-Id: I55861868f2bb29c553d68365fa9b9b6ed01c9aea
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
---
src/gui/platform/unix/qxkbcommon.cpp | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/gui/platform/unix/qxkbcommon.cpp b/src/gui/platform/unix/qxkbcommon.cpp
index 26d87c5ff5..7b611790c6 100644
--- a/src/gui/platform/unix/qxkbcommon.cpp
+++ b/src/gui/platform/unix/qxkbcommon.cpp
@@ -237,10 +237,14 @@ static constexpr const auto KeyTbl = qMakeArray(
Xkb2Qt<XKB_KEY_dead_small_schwa, Qt::Key_Dead_Small_Schwa>,
Xkb2Qt<XKB_KEY_dead_capital_schwa, Qt::Key_Dead_Capital_Schwa>,
Xkb2Qt<XKB_KEY_dead_greek, Qt::Key_Dead_Greek>,
+/* The following four XKB_KEY_dead keys got removed in libxkbcommon 1.6.0
+ The define check is kind of version check here. */
+#ifdef XKB_KEY_dead_lowline
Xkb2Qt<XKB_KEY_dead_lowline, Qt::Key_Dead_Lowline>,
Xkb2Qt<XKB_KEY_dead_aboveverticalline, Qt::Key_Dead_Aboveverticalline>,
Xkb2Qt<XKB_KEY_dead_belowverticalline, Qt::Key_Dead_Belowverticalline>,
Xkb2Qt<XKB_KEY_dead_longsolidusoverlay, Qt::Key_Dead_Longsolidusoverlay>,
+#endif
// Special keys from X.org - This include multimedia keys,
// wireless/bluetooth/uwb keys, special launcher keys, etc.
--
cgit v1.2.3