mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-08-29 13:14:01 +02:00
depends: Qt 5.15.16
This commit is contained in:
@@ -1,55 +0,0 @@
|
||||
qmake: Don't error out if QMAKE_DEFAULT_LIBDIRS is empty on macOS
|
||||
|
||||
The new linker in Xcode 15 doesn't provide any default linker or
|
||||
framework paths when requested via -v, but still seems to use the
|
||||
default paths documented in the ld man page.
|
||||
|
||||
We trust that linker will do the right thing, even if we don't
|
||||
know of its default linker paths.
|
||||
|
||||
We also need to opt out of the default fallback logic to
|
||||
set the libdirs to /lib and /usr/lib.
|
||||
|
||||
This may result in UnixMakefileGenerator::findLibraries finding
|
||||
different libraries than expected, if additional paths are
|
||||
passed with -L, which will then take precedence for qmake,
|
||||
even if the linker itself will use the library from the
|
||||
SDK's default paths. This should hopefully not be an issue
|
||||
in practice, as we don't turn -lFoo into absolute paths in
|
||||
qmake, so the only risk is that we're picking up the wrong
|
||||
prl files and adding additional dependencies that the lib
|
||||
in the SDK doesn't have.
|
||||
|
||||
Upstream commits:
|
||||
- Qt 5.15.16: Not yet publicly available.
|
||||
- Qt dev: cdf64b0e47115cc473e1afd1472b4b09e130b2a5
|
||||
|
||||
For other Qt branches see
|
||||
https://codereview.qt-project.org/q/I2347b26e2df0828471373b0e15b8c9089274c65d
|
||||
|
||||
--- old/qtbase/mkspecs/features/toolchain.prf
|
||||
+++ new/qtbase/mkspecs/features/toolchain.prf
|
||||
@@ -288,9 +288,12 @@ isEmpty($${target_prefix}.INCDIRS) {
|
||||
}
|
||||
}
|
||||
}
|
||||
- isEmpty(QMAKE_DEFAULT_LIBDIRS)|isEmpty(QMAKE_DEFAULT_INCDIRS): \
|
||||
+ isEmpty(QMAKE_DEFAULT_INCDIRS): \
|
||||
!integrity: \
|
||||
- error("failed to parse default search paths from compiler output")
|
||||
+ error("failed to parse default include paths from compiler output")
|
||||
+ isEmpty(QMAKE_DEFAULT_LIBDIRS): \
|
||||
+ !integrity:!darwin: \
|
||||
+ error("failed to parse default library paths from compiler output")
|
||||
QMAKE_DEFAULT_LIBDIRS = $$unique(QMAKE_DEFAULT_LIBDIRS)
|
||||
} else: ghs {
|
||||
cmd = $$QMAKE_CXX $$QMAKE_CXXFLAGS -$${LITERAL_HASH} -o /tmp/fake_output /tmp/fake_input.cpp
|
||||
@@ -412,7 +415,7 @@ isEmpty($${target_prefix}.INCDIRS) {
|
||||
QMAKE_DEFAULT_INCDIRS = $$split(INCLUDE, $$QMAKE_DIRLIST_SEP)
|
||||
}
|
||||
|
||||
- unix:if(!cross_compile|host_build) {
|
||||
+ unix:!darwin:if(!cross_compile|host_build) {
|
||||
isEmpty(QMAKE_DEFAULT_INCDIRS): QMAKE_DEFAULT_INCDIRS = /usr/include /usr/local/include
|
||||
isEmpty(QMAKE_DEFAULT_LIBDIRS): QMAKE_DEFAULT_LIBDIRS = /lib /usr/lib
|
||||
}
|
@@ -14,36 +14,3 @@ and https://bugreports.qt.io/browse/QTBUG-114316
|
||||
# include <unordered_set>
|
||||
# include <memory_resource>
|
||||
#else
|
||||
|
||||
--- a/qtbase/src/corelib/global/qcompilerdetection.h
|
||||
+++ b/qtbase/src/corelib/global/qcompilerdetection.h
|
||||
@@ -1055,16 +1055,22 @@
|
||||
# endif // !_HAS_CONSTEXPR
|
||||
# endif // !__GLIBCXX__ && !_LIBCPP_VERSION
|
||||
# endif // Q_OS_QNX
|
||||
-# if (defined(Q_CC_CLANG) || defined(Q_CC_INTEL)) && defined(Q_OS_MAC) && defined(__GNUC_LIBSTD__) \
|
||||
- && ((__GNUC_LIBSTD__-0) * 100 + __GNUC_LIBSTD_MINOR__-0 <= 402)
|
||||
+# if (defined(Q_CC_CLANG) || defined(Q_CC_INTEL)) && defined(Q_OS_MAC)
|
||||
+# if defined(__GNUC_LIBSTD__) && ((__GNUC_LIBSTD__-0) * 100 + __GNUC_LIBSTD_MINOR__-0 <= 402)
|
||||
// Apple has not updated libstdc++ since 2007, which means it does not have
|
||||
// <initializer_list> or std::move. Let's disable these features
|
||||
-# undef Q_COMPILER_INITIALIZER_LISTS
|
||||
-# undef Q_COMPILER_RVALUE_REFS
|
||||
-# undef Q_COMPILER_REF_QUALIFIERS
|
||||
+# undef Q_COMPILER_INITIALIZER_LISTS
|
||||
+# undef Q_COMPILER_RVALUE_REFS
|
||||
+# undef Q_COMPILER_REF_QUALIFIERS
|
||||
// Also disable <atomic>, since it's clearly not there
|
||||
-# undef Q_COMPILER_ATOMICS
|
||||
-# endif
|
||||
+# undef Q_COMPILER_ATOMICS
|
||||
+# endif
|
||||
+# if defined(__cpp_lib_memory_resource) \
|
||||
+ && ((defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED < 140000) \
|
||||
+ || (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED < 170000))
|
||||
+# undef __cpp_lib_memory_resource // Only supported on macOS 14 and iOS 17
|
||||
+# endif
|
||||
+# endif // (defined(Q_CC_CLANG) || defined(Q_CC_INTEL)) && defined(Q_OS_MAC)
|
||||
# if defined(Q_CC_CLANG) && defined(Q_CC_INTEL) && Q_CC_INTEL >= 1500
|
||||
// ICC 15.x and 16.0 have their own implementation of std::atomic, which is activated when in Clang mode
|
||||
// (probably because libc++'s <atomic> on OS X failed to compile), but they're missing some
|
||||
|
@@ -1,31 +0,0 @@
|
||||
From a566e156b3fa07b566ddbf6801b517a9dba04fa3 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Adler <madler@alumni.caltech.edu>
|
||||
Date: Sat, 29 Jul 2023 22:13:09 -0700
|
||||
Subject: [PATCH] Avoid compiler complaints if _TIME_BITS defined when building
|
||||
zlib.
|
||||
|
||||
zlib does not use time_t, so _TIME_BITS is irrelevant. However it
|
||||
may be defined anyway as part of a sledgehammer indiscriminately
|
||||
applied to all builds.
|
||||
|
||||
From https://github.com/madler/zlib/commit/a566e156b3fa07b566ddbf6801b517a9dba04fa3.patch
|
||||
---
|
||||
qtbase/src/3rdparty/zlib/src/gzguts.h | 5 ++---
|
||||
1 file changed, 2 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/qtbase/src/3rdparty/zlib/src/gzguts.h b/qtbase/src/3rdparty/zlib/src/gzguts.h
|
||||
index e23f831f5..f9375047e 100644
|
||||
--- a/qtbase/src/3rdparty/zlib/src/gzguts.h
|
||||
+++ b/qtbase/src/3rdparty/zlib/src/gzguts.h
|
||||
@@ -26,9 +26,8 @@
|
||||
# ifndef _LARGEFILE_SOURCE
|
||||
# define _LARGEFILE_SOURCE 1
|
||||
# endif
|
||||
-# ifdef _FILE_OFFSET_BITS
|
||||
-# undef _FILE_OFFSET_BITS
|
||||
-# endif
|
||||
+# undef _FILE_OFFSET_BITS
|
||||
+# undef _TIME_BITS
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_HIDDEN
|
Reference in New Issue
Block a user