diff --git a/debian/changelog b/debian/changelog index 6d4bcfc4..8e5a272d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -llvm-toolchain-7 (1:7.1.0~svn352582-1~exp1) UNRELEASED; urgency=medium +llvm-toolchain-7 (1:7.1.0~svn353565-1~exp1) UNRELEASED; urgency=medium * New stable release. To be clear, this is the same as release 7.0.1 @@ -10,12 +10,12 @@ llvm-toolchain-7 (1:7.1.0~svn352582-1~exp1) UNRELEASED; urgency=medium - avoid question like "why we don't have 7.1.0 in the archive?" - align with upstream - clearly show that we kept the ABI - Upstream decided to rename the library from 7 to 7.0.1 - As I kept the ABI, I reverted this patch (revert-change-soname.diff) + Upstream decided to rename the library from 7 to 7.1.0 + As I kept the ABI, I reverted the patches (debian/patches/7.1.0/*) More info on https://bugs.llvm.org/show_bug.cgi?id=39427 and https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=913271 - -- Sylvestre Ledru Wed, 30 Jan 2019 08:53:14 +0100 + -- Sylvestre Ledru Sat, 09 Feb 2019 16:34:12 +0100 llvm-toolchain-7 (1:7.0.1-7) unstable; urgency=medium diff --git a/debian/patches/7.1.0/revert-change-soname-2.diff b/debian/patches/7.1.0/revert-change-soname-2.diff new file mode 100644 index 00000000..527e57d8 --- /dev/null +++ b/debian/patches/7.1.0/revert-change-soname-2.diff @@ -0,0 +1,19 @@ +Index: llvm-toolchain-7_7.1.0~svn353565/cmake/modules/AddLLVM.cmake +=================================================================== +--- llvm-toolchain-7_7.1.0~svn353565.orig/cmake/modules/AddLLVM.cmake ++++ llvm-toolchain-7_7.1.0~svn353565/cmake/modules/AddLLVM.cmake +@@ -498,11 +498,9 @@ function(llvm_add_library name) + if(UNIX AND NOT APPLE AND NOT ARG_SONAME) + set_target_properties(${name} + PROPERTIES +- # Concatenate the version numbers since ldconfig expects exactly +- # one component indicating the ABI version, while LLVM uses +- # major+minor for that. +- SOVERSION ${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR} +- VERSION ${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX}) ++ # Since 4.0.0, the ABI version is indicated by the major version ++ SOVERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX} ++ VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}) + endif() + endif() + diff --git a/debian/patches/7.1.0/revert-change-soname.diff b/debian/patches/7.1.0/revert-change-soname.diff new file mode 100644 index 00000000..d9912798 --- /dev/null +++ b/debian/patches/7.1.0/revert-change-soname.diff @@ -0,0 +1,56 @@ +Index: llvm-toolchain-7_7.1.0~svn353565/docs/ReleaseNotes.rst +=================================================================== +--- llvm-toolchain-7_7.1.0~svn353565.orig/docs/ReleaseNotes.rst ++++ llvm-toolchain-7_7.1.0~svn353565/docs/ReleaseNotes.rst +@@ -30,6 +30,9 @@ Non-comprehensive list of changes in thi + is available on the Visual Studio Marketplace. The new integration + supports Visual Studio 2017. + ++* Libraries have been renamed from 7.0 to 7. This change also impacts ++ downstream libraries like lldb. ++ + * The LoopInstSimplify pass (``-loop-instsimplify``) has been removed. + + * Symbols starting with ``?`` are no longer mangled by LLVM when using the +Index: llvm-toolchain-7_7.1.0~svn353565/tools/llvm-config/CMakeLists.txt +=================================================================== +--- llvm-toolchain-7_7.1.0~svn353565.orig/tools/llvm-config/CMakeLists.txt ++++ llvm-toolchain-7_7.1.0~svn353565/tools/llvm-config/CMakeLists.txt +@@ -37,7 +37,7 @@ set(LLVM_CFLAGS "${LLVM_DEFINITIONS}") + 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}") + set(LLVM_HAS_GLOBAL_ISEL "ON") + + # Use the C++ link flags, since they should be a superset of C link flags. +Index: llvm-toolchain-7_7.1.0~svn353565/tools/llvm-shlib/simple_version_script.map.in +=================================================================== +--- llvm-toolchain-7_7.1.0~svn353565.orig/tools/llvm-shlib/simple_version_script.map.in ++++ llvm-toolchain-7_7.1.0~svn353565/tools/llvm-shlib/simple_version_script.map.in +@@ -1 +1 @@ +-LLVM_@LLVM_VERSION_MAJOR@.@LLVM_VERSION_MINOR@ { global: *; }; ++LLVM_@LLVM_VERSION_MAJOR@ { global: *; }; +Index: llvm-toolchain-7_7.1.0~svn353565/cmake/modules/AddLLVM.cmake +=================================================================== +--- llvm-toolchain-7_7.1.0~svn353565.orig/cmake/modules/AddLLVM.cmake ++++ llvm-toolchain-7_7.1.0~svn353565/cmake/modules/AddLLVM.cmake +@@ -83,7 +83,7 @@ function(add_llvm_symbol_exports target_ + # FIXME: Don't write the "local:" line on OpenBSD. + # in the export file, also add a linker script to version LLVM symbols (form: LLVM_N.M) + add_custom_command(OUTPUT ${native_export_file} +- COMMAND echo "LLVM_${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR} {" > ${native_export_file} ++ COMMAND echo "LLVM_${LLVM_VERSION_MAJOR} {" > ${native_export_file} + COMMAND grep -q "[[:alnum:]]" ${export_file} && echo " global:" >> ${native_export_file} || : + COMMAND sed -e "s/$/;/" -e "s/^/ /" < ${export_file} >> ${native_export_file} + COMMAND echo " local: *;" >> ${native_export_file} +@@ -522,7 +522,7 @@ function(llvm_add_library name) + if(${output_name} STREQUAL "output_name-NOTFOUND") + set(output_name ${name}) + endif() +- set(library_name ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}${LLVM_VERSION_SUFFIX}) ++ set(library_name ${output_name}-${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX}) + set(api_name ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX}) + set_target_properties(${name} PROPERTIES OUTPUT_NAME ${library_name}) + llvm_install_library_symlink(${api_name} ${library_name} SHARED diff --git a/debian/patches/series b/debian/patches/series index 180e77a6..36bc0b61 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -99,7 +99,6 @@ clang-arm-default-vfp3-on-armv7a.patch # For the bootstrap bootstrap-fix-include-next.diff clangd-atomic-cmake.patch -pr39427-misscompile.diff # Rustc rustc-aarch64-test-failure.diff @@ -138,7 +137,9 @@ D52340-rustc-debuginfo.diff # Disable https://llvm.org/viewvc/llvm-project?view=revision&revision=352580 # 7.0.1 was always abi compatible with 7.0 # Therefor, the libraries are still compatible with the 7.1.0 version -revert-change-soname.diff +7.1.0/revert-change-soname-2.diff +7.1.0/revert-change-soname.diff + # kfreebsd kfreebsd/clang_lib_Basic_Targets.diff