From 0eec553f40d1a4b8eb70fb13dbd9481a92824a23 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 3 Feb 2019 17:39:00 +0100 Subject: [PATCH 1/4] fix the install lldb for kfreebsd --- debian/{patches/kfreebsd => }/liblldb-7.install.kfreebsd | 0 debian/patches/series | 1 - 2 files changed, 1 deletion(-) rename debian/{patches/kfreebsd => }/liblldb-7.install.kfreebsd (100%) diff --git a/debian/patches/kfreebsd/liblldb-7.install.kfreebsd b/debian/liblldb-7.install.kfreebsd similarity index 100% rename from debian/patches/kfreebsd/liblldb-7.install.kfreebsd rename to debian/liblldb-7.install.kfreebsd diff --git a/debian/patches/series b/debian/patches/series index 76349c2a..91c7dc8d 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -145,7 +145,6 @@ kfreebsd/kfreebsd-openmp.diff kfreebsd/kfreebsd-threads-build.diff kfreebsd/kfreebsd-triple-clang.diff kfreebsd/kfreebsd-triple.diff -kfreebsd/liblldb-7.install.kfreebsd kfreebsd/lib_Support.diff kfreebsd/lib_Target_X86.diff kfreebsd/lldb_source_Host_freebsd_Host.cpp.diff From 19c58edc6de054de1b5a2b3c31a03b48a6545b6b Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 3 Feb 2019 17:45:43 +0100 Subject: [PATCH 2/4] rebase of the patch --- debian/patches/fix-llvm-config.diff | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/debian/patches/fix-llvm-config.diff b/debian/patches/fix-llvm-config.diff index b2241550..4f0fa182 100644 --- a/debian/patches/fix-llvm-config.diff +++ b/debian/patches/fix-llvm-config.diff @@ -1,7 +1,7 @@ -Index: llvm-toolchain-7_7.0.1~svn352582/tools/llvm-config/CMakeLists.txt +Index: llvm-toolchain-7-7.0.1/tools/llvm-config/CMakeLists.txt =================================================================== ---- llvm-toolchain-7_7.0.1~svn352582.orig/tools/llvm-config/CMakeLists.txt -+++ llvm-toolchain-7_7.0.1~svn352582/tools/llvm-config/CMakeLists.txt +--- llvm-toolchain-7-7.0.1.orig/tools/llvm-config/CMakeLists.txt ++++ llvm-toolchain-7-7.0.1/tools/llvm-config/CMakeLists.txt @@ -32,9 +32,9 @@ get_property(COMPILE_FLAGS TARGET llvm-c # Use configure_file to create BuildVariables.inc. set(LLVM_SRC_ROOT ${LLVM_MAIN_SRC_DIR}) @@ -14,4 +14,4 @@ Index: llvm-toolchain-7_7.0.1~svn352582/tools/llvm-config/CMakeLists.txt +set(LLVM_CXXFLAGS "${COMPILE_FLAGS} ${LLVM_DEFINITIONS}") set(LLVM_BUILD_SYSTEM cmake) set(LLVM_HAS_RTTI ${LLVM_CONFIG_HAS_RTTI}) - set(LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}${LLVM_VERSION_SUFFIX}") + set(LLVM_DYLIB_VERSION "${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}") From a5a2a2f386b857f6956b0769c18ff580fc8b8de2 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Thu, 7 Feb 2019 17:16:51 +0100 Subject: [PATCH 3/4] kfreebsd/kfreebsd-triple-clang.diff: update of the patch to fix the kfreebsd FTBFS (Closes: #921246) Many thanks to Svante Signell for the update --- debian/changelog | 9 +++++++ .../kfreebsd/kfreebsd-triple-clang.diff | 24 ++++++++++++++++--- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index 0ed55629..47ddbb34 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,12 @@ +llvm-toolchain-7 (1:7.0.1-7) unstable; urgency=medium + + * kfreebsd/kfreebsd-triple-clang.diff: update of the patch to fix + the kfreebsd FTBFS (Closes: #921246) + Many thanks to Svante Signell for the update + + + -- + llvm-toolchain-7 (1:7.0.1-6) unstable; urgency=medium * Add support for kfreebsd (Closes: #921246) diff --git a/debian/patches/kfreebsd/kfreebsd-triple-clang.diff b/debian/patches/kfreebsd/kfreebsd-triple-clang.diff index 1462a1f9..37b29507 100644 --- a/debian/patches/kfreebsd/kfreebsd-triple-clang.diff +++ b/debian/patches/kfreebsd/kfreebsd-triple-clang.diff @@ -49,7 +49,25 @@ Index: llvm-toolchain-7-7.0.1/clang/lib/Driver/ToolChains/Gnu.cpp =================================================================== --- llvm-toolchain-7-7.0.1.orig/clang/lib/Driver/ToolChains/Gnu.cpp +++ llvm-toolchain-7-7.0.1/clang/lib/Driver/ToolChains/Gnu.cpp -@@ -499,6 +499,18 @@ void tools::gnutools::Linker::ConstructJ +@@ -234,6 +234,8 @@ static const char *getLDMOption(const ll + case llvm::Triple::x86: + if (T.isOSIAMCU()) + return "elf_iamcu"; ++ if (T.isOSkFreeBSD()) ++ return "elf_i386_fbsd"; + return "elf_i386"; + case llvm::Triple::aarch64: + return "aarch64linux"; +@@ -277,6 +279,8 @@ static const char *getLDMOption(const ll + case llvm::Triple::x86_64: + if (T.getEnvironment() == llvm::Triple::GNUX32) + return "elf32_x86_64"; ++ if (T.isOSkFreeBSD()) ++ return "elf_x86_64_fbsd"; + return "elf_x86_64"; + default: + return nullptr; +@@ -499,6 +503,18 @@ void tools::gnutools::Linker::ConstructJ CmdArgs.push_back("--wrap=pthread_create"); CmdArgs.push_back("-lc"); @@ -68,7 +86,7 @@ Index: llvm-toolchain-7-7.0.1/clang/lib/Driver/ToolChains/Gnu.cpp // Add IAMCU specific libs, if needed. if (IsIAMCU) -@@ -1836,7 +1848,8 @@ void Generic_GCC::GCCInstallationDetecto +@@ -1836,7 +1852,8 @@ void Generic_GCC::GCCInstallationDetecto "x86_64-redhat-linux", "x86_64-suse-linux", "x86_64-manbo-linux-gnu", "x86_64-linux-gnu", "x86_64-slackware-linux", "x86_64-unknown-linux", @@ -78,7 +96,7 @@ Index: llvm-toolchain-7-7.0.1/clang/lib/Driver/ToolChains/Gnu.cpp static const char *const X32LibDirs[] = {"/libx32", "/lib"}; static const char *const X32Triples[] = { "x86_64-linux-gnux32", "x86_64-unknown-linux-gnux32", -@@ -1847,8 +1860,9 @@ void Generic_GCC::GCCInstallationDetecto +@@ -1847,8 +1864,9 @@ void Generic_GCC::GCCInstallationDetecto "i386-linux-gnu", "i386-redhat-linux6E", "i686-redhat-linux", "i586-redhat-linux", "i386-redhat-linux", "i586-suse-linux", "i486-slackware-linux", "i686-montavista-linux", "i586-linux-gnu", From 816b488b26d5c3a05bfaedb469cf7546ee871054 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Thu, 7 Feb 2019 17:17:47 +0100 Subject: [PATCH 4/4] Enable ld gold for kfreebsd-amd64 and kfreebsd-i386 Many thanks to Svante Signell for the two updates --- debian/changelog | 6 +++--- debian/rules | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/debian/changelog b/debian/changelog index 47ddbb34..89e2aa4b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,10 +2,10 @@ llvm-toolchain-7 (1:7.0.1-7) unstable; urgency=medium * kfreebsd/kfreebsd-triple-clang.diff: update of the patch to fix the kfreebsd FTBFS (Closes: #921246) - Many thanks to Svante Signell for the update + * Enable ld gold for kfreebsd-amd64 and kfreebsd-i386 + Many thanks to Svante Signell for the two updates - - -- + -- Sylvestre Ledru Thu, 07 Feb 2019 17:17:40 +0100 llvm-toolchain-7 (1:7.0.1-6) unstable; urgency=medium diff --git a/debian/rules b/debian/rules index 5ecf357a..53e22967 100755 --- a/debian/rules +++ b/debian/rules @@ -113,7 +113,7 @@ endif # CMAKE_EXTRA += -DLLVM_ENABLE_LLD=ON # endif -BINUTILS_GOLD_ARCHS := amd64 arm64 armhf i386 ppc64 ppc64el x32 s390x hurd-i386 +BINUTILS_GOLD_ARCHS := amd64 arm64 armhf i386 ppc64 ppc64el x32 s390x hurd-i386 kfreebsd-amd64 kfreebsd-i386 ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' binutils) ge 2.23.1-1~exp3 ; echo $$?),0) ifneq (,$(filter $(DEB_HOST_ARCH),$(BINUTILS_GOLD_ARCHS))) # -fused-ld=gold enables the gold linker (but is not supported by all archs / distro)