diff --git a/fix-build-error-for-loongarch64.patch b/fix-build-error-for-loongarch64.patch index d9c6ce85e53e8fc5453c2cb56373ab165f4b0f84..c2cc29fdf32f6dba7566b1a56a876075a3e9f857 100644 --- a/fix-build-error-for-loongarch64.patch +++ b/fix-build-error-for-loongarch64.patch @@ -1,24 +1,7 @@ -From a4ee1523dbcbd2e26e5c92298a612d60b204fd75 Mon Sep 17 00:00:00 2001 -From: Wenlong Zhang -Date: Wed, 17 May 2023 07:59:00 +0000 -Subject: [PATCH] fix build error for loongarch64 test000 - ---- - configure | 6 ++++++ - mkspecs/linux-g++-64/qmake.conf | 4 ++-- - mkspecs/solaris-g++-64/qmake.conf | 2 +- - src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h | 7 ++++++- - src/corelib/arch/loongarch64/arch.pri | 6 ++++++ - src/corelib/arch/qatomic_arch.h | 2 ++ - src/dbus/qdbusintegrator.cpp | 2 +- - 7 files changed, 24 insertions(+), 5 deletions(-) - create mode 100644 src/corelib/arch/loongarch64/arch.pri - -diff --git a/configure b/configure -index 226a602f..d3f10f08 100755 ---- a/configure -+++ b/configure -@@ -3273,6 +3273,12 @@ if [ -z "${CFG_HOST_ARCH}" ]; then +diff -Naru a/configure b/configure +--- a/configure 2024-12-04 14:10:56.033037094 +0800 ++++ b/configure 2024-12-04 14:12:21.583383690 +0800 +@@ -3279,6 +3279,12 @@ ;; esac ;; @@ -31,38 +14,9 @@ index 226a602f..d3f10f08 100755 *:*:*) if [ "$OPT_VERBOSE" = "yes" ]; then echo " Trying '$UNAME_MACHINE'..." -diff --git a/mkspecs/linux-g++-64/qmake.conf b/mkspecs/linux-g++-64/qmake.conf -index 222f6b7e..dd129afd 100644 ---- a/mkspecs/linux-g++-64/qmake.conf -+++ b/mkspecs/linux-g++-64/qmake.conf -@@ -12,8 +12,8 @@ CONFIG += qt warn_on release incremental link_prl gdb_dwarf_index - QT += core gui - QMAKE_INCREMENTAL_STYLE = sublib - --QMAKE_CFLAGS = -m64 --QMAKE_LFLAGS = -m64 -+QMAKE_CFLAGS = -+QMAKE_LFLAGS = - - include(../common/linux.conf) - include(../common/gcc-base-unix.conf) -diff --git a/mkspecs/solaris-g++-64/qmake.conf b/mkspecs/solaris-g++-64/qmake.conf -index 7bc7b9fd..2ecbaac8 100644 ---- a/mkspecs/solaris-g++-64/qmake.conf -+++ b/mkspecs/solaris-g++-64/qmake.conf -@@ -36,7 +36,7 @@ QMAKE_LEX = flex - QMAKE_LEXFLAGS = - QMAKE_YACC = yacc - QMAKE_YACCFLAGS = -d --QMAKE_CFLAGS = -m64 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ -+QMAKE_CFLAGS = -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ - QMAKE_CFLAGS_DEPS = -M - QMAKE_CFLAGS_WARN_ON = -Wall -W - QMAKE_CFLAGS_WARN_OFF = -w -diff --git a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h -index 635df39e..a9def901 100644 ---- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h -+++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h +diff -Naru a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h +--- a/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h 2024-12-04 14:10:52.647944243 +0800 ++++ b/src/3rdparty/webkit/Source/JavaScriptCore/wtf/Platform.h 2024-12-04 14:16:31.675244514 +0800 @@ -236,6 +236,11 @@ #define WTF_CPU_X86_64 1 #endif @@ -72,23 +26,21 @@ index 635df39e..a9def901 100644 +#define WTF_CPU_LOONGARCH64 1 +#endif + - /* CPU(ARM) - ARM, any version*/ - #if defined(arm) \ - || defined(__arm__) \ -@@ -1012,7 +1017,7 @@ + /* CPU(RISCV64) - RISCV64 */ + #if defined(__riscv) && defined(__riscv_xlen) && __riscv_xlen == 64 + #define WTF_CPU_RISCV64 1 +@@ -1017,7 +1022,7 @@ || CPU(SPARC64) \ || CPU(S390X) \ || CPU(PPC64) \ -- || CPU(MIPS64) || CPU(AARCH64) -+ || CPU(MIPS64) || CPU(AARCH64) || CPU(LOONGARCH64) +- || CPU(MIPS64) || CPU(AARCH64) || CPU(RISCV64) ++ || CPU(MIPS64) || CPU(AARCH64) || CPU(RISCV64) || CPU(LOONGARCH64) #define WTF_USE_JSVALUE64 1 #else #define WTF_USE_JSVALUE32_64 1 -diff --git a/src/corelib/arch/loongarch64/arch.pri b/src/corelib/arch/loongarch64/arch.pri -new file mode 100644 -index 00000000..7fe8c602 ---- /dev/null -+++ b/src/corelib/arch/loongarch64/arch.pri +diff -Naru a/src/corelib/arch/loongarch64/arch.pri b/src/corelib/arch/loongarch64/arch.pri +--- a/src/corelib/arch/loongarch64/arch.pri 1970-01-01 08:00:00.000000000 +0800 ++++ b/src/corelib/arch/loongarch64/arch.pri 2024-12-04 14:17:43.972228037 +0800 @@ -0,0 +1,6 @@ +# +# LoongArch 64 architecture @@ -96,32 +48,15 @@ index 00000000..7fe8c602 + +unix:SOURCES += ../generic/qatomic_generic_unix.cpp +win32:SOURCES += ../generic/qatomic_generic_windows.cpp -diff --git a/src/corelib/arch/qatomic_arch.h b/src/corelib/arch/qatomic_arch.h -index c91c20b3..d8b5a308 100644 ---- a/src/corelib/arch/qatomic_arch.h -+++ b/src/corelib/arch/qatomic_arch.h -@@ -96,6 +96,8 @@ QT_BEGIN_HEADER - # include "QtCore/qatomic_generic.h" - #elif defined(QT_ARCH_AARCH64) +diff -Naru a/src/corelib/arch/qatomic_arch.h b/src/corelib/arch/qatomic_arch.h +--- a/src/corelib/arch/qatomic_arch.h 2024-12-04 14:10:54.166985909 +0800 ++++ b/src/corelib/arch/qatomic_arch.h 2024-12-04 14:21:34.532553629 +0800 +@@ -98,6 +98,8 @@ # include "QtCore/qatomic_aarch64.h" + #elif defined(QT_ARCH_RISCV64) + # include "QtCore/qatomic_generic.h" +#elif defined(QT_ARCH_LOONGARCH64) +# include "QtCore/qatomic_generic.h" #else # error "Qt has not been ported to this architecture" #endif -diff --git a/src/dbus/qdbusintegrator.cpp b/src/dbus/qdbusintegrator.cpp -index eaf3e291..10b246ca 100644 ---- a/src/dbus/qdbusintegrator.cpp -+++ b/src/dbus/qdbusintegrator.cpp -@@ -73,7 +73,7 @@ QT_BEGIN_NAMESPACE - static bool isDebugging; - #define qDBusDebug if (!::isDebugging); else qDebug - --Q_GLOBAL_STATIC_WITH_ARGS(const QString, orgFreedesktopDBusString, (QLatin1String(DBUS_SERVICE_DBUS))) -+Q_GLOBAL_STATIC_WITH_ARGS(QString, orgFreedesktopDBusString, (QLatin1String(DBUS_SERVICE_DBUS))) - - static inline QString dbusServiceString() - { return *orgFreedesktopDBusString(); } --- -2.33.0 - diff --git a/qt.spec b/qt.spec index ef0e1ff48440b8387353e04797adb3b3d1cc0077..3e3776ddc88742689d2d193edd22fdf82faef4ae 100644 --- a/qt.spec +++ b/qt.spec @@ -13,7 +13,7 @@ Name: qt Epoch: 1 Version: 4.8.7 -Release: 61 +Release: 62 Summary: A software toolkit for developing applications License: (LGPLv2 with exceptions or GPLv3 with exceptions) and ASL 2.0 and BSD and FTL and MIT URL: https://www.qt.io/ @@ -74,12 +74,8 @@ Patch42: qt-everywhere-opensource-src-4.8.6-systemtrayicon.patch Patch43: stack-protector.patch Patch44: 0001-Redo-the-Q_FOREACH-loop-control-without-GCC-statemen.patch Patch45: qt-everywhere-opensource-src-4.8.7-openssl3.patch -%ifarch riscv64 Patch46: qt-everywhere-opensource-src-4.8.7-riscv64.patch -%endif -%ifarch loongarch64 -Patch47: fix-build-error-for-loongarch64.patch -%endif +Patch47: fix-build-error-for-loongarch64.patch Patch48: fix-build-error-about-messagemodel.patch # https://codereview.qt-project.org/c/qt/qtscript/+/308863 Patch49: fix-lto-build.patch @@ -165,8 +161,8 @@ if [ "%{_lib}" == "lib64" ] ; then sed -i -e "s,/lib /usr/lib,/%{_lib} /usr/%{_lib},g" config.tests/{unix,x11}/*.test fi -# No -m64/-m32 on RISC-V -%ifarch riscv64 +# No -m64/-m32 on RISC-V and loongarch64 +%ifarch loongarch64 riscv64 sed -i -e 's,-m32,,' mkspecs/linux-g++-32/qmake.conf sed -i -e 's,-m64,,' mkspecs/linux-g++-64/qmake.conf %endif @@ -446,6 +442,9 @@ fi %{_qt4_prefix}/examples/ %changelog +* Thu Jan 23 2025 Jia Chao - 1:4.8.7-62 +- Fix: use the same src build for all arches. + * Sat Dec 07 2024 Funda Wang - 1:4.8.7-61 - fix LTO build - cleanup spec