ALT Linux Bugzilla
– Attachment 13454 Details for
Bug 46477
qt6-base: ошибка сборки на архитектуре LoongArch
New bug
|
Search
|
[?]
|
Help
Register
|
Log In
[x]
|
Forgot Password
Login:
[x]
|
EN
|
RU
[patch]
исправление проблемы
0001-Fixed-compilation-on-LoongArch-lp64d.patch (text/plain), 5.05 KB, created by
Alexey Sheplyakov
on 2023-06-12 12:22:44 MSK
(
hide
)
Description:
исправление проблемы
Filename:
MIME Type:
Creator:
Alexey Sheplyakov
Created:
2023-06-12 12:22:44 MSK
Size:
5.05 KB
patch
obsolete
>From 57924e55c5fe753d6edd5f24f5f756411e3abb65 Mon Sep 17 00:00:00 2001 >From: Alexey Sheplyakov <asheplyakov@basealt.ru> >Date: Sun, 11 Jun 2023 17:19:45 +0000 >Subject: [PATCH] Fixed compilation on LoongArch (lp64d) > >define Q_PROCESSOR_LOONGARCH_64, word size, etc. Fixes the following error: > >FAILED: src/corelib/CMakeFiles/Core.dir/plugin/qelfparser_p.cpp.o >/usr/bin/c++ -DBACKTRACE_HEADER=\"execinfo.h\" -DCore_EXPORTS -DELF_INTERPRETER=\"/lib64/ld-linux-loongarch-lp64d.so.1\" -DQT_ASCII_CAST_WARNINGS -DQT_BUILDING_QT -DQT_BUILD_CORE_LIB -DQT_DEPRECATED_WARNINGS -DQT_DEPRECATED_WARNINGS_SINCE=0x070000 -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_LEAN_HEADERS=1 -DQT_MOC_COMPAT -DQT_NO_CAST_TO_ASCII -DQT_NO_DEBUG -DQT_NO_FOREACH -DQT_NO_JAVA_STYLE_ITERATORS -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT -DQT_NO_USING_NAMESPACE -DQT_TYPESAFE_FLAGS -DQT_USE_QSTRINGBUILDER -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/src/corelib/Core_autogen/include -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/include -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/include/QtCore -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/src/corelib -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/src/corelib -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/src/corelib/global -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/src/corelib/kernel -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/src/corelib/../3rdparty/tinycbor/src -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/include/QtCore/6.4.2 -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/BUILD/include/QtCore/6.4.2/QtCore -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/src/corelib/../3rdparty/forkfd -I/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/mkspecs/linux-g++ -isystem /usr/include/glib-2.0 -isystem /usr/lib64/glib-2.0/include -pipe -frecord-gcc-switches -Wall -g -O2 -fPIC -DPIC -g -DNDEBUG -O3 -flto -fno-fat-lto-objects -fPIC -fvisibility=hidden -fvisibility-inlines-hidden -Wall -Wextra -Wsuggest-override -std=c++17 -MD -MT src/corelib/CMakeFiles/Core.dir/plugin/qelfparser_p.cpp.o -MF src/corelib/CMakeFiles/Core.dir/plugin/qelfparser_p.cpp.o.d -o src/corelib/CMakeFiles/Core.dir/plugin/qelfparser_p.cpp.o -c /usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/src/corelib/plugin/qelfparser_p.cpp >/usr/src/RPM/BUILD/qtbase-everywhere-src-6.4.2/src/corelib/plugin/qelfparser_p.cpp:147:4: error: #error "Unknown Q_PROCESSOR_xxx macro, please update." > 147 | # error "Unknown Q_PROCESSOR_xxx macro, please update." > | ^~~~~ >--- > alt-loongarch64.patch | 47 +++++++++++++++++++++++++++++++++++++++++++ > qtbase.spec | 2 ++ > 2 files changed, 49 insertions(+) > create mode 100644 alt-loongarch64.patch > >diff --git a/alt-loongarch64.patch b/alt-loongarch64.patch >new file mode 100644 >index 00000000..987600d4 >--- /dev/null >+++ b/alt-loongarch64.patch >@@ -0,0 +1,47 @@ >+diff --git a/src/corelib/global/archdetect.cpp b/src/corelib/global/archdetect.cpp >+index a0ce5baa..5bbc75e4 100644 >+--- a/src/corelib/global/archdetect.cpp >++++ b/src/corelib/global/archdetect.cpp >+@@ -23,6 +23,8 @@ >+ # define ARCH_PROCESSOR "x86_64" >+ #elif defined(Q_PROCESSOR_IA64) >+ # define ARCH_PROCESSOR "ia64" >++#elif defined(Q_PROCESSOR_LOONGARCH_64) >++# define ARCH_PROCESSOR "loongarch64" >+ #elif defined(Q_PROCESSOR_MIPS_64) >+ # define ARCH_PROCESSOR "mips64" >+ #elif defined(Q_PROCESSOR_MIPS) >+diff --git a/src/corelib/global/qprocessordetection.h b/src/corelib/global/qprocessordetection.h >+index f18cbf32..d1d9f59c 100644 >+--- a/src/corelib/global/qprocessordetection.h >++++ b/src/corelib/global/qprocessordetection.h >+@@ -187,6 +187,16 @@ >+ # define Q_PROCESSOR_WORDSIZE 8 >+ // Q_BYTE_ORDER not defined, use endianness auto-detection >+ >++/* >++ LoongArch family, supported variant: lp64d ABI >++ >++ LoongArch is little-endian >++*/ >++#elif defined(__loongarch64) >++ #define Q_PROCESSOR_LOONGARCH >++ #define Q_PROCESSOR_LOONGARCH_64 >++ #define Q_PROCESSOR_WORDSIZE 8 >++ #define Q_BYTE_ORDER Q_LITTLE_ENDIAN >+ /* >+ MIPS family, known revisions: I, II, III, IV, 32, 64 >+ >+diff --git a/src/corelib/plugin/qelfparser_p.cpp b/src/corelib/plugin/qelfparser_p.cpp >+index 6ebfaff2..06c77efc 100644 >+--- a/src/corelib/plugin/qelfparser_p.cpp >++++ b/src/corelib/plugin/qelfparser_p.cpp >+@@ -120,6 +120,8 @@ struct ElfMachineCheck >+ EM_BLACKFIN >+ #elif defined(Q_PROCESSOR_IA64) >+ EM_IA_64 >++#elif defined(Q_PROCESSOR_LOONGARCH) >++ EM_LOONGARCH >+ #elif defined(Q_PROCESSOR_MIPS) >+ EM_MIPS >+ #elif defined(Q_PROCESSOR_POWER_32) >diff --git a/qtbase.spec b/qtbase.spec >index 05b884b4..834e1336 100644 >--- a/qtbase.spec >+++ b/qtbase.spec >@@ -56,6 +56,7 @@ Patch1002: alt-ca-certificates-path.patch > Patch1003: alt-decrease-iconloader-fallback-depth.patch > Patch1004: alt-kernel-requires.patch > Patch1005: e2k-qt-6.patch >+Patch3500: alt-loongarch64.patch > > # macros > %define _qt6 %gname >@@ -370,6 +371,7 @@ OpenGL widgets library for the Qt%major toolkit > %ifarch %e2k > %patch1005 -p1 > %endif >+%patch3500 -p1 > > # install optflags > %add_optflags %optflags_shared >-- >2.33.3 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 46477
: 13454