Merge branch '10' of salsa.debian.org:pkg-llvm-team/llvm-toolchain into 10

This commit is contained in:
Sylvestre Ledru 2020-02-08 17:51:29 +01:00
commit d285842a59
14 changed files with 120 additions and 68 deletions

8
debian/README vendored
View File

@ -9,7 +9,7 @@ The current snapshot release is maintained in the "snapshot" branch.
The easiest way to get all branches is probably to have one
clone per version:
for f in 8 9 snapshot; do
for f in 8 9 10 snapshot; do
git clone git@salsa.debian.org:pkg-llvm-team/llvm-toolchain.git -b $f $f
done
@ -57,7 +57,7 @@ branch at
https://github.com/llvm/llvm-project/branches
you should use,
$ sh 9/debian/orig-tar.sh release/9.x
$ sh 10/debian/orig-tar.sh release/10.x
To retrieve a specific release candidate, you can pass the branch name as the
first argument, and the tag rc number as the second argument. For example, to
@ -65,11 +65,11 @@ get the 9.0.1 release candidate rc3 at
https://github.com/llvm/llvm-project/tags
you should use,
$ sh 9/debian/orig-tar.sh 9.0.1 rc3
$ sh 10/debian/orig-tar.sh 10.0.1 rc3
For a stable release, the syntax is:
$ sh 9/debian/orig-tar.sh 9.0.0
$ sh 10/debian/orig-tar.sh 10.0.0
Additional maintainer scripts

54
debian/changelog vendored
View File

