From 9b984e637282a2d1a5dc8db28a2a43a162285264 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sat, 15 Feb 2014 10:32:08 +0000 Subject: [PATCH 01/30] Symlink for current build mode missing (Closes upstream #18836) --- debian/changelog | 8 +++++++- debian/llvm-3.4-dev.links.in | 1 + 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index e567093c..66190f59 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,10 @@ -llvm-toolchain-3.4 (1:3.4-2) UNRELEASED; urgency=medium +llvm-toolchain-3.4 (1:3.4-3) UNRELEASED; urgency=medium + + * Symlink for current build mode missing (Closes upstream #18836) + + -- Sylvestre Ledru Sat, 15 Feb 2014 11:31:13 +0100 + +llvm-toolchain-3.4 (1:3.4-2) unstable; urgency=medium * Only explicit the link against atomic when running mips & mipsel * Fix the cindex.py declaration (3.3 => 3.5). Closes upstream bug #18365 diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index 36b4ce42..d6ac97d2 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -5,3 +5,4 @@ usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/include/llvm usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/build/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/build/include/llvm usr/lib/llvm-3.4/include/ usr/lib/llvm-3.4/build/include +usr/lib/llvm-3.4/ usr/lib/llvm-3.4/build/Release From 423d59d058e63d102dde9dcf09103e19a200758e Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 17 Feb 2014 09:35:18 +0000 Subject: [PATCH 02/30] Add link usr/lib/llvm-3.4/ to usr/lib/llvm-3.4/build/Debug+Asserts --- debian/changelog | 1 + debian/llvm-3.4-dev.links.in | 2 ++ 2 files changed, 3 insertions(+) diff --git a/debian/changelog b/debian/changelog index 66190f59..ba2a5b4f 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,7 @@ llvm-toolchain-3.4 (1:3.4-3) UNRELEASED; urgency=medium * Symlink for current build mode missing (Closes upstream #18836) + * Add link usr/lib/llvm-3.4/ to usr/lib/llvm-3.4/build/Debug+Asserts -- Sylvestre Ledru Sat, 15 Feb 2014 11:31:13 +0100 diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index d6ac97d2..2faed54b 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -6,3 +6,5 @@ usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/build/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/build/include/llvm usr/lib/llvm-3.4/include/ usr/lib/llvm-3.4/build/include usr/lib/llvm-3.4/ usr/lib/llvm-3.4/build/Release +usr/lib/llvm-3.4/ usr/lib/llvm-3.4/build/Debug+Asserts + From 723635127fd9c263517e4d84da04ded415fc5a48 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 18 Feb 2014 18:16:02 +0000 Subject: [PATCH 03/30] Backport of a r201586 from upstream. scan-build was failing on some project like firefox build system. (Yeh, advantage to be the packager of a software that I use ;) ). See scan-build-fix-clang-detection.diff --- debian/changelog | 3 +++ .../scan-build-fix-clang-detection.diff | 26 +++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 30 insertions(+) create mode 100644 debian/patches/scan-build-fix-clang-detection.diff diff --git a/debian/changelog b/debian/changelog index ba2a5b4f..27e08dfb 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,9 @@ llvm-toolchain-3.4 (1:3.4-3) UNRELEASED; urgency=medium * Symlink for current build mode missing (Closes upstream #18836) * Add link usr/lib/llvm-3.4/ to usr/lib/llvm-3.4/build/Debug+Asserts + * Backport of a r201586 from upstream. scan-build was failing on some project + like firefox build system. (Yeh, advantage to be the packager of a software + that I use ;) ). See scan-build-fix-clang-detection.diff -- Sylvestre Ledru Sat, 15 Feb 2014 11:31:13 +0100 diff --git a/debian/patches/scan-build-fix-clang-detection.diff b/debian/patches/scan-build-fix-clang-detection.diff new file mode 100644 index 00000000..3b6a2dae --- /dev/null +++ b/debian/patches/scan-build-fix-clang-detection.diff @@ -0,0 +1,26 @@ +Index: llvm-toolchain-3.4-3.4/clang/tools/scan-build/ccc-analyzer +=================================================================== +--- llvm-toolchain-3.4-3.4.orig/clang/tools/scan-build/ccc-analyzer 2013-10-22 20:55:18.000000000 +0200 ++++ llvm-toolchain-3.4-3.4/clang/tools/scan-build/ccc-analyzer 2014-02-18 18:58:07.185575339 +0100 +@@ -40,17 +40,17 @@ + + if ($FindBin::Script =~ /c\+\+-analyzer/) { + $Compiler = $ENV{'CCC_CXX'}; +- if (!defined $Compiler) { $Compiler = $DefaultCXXCompiler; } ++ if (!defined $Compiler || ! -x $Compiler) { $Compiler = $DefaultCXXCompiler; } + + $Clang = $ENV{'CLANG_CXX'}; +- if (!defined $Clang) { $Clang = 'clang++'; } ++ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang++'; } + } + else { + $Compiler = $ENV{'CCC_CC'}; +- if (!defined $Compiler) { $Compiler = $DefaultCCompiler; } ++ if (!defined $Compiler || ! -x $Compiler) { $Compiler = $DefaultCCompiler; } + + $Clang = $ENV{'CLANG'}; +- if (!defined $Clang) { $Clang = 'clang'; } ++ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang'; } + } + + ##===----------------------------------------------------------------------===## diff --git a/debian/patches/series b/debian/patches/series index f5a89149..420da260 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -36,3 +36,4 @@ fix-an-issue-in-chroot-witout-proc.diff lldb-link-atomic.diff 0007-install-dejagnu-files.patch fix-llvm-config-obj-src-root.patch +scan-build-fix-clang-detection.diff From 011dab984c88d0f10825096dab3fa638d367a8a5 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 21 Feb 2014 13:52:29 +0000 Subject: [PATCH 04/30] Fix the version in the symbol list (libclang1-3.4.symbols) --- debian/changelog | 1 + debian/libclang1-3.4.symbols | 42 ++++++++++++++++++------------------ 2 files changed, 22 insertions(+), 21 deletions(-) diff --git a/debian/changelog b/debian/changelog index 27e08dfb..73eeff2d 100644 --- a/debian/changelog +++ b/debian/changelog @@ -5,6 +5,7 @@ llvm-toolchain-3.4 (1:3.4-3) UNRELEASED; urgency=medium * Backport of a r201586 from upstream. scan-build was failing on some project like firefox build system. (Yeh, advantage to be the packager of a software that I use ;) ). See scan-build-fix-clang-detection.diff + * Fix the version in the symbol list (libclang1-3.4.symbols) -- Sylvestre Ledru Sat, 15 Feb 2014 11:31:13 +0100 diff --git a/debian/libclang1-3.4.symbols b/debian/libclang1-3.4.symbols index c993371b..875c2ce0 100644 --- a/debian/libclang1-3.4.symbols +++ b/debian/libclang1-3.4.symbols @@ -7,7 +7,7 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_CXCursorSet_insert@Base 3.2 clang_CXIndex_getGlobalOptions@Base 3.2 clang_CXIndex_setGlobalOptions@Base 3.2 - clang_CXXMethod_isPureVirtual@Base 1:3.4~+rc1 + clang_CXXMethod_isPureVirtual@Base 1:3.4 clang_CXXMethod_isStatic@Base 3.2 clang_CXXMethod_isVirtual@Base 3.2 clang_Comment_getChild@Base 3.2 @@ -16,7 +16,7 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_Comment_isWhitespace@Base 3.2 clang_CompilationDatabase_dispose@Base 3.2 clang_CompilationDatabase_fromDirectory@Base 3.2 - clang_CompilationDatabase_getAllCompileCommands@Base 1:3.4~+rc1 + clang_CompilationDatabase_getAllCompileCommands@Base 1:3.4 clang_CompilationDatabase_getCompileCommands@Base 3.2 clang_CompileCommand_getArg@Base 3.2 clang_CompileCommand_getDirectory@Base 3.2 @@ -29,19 +29,19 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_Cursor_getCommentRange@Base 3.2 clang_Cursor_getModule@Base 3.2 clang_Cursor_getNumArguments@Base 3.2 - clang_Cursor_getObjCDeclQualifiers@Base 1:3.4~+rc1 - clang_Cursor_getObjCPropertyAttributes@Base 1:3.4~+rc1 + clang_Cursor_getObjCDeclQualifiers@Base 1:3.4 + clang_Cursor_getObjCPropertyAttributes@Base 1:3.4 clang_Cursor_getObjCSelectorIndex@Base 3.2 clang_Cursor_getParsedComment@Base 3.2 clang_Cursor_getRawCommentText@Base 3.2 clang_Cursor_getReceiverType@Base 3.2 clang_Cursor_getSpellingNameRange@Base 3.2 clang_Cursor_getTranslationUnit@Base 3.2 - clang_Cursor_isBitField@Base 1:3.4~+rc1 + clang_Cursor_isBitField@Base 1:3.4 clang_Cursor_isDynamicCall@Base 3.2 clang_Cursor_isNull@Base 3.2 - clang_Cursor_isObjCOptional@Base 1:3.4~+rc1 - clang_Cursor_isVariadic@Base 1:3.4~+rc1 + clang_Cursor_isObjCOptional@Base 1:3.4 + clang_Cursor_isVariadic@Base 1:3.4 clang_FullComment_getAsHTML@Base 3.2 clang_FullComment_getAsXML@Base 3.2 clang_HTMLStartTagComment_isSelfClosing@Base 3.2 @@ -57,9 +57,9 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_InlineCommandComment_getNumArgs@Base 3.2 clang_InlineCommandComment_getRenderKind@Base 3.2 clang_InlineContentComment_hasTrailingNewline@Base 3.2 - clang_Location_isFromMainFile@Base 1:3.4~+rc1 - clang_Location_isInSystemHeader@Base 1:3.4~+rc1 - clang_Module_getASTFile@Base 1:3.4~+rc1 + clang_Location_isFromMainFile@Base 1:3.4 + clang_Location_isInSystemHeader@Base 1:3.4 + clang_Module_getASTFile@Base 1:3.4 clang_Module_getFullName@Base 3.2 clang_Module_getName@Base 3.2 clang_Module_getNumTopLevelHeaders@Base 3.2 @@ -76,11 +76,11 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_TParamCommandComment_getParamName@Base 3.2 clang_TParamCommandComment_isParamPositionValid@Base 3.2 clang_TextComment_getText@Base 3.2 - clang_Type_getAlignOf@Base 1:3.4~+rc1 - clang_Type_getCXXRefQualifier@Base 1:3.4~+rc1 - clang_Type_getClassType@Base 1:3.4~+rc1 - clang_Type_getOffsetOf@Base 1:3.4~+rc1 - clang_Type_getSizeOf@Base 1:3.4~+rc1 + clang_Type_getAlignOf@Base 1:3.4 + clang_Type_getCXXRefQualifier@Base 1:3.4 + clang_Type_getClassType@Base 1:3.4 + clang_Type_getOffsetOf@Base 1:3.4 + clang_Type_getSizeOf@Base 1:3.4 clang_VerbatimBlockLineComment_getText@Base 3.2 clang_VerbatimLineComment_getText@Base 3.2 clang_annotateTokens@Base 3.2 @@ -123,8 +123,8 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_equalRanges@Base 3.2 clang_equalTypes@Base 3.2 clang_executeOnThread@Base 3.2 - clang_findIncludesInFile@Base 1:3.4~+rc1 - clang_findIncludesInFileWithBlock@Base 1:3.4~+rc1 + clang_findIncludesInFile@Base 1:3.4 + clang_findIncludesInFileWithBlock@Base 1:3.4 clang_findReferencesInFile@Base 3.2 clang_findReferencesInFileWithBlock@Base 3.2 clang_formatDiagnostic@Base 3.2 @@ -188,12 +188,12 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_getEnumConstantDeclValue@Base 3.2 clang_getEnumDeclIntegerType@Base 3.2 clang_getExpansionLocation@Base 3.2 - clang_getFieldDeclBitWidth@Base 1:3.4~+rc1 + clang_getFieldDeclBitWidth@Base 1:3.4 clang_getFile@Base 3.2 - clang_getFileLocation@Base 1:3.4~+rc1 + clang_getFileLocation@Base 1:3.4 clang_getFileName@Base 3.2 clang_getFileTime@Base 3.2 - clang_getFileUniqueID@Base 1:3.4~+rc1 + clang_getFileUniqueID@Base 1:3.4 clang_getFunctionTypeCallingConv@Base 3.2 clang_getIBOutletCollectionType@Base 3.2 clang_getIncludedFile@Base 3.2 @@ -232,7 +232,7 @@ libclang.so.1 libclang1-3.4 #MINVER# clang_getTranslationUnitSpelling@Base 3.2 clang_getTypeDeclaration@Base 3.2 clang_getTypeKindSpelling@Base 3.2 - clang_getTypeSpelling@Base 1:3.4~+rc1 + clang_getTypeSpelling@Base 1:3.4 clang_getTypedefDeclUnderlyingType@Base 3.2 clang_hashCursor@Base 3.2 clang_indexLoc_getCXSourceLocation@Base 3.2 From 562f60530b145023f613e25e224907d41003fd06 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 28 Feb 2014 09:02:53 +0000 Subject: [PATCH 05/30] also ship the svn revision number --- debian/orig-tar.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh index a4d461df..60a790be 100755 --- a/debian/orig-tar.sh +++ b/debian/orig-tar.sh @@ -72,13 +72,14 @@ else fi if test -n "$RCRELEASE"; then - VERSION=$MAJOR_VERSION"~+"$TAG + VERSION=$MAJOR_VERSION"~+"$REVISION # WAS TAG FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION else VERSION=$MAJOR_VERSION"~svn"$REVISION FULL_VERSION="llvm-toolchain-snapshot_"$VERSION fi - +echo $FULL_VERSION +exit 0 # LLVM LLVM_TARGET=$FULL_VERSION $SVN_CMD $(get_svn_url llvm $BRANCH $TAG) $LLVM_TARGET From 04f5155e587dd6083ab349c3ff6280d180980da9 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 28 Feb 2014 10:02:48 +0000 Subject: [PATCH 06/30] fix the version name + debug stuff --- debian/orig-tar.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh index 60a790be..388c8c58 100755 --- a/debian/orig-tar.sh +++ b/debian/orig-tar.sh @@ -72,14 +72,13 @@ else fi if test -n "$RCRELEASE"; then - VERSION=$MAJOR_VERSION"~+"$REVISION # WAS TAG + VERSION=$MAJOR_VERSION"+"$REVISION # WAS TAG FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION else VERSION=$MAJOR_VERSION"~svn"$REVISION FULL_VERSION="llvm-toolchain-snapshot_"$VERSION fi -echo $FULL_VERSION -exit 0 + # LLVM LLVM_TARGET=$FULL_VERSION $SVN_CMD $(get_svn_url llvm $BRANCH $TAG) $LLVM_TARGET From b001b6aceb1a0c73064d7e48adafa9f0be9277b9 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 28 Mar 2014 17:41:30 +0000 Subject: [PATCH 07/30] * Update the path regarding upstream changed (3.4 => 3.4.1) * Remove generated file libllvm3.4.install --- debian/changelog | 6 ++++-- debian/libclang-common-3.4-dev.install | 2 +- debian/libclang-common-3.4-dev.links | 7 ++++--- debian/libllvm3.4.install | 1 - debian/libllvm3.4.install.in | 2 +- debian/llvm-3.4-dev.links.in | 2 ++ debian/rules | 11 +++++++++-- 7 files changed, 21 insertions(+), 10 deletions(-) delete mode 100644 debian/libllvm3.4.install diff --git a/debian/changelog b/debian/changelog index 73eeff2d..91dbbc8a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -llvm-toolchain-3.4 (1:3.4-3) UNRELEASED; urgency=medium +llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium * Symlink for current build mode missing (Closes upstream #18836) * Add link usr/lib/llvm-3.4/ to usr/lib/llvm-3.4/build/Debug+Asserts @@ -6,8 +6,10 @@ llvm-toolchain-3.4 (1:3.4-3) UNRELEASED; urgency=medium like firefox build system. (Yeh, advantage to be the packager of a software that I use ;) ). See scan-build-fix-clang-detection.diff * Fix the version in the symbol list (libclang1-3.4.symbols) + * Update the path regarding upstream changed (3.4 => 3.4.1) + * Remove generated file libllvm3.4.install - -- Sylvestre Ledru Sat, 15 Feb 2014 11:31:13 +0100 + -- Sylvestre Ledru Fri, 28 Mar 2014 13:41:23 +0000 llvm-toolchain-3.4 (1:3.4-2) unstable; urgency=medium diff --git a/debian/libclang-common-3.4-dev.install b/debian/libclang-common-3.4-dev.install index 5678e0a4..8885a4e6 100644 --- a/debian/libclang-common-3.4-dev.install +++ b/debian/libclang-common-3.4-dev.install @@ -1,4 +1,4 @@ -usr/lib/llvm-3.4/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.1/include #usr/lib/clang/3.4/include/ /usr/include/clang/3.4/ usr/lib/llvm-3.4/lib/clang/3.4/lib #usr/lib/clang/3.4/lib /usr/lib/clang/3.4/ diff --git a/debian/libclang-common-3.4-dev.links b/debian/libclang-common-3.4-dev.links index 1710f707..91c80eba 100644 --- a/debian/libclang-common-3.4-dev.links +++ b/debian/libclang-common-3.4-dev.links @@ -1,3 +1,4 @@ -usr/lib/llvm-3.4/lib/clang/3.4/include usr/include/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4/include usr/lib/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4/lib usr/lib/clang/3.4/lib +usr/lib/llvm-3.4/lib/clang/3.4.0/include usr/include/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.0/include usr/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.0/lib /usr/lib/clang/3.4/lib +usr/lib/clang/3.4 usr/lib/clang/3.4.0 diff --git a/debian/libllvm3.4.install b/debian/libllvm3.4.install deleted file mode 100644 index e76f4b45..00000000 --- a/debian/libllvm3.4.install +++ /dev/null @@ -1 +0,0 @@ -usr/lib/llvm-3.4/lib/libLLVM-3.4.so.1 /usr/lib/x86_64-linux-gnu/ diff --git a/debian/libllvm3.4.install.in b/debian/libllvm3.4.install.in index 29368d96..a1ddd288 100644 --- a/debian/libllvm3.4.install.in +++ b/debian/libllvm3.4.install.in @@ -1 +1 @@ -usr/lib/llvm-3.4/lib/libLLVM-3.4.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ +usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index 2faed54b..57ecf826 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -1,5 +1,7 @@ +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.0.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.0.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.0.so usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/include/llvm usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/build/include/llvm-c diff --git a/debian/rules b/debian/rules index f021cd33..6877cd2d 100755 --- a/debian/rules +++ b/debian/rules @@ -5,6 +5,7 @@ TARGET_BUILD := build-llvm GCC_VERSION := 4.8 #GCC_VERSION := $(shell dpkg-query -W -f '$${Version}' g++ | sed -rne 's,^([0-9]+:)?([0-9]+\.[0-9]+).*$$,\2,p') LLVM_VERSION := 3.4 +LLVM_VERSION_FULL := $(LLVM_VERSION).1 SONAME_EXT := 1 DEBIAN_REVISION := $(shell dpkg-parsechangelog | sed -rne 's,^Version: .*-(.*),\1,p') ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) @@ -246,7 +247,8 @@ override_dh_auto_install: chrpath -d $(TARGET_BUILD)/Release/bin/clang chrpath -d `find $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/bin/ -type f -executable` - mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION)*.so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) + mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION_FULL)*.so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) + if test $(LLDB_ENABLE) = yes; then \ mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/liblldb.so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/liblldb.so.$(SONAME_EXT); \ @@ -350,7 +352,12 @@ endif ifeq (,$(filter $(DEB_HOST_ARCH), $(LLDB_DISABLE_ARCHS) armhf)) if test $(LLDB_ENABLE) = yes; then \ cd $(TARGET_BUILD)/Release/lib/python2.7/site-packages/lldb && if test ! -h _lldb.so -o ! -f _lldb.so; then ln -s ../../../liblldb.so _lldb.so; fi; \ - if test ! -h libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) -o ! -f _lldb.so; then ln -s ../../../libLLVM-$(LLVM_VERSION).so libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT); fi; \ + if test ! -h libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) -o ! -f _lldb.so; then \ + ln -s ../../../libLLVM-$(LLVM_VERSION_FULL).so libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT); \ + fi; \ + if test ! -h libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) -o ! -f _lldb.so; then \ + ln -s ../../../libLLVM-$(LLVM_VERSION_FULL).so libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT); \ + fi; \ fi cd $(TARGET_BUILD)/ && $(MAKE) -C tools/lldb/test || true if test -d $(TARGET_BUILD)/tools/lldb/test/lldb-test-traces/; then \ From 2f7457ffe3872611a812dec1978f82dd41830313 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 30 Mar 2014 17:32:36 +0000 Subject: [PATCH 08/30] Add gnustep & gnustep-devel as suggests of clang-3.4 --- debian/changelog | 1 + debian/control | 1 + 2 files changed, 2 insertions(+) diff --git a/debian/changelog b/debian/changelog index 91dbbc8a..de8e02d5 100644 --- a/debian/changelog +++ b/debian/changelog @@ -8,6 +8,7 @@ llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium * Fix the version in the symbol list (libclang1-3.4.symbols) * Update the path regarding upstream changed (3.4 => 3.4.1) * Remove generated file libllvm3.4.install + * Add gnustep & gnustep-devel as suggests of clang-3.4 -- Sylvestre Ledru Fri, 28 Mar 2014 13:41:23 +0000 diff --git a/debian/control b/debian/control index c1b94b05..43f519ac 100644 --- a/debian/control +++ b/debian/control @@ -26,6 +26,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libclang1-3.4 (= ${binary:Version}) Provides: c-compiler, objc-compiler, c++-compiler Recommends: llvm-3.4-dev, python +Suggests: gnustep, gnustep-devel Replaces: clang (<< 1:3.4), clang-3.1, clang-3.2, clang-3.3, compiler-rt, llvm-3.4 (<< 1:3.4~svn194058) Breaks: clang (<< 1:3.4), clang-3.1, clang-3.2, clang-3.3, compiler-rt, From dab9ea343357641bebcf7db1cd12bc1b2c3759cc Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 30 Mar 2014 17:35:12 +0000 Subject: [PATCH 09/30] Add libc6-dev as an explicit dependency of clang-3.4 --- debian/changelog | 1 + debian/control | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index de8e02d5..701506ad 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,6 +9,7 @@ llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium * Update the path regarding upstream changed (3.4 => 3.4.1) * Remove generated file libllvm3.4.install * Add gnustep & gnustep-devel as suggests of clang-3.4 + * Add libc6-dev as an explicit dependency of clang-3.4 -- Sylvestre Ledru Fri, 28 Mar 2014 13:41:23 +0000 diff --git a/debian/control b/debian/control index 43f519ac..65cd84b3 100644 --- a/debian/control +++ b/debian/control @@ -23,7 +23,7 @@ Package: clang-3.4 Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libclang-common-3.4-dev (= ${binary:Version}), - libclang1-3.4 (= ${binary:Version}) + libclang1-3.4 (= ${binary:Version}), libc6-dev Provides: c-compiler, objc-compiler, c++-compiler Recommends: llvm-3.4-dev, python Suggests: gnustep, gnustep-devel From 518dfc5ca5bcafd0a1456289ff0b25b71acf86c0 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Wed, 23 Apr 2014 13:49:31 +0000 Subject: [PATCH 10/30] (Patch improved also by Martin Nowack) --- debian/changelog | 1 + debian/libclang-common-3.4-dev.links | 8 ++++---- debian/llvm-3.4-dev.links.in | 4 ++-- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/debian/changelog b/debian/changelog index 701506ad..97b34988 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,6 +7,7 @@ llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium that I use ;) ). See scan-build-fix-clang-detection.diff * Fix the version in the symbol list (libclang1-3.4.symbols) * Update the path regarding upstream changed (3.4 => 3.4.1) + (Patch improved also by Martin Nowack) * Remove generated file libllvm3.4.install * Add gnustep & gnustep-devel as suggests of clang-3.4 * Add libc6-dev as an explicit dependency of clang-3.4 diff --git a/debian/libclang-common-3.4-dev.links b/debian/libclang-common-3.4-dev.links index 91c80eba..26201ac1 100644 --- a/debian/libclang-common-3.4-dev.links +++ b/debian/libclang-common-3.4-dev.links @@ -1,4 +1,4 @@ -usr/lib/llvm-3.4/lib/clang/3.4.0/include usr/include/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4.0/include usr/lib/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4.0/lib /usr/lib/clang/3.4/lib -usr/lib/clang/3.4 usr/lib/clang/3.4.0 +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/include/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.1/lib /usr/lib/clang/3.4/lib +usr/lib/clang/3.4 usr/lib/clang/3.4.1 diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index 57ecf826..da7c8b2b 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -1,7 +1,7 @@ -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.0.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.0.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.0.so +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/include/llvm usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/build/include/llvm-c From 762215ad057ef4f42ef7c636dd070debb6ce0cd0 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 27 Apr 2014 03:16:13 +0000 Subject: [PATCH 11/30] * Build with dh_install --fail-missing * Start to use /usr/bin/foo-X.Y. First step to have several clang versions installed together * Add some missing files: - lli-child-target - llvm-3.4-runtime - count - llvm-3.4-tools - html.tar.gz - llvm-3.4-doc - ocamldoc.tar.gz - llvm-3.4-doc - BugpointPasses.so - llvm-3.4-dev - liblldb* - lldb-3.4-dev - clang-apply-replacements - clang-3.4 - clang-tidy - clang-3.4 - pp-trace - clang-3.4 --- debian/changelog | 13 +++++++++++++ debian/clang-3.4-doc.install | 3 +++ debian/clang-3.4.install | 24 +++++++++++++++++++----- debian/clang-3.4.links | 9 +++++++++ debian/libclang-3.4-dev.install | 11 +++++++++-- debian/libclang-common-3.4-dev.install | 8 ++++++-- debian/libclang-common-3.4-dev.links | 7 +++---- debian/libllvm-3.4-ocaml-dev.install.in | 4 ++-- debian/lldb-3.4-dev.install | 2 ++ debian/llvm-3.4-dev.install | 1 + debian/llvm-3.4-doc.install | 6 ++++++ debian/llvm-3.4-runtime.install | 8 ++++++-- debian/llvm-3.4-tools.install | 10 ++++++++-- debian/rules | 3 +++ 14 files changed, 90 insertions(+), 19 deletions(-) create mode 100644 debian/clang-3.4-doc.install diff --git a/debian/changelog b/debian/changelog index 97b34988..42fb2894 100644 --- a/debian/changelog +++ b/debian/changelog @@ -11,6 +11,19 @@ llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium * Remove generated file libllvm3.4.install * Add gnustep & gnustep-devel as suggests of clang-3.4 * Add libc6-dev as an explicit dependency of clang-3.4 + * Build with dh_install --fail-missing + * Start to use /usr/bin/foo-X.Y. First step to have several clang versions + installed together + * Add some missing files: + - lli-child-target - llvm-3.4-runtime + - count - llvm-3.4-tools + - html.tar.gz - llvm-3.4-doc + - ocamldoc.tar.gz - llvm-3.4-doc + - BugpointPasses.so - llvm-3.4-dev + - liblldb* - lldb-3.4-dev + - clang-apply-replacements - clang-3.4 + - clang-tidy - clang-3.4 + - pp-trace - clang-3.4 -- Sylvestre Ledru Fri, 28 Mar 2014 13:41:23 +0000 diff --git a/debian/clang-3.4-doc.install b/debian/clang-3.4-doc.install new file mode 100644 index 00000000..4dfcdbb4 --- /dev/null +++ b/debian/clang-3.4-doc.install @@ -0,0 +1,3 @@ +usr/lib/llvm-3.4/docs/llvm/html/clang/manpage.css +usr/lib/llvm-3.4/docs/llvm/html/clang/clang.html +usr/lib/llvm-3.4/docs/llvm/ps/clang.ps diff --git a/debian/clang-3.4.install b/debian/clang-3.4.install index da6dc412..8ef5d908 100644 --- a/debian/clang-3.4.install +++ b/debian/clang-3.4.install @@ -1,11 +1,25 @@ -usr/lib/llvm-3.4/bin/clang /usr/bin/ -usr/lib/llvm-3.4/bin/clang++ /usr/bin/ -usr/lib/llvm-3.4/bin/clang-check /usr/bin/ -usr/lib/llvm-3.4/bin/clang-tblgen /usr/bin/ -usr/lib/llvm-3.4/bin/c-index-test* +usr/lib/llvm-3.4/bin/clang +usr/lib/llvm-3.4/bin/clang++ +usr/lib/llvm-3.4/bin/clang-check +usr/lib/llvm-3.4/bin/clang-tblgen +usr/lib/llvm-3.4/bin/c-index-test +usr/lib/llvm-3.4/bin/clang-apply-replacements +usr/lib/llvm-3.4/bin/clang-tidy +usr/lib/llvm-3.4/bin/pp-trace + usr/bin/c-index-test* tools/clang/tools/scan-build /usr/share/clang/ tools/clang/tools/scan-view /usr/share/clang/ #usr/share/man/man1/clang.1 usr/share/man/man1/ debian/pollycc /usr/bin/ +usr/bin/clang-3.4 +usr/bin/clang++-3.4 +usr/bin/clang-check-3.4 +usr/bin/clang-tblgen-3.4 +usr/bin/c-index-test-3.4 +usr/bin/clang-apply-replacements-3.4 +usr/bin/clang-tidy-3.4 +usr/bin/pp-trace-3.4 + +usr/lib/llvm-3.4/share/man/man1/clang.1 diff --git a/debian/clang-3.4.links b/debian/clang-3.4.links index bd6dbed6..e36d05fc 100644 --- a/debian/clang-3.4.links +++ b/debian/clang-3.4.links @@ -3,3 +3,12 @@ usr/share/man/man1/clang-3.4.1.gz usr/share/man/man1/clang++.1.gz /usr/share/clang/scan-build/scan-build /usr/bin/scan-build /usr/share/clang/scan-view/scan-view /usr/bin/scan-view /usr/bin/clang /usr/bin/llvm-clang + +usr/bin/clang-3.4 usr/bin/clang +usr/bin/clang++-3.4 usr/bin/clang++ +usr/bin/clang-check-3.4 usr/bin/clang-check +usr/bin/clang-tblgen-3.4 usr/bin/clang-tblgen +usr/bin/c-index-test-3.4 usr/bin/c-index-test +usr/bin/clang-apply-replacements-3.4 usr/bin/clang-apply-replacements +usr/bin/clang-tidy-3.4 usr/bin/clang-tidy +usr/bin/pp-trace-3.4 usr/bin/pp-trace diff --git a/debian/libclang-3.4-dev.install b/debian/libclang-3.4-dev.install index 62e0376f..0293451d 100644 --- a/debian/libclang-3.4-dev.install +++ b/debian/libclang-3.4-dev.install @@ -1,7 +1,14 @@ usr/lib/llvm-3.4/include/clang usr/lib/llvm-3.4/include/clang-c +usr/lib/llvm-3.4/lib/libclang*a + +usr/lib/llvm-3.4/lib/libclang.so* +usr/lib/llvm-3.4/lib/libpolly* +usr/lib/llvm-3.4/lib/libmodernizeCore.a + + + #usr/include/clang /usr/include/ #usr/include/clang-c /usr/include/ #usr/lib/libclang.so /usr/lib/ -usr/lib/llvm-3.4/lib/libclang*a -#usr/lib/libclang*a /usr/lib/ +#usr/lib/libclang*a /usr/lib/ \ No newline at end of file diff --git a/debian/libclang-common-3.4-dev.install b/debian/libclang-common-3.4-dev.install index 8885a4e6..f1b1bd68 100644 --- a/debian/libclang-common-3.4-dev.install +++ b/debian/libclang-common-3.4-dev.install @@ -1,4 +1,8 @@ -usr/lib/llvm-3.4/lib/clang/3.4.1/include -#usr/lib/clang/3.4/include/ /usr/include/clang/3.4/ +usr/lib/llvm-3.4/lib/clang/3.4/include +usr/lib/llvm-3.4/include/polly/ + usr/lib/llvm-3.4/lib/clang/3.4/lib + + #usr/lib/clang/3.4/lib /usr/lib/clang/3.4/ +#usr/lib/clang/3.4/include/ /usr/include/clang/3.4/ diff --git a/debian/libclang-common-3.4-dev.links b/debian/libclang-common-3.4-dev.links index 26201ac1..1710f707 100644 --- a/debian/libclang-common-3.4-dev.links +++ b/debian/libclang-common-3.4-dev.links @@ -1,4 +1,3 @@ -usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/include/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4.1/lib /usr/lib/clang/3.4/lib -usr/lib/clang/3.4 usr/lib/clang/3.4.1 +usr/lib/llvm-3.4/lib/clang/3.4/include usr/include/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4/include usr/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4/lib usr/lib/clang/3.4/lib diff --git a/debian/libllvm-3.4-ocaml-dev.install.in b/debian/libllvm-3.4-ocaml-dev.install.in index 27018b07..18bf7e4b 100644 --- a/debian/libllvm-3.4-ocaml-dev.install.in +++ b/debian/libllvm-3.4-ocaml-dev.install.in @@ -1,2 +1,2 @@ -debian/tmp/@OCAML_STDLIB_DIR@/llvm-3.4 @OCAML_STDLIB_DIR@/ -debian/tmp//usr/lib/llvm-3.4/docs/llvm/ocamldoc/html usr/share/doc/libllvm-3.4-ocaml-dev/ +@OCAML_STDLIB_DIR@/llvm-3.4 @OCAML_STDLIB_DIR@/ +usr/lib/llvm-3.4/docs/llvm/ocamldoc/html usr/share/doc/libllvm-3.4-ocaml-dev/ diff --git a/debian/lldb-3.4-dev.install b/debian/lldb-3.4-dev.install index 97831b4a..6f07b807 100644 --- a/debian/lldb-3.4-dev.install +++ b/debian/lldb-3.4-dev.install @@ -1 +1,3 @@ /usr/lib/llvm-3.4/include/lldb +/usr/lib/llvm-3.4/lib/liblldb* + diff --git a/debian/llvm-3.4-dev.install b/debian/llvm-3.4-dev.install index 447ed1d3..f2d33cd2 100644 --- a/debian/llvm-3.4-dev.install +++ b/debian/llvm-3.4-dev.install @@ -2,6 +2,7 @@ usr/lib/llvm-3.4/lib/libLLVM*.a usr/lib/llvm-3.4/lib/libllvm*.a usr/lib/llvm-3.4/lib/LLVM*.so usr/lib/llvm-3.4/lib/libLTO.* +usr/lib/llvm-3.4/lib/BugpointPasses.so usr/lib/llvm-3.4/include/llvm/ usr/include/llvm-3.4/ usr/lib/llvm-3.4/include/llvm-c/ usr/include/llvm-c-3.4/ cmake/modules/*.cmake usr/share/llvm-3.4/cmake/ diff --git a/debian/llvm-3.4-doc.install b/debian/llvm-3.4-doc.install index b20f44a5..ddcb75fd 100644 --- a/debian/llvm-3.4-doc.install +++ b/debian/llvm-3.4-doc.install @@ -1 +1,7 @@ docs/_build/html usr/share/doc/llvm-3.4-doc/ +usr/lib/llvm-3.4/docs/llvm/html.tar.gz +usr/lib/llvm-3.4/docs/llvm/ocamldoc.tar.gz +usr/lib/llvm-3.4/docs/llvm/html/Dummy.html +usr/lib/llvm-3.4/docs/llvm/html/doxygen.css +usr/lib/llvm-3.4/docs/llvm/html/LibASTMatchersReference.html + diff --git a/debian/llvm-3.4-runtime.install b/debian/llvm-3.4-runtime.install index 9b5d1d3b..7f21e53b 100644 --- a/debian/llvm-3.4-runtime.install +++ b/debian/llvm-3.4-runtime.install @@ -1,3 +1,7 @@ -debian/tmp/usr/lib/llvm-3.4/bin/lli /usr/lib/llvm-3.4/bin/ -debian/tmp/usr/bin/lli-3.4 /usr/bin/ +usr/lib/llvm-3.4/bin/lli +usr/lib/llvm-3.4/bin/lli-child-target + +usr/bin/lli-3.4 +usr/bin/lli-child-target-3.4 + debian/llvm-3.4-runtime.binfmt usr/share/binfmts/ diff --git a/debian/llvm-3.4-tools.install b/debian/llvm-3.4-tools.install index 85d988aa..f7293dc0 100644 --- a/debian/llvm-3.4-tools.install +++ b/debian/llvm-3.4-tools.install @@ -1,7 +1,13 @@ -usr/lib/llvm-3.4/bin/not* -usr/lib/llvm-3.4/bin/FileCheck* +usr/lib/llvm-3.4/bin/count +usr/lib/llvm-3.4/bin/FileCheck +usr/lib/llvm-3.4/bin/not + unittests/Makefile.unittest /usr/lib/llvm-3.4/build/unittests/ utils/lit/* /usr/lib/llvm-3.4/build/utils/lit/ + +usr/bin/count-3.4 +usr/bin/FileCheck-3.4 +usr/bin/not-3.4 diff --git a/debian/rules b/debian/rules index 6877cd2d..eb47ff31 100755 --- a/debian/rules +++ b/debian/rules @@ -298,6 +298,9 @@ override_dh_auto_install: # Managed in lldb-X.Y.links.in rm -f $(CURDIR)/$(TARGET_BUILD)/Release/lib/python*/site-packages/lldb/_lldb.so +override_dh_install: + dh_install --fail-missing + override_dh_installman: dh_installman # Make sure that lli manpage is only in llvm-3.2-runtime (See #697117) From 3cd58458aaf2a8d78b2d8b55e013307f5483ab51 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 27 Apr 2014 06:24:19 +0000 Subject: [PATCH 12/30] remove wrong link (prevent the upgrade) --- debian/llvm-3.4-dev.links.in | 1 - 1 file changed, 1 deletion(-) diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index da7c8b2b..63938b9a 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -1,4 +1,3 @@ -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so From f423dd364b9c7d87a9dd8ee19334abe878a04a38 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Wed, 30 Apr 2014 15:29:57 +0000 Subject: [PATCH 13/30] remove wrong declaration --- debian/llvm-3.4-dev.links.in | 1 - 1 file changed, 1 deletion(-) diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index 63938b9a..f51c39f3 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -1,4 +1,3 @@ -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/include/llvm-c From 44ef5ad890f4f9fa05903b245d9b3b15661ab743 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Wed, 30 Apr 2014 15:30:06 +0000 Subject: [PATCH 14/30] add fail missing --- debian/rules | 2 ++ 1 file changed, 2 insertions(+) diff --git a/debian/rules b/debian/rules index eb47ff31..2c1ae31d 100755 --- a/debian/rules +++ b/debian/rules @@ -317,6 +317,8 @@ override_dh_strip: override_dh_shlibdeps: LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ dh_shlibdeps +override_dh_install: + dh_install --fail-missing override_dh_installdeb: # Managed by the package From e8bc60a95b4d64548f7a8d4f07e08e9c0624a278 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 6 May 2014 09:04:29 +0000 Subject: [PATCH 15/30] Fix path --- debian/libclang-3.4-dev.install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/libclang-3.4-dev.install b/debian/libclang-3.4-dev.install index 0293451d..bb327ffc 100644 --- a/debian/libclang-3.4-dev.install +++ b/debian/libclang-3.4-dev.install @@ -2,7 +2,7 @@ usr/lib/llvm-3.4/include/clang usr/lib/llvm-3.4/include/clang-c usr/lib/llvm-3.4/lib/libclang*a -usr/lib/llvm-3.4/lib/libclang.so* +usr/lib/llvm-3.4/lib/libclang*.so usr/lib/llvm-3.4/lib/libpolly* usr/lib/llvm-3.4/lib/libmodernizeCore.a From 5b102b132703c9cdec7599a812e725bcaa8bda8d Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 6 May 2014 11:56:49 +0000 Subject: [PATCH 16/30] remove useless declaration --- debian/libclang-3.4-dev.install | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/debian/libclang-3.4-dev.install b/debian/libclang-3.4-dev.install index bb327ffc..9ba75a17 100644 --- a/debian/libclang-3.4-dev.install +++ b/debian/libclang-3.4-dev.install @@ -2,7 +2,6 @@ usr/lib/llvm-3.4/include/clang usr/lib/llvm-3.4/include/clang-c usr/lib/llvm-3.4/lib/libclang*a -usr/lib/llvm-3.4/lib/libclang*.so usr/lib/llvm-3.4/lib/libpolly* usr/lib/llvm-3.4/lib/libmodernizeCore.a @@ -11,4 +10,4 @@ usr/lib/llvm-3.4/lib/libmodernizeCore.a #usr/include/clang /usr/include/ #usr/include/clang-c /usr/include/ #usr/lib/libclang.so /usr/lib/ -#usr/lib/libclang*a /usr/lib/ \ No newline at end of file +#usr/lib/libclang*a /usr/lib/ From cf7c59674e07fbf53e7ed1f7566e90fa1b7b9337 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 6 May 2014 12:34:44 +0000 Subject: [PATCH 17/30] Fix various path issues --- debian/libclang1-3.4.install.in | 1 + debian/libclang1-3.4.links.in | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) delete mode 100644 debian/libclang1-3.4.links.in diff --git a/debian/libclang1-3.4.install.in b/debian/libclang1-3.4.install.in index 5b87f454..eb534313 100644 --- a/debian/libclang1-3.4.install.in +++ b/debian/libclang1-3.4.install.in @@ -1 +1,2 @@ usr/lib/llvm-3.4/lib/libclang-3.4.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ +usr/lib/llvm-3.4/lib/libclang.so.1 diff --git a/debian/libclang1-3.4.links.in b/debian/libclang1-3.4.links.in deleted file mode 100644 index 8a00b651..00000000 --- a/debian/libclang1-3.4.links.in +++ /dev/null @@ -1 +0,0 @@ -usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so.1 usr/lib/llvm-3.4/lib/libclang.so.1 From 657a712f62ce4a5a168842b17467d98fc9e02a1d Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 6 May 2014 12:54:38 +0000 Subject: [PATCH 18/30] file removed --- debian/rules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/rules b/debian/rules index 2c1ae31d..1e161470 100755 --- a/debian/rules +++ b/debian/rules @@ -125,7 +125,7 @@ debian/%: debian/%.in override_dh_ocamlinit: override_dh_ocamlclean: -override_dh_auto_configure: debian/lldb-$(LLVM_VERSION).install debian/lldb-$(LLVM_VERSION).links debian/libllvm$(LLVM_VERSION).install debian/llvm-$(LLVM_VERSION)-dev.links debian/libllvm-$(LLVM_VERSION)-ocaml-dev.install debian/libllvm-$(LLVM_VERSION)-ocaml-dev.dirs debian/llvm-$(LLVM_VERSION)-runtime.binfmt debian/llvm-$(LLVM_VERSION)-runtime.prerm debian/libclang1-$(LLVM_VERSION).links debian/libclang-$(LLVM_VERSION)-dev.links debian/libclang1-$(LLVM_VERSION).install debian/pollycc +override_dh_auto_configure: debian/lldb-$(LLVM_VERSION).install debian/lldb-$(LLVM_VERSION).links debian/libllvm$(LLVM_VERSION).install debian/llvm-$(LLVM_VERSION)-dev.links debian/libllvm-$(LLVM_VERSION)-ocaml-dev.install debian/libllvm-$(LLVM_VERSION)-ocaml-dev.dirs debian/llvm-$(LLVM_VERSION)-runtime.binfmt debian/llvm-$(LLVM_VERSION)-runtime.prerm debian/libclang-$(LLVM_VERSION)-dev.links debian/libclang1-$(LLVM_VERSION).install debian/pollycc echo "Using gcc: " $(CC) -v mkdir -p $(TARGET_BUILD) From 31731b162f8fd1174db17c4fa98ba250cbb7786a Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 6 May 2014 13:12:08 +0000 Subject: [PATCH 19/30] Fix the links ... --- debian/libclang1-3.4.links.in | 2 ++ debian/rules | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 debian/libclang1-3.4.links.in diff --git a/debian/libclang1-3.4.links.in b/debian/libclang1-3.4.links.in new file mode 100644 index 00000000..50ecb228 --- /dev/null +++ b/debian/libclang1-3.4.links.in @@ -0,0 +1,2 @@ +usr/lib/@DEB_HOST_MULTIARCH@/libclang-3.4.so.1 usr/lib/llvm-3.4/lib/libclang-3.4.so.1 + diff --git a/debian/rules b/debian/rules index 1e161470..4a9f8c86 100755 --- a/debian/rules +++ b/debian/rules @@ -125,7 +125,7 @@ debian/%: debian/%.in override_dh_ocamlinit: override_dh_ocamlclean: -override_dh_auto_configure: debian/lldb-$(LLVM_VERSION).install debian/lldb-$(LLVM_VERSION).links debian/libllvm$(LLVM_VERSION).install debian/llvm-$(LLVM_VERSION)-dev.links debian/libllvm-$(LLVM_VERSION)-ocaml-dev.install debian/libllvm-$(LLVM_VERSION)-ocaml-dev.dirs debian/llvm-$(LLVM_VERSION)-runtime.binfmt debian/llvm-$(LLVM_VERSION)-runtime.prerm debian/libclang-$(LLVM_VERSION)-dev.links debian/libclang1-$(LLVM_VERSION).install debian/pollycc +override_dh_auto_configure: debian/lldb-$(LLVM_VERSION).install debian/libclang1-$(LLVM_VERSION).install.in debian/lldb-$(LLVM_VERSION).links debian/libllvm$(LLVM_VERSION).install debian/llvm-$(LLVM_VERSION)-dev.links debian/libllvm-$(LLVM_VERSION)-ocaml-dev.install debian/libllvm-$(LLVM_VERSION)-ocaml-dev.dirs debian/llvm-$(LLVM_VERSION)-runtime.binfmt debian/llvm-$(LLVM_VERSION)-runtime.prerm debian/libclang-$(LLVM_VERSION)-dev.links debian/libclang1-$(LLVM_VERSION).install debian/pollycc echo "Using gcc: " $(CC) -v mkdir -p $(TARGET_BUILD) From 15fb7c9a27c82c3bce85bfbe1996056e87f6a75d Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sat, 10 May 2014 16:10:05 +0000 Subject: [PATCH 20/30] * New upstream release. Note that only LLVM & Clang had a new release. I just copied the 3.4 tarballs for clang-extra-tools, polly, lldb and compiler-rt. - lldb-platform-3.4 - lldb-3.4 --- debian/changelog | 8 +++-- debian/libclang-common-3.4-dev.install | 4 +-- debian/libclang-common-3.4-dev.links | 9 ++++-- debian/lldb-3.4.install.in | 1 + debian/llvm-3.4-dev.install | 1 + debian/llvm-3.4-dev.links.in | 2 +- debian/patches/30-kfreebsd.diff | 42 ++++++++------------------ debian/patches/profile_rt.diff | 10 +++--- debian/rules | 5 ++- 9 files changed, 39 insertions(+), 43 deletions(-) diff --git a/debian/changelog b/debian/changelog index 42fb2894..04ad94ec 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,5 +1,8 @@ -llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium +llvm-toolchain-3.4 (1:3.4.1-1) unstable; urgency=medium + * New upstream release. Note that only LLVM & Clang had a new release. + I just copied the 3.4 tarballs for clang-extra-tools, polly, lldb and + compiler-rt. * Symlink for current build mode missing (Closes upstream #18836) * Add link usr/lib/llvm-3.4/ to usr/lib/llvm-3.4/build/Debug+Asserts * Backport of a r201586 from upstream. scan-build was failing on some project @@ -21,11 +24,12 @@ llvm-toolchain-3.4 (1:3.4+204650-1~exp1) UNRELEASED; urgency=medium - ocamldoc.tar.gz - llvm-3.4-doc - BugpointPasses.so - llvm-3.4-dev - liblldb* - lldb-3.4-dev + - lldb-platform-3.4 - lldb-3.4 - clang-apply-replacements - clang-3.4 - clang-tidy - clang-3.4 - pp-trace - clang-3.4 - -- Sylvestre Ledru Fri, 28 Mar 2014 13:41:23 +0000 + -- Sylvestre Ledru Fri, 09 May 2014 19:57:33 +0200 llvm-toolchain-3.4 (1:3.4-2) unstable; urgency=medium diff --git a/debian/libclang-common-3.4-dev.install b/debian/libclang-common-3.4-dev.install index f1b1bd68..b8c18c0d 100644 --- a/debian/libclang-common-3.4-dev.install +++ b/debian/libclang-common-3.4-dev.install @@ -1,7 +1,7 @@ -usr/lib/llvm-3.4/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/llvm-3.4/include/polly/ -usr/lib/llvm-3.4/lib/clang/3.4/lib +usr/lib/llvm-3.4/lib/clang/3.4.1/lib #usr/lib/clang/3.4/lib /usr/lib/clang/3.4/ diff --git a/debian/libclang-common-3.4-dev.links b/debian/libclang-common-3.4-dev.links index 1710f707..7f0afa19 100644 --- a/debian/libclang-common-3.4-dev.links +++ b/debian/libclang-common-3.4-dev.links @@ -1,3 +1,6 @@ -usr/lib/llvm-3.4/lib/clang/3.4/include usr/include/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4/include usr/lib/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4/lib usr/lib/clang/3.4/lib +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/include/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.1/lib usr/lib/clang/3.4/lib +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/include/clang/3.4.1/include +usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/clang/3.4.1/include +usr/lib/llvm-3.4/lib/clang/3.4.1/lib usr/lib/clang/3.4.1/lib \ No newline at end of file diff --git a/debian/lldb-3.4.install.in b/debian/lldb-3.4.install.in index 389d5f50..42f0dae9 100644 --- a/debian/lldb-3.4.install.in +++ b/debian/lldb-3.4.install.in @@ -1,4 +1,5 @@ usr/bin/lldb-3.4 +usr/bin/lldb-platform-3.4 usr/lib/llvm-3.4/bin/lldb usr/lib/llvm-3.4/bin/lldb-platform usr/lib/llvm-3.4/lib/liblldb.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ diff --git a/debian/llvm-3.4-dev.install b/debian/llvm-3.4-dev.install index f2d33cd2..17e9f329 100644 --- a/debian/llvm-3.4-dev.install +++ b/debian/llvm-3.4-dev.install @@ -1,6 +1,7 @@ usr/lib/llvm-3.4/lib/libLLVM*.a usr/lib/llvm-3.4/lib/libllvm*.a usr/lib/llvm-3.4/lib/LLVM*.so +usr/lib/llvm-3.4/lib/libLLVM*so usr/lib/llvm-3.4/lib/libLTO.* usr/lib/llvm-3.4/lib/BugpointPasses.so usr/lib/llvm-3.4/include/llvm/ usr/include/llvm-3.4/ diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index f51c39f3..9e2652c9 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -1,5 +1,5 @@ usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/include/llvm usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/build/include/llvm-c diff --git a/debian/patches/30-kfreebsd.diff b/debian/patches/30-kfreebsd.diff index 68353c50..6dba9fc8 100644 --- a/debian/patches/30-kfreebsd.diff +++ b/debian/patches/30-kfreebsd.diff @@ -1,39 +1,23 @@ -Index: llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.h +Index: llvm-toolchain-3.4-3.4.1/clang/lib/Driver/ToolChains.cpp =================================================================== ---- llvm-toolchain-3.4-3.4~+rc2.orig/clang/lib/Driver/ToolChains.h 2013-11-17 23:36:07.000000000 +0100 -+++ llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.h 2013-12-05 09:07:45.000000000 +0100 -@@ -164,6 +164,8 @@ - virtual bool isPICDefault() const; - virtual bool isPIEDefault() const; - virtual bool isPICDefaultForced() const; -+ virtual void AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, -+ llvm::opt::ArgStringList &CC1Args) const; +--- llvm-toolchain-3.4-3.4.1.orig/clang/lib/Driver/ToolChains.cpp 2014-04-26 01:38:13.000000000 +0200 ++++ llvm-toolchain-3.4-3.4.1/clang/lib/Driver/ToolChains.cpp 2014-05-10 12:34:16.374471699 +0200 +@@ -2588,6 +2588,10 @@ + if (DriverArgs.hasArg(options::OPT_nostdinc)) + return; - protected: - virtual Tool *getTool(Action::ActionClass AC) const; -Index: llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.cpp -=================================================================== ---- llvm-toolchain-3.4-3.4~+rc2.orig/clang/lib/Driver/ToolChains.cpp 2013-12-02 11:00:07.000000000 +0100 -+++ llvm-toolchain-3.4-3.4~+rc2/clang/lib/Driver/ToolChains.cpp 2013-12-05 09:08:49.000000000 +0100 -@@ -973,6 +973,13 @@ - return GoodVersion; - } - -+void Generic_GCC::AddClangSystemIncludeArgs(const llvm::opt::ArgList &DriverArgs, -+ llvm::opt::ArgStringList &CC1Args) const { + // Under Debian, clang headers are installed into + // '/usr/include/clang/VERSION/include/' + addSystemInclude(DriverArgs, CC1Args, "/usr/include/clang/" + std::string(CLANG_VERSION_STRING) + "/include/"); -+} + - /// \brief Less-than for GCCVersion, implementing a Strict Weak Ordering. - bool Generic_GCC::GCCVersion::isOlderThan(int RHSMajor, int RHSMinor, - int RHSPatch, -Index: llvm-toolchain-3.4-3.4~+rc2/lldb/source/Host/common/Host.cpp + if (!DriverArgs.hasArg(options::OPT_nostdlibinc)) + addSystemInclude(DriverArgs, CC1Args, SysRoot + "/usr/local/include"); + +Index: llvm-toolchain-3.4-3.4.1/lldb/source/Host/common/Host.cpp =================================================================== ---- llvm-toolchain-3.4-3.4~+rc2.orig/lldb/source/Host/common/Host.cpp 2013-12-05 09:08:49.000000000 +0100 -+++ llvm-toolchain-3.4-3.4~+rc2/lldb/source/Host/common/Host.cpp 2013-12-05 09:09:17.294953434 +0100 -@@ -1546,7 +1546,7 @@ +--- llvm-toolchain-3.4-3.4.1.orig/lldb/source/Host/common/Host.cpp 2013-12-16 10:49:51.000000000 +0100 ++++ llvm-toolchain-3.4-3.4.1/lldb/source/Host/common/Host.cpp 2014-05-10 12:33:20.000000000 +0200 +@@ -1586,7 +1586,7 @@ return error; } diff --git a/debian/patches/profile_rt.diff b/debian/patches/profile_rt.diff index a13697fc..1012c6fe 100644 --- a/debian/patches/profile_rt.diff +++ b/debian/patches/profile_rt.diff @@ -1,8 +1,8 @@ -Index: llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Driver/Tools.cpp +Index: llvm-toolchain-3.4_3.4~+final/clang/lib/Driver/Tools.cpp =================================================================== ---- llvm-toolchain-snapshot_3.4~svn192346.orig/clang/lib/Driver/Tools.cpp 2013-10-10 13:38:05.214083057 +0200 -+++ llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Driver/Tools.cpp 2013-10-10 13:38:05.206083056 +0200 -@@ -36,6 +36,7 @@ +--- llvm-toolchain-3.4_3.4~+final.orig/clang/lib/Driver/Tools.cpp 2014-05-09 20:00:11.406805529 +0200 ++++ llvm-toolchain-3.4_3.4~+final/clang/lib/Driver/Tools.cpp 2014-05-09 20:00:11.402805450 +0200 +@@ -37,6 +37,7 @@ #include "llvm/Support/Program.h" #include "llvm/Support/Process.h" #include "llvm/Support/raw_ostream.h" @@ -10,7 +10,7 @@ Index: llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Driver/Tools.cpp #include using namespace clang::driver; -@@ -221,7 +222,7 @@ +@@ -222,7 +223,7 @@ // libprofile_rt.so. We used to use the -l:libprofile_rt.a syntax, but that is // not supported by old linkers. std::string ProfileRT = diff --git a/debian/rules b/debian/rules index 4a9f8c86..3bb129a8 100755 --- a/debian/rules +++ b/debian/rules @@ -258,7 +258,10 @@ override_dh_auto_install: if test ! -f libclang-$(LLVM_VERSION).so.$(SONAME_EXT); then \ mv libclang.so libclang-$(LLVM_VERSION).so.$(SONAME_EXT) && \ ln -s libclang-$(LLVM_VERSION).so.$(SONAME_EXT) libclang.so.$(SONAME_EXT); \ - fi + fi; \ + rm -f libLLVM-$(LLVM_VERSION).so; \ + ln -s libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) libLLVM-$(LLVM_VERSION).so; \ + rm -f libclang.so # cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/ && rm -rf $$(find . -iname "SubDir.lib*" -o -iname .dir) && rm -rf $$(find -empty) From 8f724403976335776392b34848ea6f59031d9977 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 11 May 2014 20:50:56 +0000 Subject: [PATCH 21/30] Fix the soname. No changes in the ABI, so, no need to update the soname (Closes: #747701) --- debian/changelog | 7 +++++++ debian/libllvm3.4.install.in | 1 + debian/libllvm3.4.links.in | 2 ++ debian/patches/0044-soname.diff | 29 +++++++++++++++++++++++----- debian/patches/compiler-rt-path.diff | 13 +++++++++++++ debian/patches/series | 1 + debian/rules | 1 + 7 files changed, 49 insertions(+), 5 deletions(-) create mode 100644 debian/libllvm3.4.links.in create mode 100644 debian/patches/compiler-rt-path.diff diff --git a/debian/changelog b/debian/changelog index 04ad94ec..649f51c7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +llvm-toolchain-3.4 (1:3.4.1-2) unstable; urgency=medium + + * Fix the soname. No changes in the ABI, so, no need to update the soname + (Closes: #747701) + + -- Sylvestre Ledru Sun, 11 May 2014 17:29:22 +0200 + llvm-toolchain-3.4 (1:3.4.1-1) unstable; urgency=medium * New upstream release. Note that only LLVM & Clang had a new release. diff --git a/debian/libllvm3.4.install.in b/debian/libllvm3.4.install.in index a1ddd288..c8ea2be9 100644 --- a/debian/libllvm3.4.install.in +++ b/debian/libllvm3.4.install.in @@ -1 +1,2 @@ usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ +usr/lib/llvm-3.4/lib/libLLVM-3.4.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ diff --git a/debian/libllvm3.4.links.in b/debian/libllvm3.4.links.in new file mode 100644 index 00000000..e09c799c --- /dev/null +++ b/debian/libllvm3.4.links.in @@ -0,0 +1,2 @@ +usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 + diff --git a/debian/patches/0044-soname.diff b/debian/patches/0044-soname.diff index 7fd876b5..d0fc4812 100644 --- a/debian/patches/0044-soname.diff +++ b/debian/patches/0044-soname.diff @@ -1,13 +1,32 @@ -Index: llvm-toolchain-snapshot_3.4~svn193982/tools/llvm-shlib/Makefile +Index: llvm-toolchain-3.4-3.4.1/tools/llvm-shlib/Makefile =================================================================== ---- llvm-toolchain-snapshot_3.4~svn193982.orig/tools/llvm-shlib/Makefile 2013-11-04 09:46:03.312667676 +0100 -+++ llvm-toolchain-snapshot_3.4~svn193982/tools/llvm-shlib/Makefile 2013-11-04 09:46:03.308667675 +0100 -@@ -76,7 +76,7 @@ +--- llvm-toolchain-3.4-3.4.1.orig/tools/llvm-shlib/Makefile 2014-05-11 20:13:33.000000000 +0200 ++++ llvm-toolchain-3.4-3.4.1/tools/llvm-shlib/Makefile 2014-05-11 20:36:51.662821231 +0200 +@@ -10,6 +10,7 @@ + LEVEL := ../.. + + LIBRARYNAME = LLVM-$(LLVMVersion) ++LIBRARYNAME_SONAME = LLVM-$(LLVM_VERSION_MAJOR).$(LLVM_VERSION_MINOR) + LIBRARYALIASNAME = LLVM-$(LLVM_VERSION_MAJOR).$(LLVM_VERSION_MINOR)$(LLVM_VERSION_SUFFIX) + + NO_BUILD_ARCHIVE := 1 +@@ -47,6 +48,10 @@ + $(ProjLibsOptions) $(LLVMLibsOptions) $(LIBS) + mv $(LibName.SO) $(LibName.SO).1 + ln -s $(notdir $(LibName.SO)).1 $(LibName.SO) ++ # Crappy workaround. I just need to fix Debian quickly ++ ln -s $(notdir $(LibName.SO)).1 $(SharedLibDir)/lib$(LIBRARYNAME_SONAME).so.1 ++ ++ + + ifeq ($(HOST_OS),Darwin) + # set dylib internal version number to llvmCore submission number +@@ -78,7 +83,7 @@ ifeq ($(HOST_OS), $(filter $(HOST_OS), DragonFly Linux FreeBSD GNU/kFreeBSD GNU)) # Add soname to the library. - LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) -Wl,-Bsymbolic-functions -+ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions ++ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME_SONAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions endif ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) diff --git a/debian/patches/compiler-rt-path.diff b/debian/patches/compiler-rt-path.diff new file mode 100644 index 00000000..1743b189 --- /dev/null +++ b/debian/patches/compiler-rt-path.diff @@ -0,0 +1,13 @@ +Index: llvm-toolchain-3.4-3.4.1/compiler-rt/make/platform/clang_linux.mk +=================================================================== +--- llvm-toolchain-3.4-3.4.1.orig/compiler-rt/make/platform/clang_linux.mk 2013-10-03 10:31:14.000000000 +0200 ++++ llvm-toolchain-3.4-3.4.1/compiler-rt/make/platform/clang_linux.mk 2014-05-11 21:15:17.379960560 +0200 +@@ -11,7 +11,7 @@ + # cross compilers). For now, we just find the target architecture of the + # compiler and only define configurations we know that compiler can generate. + CompilerTargetTriple := $(shell \ +- $(CC) -v 2>&1 | grep 'Target:' | cut -d' ' -f2) ++ LD_LIBRARY_PATH=../build-llvm/Release/lib $(CC) -v 2>&1 | grep 'Target:' | cut -d' ' -f2) + ifeq ($(CompilerTargetTriple),) + $(error "unable to infer compiler target triple for $(CC)") + endif diff --git a/debian/patches/series b/debian/patches/series index 420da260..b503ef00 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -37,3 +37,4 @@ lldb-link-atomic.diff 0007-install-dejagnu-files.patch fix-llvm-config-obj-src-root.patch scan-build-fix-clang-detection.diff +compiler-rt-path.diff diff --git a/debian/rules b/debian/rules index 3bb129a8..9ea70d9e 100755 --- a/debian/rules +++ b/debian/rules @@ -261,6 +261,7 @@ override_dh_auto_install: fi; \ rm -f libLLVM-$(LLVM_VERSION).so; \ ln -s libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) libLLVM-$(LLVM_VERSION).so; \ + ln -s libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) rm -f libclang.so # cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/ && rm -rf $$(find . -iname "SubDir.lib*" -o -iname .dir) && rm -rf $$(find -empty) From c718adf6663592867023aa7e5f6fc479ec5d14dc Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 16 May 2014 15:03:08 +0000 Subject: [PATCH 22/30] Fix path for arch without support of compiler-rt. Should fix most of the FTBFS --- debian/changelog | 7 +++++++ debian/rules | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 649f51c7..f749eb03 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +llvm-toolchain-3.4 (1:3.4.1-3) unstable; urgency=medium + + * Fix path for arch without support of compiler-rt. Should fix most of the + FTBFS + + -- Sylvestre Ledru Fri, 16 May 2014 15:27:37 +0200 + llvm-toolchain-3.4 (1:3.4.1-2) unstable; urgency=medium * Fix the soname. No changes in the ABI, so, no need to update the soname diff --git a/debian/rules b/debian/rules index 9ea70d9e..e3b7b610 100755 --- a/debian/rules +++ b/debian/rules @@ -272,7 +272,7 @@ override_dh_auto_install: # Create this fake directory to make the install libclang-common-dev happy # under the unsupported archs of compiler-rt mkdir -p $(CURDIR)/debian/tmp/usr/lib/clang/$(LLVM_VERSION)/lib - mkdir -p $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)/lib/ + mkdir -p $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/lib/ # Rename binaries From 5a5f4cd188bae7db21c5bd5825ee40bfc404af6b Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sun, 18 May 2014 18:19:19 +0000 Subject: [PATCH 23/30] * Be less permissive when installing lldb. Remove duplication of the install of liblldb.so.1 * Add symlinks lldb-3.4, lldb-platform-3.4 & lldb-gdbserver-3.4 without 3.4 --- debian/changelog | 8 ++++++++ debian/lldb-3.4-dev.install | 3 ++- debian/lldb-3.4.links.in | 5 +++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index f749eb03..c0b69a61 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +llvm-toolchain-3.4 (1:3.4.1-4) unstable; urgency=medium + + * Be less permissive when installing lldb. Remove duplication of the install + of liblldb.so.1 + * Add symlinks lldb-3.4, lldb-platform-3.4 & lldb-gdbserver-3.4 without 3.4 + + -- Sylvestre Ledru Sun, 18 May 2014 20:18:19 +0200 + llvm-toolchain-3.4 (1:3.4.1-3) unstable; urgency=medium * Fix path for arch without support of compiler-rt. Should fix most of the diff --git a/debian/lldb-3.4-dev.install b/debian/lldb-3.4-dev.install index 6f07b807..fb86ad4a 100644 --- a/debian/lldb-3.4-dev.install +++ b/debian/lldb-3.4-dev.install @@ -1,3 +1,4 @@ /usr/lib/llvm-3.4/include/lldb -/usr/lib/llvm-3.4/lib/liblldb* +/usr/lib/llvm-3.4/lib/liblldb*a + diff --git a/debian/lldb-3.4.links.in b/debian/lldb-3.4.links.in index 7a4740ba..2fef9c42 100644 --- a/debian/lldb-3.4.links.in +++ b/debian/lldb-3.4.links.in @@ -1,2 +1,7 @@ usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so usr/lib/python2.7/dist-packages/lldb/_lldb.so +usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/llvm-3.4/lib/liblldb.so.1 + +usr/bin/lldb-3.4 usr/bin/lldb +usr/bin/lldb-platform-3.4 usr/bin/lldb-platform +usr/bin/lldb-gdbserver-3.4 usr/bin/lldb-gdbserver From 7d9ccfc4b6b2fb854b7e9bd6e779a45666b5f91b Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 27 May 2014 16:07:32 +0000 Subject: [PATCH 24/30] Clang was unusable with libstdc++ from gcc 4.9 (Closes: #744792) --- debian/changelog | 3 ++- debian/patches/gcc-4.9-support.diff | 36 +++++++++++++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 debian/patches/gcc-4.9-support.diff diff --git a/debian/changelog b/debian/changelog index c0b69a61..70df64dd 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,8 +3,9 @@ llvm-toolchain-3.4 (1:3.4.1-4) unstable; urgency=medium * Be less permissive when installing lldb. Remove duplication of the install of liblldb.so.1 * Add symlinks lldb-3.4, lldb-platform-3.4 & lldb-gdbserver-3.4 without 3.4 + * Clang was unusable with libstdc++ from gcc 4.9 (Closes: #744792) - -- Sylvestre Ledru Sun, 18 May 2014 20:18:19 +0200 + -- Sylvestre Ledru Tue, 27 May 2014 15:17:48 +0200 llvm-toolchain-3.4 (1:3.4.1-3) unstable; urgency=medium diff --git a/debian/patches/gcc-4.9-support.diff b/debian/patches/gcc-4.9-support.diff new file mode 100644 index 00000000..27927189 --- /dev/null +++ b/debian/patches/gcc-4.9-support.diff @@ -0,0 +1,36 @@ +Index: llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Headers/stddef.h +=================================================================== +--- llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Headers/stddef.h (révision 201728) ++++ llvm-toolchain-snapshot_3.4~svn192346/clang/lib/Headers/stddef.h (révision 201729) +@@ -84,6 +84,16 @@ + #endif + #endif + ++#if __STDC_VERSION__ >= 201112L || __cplusplus >= 201103L ++typedef struct { ++ long long __clang_max_align_nonce1 ++ __attribute__((__aligned__(__alignof__(long long)))); ++ long double __clang_max_align_nonce2 ++ __attribute__((__aligned__(__alignof__(long double)))); ++} max_align_t; ++#define __CLANG_MAX_ALIGN_T_DEFINED ++#endif ++ + #define offsetof(t, d) __builtin_offsetof(t, d) + + #endif /* __STDDEF_H */ +Index: llvm-toolchain-snapshot_3.4~svn192346/clang/test/Headers/c11.c +=================================================================== +--- llvm-toolchain-snapshot_3.4~svn192346/clang/test/Headers/c11.c (révision 201728) ++++ llvm-toolchain-snapshot_3.4~svn192346/clang/test/Headers/c11.c (révision 201729) +@@ -22,6 +22,10 @@ + #define __STDC_WANT_LIB_EXT1__ 1 + #include + rsize_t x = 0; ++_Static_assert(sizeof(max_align_t) >= sizeof(long long), ""); ++_Static_assert(alignof(max_align_t) >= alignof(long long), ""); ++_Static_assert(sizeof(max_align_t) >= sizeof(long double), ""); ++_Static_assert(alignof(max_align_t) >= alignof(long double), ""); + + // If we are freestanding, then also check RSIZE_MAX (in a hosted implementation + // we will use the host stdint.h, which may not yet have C11 support). diff --git a/debian/patches/series b/debian/patches/series index b503ef00..4a118cb6 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -38,3 +38,4 @@ lldb-link-atomic.diff fix-llvm-config-obj-src-root.patch scan-build-fix-clang-detection.diff compiler-rt-path.diff +gcc-4.9-support.diff From b6decde1d08ddad25bf11d456706748dca47c9f1 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Wed, 4 Jun 2014 12:24:18 +0000 Subject: [PATCH 25/30] Also disable lldb tests under armel (like armhf). Timeout --- debian/changelog | 6 ++++++ debian/rules | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 70df64dd..8a08e511 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +llvm-toolchain-3.4 (1:3.4.1-5) unstable; urgency=medium + + * Also disable lldb tests under armel (like armhf). Timeout + + -- Sylvestre Ledru Wed, 04 Jun 2014 14:24:05 +0200 + llvm-toolchain-3.4 (1:3.4.1-4) unstable; urgency=medium * Be less permissive when installing lldb. Remove duplication of the install diff --git a/debian/rules b/debian/rules index e3b7b610..482a61c6 100755 --- a/debian/rules +++ b/debian/rules @@ -358,7 +358,7 @@ endif rm -f $(TARGET_BUILD)/Release/lib/libclang.so.1 # lldb tests -ifeq (,$(filter $(DEB_HOST_ARCH), $(LLDB_DISABLE_ARCHS) armhf)) +ifeq (,$(filter $(DEB_HOST_ARCH), $(LLDB_DISABLE_ARCHS) armhf armel)) if test $(LLDB_ENABLE) = yes; then \ cd $(TARGET_BUILD)/Release/lib/python2.7/site-packages/lldb && if test ! -h _lldb.so -o ! -f _lldb.so; then ln -s ../../../liblldb.so _lldb.so; fi; \ if test ! -h libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) -o ! -f _lldb.so; then \ From 5c4c407fc64702ef1b38204e86f94bcf0cb1b56c Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 6 Jun 2014 15:13:28 +0000 Subject: [PATCH 26/30] * New upstream release * Add build conflict on libllvm-3.5-ocaml-dev * Remove the override of dh_shlibdeps * Update of the repack script * Use llvm-3.4-dev.links.in to manage the symlinks --- debian/changelog | 11 +++++++--- debian/control | 2 +- debian/libclang-common-3.4-dev.install | 4 ++-- debian/libclang-common-3.4-dev.links | 12 +++++------ debian/libllvm3.4.install.in | 1 - debian/libllvm3.4.links.in | 2 +- debian/llvm-3.4-dev.install | 1 - debian/llvm-3.4-dev.links.in | 4 +++- debian/orig-tar.sh | 3 +-- debian/patches/0044-soname.diff | 29 +++++--------------------- debian/patches/series | 1 - debian/rules | 15 +++++++------ 12 files changed, 34 insertions(+), 51 deletions(-) diff --git a/debian/changelog b/debian/changelog index 8a08e511..e7857e25 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,13 @@ -llvm-toolchain-3.4 (1:3.4.1-5) unstable; urgency=medium +llvm-toolchain-3.4 (1:3.4.2-1) unstable; urgency=medium + * New upstream release + * Add build conflict on libllvm-3.5-ocaml-dev + * Remove the override of dh_shlibdeps * Also disable lldb tests under armel (like armhf). Timeout + * Update of the repack script + * Use llvm-3.4-dev.links.in to manage the symlinks - -- Sylvestre Ledru Wed, 04 Jun 2014 14:24:05 +0200 + -- Sylvestre Ledru Fri, 06 Jun 2014 15:55:57 +0200 llvm-toolchain-3.4 (1:3.4.1-4) unstable; urgency=medium @@ -11,7 +16,7 @@ llvm-toolchain-3.4 (1:3.4.1-4) unstable; urgency=medium * Add symlinks lldb-3.4, lldb-platform-3.4 & lldb-gdbserver-3.4 without 3.4 * Clang was unusable with libstdc++ from gcc 4.9 (Closes: #744792) - -- Sylvestre Ledru Tue, 27 May 2014 15:17:48 +0200 + -- Sylvestre Ledru Sun, 18 May 2014 20:18:19 +0200 llvm-toolchain-3.4 (1:3.4.1-3) unstable; urgency=medium diff --git a/debian/control b/debian/control index 65cd84b3..8f667606 100644 --- a/debian/control +++ b/debian/control @@ -11,7 +11,7 @@ Build-Depends: debhelper (>= 9.0), flex, bison, dejagnu, tcl, expect, libisl-dev (>= 0.11.1), libjsoncpp-dev, lcov, procps, help2man, dh-ocaml, gcc-4.8, g++-4.8, -Build-Conflicts: oprofile, ocaml +Build-Conflicts: oprofile, ocaml, libllvm-3.5-ocaml-dev Standards-Version: 3.9.5 Homepage: http://www.llvm.org/ Vcs-Svn: svn://svn.debian.org/svn/pkg-llvm/llvm-toolchain/branches/3.4/ diff --git a/debian/libclang-common-3.4-dev.install b/debian/libclang-common-3.4-dev.install index b8c18c0d..19cf0f19 100644 --- a/debian/libclang-common-3.4-dev.install +++ b/debian/libclang-common-3.4-dev.install @@ -1,7 +1,7 @@ -usr/lib/llvm-3.4/lib/clang/3.4.1/include +usr/lib/llvm-3.4/lib/clang/3.4.2/include usr/lib/llvm-3.4/include/polly/ -usr/lib/llvm-3.4/lib/clang/3.4.1/lib +usr/lib/llvm-3.4/lib/clang/3.4.2/lib #usr/lib/clang/3.4/lib /usr/lib/clang/3.4/ diff --git a/debian/libclang-common-3.4-dev.links b/debian/libclang-common-3.4-dev.links index 7f0afa19..734b2393 100644 --- a/debian/libclang-common-3.4-dev.links +++ b/debian/libclang-common-3.4-dev.links @@ -1,6 +1,6 @@ -usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/include/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/clang/3.4/include -usr/lib/llvm-3.4/lib/clang/3.4.1/lib usr/lib/clang/3.4/lib -usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/include/clang/3.4.1/include -usr/lib/llvm-3.4/lib/clang/3.4.1/include usr/lib/clang/3.4.1/include -usr/lib/llvm-3.4/lib/clang/3.4.1/lib usr/lib/clang/3.4.1/lib \ No newline at end of file +usr/lib/llvm-3.4/lib/clang/3.4.2/include usr/include/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.2/include usr/lib/clang/3.4/include +usr/lib/llvm-3.4/lib/clang/3.4.2/lib usr/lib/clang/3.4/lib +usr/lib/llvm-3.4/lib/clang/3.4.2/include usr/include/clang/3.4.2/include +usr/lib/llvm-3.4/lib/clang/3.4.2/include usr/lib/clang/3.4.2/include +usr/lib/llvm-3.4/lib/clang/3.4.2/lib usr/lib/clang/3.4.2/lib \ No newline at end of file diff --git a/debian/libllvm3.4.install.in b/debian/libllvm3.4.install.in index c8ea2be9..29368d96 100644 --- a/debian/libllvm3.4.install.in +++ b/debian/libllvm3.4.install.in @@ -1,2 +1 @@ -usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ usr/lib/llvm-3.4/lib/libLLVM-3.4.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/ diff --git a/debian/libllvm3.4.links.in b/debian/libllvm3.4.links.in index e09c799c..9a00059a 100644 --- a/debian/libllvm3.4.links.in +++ b/debian/libllvm3.4.links.in @@ -1,2 +1,2 @@ -usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 +usr/lib/llvm-3.4/lib/libLLVM-3.4.2.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 diff --git a/debian/llvm-3.4-dev.install b/debian/llvm-3.4-dev.install index 17e9f329..f2d33cd2 100644 --- a/debian/llvm-3.4-dev.install +++ b/debian/llvm-3.4-dev.install @@ -1,7 +1,6 @@ usr/lib/llvm-3.4/lib/libLLVM*.a usr/lib/llvm-3.4/lib/libllvm*.a usr/lib/llvm-3.4/lib/LLVM*.so -usr/lib/llvm-3.4/lib/libLLVM*so usr/lib/llvm-3.4/lib/libLTO.* usr/lib/llvm-3.4/lib/BugpointPasses.so usr/lib/llvm-3.4/include/llvm/ usr/include/llvm-3.4/ diff --git a/debian/llvm-3.4-dev.links.in b/debian/llvm-3.4-dev.links.in index 9e2652c9..caf6b87b 100644 --- a/debian/llvm-3.4-dev.links.in +++ b/debian/llvm-3.4-dev.links.in @@ -1,5 +1,7 @@ usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.so -usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.1.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.1.so +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.2.so.1 +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/llvm-3.4/lib/libLLVM-3.4.2.so +usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-3.4.2.so.1 usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/include/llvm-c usr/include/llvm-3.4/llvm usr/lib/llvm-3.4/include/llvm usr/include/llvm-c-3.4/llvm-c usr/lib/llvm-3.4/build/include/llvm-c diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh index 388c8c58..50684740 100755 --- a/debian/orig-tar.sh +++ b/debian/orig-tar.sh @@ -20,7 +20,6 @@ if test -n "$1"; then # http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/branches/google/stable/ # For example: sh 3.4/debian/orig-tar.sh release_34 BRANCH=$1 - RCRELEASE="true" fi if test -n "$1" -a -n "$2"; then @@ -76,7 +75,7 @@ if test -n "$RCRELEASE"; then FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION else VERSION=$MAJOR_VERSION"~svn"$REVISION - FULL_VERSION="llvm-toolchain-snapshot_"$VERSION + FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION fi # LLVM diff --git a/debian/patches/0044-soname.diff b/debian/patches/0044-soname.diff index d0fc4812..ed34e82f 100644 --- a/debian/patches/0044-soname.diff +++ b/debian/patches/0044-soname.diff @@ -1,32 +1,13 @@ -Index: llvm-toolchain-3.4-3.4.1/tools/llvm-shlib/Makefile +Index: llvm-toolchain-3.4_3.4~svn209031/tools/llvm-shlib/Makefile =================================================================== ---- llvm-toolchain-3.4-3.4.1.orig/tools/llvm-shlib/Makefile 2014-05-11 20:13:33.000000000 +0200 -+++ llvm-toolchain-3.4-3.4.1/tools/llvm-shlib/Makefile 2014-05-11 20:36:51.662821231 +0200 -@@ -10,6 +10,7 @@ - LEVEL := ../.. - - LIBRARYNAME = LLVM-$(LLVMVersion) -+LIBRARYNAME_SONAME = LLVM-$(LLVM_VERSION_MAJOR).$(LLVM_VERSION_MINOR) - LIBRARYALIASNAME = LLVM-$(LLVM_VERSION_MAJOR).$(LLVM_VERSION_MINOR)$(LLVM_VERSION_SUFFIX) - - NO_BUILD_ARCHIVE := 1 -@@ -47,6 +48,10 @@ - $(ProjLibsOptions) $(LLVMLibsOptions) $(LIBS) - mv $(LibName.SO) $(LibName.SO).1 - ln -s $(notdir $(LibName.SO)).1 $(LibName.SO) -+ # Crappy workaround. I just need to fix Debian quickly -+ ln -s $(notdir $(LibName.SO)).1 $(SharedLibDir)/lib$(LIBRARYNAME_SONAME).so.1 -+ -+ - - ifeq ($(HOST_OS),Darwin) - # set dylib internal version number to llvmCore submission number -@@ -78,7 +83,7 @@ +--- llvm-toolchain-3.4_3.4~svn209031.orig/tools/llvm-shlib/Makefile ++++ llvm-toolchain-3.4_3.4~svn209031/tools/llvm-shlib/Makefile +@@ -78,7 +78,7 @@ endif ifeq ($(HOST_OS), $(filter $(HOST_OS), DragonFly Linux FreeBSD GNU/kFreeBSD GNU)) # Add soname to the library. - LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) -Wl,-Bsymbolic-functions -+ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME_SONAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions ++ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT).1 -Wl,-Bsymbolic-functions endif ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD)) diff --git a/debian/patches/series b/debian/patches/series index 4a118cb6..b503ef00 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -38,4 +38,3 @@ lldb-link-atomic.diff fix-llvm-config-obj-src-root.patch scan-build-fix-clang-detection.diff compiler-rt-path.diff -gcc-4.9-support.diff diff --git a/debian/rules b/debian/rules index 482a61c6..e45a9f69 100755 --- a/debian/rules +++ b/debian/rules @@ -5,7 +5,7 @@ TARGET_BUILD := build-llvm GCC_VERSION := 4.8 #GCC_VERSION := $(shell dpkg-query -W -f '$${Version}' g++ | sed -rne 's,^([0-9]+:)?([0-9]+\.[0-9]+).*$$,\2,p') LLVM_VERSION := 3.4 -LLVM_VERSION_FULL := $(LLVM_VERSION).1 +LLVM_VERSION_FULL := $(LLVM_VERSION).2 SONAME_EXT := 1 DEBIAN_REVISION := $(shell dpkg-parsechangelog | sed -rne 's,^Version: .*-(.*),\1,p') ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS)))) @@ -203,7 +203,7 @@ override_dh_auto_build: # We run the build with the Asserts, new directory, make a symlink to make # sure the rest still work cd $(TARGET_BUILD) \ - if test -d Release+Asserts -a ! -d Release; then \ + if test -d Release+Asserts -a ! -e Release; then \ ln -s Release+Asserts Release; \ fi @@ -247,7 +247,8 @@ override_dh_auto_install: chrpath -d $(TARGET_BUILD)/Release/bin/clang chrpath -d `find $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/bin/ -type f -executable` - mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION_FULL)*.so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) +# Add the trailing soname + mv $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) if test $(LLDB_ENABLE) = yes; then \ @@ -259,9 +260,7 @@ override_dh_auto_install: mv libclang.so libclang-$(LLVM_VERSION).so.$(SONAME_EXT) && \ ln -s libclang-$(LLVM_VERSION).so.$(SONAME_EXT) libclang.so.$(SONAME_EXT); \ fi; \ - rm -f libLLVM-$(LLVM_VERSION).so; \ - ln -s libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) libLLVM-$(LLVM_VERSION).so; \ - ln -s libLLVM-$(LLVM_VERSION_FULL).so.$(SONAME_EXT) libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT) + rm -f libLLVM-$(LLVM_VERSION_FULL).so; \ rm -f libclang.so # cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/ && rm -rf $$(find . -iname "SubDir.lib*" -o -iname .dir) && rm -rf $$(find -empty) @@ -318,8 +317,8 @@ override_dh_strip: dh_strip -a -override_dh_shlibdeps: - LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ dh_shlibdeps +#override_dh_shlibdeps: +# LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ dh_shlibdeps override_dh_install: dh_install --fail-missing From 4eef1d0ee1544232a5df19eddb0be7174beb8dc0 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 16 Jun 2014 10:05:45 +0000 Subject: [PATCH 27/30] * Fix the soname of liblldb.so to see it treated as a real library (Closes: #750868) * Switch to the default gcc/g++ compiler. Currently 4.9 (Closes: #751322) --- debian/changelog | 3 +++ debian/control | 2 +- debian/lldb-3.4.links.in | 1 + debian/lldb-3.4.lintian-overrides | 7 +++---- debian/patches/lldb-soname.diff | 21 +++++++++++++++++++++ debian/patches/series | 1 + debian/rules | 13 ++++++++----- 7 files changed, 38 insertions(+), 10 deletions(-) create mode 100644 debian/patches/lldb-soname.diff diff --git a/debian/changelog b/debian/changelog index e7857e25..d2b284b8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,6 +6,9 @@ llvm-toolchain-3.4 (1:3.4.2-1) unstable; urgency=medium * Also disable lldb tests under armel (like armhf). Timeout * Update of the repack script * Use llvm-3.4-dev.links.in to manage the symlinks + * Fix the soname of liblldb.so to see it treated as a real library + (Closes: #750868) + * Switch to the default gcc/g++ compiler. Currently 4.9 (Closes: #751322) -- Sylvestre Ledru Fri, 06 Jun 2014 15:55:57 +0200 diff --git a/debian/control b/debian/control index 8f667606..38c563ee 100644 --- a/debian/control +++ b/debian/control @@ -10,7 +10,7 @@ Build-Depends: debhelper (>= 9.0), flex, bison, dejagnu, tcl, expect, libedit-dev, swig, python-sphinx, ocaml-nox, binutils-dev, libcloog-isl-dev, libisl-dev (>= 0.11.1), libjsoncpp-dev, lcov, procps, help2man, dh-ocaml, - gcc-4.8, g++-4.8, + g++ Build-Conflicts: oprofile, ocaml, libllvm-3.5-ocaml-dev Standards-Version: 3.9.5 Homepage: http://www.llvm.org/ diff --git a/debian/lldb-3.4.links.in b/debian/lldb-3.4.links.in index 2fef9c42..9a977cab 100644 --- a/debian/lldb-3.4.links.in +++ b/debian/lldb-3.4.links.in @@ -1,4 +1,5 @@ usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so +usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so usr/lib/python2.7/dist-packages/lldb/_lldb.so usr/lib/@DEB_HOST_MULTIARCH@/liblldb.so.1 usr/lib/llvm-3.4/lib/liblldb.so.1 diff --git a/debian/lldb-3.4.lintian-overrides b/debian/lldb-3.4.lintian-overrides index b5aa354c..ee479bdd 100644 --- a/debian/lldb-3.4.lintian-overrides +++ b/debian/lldb-3.4.lintian-overrides @@ -1,6 +1,5 @@ -# That is normal. The lib is not shipped as a new package +# That is normal. The lib is not (yet?) shipped as a new package lldb-3.4: package-name-doesnt-match-sonames liblldb -lldb-3.4: non-dev-pkg-with-shlib-symlink usr/lib/*/liblldb.so.1 usr/lib/*/liblldb.so -# Does not really matter lldb-3.4: manpage-has-useless-whatis-entry usr/share/man/man1/lldb-3.4.1.gz - +# For now, override this warning. We might create a -dev at some point +lldb-3.4: non-dev-pkg-with-shlib-symlink usr/lib/*/liblldb.so.1 usr/lib/*/liblldb.so \ No newline at end of file diff --git a/debian/patches/lldb-soname.diff b/debian/patches/lldb-soname.diff new file mode 100644 index 00000000..116d363a --- /dev/null +++ b/debian/patches/lldb-soname.diff @@ -0,0 +1,21 @@ +Index: llvm-toolchain-3.4_3.4~svn209031/lldb/lib/Makefile +=================================================================== +--- llvm-toolchain-3.4_3.4~svn209031.orig/lldb/lib/Makefile ++++ llvm-toolchain-3.4_3.4~svn209031/lldb/lib/Makefile +@@ -16,6 +16,7 @@ LIBRARYNAME = lldb + NO_BUILD_ARCHIVE = 1 + LINK_LIBS_IN_SHARED = 1 + SHARED_LIBRARY = 1 ++SONAME_EXTENSION = 1 + + ifeq (,$(findstring -DLLDB_DISABLE_PYTHON,$(CXXFLAGS))) + PYTHON_BUILD_FLAGS = $(shell python-config --ldflags) +@@ -152,7 +153,7 @@ ifeq ($(HOST_OS), $(filter $(HOST_OS), L + # Link GCC atomic helper library + LLVMLibsOptions += -latomic + endif +- LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) ++ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT).$(SONAME_EXTENSION) + endif + + ifeq ($(HOST_OS),FreeBSD) diff --git a/debian/patches/series b/debian/patches/series index b503ef00..25e74957 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -38,3 +38,4 @@ lldb-link-atomic.diff fix-llvm-config-obj-src-root.patch scan-build-fix-clang-detection.diff compiler-rt-path.diff +lldb-soname.diff diff --git a/debian/rules b/debian/rules index e45a9f69..99823386 100755 --- a/debian/rules +++ b/debian/rules @@ -2,8 +2,8 @@ TARGET_BUILD := build-llvm # Force the version of gcc. Some archs are still using gcc 4.6 -GCC_VERSION := 4.8 -#GCC_VERSION := $(shell dpkg-query -W -f '$${Version}' g++ | sed -rne 's,^([0-9]+:)?([0-9]+\.[0-9]+).*$$,\2,p') +#GCC_VERSION := 4.8 +GCC_VERSION := $(shell dpkg-query -W -f '$${Version}' g++ | sed -rne 's,^([0-9]+:)?([0-9]+\.[0-9]+).*$$,\2,p') LLVM_VERSION := 3.4 LLVM_VERSION_FULL := $(LLVM_VERSION).2 SONAME_EXT := 1 @@ -170,6 +170,8 @@ override_dh_auto_configure: debian/lldb-$(LLVM_VERSION).install debian/libclang1 cov-configure --compiler clang --comptype gcc; \ cov-configure --compiler gcc-4.8 --comptype gcc; \ cov-configure --compiler g++-4.8 --comptype gcc; \ + cov-configure --compiler gcc-4.9 --comptype gcc; \ + cov-configure --compiler g++-4.9 --comptype gcc; \ fi) # Due to bug upstream, no symlink here @@ -203,7 +205,7 @@ override_dh_auto_build: # We run the build with the Asserts, new directory, make a symlink to make # sure the rest still work cd $(TARGET_BUILD) \ - if test -d Release+Asserts -a ! -e Release; then \ + if test -d Release+Asserts -a ! -d Release; then \ ln -s Release+Asserts Release; \ fi @@ -263,7 +265,8 @@ override_dh_auto_install: rm -f libLLVM-$(LLVM_VERSION_FULL).so; \ rm -f libclang.so -# cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/ && rm -rf $$(find . -iname "SubDir.lib*" -o -iname .dir) && rm -rf $$(find -empty) +# Remove artefact + cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/clang_linux && rm -rf $$(find . -mindepth 2 -maxdepth 2 -type d) && rm -rf $$(find -empty) && rm -rf */.dir mkdir -p $(CURDIR)/debian/clang-$(LLVM_VERSION)/usr/bin/ cp compiler-rt/lib/asan/scripts/asan_symbolize.py $(CURDIR)/debian/clang-$(LLVM_VERSION)/usr/bin/asan_symbolize @@ -272,7 +275,7 @@ override_dh_auto_install: # under the unsupported archs of compiler-rt mkdir -p $(CURDIR)/debian/tmp/usr/lib/clang/$(LLVM_VERSION)/lib mkdir -p $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/lib/ - + mkdir -p $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)/lib/clang_linux/ # Rename binaries mkdir -p $(CURDIR)/debian/tmp/usr/bin/ From 52df5b22f2a75a4852785aa74b713dfb54d44629 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 16 Jun 2014 20:54:52 +0000 Subject: [PATCH 28/30] Fixes CVE-2014-2893 (Closes: #744817) --- debian/changelog | 2 +- debian/patches/CVE-2014-2893.diff | 16 ++++++++++++++++ debian/patches/series | 1 + debian/rules | 5 +++++ 4 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 debian/patches/CVE-2014-2893.diff diff --git a/debian/changelog b/debian/changelog index d2b284b8..4ce65c65 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,13 +2,13 @@ llvm-toolchain-3.4 (1:3.4.2-1) unstable; urgency=medium * New upstream release * Add build conflict on libllvm-3.5-ocaml-dev - * Remove the override of dh_shlibdeps * Also disable lldb tests under armel (like armhf). Timeout * Update of the repack script * Use llvm-3.4-dev.links.in to manage the symlinks * Fix the soname of liblldb.so to see it treated as a real library (Closes: #750868) * Switch to the default gcc/g++ compiler. Currently 4.9 (Closes: #751322) + * Fixes CVE-2014-2893 (Closes: #744817) -- Sylvestre Ledru Fri, 06 Jun 2014 15:55:57 +0200 diff --git a/debian/patches/CVE-2014-2893.diff b/debian/patches/CVE-2014-2893.diff new file mode 100644 index 00000000..986e4f33 --- /dev/null +++ b/debian/patches/CVE-2014-2893.diff @@ -0,0 +1,16 @@ +Index: llvm-toolchain-3.3-3.3/clang/tools/scan-build/scan-build +=================================================================== +--- llvm-toolchain-3.3-3.3.orig/clang/tools/scan-build/scan-build ++++ llvm-toolchain-3.3-3.3/clang/tools/scan-build/scan-build +@@ -195,6 +195,11 @@ sub GetHTMLRunDir { + else { + $NewDir = "$Dir/$DateString-$RunNumber"; + } ++ ++ if (-d $NewDir) { ++ DieDiag("Directory '$NewDir' already existing"); ++ } ++ + system 'mkdir','-p',$NewDir; + return $NewDir; + } diff --git a/debian/patches/series b/debian/patches/series index 25e74957..de5b00cc 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -39,3 +39,4 @@ fix-llvm-config-obj-src-root.patch scan-build-fix-clang-detection.diff compiler-rt-path.diff lldb-soname.diff +CVE-2014-2893.diff diff --git a/debian/rules b/debian/rules index 99823386..87ef5509 100755 --- a/debian/rules +++ b/debian/rules @@ -304,6 +304,11 @@ override_dh_auto_install: # Managed in lldb-X.Y.links.in rm -f $(CURDIR)/$(TARGET_BUILD)/Release/lib/python*/site-packages/lldb/_lldb.so + +override_dh_shlibdeps: + LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ dh_shlibdeps + + override_dh_install: dh_install --fail-missing From df1f6bc81d6bee38416bf9ae569827d3a8358055 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 16 Jun 2014 21:01:13 +0000 Subject: [PATCH 29/30] Improve the CVE-2014-2893 fix (Closes: #744817) --- debian/changelog | 6 ++++++ debian/patches/CVE-2014-2893.diff | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 4ce65c65..69ae4dc2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,9 @@ +llvm-toolchain-3.4 (1:3.4.2-2) UNRELEASED; urgency=medium + + * Improve the CVE-2014-2893 fix (Closes: #744817) + + -- Sylvestre Ledru Mon, 16 Jun 2014 23:00:47 +0200 + llvm-toolchain-3.4 (1:3.4.2-1) unstable; urgency=medium * New upstream release diff --git a/debian/patches/CVE-2014-2893.diff b/debian/patches/CVE-2014-2893.diff index 986e4f33..591e40c0 100644 --- a/debian/patches/CVE-2014-2893.diff +++ b/debian/patches/CVE-2014-2893.diff @@ -7,7 +7,7 @@ Index: llvm-toolchain-3.3-3.3/clang/tools/scan-build/scan-build $NewDir = "$Dir/$DateString-$RunNumber"; } + -+ if (-d $NewDir) { ++ if (-e $NewDir) { + DieDiag("Directory '$NewDir' already existing"); + } + From 8389333729819351307a5c134053c4ef6809b129 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Tue, 17 Jun 2014 06:47:13 +0000 Subject: [PATCH 30/30] Add a check to avoid an error on arch where compiler-rt is not available --- debian/changelog | 3 ++- debian/rules | 6 ++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/debian/changelog b/debian/changelog index 69ae4dc2..42adb4de 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,7 @@ -llvm-toolchain-3.4 (1:3.4.2-2) UNRELEASED; urgency=medium +llvm-toolchain-3.4 (1:3.4.2-2) unstable; urgency=medium * Improve the CVE-2014-2893 fix (Closes: #744817) + * Add a check to avoid an error on arch where compiler-rt is not available -- Sylvestre Ledru Mon, 16 Jun 2014 23:00:47 +0200 diff --git a/debian/rules b/debian/rules index 87ef5509..a060709d 100755 --- a/debian/rules +++ b/debian/rules @@ -265,8 +265,10 @@ override_dh_auto_install: rm -f libLLVM-$(LLVM_VERSION_FULL).so; \ rm -f libclang.so -# Remove artefact - cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/clang_linux && rm -rf $$(find . -mindepth 2 -maxdepth 2 -type d) && rm -rf $$(find -empty) && rm -rf */.dir +# Remove artefact (where compiler-rt is built) + if test -d $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/clang_linux; then \ + cd $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/clang_linux && rm -rf $$(find . -mindepth 2 -maxdepth 2 -type d) && rm -rf $$(find -empty) && rm -rf */.dir; \ + fi mkdir -p $(CURDIR)/debian/clang-$(LLVM_VERSION)/usr/bin/ cp compiler-rt/lib/asan/scripts/asan_symbolize.py $(CURDIR)/debian/clang-$(LLVM_VERSION)/usr/bin/asan_symbolize