Source: qt6-tools
Version:  6.4.2
Severity: wishlist
Tags: ftbfs patch
User: debian-loonga...@lists.debian.org
Usertags: loong64



We need to add architectural support for qt6-tools-6.4.2
Otherwise it will build failures .



Please consider the following patch that I metioned.
Would it be possible to include the support for LoongArch in the next upload?
If you have any questions, you can contact me at any time.







root@loongson:/home/loongson/whq/qt6-tools-6.4.2# dpkg-buildpackage 
dpkg-buildpackage: info: source package qt6-tools
dpkg-buildpackage: info: source version 6.4.2-3
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Lisandro Damián Nicanor Pérez Meyer 
<lisan...@debian.org>
dpkg-buildpackage: info: host architecture loong64
 dpkg-source --before-build .
dpkg-checkbuilddeps: error: Unmet build dependencies: clang-15 libclang-15-dev 
llvm-15-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)




For some reasons, we are unable to build LLVM-15 version on the loong64 
architecture. 

Therefore, we need to build qt6-tools on a higher version of LLVM. 

Consequently, we need to modify the control file in the Debian directory. 




diff --git a/debian/control b/debian/control


index 2d95429..deaa591 100644
--- a/debian/control
+++ b/debian/control
@@ -3,16 +3,16 @@ Section: libs
 Priority: optional
 Maintainer: Debian Qt/KDE Maintainers <debian-qt-...@lists.debian.org>
 Uploaders: Patrick Franz <delta...@debian.org>,
-Build-Depends: clang-15,
+Build-Depends: clang,
                cmake (>= 3.24~),
                debhelper-compat (= 13),
-               libclang-15-dev,
+               libclang-dev,
                libgl-dev,
                liblitehtml-dev (>= 0.6~),
                libssl-dev,
                libvulkan-dev [linux-any],
                libxcb-xkb-dev,
-               llvm-15-dev,
+               llvm-dev,
                ninja-build,
                pkg-config,
                pkg-kde-tools,





Additionally, since we are compiling with a higher version of LLVM, 

we also need to backport some upstream code into this version of qt6-tools.




commit 87fac2de7378963e753a847da667d52d4ba95bff
Author: Björn Schäpers <bjo...@hazardy.de>
Date:   Wed Feb 8 12:31:04 2023 +0100


    lupdate: Fix build with clang 16+
    
    The signature changed again.
    
    I've tested it with a current main, that is clang 17, but the commit
    854c10f8d185286d941307e1033eb492e085c203 with introduced the change is
    also contained in clang 16.
    
    Pick-to: 6.4 6.5
    Change-Id: I050ca5843708be4489757538849000d3675005ac
    Reviewed-by: Kai Köhne <kai.koe...@qt.io>


diff --git a/src/linguist/lupdate/lupdatepreprocessoraction.cpp 
b/src/linguist/lupdate/lupdatepreprocessoraction.cpp
index d963747d8..478d5fbea 100644
--- a/src/linguist/lupdate/lupdatepreprocessoraction.cpp
+++ b/src/linguist/lupdate/lupdatepreprocessoraction.cpp
@@ -157,7 +157,9 @@ void 
LupdatePPCallbacks::SourceRangeSkipped(clang::SourceRange sourceRange,
 void LupdatePPCallbacks::InclusionDirective(clang::SourceLocation /*hashLoc*/,
     const clang::Token & /*includeTok*/, clang::StringRef /*fileName*/, bool 
/*isAngled*/,
     clang::CharSourceRange /*filenameRange*/,
-#if (LUPDATE_CLANG_VERSION >= LUPDATE_CLANG_VERSION_CHECK(15,0,0))
+#if (LUPDATE_CLANG_VERSION >= LUPDATE_CLANG_VERSION_CHECK(16,0,0))
+    const clang::OptionalFileEntryRef file,
+#elif (LUPDATE_CLANG_VERSION >= LUPDATE_CLANG_VERSION_CHECK(15,0,0))
     const clang::Optional<clang::FileEntryRef> file,
 #else
     const clang::FileEntry *file,
diff --git a/src/linguist/lupdate/lupdatepreprocessoraction.h 
b/src/linguist/lupdate/lupdatepreprocessoraction.h
index 3e44cee83..673ecb495 100644
--- a/src/linguist/lupdate/lupdatepreprocessoraction.h
+++ b/src/linguist/lupdate/lupdatepreprocessoraction.h
@@ -52,7 +52,9 @@ private:
     void InclusionDirective(clang::SourceLocation /*hashLoc*/, const 
clang::Token &/*includeTok*/,
                             clang::StringRef /*fileName*/, bool /*isAngled*/,
                             clang::CharSourceRange /*filenameRange*/,
-#if (LUPDATE_CLANG_VERSION >= LUPDATE_CLANG_VERSION_CHECK(15,0,0))
+#if (LUPDATE_CLANG_VERSION >= LUPDATE_CLANG_VERSION_CHECK(16,0,0))
+                            const clang::OptionalFileEntryRef file,
+#elif (LUPDATE_CLANG_VERSION >= LUPDATE_CLANG_VERSION_CHECK(15,0,0))
                             const clang::Optional<clang::FileEntryRef> file,
 #else
                             const clang::FileEntry *file,







Reply via email to