dev-qt/qtbase: drop 6.5.3-r1

Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
This commit is contained in:
Ionen Wolkens
2023-12-19 14:40:49 -05:00
parent 8e12fb0da7
commit dc370b35ba
4 changed files with 0 additions and 399 deletions

View File

@@ -1,2 +1 @@
DIST qtbase-everywhere-src-6.5.3.tar.xz 47142456 BLAKE2B 5b4c774b7199563dc7f2aebf9b2b531d851ee49bc038212f4970eeb43a17c364710432708f82a518eee6692ab123d78b642c234d9548d5b553f689a43aa05ee6 SHA512 31c6c01d466f1e01f18d6dcee593360c08ee83ad0a6be495a8eba023faad628cf07ce7285426fabfd247db306319e9a64da329682c99a712a282e32f7493cdb9
DIST qtbase-everywhere-src-6.6.1.tar.xz 48370760 BLAKE2B 2dd551d15eef30c7d9a5f4c406143d6f8908d7ebade9daf9fbd3d82a25765425956f2cb8689c50f87f6477de2150eee7b820ef25bb4355c51e7e7fad3ef73005 SHA512 93e77b9b077a3acd5607b643db282fdd7ed0bdfa07df74c3f0d2285afeb1672a6fa229a7e7a6c8a462701305fc22ffef20c212d906484e50fb5cdb706a7b72e1

View File

