qt6_base: use ICU backend for QTimeZone

This commit is contained in:
Gerasim Troeglazov
2024-10-04 18:23:52 +10:00
parent b67ef326eb
commit 63e1dd4a08
2 changed files with 65 additions and 42 deletions

View File

@@ -1,4 +1,4 @@
From dd7d76221e3b6357b13398c40f16bd062827a82b Mon Sep 17 00:00:00 2001
From b88ddea14b7521a6a8e429713e1e4714a77a37e7 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 10:16:14 +1000
Subject: Make sure libs are searched in the develop/ dir by CMake
@@ -19,10 +19,10 @@ index 24ed125..52f637e 100644
CMAKE_DLL_DIR = $$CMAKE_LIB_DIR
CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE
--
2.43.2
2.45.2
From 4b7d3728f0a1901aba12605f5fa7a41fc529a3d2 Mon Sep 17 00:00:00 2001
From 6e695d78e156f03dd7ce71f0dc0ed681f7452d29 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 10:16:34 +1000
Subject: Fix QStandartPaths for Haiku
@@ -81,20 +81,20 @@ index 93eba13..2862472 100644
case GenericConfigLocation:
paths += haikuStandardPath(B_SYSTEM_SETTINGS_DIRECTORY);
--
2.43.2
2.45.2
From 0098c2242857170ecdb048aac4b20723f7906f8e Mon Sep 17 00:00:00 2001
From 370790ec68e2743d8800a58d24bf46c4a9af9a79 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 10:16:55 +1000
Subject: QSslSocketPrivate::unixRootCertDirectories(): add ssl path for Haiku.
diff --git a/src/network/ssl/qsslsocket.cpp b/src/network/ssl/qsslsocket.cpp
index 1fe3344..a0dcdf4 100644
index cd0242d..ac30659 100644
--- a/src/network/ssl/qsslsocket.cpp
+++ b/src/network/ssl/qsslsocket.cpp
@@ -2957,6 +2957,7 @@ QList<QByteArray> QSslSocketPrivate::unixRootCertDirectories()
@@ -2962,6 +2962,7 @@ QList<QByteArray> QSslSocketPrivate::unixRootCertDirectories()
ba("/usr/local/ssl/certs/"), // Solaris
ba("/etc/openssl/certs/"), // BlackBerry
ba("/opt/openssl/certs/"), // HP-UX
@@ -103,10 +103,10 @@ index 1fe3344..a0dcdf4 100644
};
return QList<QByteArray>::fromReadOnlyData(dirs);
--
2.43.2
2.45.2
From 23aee867f41924b04aa5208a92f963827d2d5f0a Mon Sep 17 00:00:00 2001
From a3d0eddfae96557eb7e522c83b251c7eafeb3d41 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 10:45:27 +1000
Subject: Fix build for Haiku platform
@@ -126,10 +126,10 @@ index bfad10d..39e6d31 100644
# or gold under Linux) will not print any library search path. Need to use another
# invocation with different options (which in turn doesn't print include search
--
2.43.2
2.45.2
From c8396b3d15f8d9edf2a079983502e0c01a7e0df9 Mon Sep 17 00:00:00 2001
From 5068c399c5e9d4c4592b81d8792d18579e820456 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 10:45:56 +1000
Subject: Fix endian detection
@@ -153,10 +153,10 @@ index 0baac93..1d48cbc 100644
# endif
# endif
--
2.43.2
2.45.2
From 575d79a83151f59ccdedc038fbc50d115d1f10db Mon Sep 17 00:00:00 2001
From d70e473115ad4330157143ed6426250560ee6b33 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:11:52 +1000
Subject: Disable LibResolv for Haiku
@@ -176,10 +176,10 @@ index 80d386a..dd9ac9c 100644
#if QT_CONFIG(libresolv)
--
2.43.2
2.45.2
From 6247a30f7b643a04097833777d6e79476cb68c80 Mon Sep 17 00:00:00 2001
From 88d57d97cfc905bd3938d8658a263013ddd81121 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:15:38 +1000
Subject: Don't use ifaddrs for Haiku
@@ -199,10 +199,10 @@ index 116e7d0..9c7af42 100644
# ifndef SIOCGIFBRDADDR
# define SIOCGIFBRDADDR 0x8919
--
2.43.2
2.45.2
From e17cd0236e106db600a51d7d829484a0783e0968 Mon Sep 17 00:00:00 2001
From 01d7cd91a28d18b4426f022255456c4519f276be Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:15:58 +1000
Subject: Disable sharedmemory feature for bootstrap
@@ -221,10 +221,10 @@ index 7cceb2a..17fe3d8 100644
..
../../3rdparty/tinycbor/src
--
2.43.2
2.45.2
From 1071afb219fc9bd1a60786cd0154dfc62eab9698 Mon Sep 17 00:00:00 2001
From c0df68961a5d1c5a628f6d70901328aca41e921d Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:16:20 +1000
Subject: Fix build for x86_gcc2
@@ -244,17 +244,17 @@ index edef3c5..c9df584 100644
/* release the child */
#ifdef HAVE_EVENTFD
--
2.43.2
2.45.2
From 246384a15e0048d154b6ba70db5dcfdf953a45be Mon Sep 17 00:00:00 2001
From 0616b9f80c66c3e39a9fb944eaa85dd1376404ac Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:17:49 +1000
Subject: Implement QFilesystemWatcher for Haiku
diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt
index bf24eec..f28f64e 100644
index bbe8ba8..5e37053 100644
--- a/src/corelib/CMakeLists.txt
+++ b/src/corelib/CMakeLists.txt
@@ -939,6 +939,11 @@ qt_internal_extend_target(Core CONDITION MACOS AND QT_FEATURE_filesystemwatcher
@@ -642,10 +642,10 @@ index 0000000..0ae4bdf
+#endif // QFILESYSTEMWATCHER_HAIKU_P_H
+
--
2.43.2
2.45.2
From 67e71426951fbc54639b290e0c1b72f0394dff42 Mon Sep 17 00:00:00 2001
From c3f5e4847e1f9da4b06422715f67f1962496512c Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:18:17 +1000
Subject: Don't use AF_INET6 for new sockets
@@ -669,17 +669,17 @@ index b6df412..e7e2f17 100644
int socket = qt_safe_socket(domain, type, protocol, O_NONBLOCK);
--
2.43.2
2.45.2
From caa66e94f036f4b6c12333391f661a32b7c392d6 Mon Sep 17 00:00:00 2001
From 2fdaa03c1c58d24944b17145842899aaf50d739c Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:18:41 +1000
Subject: Disable Haswell CPU feature for plugins
diff --git a/src/corelib/plugin/qlibrary_unix.cpp b/src/corelib/plugin/qlibrary_unix.cpp
index e29207e..f0ab252 100644
index 1ad3a1f..c05185e 100644
--- a/src/corelib/plugin/qlibrary_unix.cpp
+++ b/src/corelib/plugin/qlibrary_unix.cpp
@@ -157,7 +157,7 @@ bool QLibraryPrivate::load_sys()
@@ -692,10 +692,10 @@ index e29207e..f0ab252 100644
auto transform = [](QStringList &list, void (*f)(QString *)) {
QStringList tmp;
--
2.43.2
2.45.2
From 9ea6145c509a6bc806c912211f22cdcc55800623 Mon Sep 17 00:00:00 2001
From ecc2a8357f6a841694692228b6dcfbd55a607066 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:19:25 +1000
Subject: Haiku build setup
@@ -745,10 +745,10 @@ index da6c871..bd085e2 100644
set(rpath_rel_base "NO_KNOWN_RPATH_REL_BASE")
endif()
--
2.43.2
2.45.2
From da54e8bb93551ebfd4763c5e510c53f24a2918a6 Mon Sep 17 00:00:00 2001
From 72f6b9d8ce93bfdab6376b0c0f0613701ae3ee20 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:21:18 +1000
Subject: Haiku: link against libnetwork
@@ -771,10 +771,10 @@ index c4e0324..db3feb5 100644
LIBRARIES
${FWCoreServices}
--
2.43.2
2.45.2
From 5dbf63417e2b190f2134788e0836230f877304df Mon Sep 17 00:00:00 2001
From 62c9afefb164bb9ff135efe1d1c2ae4a58a896c2 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:28:46 +1000
Subject: Fix elf parser for Haiku
@@ -858,17 +858,17 @@ index 0bbadb2..e454680 100644
return d;
}
--
2.43.2
2.45.2
From 2665b201ffa9ad3485c8256dd4b5d268278477b1 Mon Sep 17 00:00:00 2001
From 9f920bf8f17df116c974d8ec5180ac3906f4ef38 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:29:03 +1000
Subject: Don't use nl_langinfo
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
index 1ce2642..32c4f37 100644
index 4442812..2480073 100644
--- a/src/corelib/kernel/qcoreapplication.cpp
+++ b/src/corelib/kernel/qcoreapplication.cpp
@@ -621,7 +621,7 @@ void QCoreApplicationPrivate::initLocale()
@@ -881,10 +881,10 @@ index 1ce2642..32c4f37 100644
// FIXME: Shouldn't we still setlocale("UTF-8")?
# elif defined(Q_OS_ANDROID) && __ANDROID_API__ < __ANDROID_API_O__
--
2.43.2
2.45.2
From cd3a02eaea0789de1a13ff3f39608d3a6f3d1b85 Mon Sep 17 00:00:00 2001
From 58bb3a047858215e9f91bee4f5c1b0a57d8cd892 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 20 Oct 2023 12:30:12 +1000
Subject: Workaround for shm_open
@@ -906,10 +906,10 @@ index 582c662..0854906 100644
const int errorNumber = errno;
const auto function = "QSharedMemory::attach (shm_open)"_L1;
--
2.43.2
2.45.2
From 2cdc06b88bdf9c35be9d540003c8e2d2f570f18f Mon Sep 17 00:00:00 2001
From f41d61f73c7255b317d003e8f02530c6c6706d2a Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Sun, 14 Apr 2024 12:20:21 +1000
Subject: Disable DisconnectControllingTerminal
@@ -936,5 +936,28 @@ index fcbce92..7417b69 100644
// Apply UID and GID parameters last. This isn't expected to fail either:
// either we're trying to impersonate what we already are, or we're EUID or
--
2.43.2
2.45.2
From 39db5b9dd7f5d0203514962ade7cc56c30ff8cb6 Mon Sep 17 00:00:00 2001
From: Gerasim Troeglazov <3dEyes@gmail.com>
Date: Fri, 4 Oct 2024 18:22:17 +1000
Subject: Use ICU backend for QTimeZone
diff --git a/src/corelib/time/qtimezone.cpp b/src/corelib/time/qtimezone.cpp
index 12c53ce..5805c67 100644
--- a/src/corelib/time/qtimezone.cpp
+++ b/src/corelib/time/qtimezone.cpp
@@ -31,6 +31,8 @@ static QTimeZonePrivate *newBackendTimeZone()
#else
#if defined(Q_OS_DARWIN)
return new QMacTimeZonePrivate();
+#elif defined(Q_OS_HAIKU)
+ return new QIcuTimeZonePrivate();
#elif defined(Q_OS_ANDROID)
return new QAndroidTimeZonePrivate();
#elif defined(Q_OS_UNIX)
--
2.45.2

View File

@@ -8,7 +8,7 @@ COPYRIGHT="2015-2024 The Qt Company Ltd."
LICENSE="GNU LGPL v3
GNU GPL v3
GNU FDL v1"
REVISION="1"
REVISION="2"
QT_MIRROR_URI="https://qt-mirror.dannhauer.de/archive"
SOURCE_URI="$QT_MIRROR_URI/qt/${portVersion%.*}/$portVersion/submodules/qtbase-everywhere-src-$portVersion.tar.xz"
CHECKSUM_SHA256="c5f22a5e10fb162895ded7de0963328e7307611c688487b5d152c9ee64767599"