@ -1,11 +1,43 @@
llvm-toolchain-10 (1:10~++20200104105135+2306f43ccb4-1~exp1) experimental; urgency=medium
llvm-toolchain-10 (1:10.0.0~+rc1-1~exp2) experimental; urgency=medium
[ Sylvestre Ledru ]
* Do not try to install hwasan_symbolize on armhf ppc64el
as it isn't built
[ Samuel Thibault ]
* hurd/hurd-cxx-paths.diff: Fix patch so it can be applied.
* clang-tools-X.Y.install.in: Do not try to install hwasan_symbolize on
hurd-any.
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 06 Feb 2020 10:37:39 +0100
llvm-toolchain-10 (1:10.0.0~+rc1-1~exp1) experimental; urgency=medium
[ Gianfranco Costamagna ]
* fix lldb-10 -P path print (Closes: #945445)
* Fix lldb python installation path and symlinks
* Drop version constraint from libffi-dev library, satisfied since
old-old-stable
[ Sylvestre Ledru ]
* First RC release
* For now, disable ThinLTO usage because:
- LLVM_ENABLE_LTO doesn't work with gcc >= 9 (option not accepted)
- BOOTSTRAP_LLVM_ENABLE_LTO is producing some large binary
(uses llvm ir instead of binary code)
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=943623
* Thanks to this previous change, don't hardcode gcc 8
-- Sylvestre Ledru <sylvestre@debian.org> Mon, 03 Feb 2020 10:30:50 +0100
llvm-toolchain-10 (1:10~++20200121023453+de4b2a7fad6-1~exp1) experimental; urgency=medium
* Branch llvm-toolchain-10 into its own branch
* Merge recent 9 changes (python 3 and testsuite mostly)
-- Sylvestre Ledru <sylvestre@debian.org> Sat, 04 Jan 2020 10:56:15 +0100
-- Sylvestre Ledru <sylvestre@debian.org> Tue, 21 Jan 2020 14:38:02 +0100
llvm-toolchain-snapshot (1:10~++20191229111838+6991d5728f1-1~exp1) experimental; urgency=medium
llvm-toolchain-snapshot (1:10~+20191229111838+6991d5728f1-1~exp1) experimental; urgency=medium
* experimental New snapshot release
* Add a '+' in the version (as the old upload is high than the one without)
@ -155,6 +187,20 @@ llvm-toolchain-snapshot (1:10~svn366440-1~exp1) experimental; urgency=medium
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 18 Jul 2019 18:58:32 +0200
llvm-toolchain-9 (1:9.0.1-8) unstable; urgency=medium
* Add two new python autopkgtests to avoid regressions in the future
-- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 23 Jan 2020 10:08:27 +0100
llvm-toolchain-9 (1:9.0.1-7) unstable; urgency=medium
* Add dependency on libclang-cpp-9 from llvm-9-dev (Closes: #946761)
* fix lldb-9 -P path print (Closes: #945445)
* Fix lldb python installation path and symlinks
-- Gianfranco Costamagna <locutusofborg@debian.org> Tue, 21 Jan 2020 13:05:06 +0100
llvm-toolchain-9 (1:9.0.1-6) unstable; urgency=medium
* Team upload.
@ -304,7 +350,7 @@ llvm-toolchain-9 (1:9.0.0-3~exp2) experimental; urgency=medium
Disable fuzzer only for i386
* Use stage2 files to build the doc. For some reasons, clang-tools-extra
html generation stopped working
* Disable z3 when the version is tool old
* Disable z3 when the version is too old
-- Sylvestre Ledru <sylvestre@debian.org> Thu, 31 Oct 2019 00:29:09 +0100

View File

@ -31,7 +31,7 @@ usr/lib/llvm-@LLVM_VERSION@/bin/pp-trace
usr/lib/llvm-@LLVM_VERSION@/bin/clang-move
usr/lib/llvm-@LLVM_VERSION@/bin/clang-offload-wrapper
usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/bin/hwasan_symbolize
[!armhf !ppc64el !hurd-any] usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/bin/hwasan_symbolize
clang/tools/scan-build-@LLVM_VERSION@ usr/share/clang/
clang/tools/scan-build-py-@LLVM_VERSION@ usr/share/clang/

40
debian/control vendored
View File

@ -3,9 +3,9 @@ Section: devel
Priority: optional
Rules-Requires-Root: no
Maintainer: LLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
Uploaders: Sylvestre Ledru <sylvestre@debian.org>
Uploaders: Sylvestre Ledru <sylvestre@debian.org>, Gianfranco Costamagna <locutusofborg@debian.org>
Build-Depends: debhelper (>= 9.0), cmake, chrpath, texinfo, sharutils,
libffi-dev (>= 3.0.9),
libffi-dev,
lsb-release, patchutils, diffstat, xz-utils, python3-dev,
libedit-dev, libncurses5-dev, swig, python3-six, python3-sphinx (>= 1.3.6),
binutils-dev,
@ -19,7 +19,6 @@ Build-Depends: debhelper (>= 9.0), cmake, chrpath, texinfo, sharutils,
libctypes-ocaml-dev [amd64 arm64 armhf i386 ppc64el s390x],
dh-exec, dh-ocaml [amd64 arm64 armhf i386 ppc64el s390x],
libpfm4-dev [linux-any], python3-setuptools, libz3-dev,
g++-8 | g++-7 | g++-6 | g++-5 | g++-4.7
Build-Conflicts: oprofile, ocaml
Standards-Version: 4.2.1
Homepage: https://www.llvm.org/
@ -166,13 +165,6 @@ Description: Clang library - Common development package
This package contains the Clang generic headers and some libraries
(profiling, etc).
Package: libclang-cpp1-10
Depends: libclang-cpp10, ${misc:Depends}
Architecture: all
Section: oldlibs
Description: transitional package
This is a transitional package. It can safely be removed.
Package: libclang-cpp10
Section: libs
Architecture: any
@ -236,14 +228,6 @@ Description: Clang Python Bindings
.
This binding package provides access to the Clang compiler and libraries.
Package: python-clang-10
Depends: python3-clang-10, ${misc:Depends}
Architecture: any
Priority: optional
Section: oldlibs
Description: transitional package to python3-clang-10
This is a transitional package. It can safely be removed.
Package: clang-10-examples
Architecture: any
@ -323,9 +307,9 @@ Description: Modular compiler and toolchain technologies, IR interpreter
Package: llvm-10-dev
Architecture: any
Depends: ${shlibs:Depends}, libffi-dev (>= 3.0.10), ${misc:Depends},
Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends},
llvm-10 (= ${binary:Version}), libllvm10 (= ${binary:Version}), libtinfo-dev,
llvm-10-tools (= ${binary:Version}), libz3-dev
llvm-10-tools (= ${binary:Version}), libclang-cpp10 (= ${binary:Version}), libz3-dev
Description: Modular compiler and toolchain technologies, libraries and headers
LLVM is a collection of libraries and tools that make it easy to build
compilers, optimizers, just-in-time code generators, and many other
@ -430,7 +414,7 @@ Description: Modular compiler and toolchain technologies, examples
# ------------- lld -------------
Package: lld-10
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m610k powerpcspe ppc64 sh4 sparc64 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32
# ia64 hurd powerpc have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm10 (= ${binary:Version})
Pre-Depends: ${misc:Pre-Depends}
@ -440,7 +424,7 @@ Description: LLVM-based linker
Project.
Package: liblld-10
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m610k powerpcspe ppc64 sh4 sparc64 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32
# ia64 hurd powerpc have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm10 (= ${binary:Version})
Pre-Depends: ${misc:Pre-Depends}
@ -454,7 +438,7 @@ Description: LLVM-based linker, library
Package: liblld-10-dev
Section: libdevel
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m610k powerpcspe ppc64 sh4 sparc64 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32
# ia64 hurd powerpc have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, lld-10 (= ${binary:Version}),
liblld-10 (= ${binary:Version})
@ -470,7 +454,7 @@ Description: LLVM-based linker, header files
# ------------- lldb -------------
Package: lldb-10
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m610k sh4 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32
# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm10 (= ${binary:Version}), llvm-10-dev,
python3-lldb-10
@ -481,7 +465,7 @@ Description: Next generation, high-performance debugger
Project, such as the Clang expression parser and LLVM disassembler.
Package: liblldb-10
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m610k sh4 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32
# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm10 (= ${binary:Version})
Pre-Depends: ${misc:Pre-Depends}
@ -495,9 +479,9 @@ Description: Next generation, high-performance debugger, library
Package: python3-lldb-10
Section: python
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m610k sh4 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32
# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, python3-six
Depends: ${shlibs:Depends}, ${misc:Depends}, ${python3:Depends}, liblldb-10 (= ${binary:Version}), python3-six
Conflicts: python3-lldb-x.y
Replaces: python3-lldb-x.y
Provides: python3-lldb-x.y
@ -511,7 +495,7 @@ Description: Next generation, high-performance debugger, python3 lib
Package: liblldb-10-dev
Section: libdevel
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m610k sh4 x32
Architecture: amd64 arm64 armel armhf i386 mips mipsel mips64el ppc64el kfreebsd-amd64 kfreebsd-i386 s390 s390x sparc hppa m68k sh4 x32
# ia64 hurd powerpc powerpcspe ppc64 alpha s390x sparc64 have been removed
Depends: ${shlibs:Depends}, ${misc:Depends}, lldb-10 (= ${binary:Version})
Pre-Depends: ${misc:Pre-Depends}

2
debian/orig-tar.sh vendored
View File

@ -118,7 +118,7 @@ if test -z "$TAG" -a -z "$FINAL_RELEASE"; then
# the + is here to make sure that this version is considered more recent than the svn
# dpkg --compare-versions 10~svn374977-1~exp1 lt 10~+2019-svn374977-1~exp1
# to verify that
VERSION="${VERSION}~+$(date +'%Y%m%d%I%M%S')+$(git log -1 --pretty=format:'%h')"
VERSION="${VERSION}~++$(date +'%Y%m%d%I%M%S')+$(git log -1 --pretty=format:'%h')"
else
if ! echo "$EXACT_VERSION"|grep -q "$MAJOR_VERSION"; then

View File

@ -6,7 +6,7 @@ Index: llvm-toolchain-9-9.0.0/clang/lib/Driver/ToolChains/Hurd.cpp
===================================================================
--- llvm-toolchain-9-9.0.0.orig/clang/lib/Driver/ToolChains/Hurd.cpp
+++ llvm-toolchain-9-9.0.0/clang/lib/Driver/ToolChains/Hurd.cpp
@@ -61,17 +61,107 @@ static StringRef getOSLibDir(const llvm:
@@ -61,21 +61,107 @@ static StringRef getOSLibDir(const llvm:
return Triple.isArch32Bit() ? "lib" : "lib64";
}
@ -42,10 +42,6 @@ Index: llvm-toolchain-9-9.0.0/clang/lib/Driver/ToolChains/Hurd.cpp
+ .str());
+ }
+
+#ifdef ENABLE_LINKER_BUILD_ID
+ ExtraOpts.push_back("--build-id");
+#endif
+
+ // The selection of paths to try here is designed to match the patterns which
+ // the GCC driver itself uses, as this is part of the GCC-compatible driver.
+ // This was determined by running GCC in a fake filesystem, creating all
@ -56,6 +52,10 @@ Index: llvm-toolchain-9-9.0.0/clang/lib/Driver/ToolChains/Hurd.cpp
const std::string OSLibDir = getOSLibDir(Triple, Args);
const std::string MultiarchTriple = getMultiarchTriple(D, Triple, SysRoot);
#ifdef ENABLE_LINKER_BUILD_ID
ExtraOpts.push_back("--build-id");
#endif
- // If we are currently running Clang inside of the requested system root, add
- // its parent library paths to those searched.
+ // Add the multilib suffixed paths where they are available.

View File

@ -7,10 +7,10 @@ sure their ABI stays in sync.
No known upstream bug about this.
Index: llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3/libcxxabi/src/cxa_exception.cpp
Index: llvm-toolchain-10_10~++20200205105438+211aa5bf59e/libcxxabi/src/cxa_exception.cpp
===================================================================
--- llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3.orig/libcxxabi/src/cxa_exception.cpp
+++ llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3/libcxxabi/src/cxa_exception.cpp
--- llvm-toolchain-10_10~++20200205105438+211aa5bf59e.orig/libcxxabi/src/cxa_exception.cpp
+++ llvm-toolchain-10_10~++20200205105438+211aa5bf59e/libcxxabi/src/cxa_exception.cpp
@@ -275,15 +275,16 @@ __cxa_throw(void *thrown_object, std::ty
#ifdef __USING_SJLJ_EXCEPTIONS__
@ -66,10 +66,10 @@ Index: llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3/libcxxabi/src/cxa_
#endif
// Some sort of unwinding error. Note that terminate is a handler.
__cxa_begin_catch(&dep_exception_header->unwindHeader);
Index: llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3/libcxxabi/src/cxa_exception.h
Index: llvm-toolchain-10_10~++20200205105438+211aa5bf59e/libcxxabi/src/cxa_exception.h
===================================================================
--- llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3.orig/libcxxabi/src/cxa_exception.h
+++ llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3/libcxxabi/src/cxa_exception.h
--- llvm-toolchain-10_10~++20200205105438+211aa5bf59e.orig/libcxxabi/src/cxa_exception.h
+++ llvm-toolchain-10_10~++20200205105438+211aa5bf59e/libcxxabi/src/cxa_exception.h
@@ -27,6 +27,45 @@ _LIBCXXABI_HIDDEN uint64_t __getExceptio
_LIBCXXABI_HIDDEN void __setExceptionClass ( _Unwind_Exception*, uint64_t);
_LIBCXXABI_HIDDEN bool __isOurExceptionClass(const _Unwind_Exception*);
@ -114,5 +114,5 @@ Index: llvm-toolchain-snapshot_10~+20191020075550+5b8546023f3/libcxxabi/src/cxa_
+#endif
+
struct _LIBCXXABI_HIDDEN __cxa_exception {
#if defined(__LP64__) || defined(_LIBCXXABI_ARM_EHABI)
// This is a new field to support C++ 0x exception_ptr.
#if defined(__LP64__) || defined(_WIN64) || defined(_LIBCXXABI_ARM_EHABI)
// Now _Unwind_Exception is marked with __attribute__((aligned)),

14
debian/patches/print-lldb-path.patch vendored Normal file
View File

@ -0,0 +1,14 @@
Author: Gianfranco Costamagna <locutusofborg@debian.org>
Last-Update: 2020-01-21
--- llvm-toolchain-snapshot-10~++20191229111838+6991d5728f1.orig/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
+++ llvm-toolchain-snapshot-10~++20191229111838+6991d5728f1/lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
@@ -353,6 +353,8 @@ void ScriptInterpreterPython::ComputePyt
// x86_64, or bin on Windows).
llvm::sys::path::remove_filename(path);
llvm::sys::path::append(path, LLDB_PYTHON_RELATIVE_LIBDIR);
+ // remove double "lib/lib" statement
+ std::replace(path.begin(), path.end(), '/lib/lib/', '/lib/');
#if defined(_WIN32)
// This will be injected directly through FileSpec.GetDirectory().SetString(),

View File

@ -97,6 +97,7 @@ remove-apple-clang-manpage.diff
0049-Use-Debian-provided-MathJax-everywhere.patch
# Hurd port
hurd/hurd-cxx-paths.diff
hurd/hurd-pathmax.diff
# powerpcspe
@ -136,3 +137,4 @@ disable-fuzzer-compiler-rt.diff
no-z3.patch
python3-shebang.patch
print-lldb-path.patch

4
debian/python3-lldb-X.Y.links.in vendored Normal file
View File

@ -0,0 +1,4 @@
usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/python3/dist-packages/lldb/libLLVM-@LLVM_VERSION_FULL@.so.1
usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/python3/dist-packages/lldb/libLLVM-@LLVM_VERSION@.so.1
usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/python3/dist-packages/lldb/_lldb.so
usr/lib/llvm-@LLVM_VERSION@/lib/python3/dist-packages/lldb/ usr/lib/python3/dist-packages/lldb

View File

@ -9,8 +9,9 @@ VERSION=$(dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9]+).*,\1,p")
DETAILED_VERSION=$(dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9.]+)(~|-)(.*),\1\2\3,p")
DEB_HOST_ARCH=$(dpkg-architecture -qDEB_HOST_ARCH)
LIST="libomp5-${VERSION}_${DETAILED_VERSION}_amd64.deb libomp-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python-lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb libllvm${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-common-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-runtime_${DETAILED_VERSION}_amd64.deb lld-${VERSION}_${DETAILED_VERSION}_amd64.deb libfuzzer-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++abi-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++1-${VERSION}_${DETAILED_VERSION}_amd64.deb libc++abi1-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-tools_${DETAILED_VERSION}_amd64.deb clang-tools-${VERSION}_${DETAILED_VERSION}_amd64.deb clangd-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}-dbgsym_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}-dbgsym_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}_${DETAILED_VERSION}_amd64.deb"
LIST="libomp5-${VERSION}_${DETAILED_VERSION}_amd64.deb libomp-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb python3-lldb-${VERSION}_${DETAILED_VERSION}_amd64.deb libllvm${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}_${DETAILED_VERSION}_amd64.deb libclang-common-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}_${DETAILED_VERSION}_amd64.deb liblldb-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-runtime_${DETAILED_VERSION}_amd64.deb lld-${VERSION}_${DETAILED_VERSION}_amd64.deb libfuzzer-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libclang-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++abi-${VERSION}-dev_${DETAILED_VERSION}_amd64.deb libc++1-${VERSION}_${DETAILED_VERSION}_amd64.deb libc++abi1-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}_${DETAILED_VERSION}_amd64.deb llvm-${VERSION}-tools_${DETAILED_VERSION}_amd64.deb clang-tools-${VERSION}_${DETAILED_VERSION}_amd64.deb clangd-${VERSION}_${DETAILED_VERSION}_amd64.deb clang-${VERSION}-dbgsym_${DETAILED_VERSION}_amd64.deb libclang1-${VERSION}-dbgsym_${DETAILED_VERSION}_amd64.deb libclang-cpp${VERSION}_${DETAILED_VERSION}_amd64.deb"
echo "To install everything:"
echo "sudo apt --purge remove 'libomp5-*' 'libc++*dev' 'libc++*'"
echo "sudo dpkg -i $LIST"
L=""
for f in $LIST; do

22
debian/rules vendored
View File

@ -75,15 +75,6 @@ ifneq ($(shell dpkg-vendor --derives-from Ubuntu && echo yes),yes)
endif
endif
FORCE_NOT_GCC_9_DISTRO := eoan focal bullseye sid
ifneq (,$(filter $(DISTRO),$(FORCE_NOT_GCC_9_DISTRO)))
# Force gcc before 9 (gcc 8 on Debian unstable) because it causes
# huge increase of the size of the .deb (because of .a and .so) and issues in the libs
GCC_VERSION := 8
endif
export CC=gcc-$(GCC_VERSION)
export CXX=g++-$(GCC_VERSION)
@ -244,7 +235,13 @@ ifneq (,$(filter $(DEB_HOST_ARCH),$(BINUTILS_GOLD_ARCHS)))
# armhf is not yet quite ready for Thin, it FTBFS
# see https://buildd.debian.org/status/fetch.php?pkg=llvm-toolchain-8&arch=armhf&ver=1%3A8.0.1%7E%2Brc2-1%7Eexp1&stamp=1560334266&raw=0
ifeq (,$(filter $(DEB_HOST_ARCH), armhf))
CMAKE_EXTRA += -DLLVM_ENABLE_LTO="Thin"
# Use BOOTSTRAP_LLVM_ENABLE_LTO to make sure that it isn't used
# when running stage1 with gcc
# For now, disable ThinLTO usage because:
# * LLVM_ENABLE_LTO doesn't work with gcc >= 9 (option not accepted)
# * BOOTSTRAP_LLVM_ENABLE_LTO is producing some large binary
# See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=943623
# CMAKE_EXTRA += -DBOOTSTRAP_LLVM_ENABLE_LTO="Thin"
endif
endif
endif
@ -299,7 +296,7 @@ preconfigure:
done
# Make install file executable for dh-exec
chmod +x debian/llvm-$(LLVM_VERSION)-dev.install
chmod +x debian/llvm-$(LLVM_VERSION)-dev.install debian/clang-tools-$(LLVM_VERSION).install
# DH doesn't support the [power ...] in install on Ubuntu trusty
# fails with cp: cannot stat 'debian/tmp/[!powerpc': No such file or directory
@ -596,9 +593,6 @@ endif
# Path changed. Make a copy of it
cp $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/README.txt $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/share/README.txt
# idem for the lldb python binding
mkdir -p $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/python3/dist-packages/lldb/
# Remove things that CMake install but which aren't packaged yet,
# or are packaged from the source or build tree.
mv $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/clang-$(LLVM_VERSION) \

View File

@ -8,3 +8,9 @@ Restrictions: allow-stderr
Tests: cmake-test
Depends: gcc, build-essential, cmake, llvm-10-dev, libclang-common-10-dev
Test-Command: python3 -c "import lldb; print(lldb.__file__); print(lldb)"
Depends: python3-lldb-10
Test-Command: python3 -c "import clang; print(clang.__file__); print(clang)"
Depends: python3-clang-10

5
debian/unpack.sh vendored
View File

@ -1,8 +1,9 @@
set -e
ORIG_VERSION=snapshot
ORIG_VERSION=10
MAJOR_VERSION=10 # 8.0.1
REV=`ls -1 *${ORIG_VERSION}_${MAJOR_VERSION}*~+*xz | tail -1|perl -ne 'print "$1\n" if /~\+(.*)\.orig/;' | sort -ru`
REV=`ls -1 *$ORIG_VERSION_$MAJOR_VERSION*~+*xz | tail -1|perl -ne 'print "$1\n" if /~\+(.*)\.orig/;' | sort -ru`
#SVN_REV=347285
VERSION=$REV
#VERSION=+rc3