@@ -1,27 +0,0 @@
Avoid crash that happens for some users in qsb, qmake, and
potentially other Qt tools when ran under sandbox leading
to build failures for qtdeclarative and other packages.
Note that this is the initial (simple) version of the patch
to ensure no issues, a more proper fix should land upstream
eventually.
https://bugs.gentoo.org/908809
https://bugs.gentoo.org/908816
https://bugs.gentoo.org/913493
https://bugs.gentoo.org/915695
https://codereview.qt-project.org/c/qt/qtbase/+/513140
From: Huang Rui <vowstar@users.noreply.github.com>
Date: Fri, 20 Oct 2023 10:16:01 +0800
Subject: [PATCH] folkfd_linux,c: set stack size to 8192
--- a/src/3rdparty/forkfd/forkfd_linux.c
+++ b/src/3rdparty/forkfd/forkfd_linux.c
@@ -157,7 +157,7 @@ static int system_forkfd_pidfd_set_flags(int pidfd, int flags)
int system_vforkfd(int flags, pid_t *ppid, int (*childFn)(void *), void *token, int *system)
{
- __attribute__((aligned(64))) char childStack[4096];
+ __attribute__((aligned(64))) char childStack[8192];
pid_t pid;
int pidfd;
unsigned long cloneflags = CLONE_PIDFD | CLONE_VFORK | CLONE_VM | SIGCHLD;

View File

@@ -1,18 +0,0 @@
These were removed in libxkbcommon-1.6.0[1] and were apparently
unnecesary. Usage results in build failure.
Just a quick fix while waiting for what [2] comes up with.
[1] https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/merge_requests/70
[2] https://bugreports.qt.io/browse/QTBUG-117950
--- a/src/gui/platform/unix/qxkbcommon.cpp
+++ b/src/gui/platform/unix/qxkbcommon.cpp
@@ -242,4 +242,4 @@
- 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>,
+ Xkb2Qt<0xfe90, Qt::Key_Dead_Lowline>,
+ Xkb2Qt<0xfe91, Qt::Key_Dead_Aboveverticalline>,
+ Xkb2Qt<0xfe92, Qt::Key_Dead_Belowverticalline>,
+ Xkb2Qt<0xfe93, Qt::Key_Dead_Longsolidusoverlay>,

View File

@@ -1,353 +0,0 @@
# Copyright 2021-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic qt6-build toolchain-funcs
DESCRIPTION="Cross-platform application development framework"
if [[ ${QT6_BUILD_TYPE} == release ]]; then
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~loong ~x86"
fi
declare -A QT6_IUSE=(
[global]="+ssl +udev zstd"
[core]="icu"
[modules]="+concurrent +dbus +gui +network +sql +xml"
[gui]="
+X accessibility eglfs evdev gles2-only +libinput
opengl tslib vulkan +widgets
"
[network]="brotli gssapi libproxy sctp"
[sql]="mysql oci8 odbc postgres +sqlite"
[widgets]="cups gtk"
[optfeature]="nls wayland" #810802,864509
)
IUSE="${QT6_IUSE[*]}"
REQUIRED_USE="
$(
printf '%s? ( gui ) ' ${QT6_IUSE[gui]//+/}
printf '%s? ( network ) ' ${QT6_IUSE[network]//+/}
printf '%s? ( sql ) ' ${QT6_IUSE[sql]//+/}
printf '%s? ( gui widgets ) ' ${QT6_IUSE[widgets]//+/}
)
accessibility? ( X dbus )
eglfs? ( opengl )
gles2-only? ( opengl )
gui? ( || ( X eglfs wayland ) )
libinput? ( udev )
sql? ( || ( ${QT6_IUSE[sql]//+/} ) )
test? ( icu sql? ( sqlite ) )
"
# groups:
# - global (configure.cmake)
# - qtcore (src/corelib/configure.cmake)
# - qtgui (src/gui/configure.cmake)
# - qtnetwork (src/network/configure.cmake)
# - qtprintsupport (src/printsupport/configure.cmake) [gui+widgets]
# - qtsql (src/plugins/sqldrivers/configure.cmake)
RDEPEND="
sys-libs/zlib:=
ssl? ( dev-libs/openssl:= )
udev? ( virtual/libudev:= )
zstd? ( app-arch/zstd:= )
app-crypt/libb2
dev-libs/double-conversion:=
dev-libs/glib:2
dev-libs/libpcre2:=[pcre16,unicode(+)]
icu? ( dev-libs/icu:= )
dbus? ( sys-apps/dbus )
gui? (
media-libs/fontconfig
media-libs/freetype:2
media-libs/harfbuzz:=
media-libs/libjpeg-turbo:=
media-libs/libpng:=
x11-libs/libdrm
x11-libs/libxkbcommon[X?]
X? (
x11-libs/libICE
x11-libs/libSM
x11-libs/libX11
x11-libs/libxcb:=
x11-libs/xcb-util-cursor
x11-libs/xcb-util-image
x11-libs/xcb-util-keysyms
x11-libs/xcb-util-renderutil
x11-libs/xcb-util-wm
)
accessibility? ( app-accessibility/at-spi2-core:2 )
eglfs? ( media-libs/mesa[gbm(+)] )
evdev? ( sys-libs/mtdev )
libinput? ( dev-libs/libinput:= )
opengl? (
gles2-only? ( media-libs/libglvnd )
!gles2-only? ( media-libs/libglvnd[X?] )
)
tslib? ( x11-libs/tslib )
widgets? (
cups? ( net-print/cups )
gtk? (
x11-libs/gdk-pixbuf:2
x11-libs/gtk+:3
x11-libs/pango
)
)
)
network? (
brotli? ( app-arch/brotli:= )
gssapi? ( virtual/krb5 )
libproxy? ( net-libs/libproxy )
)
sql? (
mysql? ( dev-db/mysql-connector-c:= )
oci8? ( dev-db/oracle-instantclient:=[sdk] )
odbc? ( dev-db/unixODBC )
postgres? ( dev-db/postgresql:* )
sqlite? ( dev-db/sqlite:3 )
)
"
DEPEND="
${RDEPEND}
X? ( x11-base/xorg-proto )
gui? (
vulkan? ( dev-util/vulkan-headers )
)
network? (
sctp? ( net-misc/lksctp-tools )
)
test? (
elibc_musl? ( sys-libs/timezone-data )
)
"
BDEPEND="zstd? ( app-arch/libarchive[zstd] )" #910392
PDEPEND="
nls? ( ~dev-qt/qttranslations-${PV}:6 )
wayland? ( ~dev-qt/qtwayland-${PV}:6 )
"
PATCHES=(
"${FILESDIR}"/${PN}-6.5.2-hppa-forkfd-grow-stack.patch
"${FILESDIR}"/${PN}-6.5.2-no-glx.patch
"${FILESDIR}"/${PN}-6.5.2-no-symlink-check.patch
"${FILESDIR}"/${PN}-6.5.3-xkbcommon160.patch
"${FILESDIR}"/${PN}-6.5.3-forkfd-childstack-size.patch
)
src_prepare() {
qt6-build_src_prepare
if use test; then
# test itself has -Werror=strict-aliasing issues, drop for simplicity
sed -e '/add_subdirectory(qsharedpointer)/d' \
-i tests/auto/corelib/tools/CMakeLists.txt || die
fi
}
src_configure() {
local mycmakeargs=(
-DBUILD_WITH_PCH=OFF
-DINSTALL_ARCHDATADIR="${QT6_ARCHDATADIR}"
-DINSTALL_BINDIR="${QT6_BINDIR}"
-DINSTALL_DATADIR="${QT6_DATADIR}"
-DINSTALL_DOCDIR="${QT6_DOCDIR}"
-DINSTALL_EXAMPLESDIR="${QT6_EXAMPLESDIR}"
-DINSTALL_INCLUDEDIR="${QT6_HEADERDIR}"
-DINSTALL_LIBDIR="${QT6_LIBDIR}"
-DINSTALL_LIBEXECDIR="${QT6_LIBEXECDIR}"
-DINSTALL_MKSPECSDIR="${QT6_MKSPECSDIR}"
-DINSTALL_PLUGINSDIR="${QT6_PLUGINDIR}"
-DINSTALL_QMLDIR="${QT6_QMLDIR}"
-DINSTALL_SYSCONFDIR="${QT6_SYSCONFDIR}"
-DINSTALL_TRANSLATIONSDIR="${QT6_TRANSLATIONDIR}"
$(qt_feature ssl openssl)
$(qt_feature ssl openssl_linked)
$(qt_feature udev libudev)
$(qt_feature zstd)
# qtcore
$(qt_feature icu)
# tools
-DQT_FEATURE_androiddeployqt=OFF
# modules
$(qt_feature concurrent)
$(qt_feature dbus)
$(qt_feature gui)
$(qt_feature network)
$(qt_feature sql)
# trivial, and is often needed (sometimes even when not building tests)
-DQT_FEATURE_testlib=ON
$(qt_feature xml)
)
use gui && mycmakeargs+=(
$(qt_feature X xcb)
$(qt_feature X system_xcb_xinput)
$(qt_feature X xkbcommon_x11)
$(cmake_use_find_package X X11) # needed for truly no automagic
$(qt_feature accessibility accessibility_atspi_bridge)
$(qt_feature eglfs)
$(qt_feature evdev)
$(qt_feature evdev mtdev)
$(qt_feature libinput)
$(qt_feature tslib)
$(qt_feature vulkan)
$(qt_feature widgets)
-DINPUT_opengl=$(usex opengl $(usex gles2-only es2 desktop) no)
-DQT_FEATURE_system_textmarkdownreader=OFF # TODO?: package md4c
) && use widgets && mycmakeargs+=(
# note: qtprintsupport is enabled w/ gui+widgets regardless of USE=cups
$(qt_feature cups)
$(qt_feature gtk gtk3)
)
use network && mycmakeargs+=(
$(qt_feature brotli)
$(qt_feature gssapi)
$(qt_feature libproxy)
$(qt_feature sctp)
$(usev test -DQT_SKIP_DOCKER_COMPOSE=ON)
)
use sql && mycmakeargs+=(
-DQT_FEATURE_sql_db2=OFF # unpackaged
-DQT_FEATURE_sql_ibase=OFF # unpackaged
$(qt_feature mysql sql_mysql)
$(qt_feature oci8 sql_oci)
$(usev oci8 -DOracle_ROOT="${ESYSROOT}"/usr/$(get_libdir)/oracle/client)
$(qt_feature odbc sql_odbc)
$(qt_feature postgres sql_psql)
$(qt_feature sqlite sql_sqlite)
$(qt_feature sqlite system_sqlite)
-DQT_FEATURE_sql_tds=OFF # currently a no-op in CMakeLists.txt
)
if use amd64 || use x86; then
# see bug #913400 for explanations
local cpufeats=(
# list of checked cpu features in configure.cmake
avx avx2 avx512{bw,cd,dq,er,f,ifma,pf,vbmi,vbmi2,vl}
f16c rdrnd rdseed sse2 sse3 sse4_1 sse4_2 ssse3 vaes
)
# handle odd ones out not matching -m* and macros (keep same order)
local cpuflags=( "${cpufeats[@]}" aes sha )
local cpufeats+=( aesni shani )
local -a intrins
IFS=' ' read -ra intrins < <(
: "$(test-flags-CXX "${cpuflags[@]/#/-m}")"
$(tc-getCXX) -E -P ${_} ${CXXFLAGS} ${CPPFLAGS} - <<-EOF | tail -n 1
#if defined(__GNUC__) && (defined(__x86_64__) || defined(__i386__))
#include <x86intrin.h>
#endif
$(printf '__%s__ ' "${cpuflags[@]^^}")
EOF
assert
)
# do nothing and leave to qtbase if no macros expanded (test failed?)
if [[ \ ${intrins[*]} == *\ [^_\ ]* ]]; then
local -i i
for ((i=0; i<${#cpufeats[@]}; i++)); do
[[ ${intrins[i]} == __* ]] &&
mycmakeargs+=( -DQT_FEATURE_${cpufeats[i]}=OFF )
done
mycmakeargs+=( -DTEST_x86intrin=ON )
fi
fi
qt6-build_src_configure
}
src_test() {
local -x TZ=UTC
local -x LC_TIME=C
local CMAKE_SKIP_TESTS=(
# broken with out-of-source + if qtbase is not already installed
tst_moc
tst_qmake
# needs x11/opengl, we *could* run these but tend to be flaky
# when opengl rendering is involved (even if software-only)
tst_qopengl{,config,widget,window}
tst_qgraphicsview
tst_qx11info
# fails with network sandbox
tst_qdnslookup
# typical to lack SCTP support on non-generic kernels
tst_qsctpsocket
# randomly fails without -j1, and not worth it over this (bug #916181)
tst_qfiledialog{,2}
# these can be flaky depending on the environment/toolchain
tst_qlogging # backtrace log test can easily vary
tst_q{,raw}font # affected by available fonts / settings (bug #914737)
tst_qprinter # checks system's printers (bug #916216)
tst_qstorageinfo # checks mounted filesystems
# flaky due to using different test framework and fails with USE=-gui
tst_selftests
# known failing when using clang+glibc+stdc++, needs looking into
tst_qthread
# partially failing on x86 chroots and seemingly(?) harmless (dev-qt
# revdeps tests pass), skip globally to avoid keywording flakiness
tst_json
tst_qcolorspace
tst_qdoublevalidator
tst_qglobal
tst_qglyphrun
tst_qvectornd
tst_rcc
# similarly, but on armv7 and potentially others (bug #914028)
tst_qlineedit
tst_qpainter
# likewise, known failing at least on BE arches (bug #914033,914371)
tst_qimagereader
tst_qimagewriter
tst_qpluginloader
# partially broken on llvm-musl, needs looking into but skip to have
# a baseline for regressions (rest of dev-qt still passes with musl)
$(usev elibc_musl '
tst_qicoimageformat
tst_qimagereader
tst_qimage
')
# fails due to hppa's NaN handling, needs looking into (bug #914371)
$(usev hppa '
tst_qcborvalue
tst_qnumeric
')
# note: for linux, upstream only really runs+maintains tests for amd64
# https://doc.qt.io/qt-6/supported-platforms.html
)
qt6-build_src_test
}
src_install() {
qt6-build_src_install
if use test; then
local delete_bins=( # need a better way to handle this
clientserver copier crashingServer desktopsettingsaware_helper
echo fileWriterProcess modal_helper nospace 'one space'
paster qcommandlineparser_test_helper qfileopeneventexternal
socketprocess syslocaleapp tst_qhashseed_helper 'two space s'
write-read-write
)
local delete=( # sigh
"${D}${QT6_BINDIR}"/test*
"${delete_bins[@]/#/${D}${QT6_BINDIR}/}"
)
# using -f given not tracking which tests may be skipped or not
rm -rf -- "${delete[@]}" || die
fi
}