Merge remote-tracking branch 'origin/8' into snapshot

This commit is contained in:
Sylvestre Ledru 2019-02-09 17:33:09 +01:00
commit ce35b79037
8 changed files with 197 additions and 7 deletions

37
debian/changelog vendored
View File

@ -562,6 +562,34 @@ llvm-toolchain-snapshot (1:8~svn340819-1) unstable; urgency=medium
-- Sylvestre Ledru <sylvestre@debian.org> Tue, 28 Aug 2018 16:28:24 +0200
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
To be ABI compliant in Debian between 7 and 7.0.1,
I took the pr39427-misscompile.diff.
7.1.0 is an official release for downstream users to bring
back the ABI comptability.
I am uploading this new version in the archive to:
- 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.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 <sylvestre@debian.org> Sat, 09 Feb 2019 16:34:12 +0100
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)
* Enable ld gold for kfreebsd-amd64 and kfreebsd-i386
Many thanks to Svante Signell for the two updates
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 07 Feb 2019 17:17:40 +0100
llvm-toolchain-7 (1:7.0.1-6) unstable; urgency=medium
* Add support for kfreebsd (Closes: #921246)
@ -893,6 +921,15 @@ llvm-toolchain-snapshot (1:7~svn322880-1) unstable; urgency=medium
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 18 Jan 2018 20:50:03 +0100
llvm-toolchain-6.0 (1:6.0.1-11) unstable; urgency=medium
* Remove 'Multi-Arch: same' in libclang
(Closes: #874248)
* Cherry-pick various llvm fixes for Julia
(Closes: #919628)
-- Sylvestre Ledru <sylvestre@debian.org> Sat, 09 Feb 2019 17:22:59 +0100
llvm-toolchain-6.0 (1:6.0.1-10) unstable; urgency=medium
* Fix a baseline violation on armhf (Closes: #914268)

6
debian/orig-tar.sh vendored
View File

@ -18,18 +18,18 @@ set -e
# To create an rc1 release:
# sh 4.0/debian/orig-tar.sh RELEASE_40 rc1
SVN_BASE_URL=http://llvm.org/svn/llvm-project/
SVN_BASE_URL=https://llvm.org/svn/llvm-project/
MAJOR_VERSION=9
CURRENT_VERSION=9 # Should be changed to 3.5.1 later
if test -n "$1"; then
# http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/branches/google/stable/
# https://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/branches/google/stable/
# For example: sh 4.0/debian/orig-tar.sh release_400
BRANCH=$1
fi
if test -n "$1" -a -n "$2"; then
# http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/tags/RELEASE_34/rc1/
# https://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/tags/RELEASE_34/rc1/
# For example: sh 4.0/debian/orig-tar.sh RELEASE_401 rc3 4.0.1
BRANCH=$1
TAG=$2

View File

@ -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()

View File

@ -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

View File

@ -0,0 +1,65 @@
Index: tools/llvm-shlib/simple_version_script.map.in
===================================================================
--- tools/llvm-shlib/simple_version_script.map.in (revision 352580)
+++ tools/llvm-shlib/simple_version_script.map.in (revision 352579)
@@ -1 +1 @@
-LLVM_@LLVM_VERSION_MAJOR@.@LLVM_VERSION_MINOR@ { global: *; };
+LLVM_@LLVM_VERSION_MAJOR@ { global: *; };
Index: tools/llvm-config/CMakeLists.txt
===================================================================
--- tools/llvm-config/CMakeLists.txt (revision 352580)
+++ tools/llvm-config/CMakeLists.txt (revision 352579)
@@ -37,7 +37,7 @@
set(LLVM_CXXFLAGS "${CMAKE_CXX_FLAGS} ${CMAKE_CXX_FLAGS_${uppercase_CMAKE_BUILD_TYPE}} ${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: cmake/modules/AddLLVM.cmake
===================================================================
--- cmake/modules/AddLLVM.cmake (revision 352580)
+++ cmake/modules/AddLLVM.cmake (revision 352579)
@@ -83,7 +83,7 @@
# 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}
@@ -500,7 +500,7 @@
PROPERTIES
# Since 4.0.0, the ABI version is indicated by the major version
SOVERSION ${LLVM_VERSION_MAJOR}
- VERSION ${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX})
+ VERSION ${LLVM_VERSION_MAJOR}${LLVM_VERSION_SUFFIX})
endif()
endif()
@@ -522,7 +522,7 @@
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
Index: docs/ReleaseNotes.rst
===================================================================
--- docs/ReleaseNotes.rst (revision 352580)
+++ docs/ReleaseNotes.rst (revision 352579)
@@ -30,6 +30,9 @@
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

10
debian/patches/series vendored
View File

@ -94,6 +94,9 @@ clang-arm-default-vfp3-on-armv7a.patch
bootstrap-fix-include-next.diff
clangd-atomic-cmake.patch
# Rustc
rustc-aarch64-test-failure.diff
# Fix docs
remove-apple-clang-manpage.diff
0049-Use-Debian-provided-MathJax-everywhere.patch
@ -111,6 +114,13 @@ D49754-powerpcspe-clang.diff
D54409-powerpcspe-register-spilling.diff
D54584-powerpcspe-double-parameter.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
7.1.0/revert-change-soname-2.diff
7.1.0/revert-change-soname.diff
# kfreebsd
kfreebsd/clang_lib_Basic_Targets.diff
kfreebsd/CMakeLists.txt.diff

2
debian/rules vendored
View File

@ -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)

9
debian/unpack.sh vendored
View File

@ -1,14 +1,17 @@
set -e
VERSION=9
ORIG_VERSION=snapshot
MAJOR_VERSION=9 # 8.0.1
SVN_REV=`ls -1 *snapshot_$MAJOR_VERSION*svn*bz2 | tail -1|perl -ne 'print "$1\n" if /svn(\d+)/;' | sort -ru`
#SVN_REV=347285
VERSION=svn$SVN_REV
#VERSION=+rc3
tar jxvf llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig.tar.bz2
LLVM_ARCHIVE=llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig.tar.bz2
echo "unpack of $LLVM_ARCHIVE"
tar jxf $LLVM_ARCHIVE
cd llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION/ || ( echo "Bad SVN_REV:\"$SVN_REV\"" && exit 1 )
for f in ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-clang.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-clang-tools-extra.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-compiler-rt.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-lldb.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-polly.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-libcxxabi.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-libcxx.tar.bz2 ../llvm-toolchain-snapshot_$MAJOR_VERSION~$VERSION.orig-openmp.tar.bz2; do
tar jxvf $f
echo "Unpack of $f"
tar jxf $f
done
ln -s clang_$MAJOR_VERSION~$VERSION clang