diff --git a/debian/changelog b/debian/changelog index ea79bb48..1c2676ab 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,11 +1,12 @@ -llvm-toolchain-5.0 (1:5.0~+rc2-2) unstable; urgency=medium +llvm-toolchain-5.0 (1:5.0~+rc3-1) unstable; urgency=medium + * New testing release * Link LLDB with -latomic on powerpcspe (Closes: #872267) * Fix the C++ include path order (Closes: #859083) - * Take an ugly workaround to build with gcc 7 + * Disable -gsplit-dwarf when using gcc 7 for causing a linking issue See https://bugs.llvm.org/show_bug.cgi?id=34140 - -- Sylvestre Ledru Wed, 16 Aug 2017 09:57:56 +0200 + -- Sylvestre Ledru Sat, 26 Aug 2017 10:16:07 +0200 llvm-toolchain-5.0 (1:5.0~+rc2-1) unstable; urgency=medium @@ -17,7 +18,7 @@ llvm-toolchain-5.0 (1:5.0~+rc2-1) unstable; urgency=medium [ Katsuhiko Nishimra ] * Ensure /usr/bin/g++-$(GCC_VERSION) exists (Closes: #871591) - -- Sylvestre Ledru Tue, 01 Aug 2017 08:57:24 +0200 + -- Sylvestre Ledru Sat, 12 Aug 2017 11:38:36 +0200 llvm-toolchain-5.0 (1:5.0~+rc1-2) unstable; urgency=medium diff --git a/debian/patches/gcc-7.1-workaround.diff b/debian/patches/gcc-7.1-workaround.diff index 94117929..e69de29b 100644 --- a/debian/patches/gcc-7.1-workaround.diff +++ b/debian/patches/gcc-7.1-workaround.diff @@ -1,79 +0,0 @@ -Index: llvm-toolchain-snapshot_6.0~svn311700/clang/include/clang/AST/DeclObjC.h -=================================================================== ---- llvm-toolchain-snapshot_6.0~svn311700.orig/clang/include/clang/AST/DeclObjC.h (revision 311595) -+++ llvm-toolchain-snapshot_6.0~svn311700/clang/include/clang/AST/DeclObjC.h (working copy) -@@ -413,12 +413,12 @@ - /// Determines the family of this method. - ObjCMethodFamily getMethodFamily() const; - -- bool isInstanceMethod() const { return IsInstance; } -+ bool isInstanceMethod() const LLVM_ATTRIBUTE_USED { return IsInstance; } - void setInstanceMethod(bool isInst) { IsInstance = isInst; } - bool isVariadic() const { return IsVariadic; } - void setVariadic(bool isVar) { IsVariadic = isVar; } - -- bool isClassMethod() const { return !IsInstance; } -+ bool isClassMethod() const LLVM_ATTRIBUTE_USED { return !IsInstance; } - - bool isPropertyAccessor() const { return IsPropertyAccessor; } - void setPropertyAccessor(bool isAccessor) { IsPropertyAccessor = isAccessor; } -@@ -832,8 +832,8 @@ - (OBJC_PR_retain | OBJC_PR_strong | OBJC_PR_copy)); - } - -- bool isInstanceProperty() const { return !isClassProperty(); } -- bool isClassProperty() const { return PropertyAttributes & OBJC_PR_class; } -+ bool isInstanceProperty() const LLVM_ATTRIBUTE_USED { return !isClassProperty(); } -+ bool isClassProperty() const LLVM_ATTRIBUTE_USED { return PropertyAttributes & OBJC_PR_class; } - ObjCPropertyQueryKind getQueryKind() const { - return isClassProperty() ? ObjCPropertyQueryKind::OBJC_PR_query_class : - ObjCPropertyQueryKind::OBJC_PR_query_instance; -@@ -1562,7 +1562,7 @@ - /// \brief Test whether the given category is visible. - /// - /// Used in the \c visible_categories_iterator. -- static bool isVisibleCategory(ObjCCategoryDecl *Cat); -+ static bool isVisibleCategory(ObjCCategoryDecl *Cat) LLVM_ATTRIBUTE_USED; - - public: - /// \brief Iterator that walks over the list of categories and extensions -@@ -1598,7 +1598,7 @@ - /// \brief Test whether the given category... is a category. - /// - /// Used in the \c known_categories_iterator. -- static bool isKnownCategory(ObjCCategoryDecl *) { return true; } -+ static bool isKnownCategory(ObjCCategoryDecl *) LLVM_ATTRIBUTE_USED { return true; } - - public: - /// \brief Iterator that walks over all of the known categories and -@@ -1632,7 +1632,7 @@ - /// \brief Test whether the given category is a visible extension. - /// - /// Used in the \c visible_extensions_iterator. -- static bool isVisibleExtension(ObjCCategoryDecl *Cat); -+ static bool isVisibleExtension(ObjCCategoryDecl *Cat) LLVM_ATTRIBUTE_USED; - - public: - /// \brief Iterator that walks over all of the visible extensions, skipping -@@ -1668,7 +1668,7 @@ - /// \brief Test whether the given category is an extension. - /// - /// Used in the \c known_extensions_iterator. -- static bool isKnownExtension(ObjCCategoryDecl *Cat); -+ static bool isKnownExtension(ObjCCategoryDecl *Cat) LLVM_ATTRIBUTE_USED; - - public: - /// \brief Iterator that walks over all of the known extensions. -Index: llvm-toolchain-snapshot_6.0~svn311700/clang/include/clang/ASTMatchers/ASTMatchersMacros.h -=================================================================== ---- llvm-toolchain-snapshot_6.0~svn311700.orig/clang/include/clang/ASTMatchers/ASTMatchersMacros.h (revision 311595) -+++ llvm-toolchain-snapshot_6.0~svn311700/clang/include/clang/ASTMatchers/ASTMatchersMacros.h (working copy) -@@ -54,7 +54,7 @@ - /// defines a zero parameter function named DefineMatcher() that returns a - /// ReturnType object. - #define AST_MATCHER_FUNCTION(ReturnType, DefineMatcher) \ -- inline ReturnType DefineMatcher##_getInstance(); \ -+ inline ReturnType DefineMatcher##_getInstance() LLVM_ATTRIBUTE_USED; \ - inline ReturnType DefineMatcher() { \ - return ::clang::ast_matchers::internal::MemoizedMatcher< \ - ReturnType, DefineMatcher##_getInstance>::getInstance(); \ diff --git a/debian/patches/series b/debian/patches/series index 1757c777..58de66c8 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -46,4 +46,3 @@ disable-path-test-failing.diff silent-amd-tet.diff disable-error-xray.diff lldb-disable-swig-error.diff -gcc-7.1-workaround.diff diff --git a/debian/rules b/debian/rules index 6b37fe03..bd4e999e 100755 --- a/debian/rules +++ b/debian/rules @@ -37,8 +37,12 @@ endif ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' binutils) ge 2.22.52.0.4 ; echo $$?),0) # when using -gsplit-dwarf, it will requires extract-dwo which doesn't exist on precise: # More: https://llvm.org/bugs/show_bug.cgi?id=28841 +ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) lt 7.1.0-7~ ; echo $$?),0) +# Do not pass -gsplit-dwarf with gcc 7. This is causing some linking issues +# More: https://bugs.llvm.org/show_bug.cgi?id=34140 CXXFLAGS_EXTRA += -gsplit-dwarf endif +endif ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) lt 4.7.2-10~ ; echo $$?),0)