summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Pashev <pashev.igor@gmail.com>2017-10-15 15:41:01 +0300
committerIgor Pashev <pashev.igor@gmail.com>2017-10-15 15:41:01 +0300
commit7a2b43796a4c38cf98fe05e8e4ec985318b2721b (patch)
treeb0f5611276e10646b654f7d5ed12c6e6060353be
downloadllvm-toolchain-5.0-debian.tar.gz
Imported llvm-toolchain-5.0 (1:5.0-4)debian/5.0-4debian
-rw-r--r--debian/NEWS5
-rw-r--r--debian/README.source5
-rw-r--r--debian/TODO6
-rw-r--r--debian/changelog1754
-rw-r--r--debian/clang-X.Y-doc.docs.in2
-rw-r--r--debian/clang-X.Y-examples.examples.in1
-rw-r--r--debian/clang-X.Y.install.in59
-rw-r--r--debian/clang-X.Y.links.in3
-rw-r--r--debian/clang-X.Y.lintian-overrides.in9
-rw-r--r--debian/clang-X.Y.manpages.in12
-rw-r--r--debian/clang-format-X.Y.install.in10
-rw-r--r--debian/clang-format-X.Y.lintian-overrides.in4
-rw-r--r--debian/clang-format-X.Y.manpages.in3
-rw-r--r--debian/clang-tidy-X.Y.install.in5
-rw-r--r--debian/clang-tidy-X.Y.links.in3
-rw-r--r--debian/clang-tidy-X.Y.lintian-overrides.in3
-rw-r--r--debian/clang-tidy-X.Y.manpages.in1
-rw-r--r--debian/compat1
-rw-r--r--debian/control538
-rw-r--r--debian/copyright428
-rw-r--r--debian/debian_path.h16
-rw-r--r--debian/libclang-X.Y-dev.install.in10
-rw-r--r--debian/libclang-X.Y-dev.links.in3
-rw-r--r--debian/libclang-common-X.Y-dev.install.in14
-rw-r--r--debian/libclang-common-X.Y-dev.links.in7
-rw-r--r--debian/libclang1-X.Y.install.in2
-rw-r--r--debian/libclang1-X.Y.links.in3
-rw-r--r--debian/libclang1-X.Y.lintian-overrides.in5
-rw-r--r--debian/libclang1-X.Y.symbols.in357
-rw-r--r--debian/liblld-X.Y-dev.install.in2
-rw-r--r--debian/liblld-X.Y.install.in9
-rw-r--r--debian/liblld-X.Y.links.in4
-rw-r--r--debian/liblldb-X.Y-dev.install.in3
-rw-r--r--debian/liblldb-X.Y-dev.links.in3
-rw-r--r--debian/liblldb-X.Y.install.in5
-rw-r--r--debian/liblldb-X.Y.links.in2
-rw-r--r--debian/liblldb-X.Y.lintian-overrides.in5
-rw-r--r--debian/libllvm-X.Y-ocaml-dev.META.in63
-rw-r--r--debian/libllvm-X.Y-ocaml-dev.dirs.in2
-rw-r--r--debian/libllvm-X.Y-ocaml-dev.install.in2
-rw-r--r--debian/libllvm-X.Y-ocaml-dev.lintian-overrides.in2
-rw-r--r--debian/libllvmX.Y.install.in1
-rw-r--r--debian/libllvmX.Y.links.in4
-rw-r--r--debian/libllvmX.Y.lintian-overrides.in2
-rw-r--r--debian/lld-X.Y.install.in7
-rw-r--r--debian/lld-X.Y.manpages.in2
-rw-r--r--debian/lldb-X.Y.install.in9
-rw-r--r--debian/lldb-X.Y.lintian-overrides.in3
-rw-r--r--debian/lldb-X.Y.manpages.in2
-rw-r--r--debian/lldb-X.Y.postinst.in8
-rw-r--r--debian/llvm-X.Y-dev.dirs.in5
-rw-r--r--debian/llvm-X.Y-dev.install.in31
-rw-r--r--debian/llvm-X.Y-dev.links.in19
-rw-r--r--debian/llvm-X.Y-doc.dirs.in1
-rw-r--r--debian/llvm-X.Y-doc.install.in6
-rw-r--r--debian/llvm-X.Y-examples.dirs.in1
-rw-r--r--debian/llvm-X.Y-examples.examples.in1
-rw-r--r--debian/llvm-X.Y-examples.links.in3
-rw-r--r--debian/llvm-X.Y-runtime.binfmt.in3
-rw-r--r--debian/llvm-X.Y-runtime.install.in8
-rw-r--r--debian/llvm-X.Y-runtime.lintian-overrides.in1
-rw-r--r--debian/llvm-X.Y-runtime.manpages.in1
-rw-r--r--debian/llvm-X.Y-runtime.postinst.in11
-rw-r--r--debian/llvm-X.Y-runtime.prerm.in18
-rw-r--r--debian/llvm-X.Y-tools.dirs.in2
-rw-r--r--debian/llvm-X.Y-tools.install.in17
-rw-r--r--debian/llvm-X.Y.dirs.in3
-rw-r--r--debian/llvm-X.Y.install.in16
-rw-r--r--debian/llvm-X.Y.lintian-overrides.in12
-rw-r--r--debian/llvm-X.Y.manpages.in8
-rw-r--r--debian/llvm-priv-dev.dirs1
-rwxr-xr-xdebian/orig-tar.sh201
-rw-r--r--debian/patches/0003-Debian-version-info-and-bugreport.patch19
-rw-r--r--debian/patches/0011-SimplifyCFG-Hoisting-invalidates-metadata.patch84
-rw-r--r--debian/patches/0021-shared-lib-debian.patch26
-rw-r--r--debian/patches/0023-link-libopagent.patch33
-rw-r--r--debian/patches/0044-soname.diff30
-rw-r--r--debian/patches/19-clang_debian_version.patch21
-rw-r--r--debian/patches/23-strlcpy_strlcat_warning_removed.diff195
-rw-r--r--debian/patches/26-set-correct-float-abi.diff33
-rw-r--r--debian/patches/27-fix_clang_stdint.diff29
-rw-r--r--debian/patches/31-powerpcspe.diff15
-rw-r--r--debian/patches/34-powerpc-no-altivec.diff24
-rw-r--r--debian/patches/atomic_library_1.diff46
-rw-r--r--debian/patches/atomic_library_2.diff43
-rw-r--r--debian/patches/bug-30342.diff0
-rw-r--r--debian/patches/clang-analyzer-force-version.diff25
-rw-r--r--debian/patches/clang-apply-replacements.diff35
-rw-r--r--debian/patches/clang-default-to-i686-on-32bit-x86-targets.patch15
-rw-r--r--debian/patches/clang-fix-cmpxchg8-detection-on-i386.patch54
-rw-r--r--debian/patches/clang-format-version.diff39
-rw-r--r--debian/patches/clang-tidy-run-bin.diff17
-rw-r--r--debian/patches/compiler-rt-i586.diff34
-rw-r--r--debian/patches/declare_clear_cache.diff15
-rw-r--r--debian/patches/disable-display-PASS-UNSUPPORTED-XFAIL.diff17
-rw-r--r--debian/patches/disable-error-xray.diff13
-rw-r--r--debian/patches/disable-execinfo-usage.diff13
-rw-r--r--debian/patches/disable-llvm-symbolizer-test.diff26
-rw-r--r--debian/patches/disable-path-test-failing.diff29
-rw-r--r--debian/patches/disable-source-interleave.diff12
-rw-r--r--debian/patches/do-not-fail-on-unexpected-pass.diff13
-rw-r--r--debian/patches/fix-clang-path-and-build.diff24
-rw-r--r--debian/patches/fix-cmake-config-prefix.diff27
-rw-r--r--debian/patches/fix-lldb-server-build73
-rw-r--r--debian/patches/fix-llvm-config-obj-src-root.patch20
-rw-r--r--debian/patches/fix-scan-view-path.diff21
-rw-r--r--debian/patches/follow-parallel-var.diff16
-rw-r--r--debian/patches/force-gcc-header-obj.diff16
-rw-r--r--debian/patches/force-link-pass.o.diff28
-rw-r--r--debian/patches/gcc-7.1-workaround.diff0
-rw-r--r--debian/patches/hurd-EIEIO-undef.diff14
-rw-r--r--debian/patches/hurd-pathmax.diff77
-rw-r--r--debian/patches/install-scan-build-py.diff14
-rw-r--r--debian/patches/lld-arg-cmake-issue.diff141
-rw-r--r--debian/patches/lldb-addversion-suffix-to-llvm-server-exec.patch35
-rw-r--r--debian/patches/lldb-disable-swig-error.diff13
-rw-r--r--debian/patches/lldb-libname.diff15
-rw-r--r--debian/patches/lldb-link-atomic-cmake.patch26
-rw-r--r--debian/patches/lldb-missing-install.diff22
-rw-r--r--debian/patches/lldb-soname.diff43
-rw-r--r--debian/patches/mips-fpxx-enable.diff17
-rw-r--r--debian/patches/pthread-link.diff18
-rw-r--r--debian/patches/python-clangpath.diff15
-rw-r--r--debian/patches/removeduplicatedeclaration.diff40
-rw-r--r--debian/patches/scan-build-clang-path.diff15
-rw-r--r--debian/patches/scan-build-py-default.diff518
-rw-r--r--debian/patches/scan-view-fix-path.diff13
-rw-r--r--debian/patches/series48
-rw-r--r--debian/patches/silent-MCJIIT-tests.diff178
-rw-r--r--debian/patches/silent-amd-tet.diff132
-rw-r--r--debian/patches/silent-amdgpu-test-failing.diff46
-rw-r--r--debian/patches/silent-gold-test.diff26
-rw-r--r--debian/patches/silent-gold-utils.diff190
-rw-r--r--debian/patches/silent-more-tests.diff52
-rw-r--r--debian/patches/silent-test-failing-codeverage.diff13
-rw-r--r--debian/patches/strip-svn.diff0
-rw-r--r--debian/patches/ubuntu-precise-compiler-rt.diff23
-rw-r--r--debian/patches/unwind-chain-inclusion.diff41
-rwxr-xr-xdebian/pollycc.in3
-rw-r--r--debian/prepare-new-release.sh12
-rw-r--r--debian/python-clang-X.Y.install.in1
-rw-r--r--debian/python-lldb-X.Y.install.in1
-rw-r--r--debian/python-lldb-X.Y.links.in6
-rwxr-xr-xdebian/rules616
-rw-r--r--debian/source.lintian-overrides9
-rw-r--r--debian/source/format1
-rw-r--r--debian/watch4
147 files changed, 7396 insertions, 0 deletions
diff --git a/debian/NEWS b/debian/NEWS
new file mode 100644
index 0000000..91160e6
--- /dev/null
+++ b/debian/NEWS
@@ -0,0 +1,5 @@
+llvm-toolchain-snapshot (1:3.6~svn214630-1~exp1) experimental; urgency=medium
+
+ * clang is now co-instalable. Available on version 3.4, 3.5 and 3.6
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 02 Aug 2014 12:57:41 +0200
diff --git a/debian/README.source b/debian/README.source
new file mode 100644
index 0000000..deeb3f2
--- /dev/null
+++ b/debian/README.source
@@ -0,0 +1,5 @@
+
+Repack of the snapshot release are done with orig-tar.sh which will checkout the sources.
+
+ -- Sylvestre Ledru <sylvestre@debian.org>, Tue, 26 Feb 2013 14:57:56 +0100
+
diff --git a/debian/TODO b/debian/TODO
new file mode 100644
index 0000000..0ce53db
--- /dev/null
+++ b/debian/TODO
@@ -0,0 +1,6 @@
+* add the support of libclang in llvm default (for now, it is
+called libclang1-3.3.so)
+
+* move the header at the right place in libclang-dev
+
+* bootstrap of clang with itself
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 0000000..41344d9
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,1754 @@
+llvm-toolchain-5.0 (1:5.0-4) unstable; urgency=medium
+
+ * Force the deactivation of ocaml until the transition is done
+ * Standards-Version updated to 4.1.0
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 13 Oct 2017 21:20:24 +0200
+
+llvm-toolchain-5.0 (1:5.0-3) unstable; urgency=medium
+
+ * Remove the -Wl option to call gold instead of the normal linker
+ (Closes: #876787)
+ * For now, lld doesn't generate shared libs. Removing the files
+ (Closes: #857653)
+ * Add the missing lldb symlinks (Closes: #872237)
+
+ [ Gianfranco Costamagna ]
+ * Fixup previous upload, adding -NDEBUG to build flags,
+ lost in the -g -> -g1 switch
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 01 Oct 2017 15:24:29 +0200
+
+llvm-toolchain-5.0 (1:5.0-2) unstable; urgency=medium
+
+ [ Matthias Klose ]
+ * Link with --no-keep-files-mapped --no-map-whole-files when using gold.
+ * build using gold on arm64 and s390x. For backports, arm64 might still
+ need the BFD linker, and building with only one or two processes in
+ parallel.
+ * On amd64, s390x, arm64 and ppc64el, build with -g1 instead of -g.
+ * Set CMAKE_CXX_FLAGS_RELWITHDEBINFO and pass opt_flags.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 18 Sep 2017 21:53:00 +0200
+
+llvm-toolchain-5.0 (1:5.0-1) unstable; urgency=medium
+
+ * New stable release
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 06 Sep 2017 13:04:44 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc5-2) unstable; urgency=medium
+
+ * Fail the build if the arch + gcc has a broken gsplit-dwarf support
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 03 Sep 2017 15:13:34 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc5-1) unstable; urgency=medium
+
+ * New testing release
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 01 Sep 2017 23:18:29 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc4-2) unstable; urgency=medium
+
+ * Fix the FTBFS because of -gsplit-dwarf:
+ - Only enable it on archs which needs it
+ - Only enable it when gcc supports it correctly
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 31 Aug 2017 19:14:45 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc4-1) unstable; urgency=medium
+
+ * New testing release
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 30 Aug 2017 16:06:39 +0200
+
+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)
+ * Disable -gsplit-dwarf when using gcc 7 for causing a linking issue
+ See https://bugs.llvm.org/show_bug.cgi?id=34140
+ * clang was producing unusable binaries on armv5tel (Closes: #873306)
+ Thanks to Adrian Bunk for the patch
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 26 Aug 2017 10:16:07 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc2-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Force the usage of gcc 6 until the link issues with gcc 7 are fixed
+ https://bugs.llvm.org/show_bug.cgi?id=34140
+ * Remove the temp-unbreak-5.0-build.diff patch to unbreak the build
+
+ [ Katsuhiko Nishimra ]
+ * Ensure /usr/bin/g++-$(GCC_VERSION) exists (Closes: #871591)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 12 Aug 2017 11:38:36 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc1-2) unstable; urgency=medium
+
+ * Update the list of symbol for libclang1. Added:
+ - clang_Cursor_isExternalSymbol
+ - clang_EnumDecl_isScoped
+ - clang_getAddressSpace
+ - clang_getCursorExceptionSpecificationType
+ - clang_getExceptionSpecificationType
+ - clang_getTypedefName
+ - clang_suspendTranslationUnit
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 28 Jul 2017 10:24:44 +0200
+
+llvm-toolchain-5.0 (1:5.0~+rc1-1) unstable; urgency=medium
+
+ * New testing release
+ * Upload as a new package
+ * Ship the opt-viewer new program as part of llvm-5.0 tools
+ * ld.lld manpage wasn't installed
+ * Comment a line to unbreak the build (temp-unbreak-5.0-build.diff)
+ To be removed
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 09 Jul 2017 17:36:10 +0200
+
+llvm-toolchain-snapshot (1:5.0~svn305653-1) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Re-add clang-doc documentation
+
+ [ Sylvestre Ledru ]
+ * New snapshot release
+ * Fix a hurd PATH_MAX issue
+ * Transform the lldb swig check from a error to a warning
+ * Add libomp-dev to the suggests of clang
+ * Add Provides on python-lldb-x.y & python-clang-x.y & libllvm-x.y-ocaml-dev
+ to avoid the recurring problem about conflicts
+ (Closes: #835546, #863739, #863742)
+ * Standards-Version => 4.0.0
+ * Generate the llvm-tblgen, clang-change-namespace, clang-offload-bundler
+ lld, clang++, clang-check, clang-cpp & clang-import-test manpages
+ * Remove the --no-discard-stderr option from help2man calls
+ * use -DPOLLY_BUNDLED_JSONCPP=OFF & add pkg-config as a dep (to help find
+ the files)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 09 Jun 2017 12:04:56 +0200
+
+llvm-toolchain-snapshot (1:5.0~svn302368-1~exp1) experimental; urgency=medium
+
+ * Only enable libfuzzer for Linux kernel.
+ Thanks to Pino Toscano for the patch
+ * Add option -DPOLLY_BUNDLED_JSONCPP=ON
+ to use the system lib instead of the patch d/p/use-deb-json.diff
+ * New symbols added in libclang
+ - clang_EvalResult_getAsLongLong
+ - clang_EvalResult_getAsUnsigned
+ - clang_EvalResult_isUnsignedInt
+ - clang_TargetInfo_dispose
+ - clang_TargetInfo_getPointerWidth
+ - clang_TargetInfo_getTriple
+ - clang_Type_isTransparentTagTypedef
+ - clang_getAllSkippedRanges
+ - clang_getTranslationUnitTargetInfo
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 07 May 2017 12:13:43 +0200
+
+llvm-toolchain-snapshot (1:5.0~svn298899-1) unstable; urgency=medium
+
+ * Limit the archs where the ocaml binding is built
+ Should fix the FTBFS
+ Currently amd64 arm64 armel armhf i386
+ * d/p/add_symbols_versioning.patch removed (applied upstream)
+ * Really fix "use versioned symbols" for llvm
+ Thanks to Julien Cristau for the patch (Closes: #849098)
+ * Explicit the dep of clang-tidy on same version of llvm to avoid
+ undefined symbols
+ * Add override_dh_makeshlibs for the libllvm or liblldb versions
+ Thanks to Julien Cristau for the patch
+ * change the min version of the libclang1 symbols to 1:4.0-3~
+ * Fix the symlink on scan-build-py
+ * add libncurses in the list of build deps (Closes: #861170)
+
+ [ Rebecca N. Palmer ]
+ * Use versioned symbols (Closes: #848368)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 09 Apr 2017 10:11:56 +0200
+
+llvm-toolchain-snapshot (1:5.0~svn294583-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * New library liblldb-intel-mpxtable.so
+ * Fix the incorrect symlink to scan-build-py (Closes: #856869)
+ * Explicit the dep of clang-format on same version of llvm to avoid
+ undefined symbols
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 16 Jan 2017 09:03:48 +0100
+
+llvm-toolchain-snapshot (1:5.0~svn292017-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ snapshot is now 5.0
+ * d/p/silent-amdgpu-test-failing.diff silent amdgpu tests failing
+ (see upstream bug 31610)
+ * d/p/lldb-server-link-issue.patch removed, merged upstream
+ * Also install python-lldb-5.0 when installing lldb-5.0 (Closes: #851171)
+ * Bring back the content of llvm-5.0-doc (Closes: #844616)
+ * Bring back the content of llvm-4.0-doc (Closes: #844616)
+ * d/p/pthread-link.diff Hardcode like to pthread which was missing for
+ libclang
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 14 Jan 2017 16:36:51 +0100
+
+llvm-toolchain-snapshot (1:4.0~svn291344-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Disable libedit usage in lldb because of garbage (Closes: #846616, #850111)
+ * Build lld
+ - d/p/lld-arg-cmake-issue.diff fixes upstream bug #27685
+ * ship clang-tblgen
+ * Run clang extra test suite
+ * Fix the detection of lldb-server
+ * Fix the run of the check-lldb target
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 07 Jan 2017 12:24:32 +0100
+
+llvm-toolchain-snapshot (1:4.0~svn290810-1) unstable; urgency=medium
+
+ * New snapshot release
+ * d/p/kfreebsd-support.diff removed (applied upstream)
+ * debian/orig-tar.sh: less verbose
+ * d/p/lldb-missing-install.diff: For the install
+ of lldb-server and lldb-argdumper as they are not always installed
+ * Ship new binary in clang-X.Y: clang-import-test
+ * New symbols in libclang1:
+ - clang_EvalResult_getAsLongLong
+ - clang_EvalResult_getAsLongLong
+ - clang_EvalResult_isUnsignedInt
+ * Fix a regression in the test run for the code coverage
+ * Silent ThinLTO/X86/autoupgrade.ll, fails with code coverage (and maybe others)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 02 Jan 2017 13:51:06 +0100
+
+llvm-toolchain-snapshot (1:4.0~svn286225-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Remove the info section from the generated manpages (Closes: #846269)
+
+ [ Kai Wasserbäch ]
+ * debian/patches/{0003-Debian-version-info-and-bugreport.patch,
+ 0044-soname.diff,23-strlcpy_strlcat_warning_removed.diff,
+ 26-set-correct-float-abi.diff,atomic_library_[12].diff,
+ fix-clang-path-and-build.diff,fix-lldb-server-build,lldb-libname.diff,
+ lldb-soname.diff,mips-fpxx-enable.diff,removeduplicatedeclaration.diff}:
+ Refreshed.
+ * debian/patches/{silent-gold-utils,kfreebsd-support}.diff: Updated.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 08 Nov 2016 12:19:55 +0100
+
+llvm-toolchain-snapshot (1:4.0~svn282142-1~exp1) experimental; urgency=medium
+
+ * The libstdc++-6-dev & libobjc-6-dev are only install with clang-X.Y
+ and libclang-X.Y-dev and no longer with libclang1-X.Y
+ (Closes: #841309)
+ * Fix the VCS-* fields
+
+ [ Kai Wasserbäch ]
+ * debian/patches/{23-strlcpy_strlcat_warning_removed.diff,
+ 0003-Debian-version-info-and-bugreport.patch, atomic_library_[12].diff,
+ python-clangpath.diff,removeduplicatedeclaration.diff,
+ fix-clang-path-and-build.diff,mips-fpxx-enable.diff}: Refreshed.
+ * debian/patches/{silent-more-tests.diff,silent-MCJIIT-tests.diff}: Updated.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 24 Oct 2016 10:45:07 +0200
+
+llvm-toolchain-3.9 (1:3.9-6) unstable; urgency=medium
+
+ * Fix segfaults in the memory sanitizers (Closes: #842642)
+ Caused by the newer glibc. Many thanks for Nobert Lange for everything
+ * Enable the sanitizers testsuite
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 11 Nov 2016 17:01:38 +0100
+
+llvm-toolchain-3.9 (1:3.9-5) unstable; urgency=medium
+
+ * d/p/0011-SimplifyCFG-Hoisting-invalidates-metadata.patch: Also apply bug 29163
+ to fix some issues in rust (Closes: #842956)
+ Many thanks to Ximin Luo for the investigation
+
+ * libclang-common-4.0-dev: missing multilib binaries for the sanitizer
+ libraries (Closes: #841923)
+ Many thanks to Norbert Lange for the changes
+
+ [ Pauli ]
+ * d/p/clang-fix-cmpxchg8-detection-on-i386.patch:
+ libcxx atomic tests for old i386 fail with wrong Atomic inline width.
+ Needed for libc++
+ (See https://llvm.org/bugs/show_bug.cgi?id=19355)
+ * d/p lldb-addversion-suffix-to-llvm-server-exec.patch:
+ Fix the lldb-server call in some cases
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 04 Nov 2016 17:18:07 +0100
+
+llvm-toolchain-3.9 (1:3.9-4) unstable; urgency=medium
+
+ * LLVMConfig.cmake was installed into wrong location
+ Install a symlink from lib/cmake/llvm to share/llvm/cmake
+ (Closes: #839234)
+ * Fix a path issue in scan-view. Thanks Riccardo Magliocchetti
+ (Closes: #838572)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 31 Oct 2016 10:47:52 +0100
+
+llvm-toolchain-3.9 (1:3.9-3) unstable; urgency=medium
+
+ [ Sylvestre Ledru ]
+ * The libstdc++-6-dev & libobjc-6-dev are only install with clang-X.Y
+ and libclang-X.Y-dev and no longer with libclang1-X.Y
+ (Closes: #841309)
+
+ [ Gianfranco Costamagna ]
+ * Team upload
+ * d/p/drop-wrong-hack-arm64.patch:
+ - drop hack that was preventing the package from building on
+ non-amd64 64bit architectures:
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Thu, 27 Oct 2016 11:45:28 +0200
+
+llvm-toolchain-snapshot (1:4.0~svn280796-1~exp1) experimental; urgency=medium
+
+ * Merge clang-include-fixer-4.0 into clang-4.0. Don't think
+ it deserves it own package
+ * python-lldb-4.0 archs "any" to a list like others pkg
+ * Fix a version issue with run-clang-tidy-4.0.py
+ * Also install clang-change-namespace-4.0
+
+ [ Kai Wasserbäch ]
+ * debian/clang-X.Y.install.in: Added clang-cpp.
+ * debian/patches: Refreshed.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 02 Sep 2016 13:11:56 +0200
+
+llvm-toolchain-3.9 (1:3.9-1) unstable; urgency=medium
+
+ * New stable release
+ * Port to kfreebsd. Many thanks to Pino Toscano
+ (Closes: #835665)
+ * clang_getAllSkippedRanges in the list of libclang1 symbols
+ * Try to disable the execution of the testsuite for scan-build & coverity
+ for real
+ * Also ship clang-reorder-fields as part of the clang-4.0 package
+ * Build lldb on arm64. Hopefully, works.
+ * New snapshot release
+ * Tentative fix for lldb-server build
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 07 Sep 2016 12:02:12 +0200
+
+llvm-toolchain-snapshot (1:4.0~svn279916-1) unstable; urgency=medium
+
+ * Snapshot is now 4.0
+ * Introduce clang-include-fixer-4.0
+ * Fix the usage of jsoncpp in polly. Thanks to James Clarke for the patch
+ (Closes: #835607)
+ * Fix the renaming of the manpages (Closes: #834077)
+ * Use the manpage from clang.rst instead of help2man
+ * Disable the build of lldb on mips64el, ppc64 and s390x for real
+ * Add symlink from ./build to ../share and ../lib etc
+ Thanks to Ximin Luo for the patch (Closes: #834144)
+ * Sync the 3.9 changes into 4.0
+ * Fix the cmake paths in llvm-4.0-dev deb package. Thanks to Brad King
+ for the patch (Closes: #819072)
+ * Bring back the lto (gone with the cmake migration)
+ (Closes: #819333) (upstream: #27223)
+ * LLVMConfig.cmake is now installed to <prefix>/lib/cmake/llvm instead of
+ <prefix>/share/llvm/cmake
+ Thanks to Brad King of the fix
+ * Disable lldb on sparc64 (Closes: #832371)
+ * Also install clang-rename.el & clang-rename.py in clang-4.0
+ * scan-build llvm results are built using --show-description
+ * Generate manpages for lli, lldb-mi & git-clang-format
+ * Fix some lintian overrides
+ * Generate more manpages
+ * Remove some garbage from the manpages (Closes: #815991, #804347)
+ * Disable -gsplit-dwarf on Ubuntu precise
+ * Update the coverity configuration (Debian has moved to gcc 6)
+ * remove compiler-rt-path.diff (file removed upstream, probably because
+ we moved to cmake)
+ * Ship clang-offload-bundler in clang 4.0
+ * Set the correct Conflicts for python-clang-4.0, python-lldb-4.0
+ (Closes: #832410)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 27 Aug 2016 14:19:41 +0200
+
+llvm-toolchain-snapshot (1:4.0~svn275970-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Bring back llvm-4.0-tools to life
+ * ship clang-tblgen & yaml-bench as part of the libclang-common-X.Y-dev
+ package
+
+ * amd64 llvm testsuite is green, bring back the failure in case of error
+ * Fix the cmake paths in llvm-3.9-dev deb package. Thanks to Brad King
+ for the patch (Closes: #819072)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 25 Jul 2016 12:18:52 +0200
+
+llvm-toolchain-3.9 (1:3.9~svn275918-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Silent test CodeGen/SPARC/LeonInsertNOPsDoublePrecision.ll
+ * ship lli-child-target as part of the llvm-X.Y-runtime package
+ * Bring back llvm-3.9-tools to life
+ * ship clang-tblgen & yaml-bench as part of the libclang-common-X.Y-dev
+ package
+ * ship lli-child-target as part of the llvm-X.Y-runtime package
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 19 Jul 2016 15:34:08 +0200
+
+llvm-toolchain-snapshot (1:3.9~svn274438-1) unstable; urgency=medium
+
+ * Remove the autoconf section
+ * Bring back the removal of the build dir
+ * Fix the coverage builds (didn't allow several cflags)
+ * Set the correct conflicts on python-lldb-3.8 (Closes: #817873)
+ * Set the correct conflicts on python-clang-3.8 (Closes: #817872)
+ * remove llvm26003-sanitizer-check-env.diff (merged upstream)
+ * Do not fail the build if the manpages cannot be built (failing on
+ Ubuntu precise)
+ * Install libfindAllSymbols.a as part of libclang-X.Y-dev
+ * Ship scan-build-py
+ * Use the libjsoncpp library embedded (fails to link otherwise)
+ * Standards-Version 3.9.8
+ * cmake files moved from usr/lib/llvm-3.9/share/llvm/cmake/
+ to usr/lib/llvm-3.9/lib/cmake/llvm/
+ (upstream change)
+ * Add a symlink from usr/lib/llvm-3.9/share/llvm/cmake
+ pointing to usr/share/llvm-3.9/cmake
+ * Disable the run of lldb testsuite because of LLVM_LINK_LLVM_DYLIB=ON:
+ https://llvm.org/bugs/show_bug.cgi?id=28127
+ * Add -gsplit-dwarf to CXXFLAGS to workaround the memory allocation
+ issue on i386
+ * Ignore the lintian override about embedded-library for json.
+ Doesn't link otherwise
+ * Fix the soname of libclang and libLLVM. Might cause some breakage with
+ existing app but no choice...
+
+ [ Pablo Oliveira ]
+ * Add python-six as a dependency of python-lldb (Closes: #825371)
+ (thanks to Askar Safin)
+ * Fix lldb symlinks
+ * Fix missing _lldb.so import during lldb testsuite
+
+ [ Ed Schouten ]
+ * Preparation of the support of lld (not ready yet)
+
+ [ Kai Wasserbäch ]
+ * debian/rules:
+ - Ensure ld-gold is used. CMake invokes the linker through g++ most of the
+ time, therefore we need to set -Wl,-fuse-ld=gold.
+ - Remove unused variable "confargs".
+
+ [ Brad King ]
+ * Install cmake files in usr/share/llvm-@LLVM_VERSION@/cmake/ instead of
+ usr/share/llvm-@LLVM_VERSION@/cmake/
+ * Also install libLLVM-3.8.so.1 as a symlink
+ * debian/patches/fix-cmake-config-prefix.diff:
+ cover the CMake build system too
+ (Closes: #819072)
+
+ [ Alexis La Goutte ]
+ * Fix an issue with scan-view (Closes: #825101)
+
+ [ YunQiang Su ]
+ * Enable FPXX by default on mips/mipsel (Closes: #826749)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 02 Jul 2016 20:46:05 +0200
+
+llvm-toolchain-snapshot (1:3.9~svn260851-1) unstable; urgency=medium
+
+ * New snapshot
+ * Switch to 3.9 (remove lldb-3.9-dev as it was a transitionnal pkg)
+ * Update the clang description for something more accurate (C++-11, 14, etc)
+ * Cmake migration. Done by Andrew Wilkins. Many thanks to him
+ - Update patches to set SONAME in CMake build
+ - Create symlinks with ".links", don't install from build tree
+ - Remove LLVM-internal tools (lit, FileCheck, not, tblgen, etc.)
+ - Remove llvm-X.Y-tools package, because it contained only
+ internal tools that are not intended for distribution.
+ - Remove autotools-specific artifacts from packages.
+ - Remove "dummy" documentation artifacts from llvm-X.Y-docs
+ package. Not built/installed by CMake, not useful.
+ - Update control/rules to support CMake
+ - Patch LLDB SWIG interfaces to workaround a bug in SWIG
+ See https://llvm.org/bugs/show_bug.cgi?id=25468
+ - add missing files to clang-format
+ - Add patch to fix sanitizer lit invocation
+ - removed LLVM-internal tools (lit, FileCheck, not, *-tblgen, etc.);
+ not installed by CMake, not intended for distribution
+ - removed llvm-X.Y-tools (contained only internal tools)
+ - removed autotools-specific artifacts (configure, Makefile, etc.)
+ - removed dummy documentation files
+ * Sync against 3.8
+ * Disable "Sphinx warnings treated as errors"
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 08 Mar 2016 09:50:29 +0100
+
+llvm-toolchain-3.8 (1:3.8-1) unstable; urgency=medium
+
+ * New upstream release
+ * Install a missing library to unbreak lldb (Closes: #815809)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 03 Mar 2016 21:16:21 +0100
+
+llvm-toolchain-3.8 (1:3.8~+rc3-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Update the clang description for something more accurate (C++-11, 14, etc)
+ * Update debian/orig-tar.sh to remove autoconf/config.sub autoconf/config.guess
+ in polly
+
+ [ Matthias Klose ]
+ * clang-tidy-3.8: Remove Breaks/Replaces on clang-modernize-3.8.
+ * Disable lldb on s390x.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 25 Feb 2016 14:26:14 +0100
+
+llvm-toolchain-3.8 (1:3.8~+rc2-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Remove build-llvm/ after the install step to save space.
+ Most of the rc1 builds failed because of hd space.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 03 Feb 2016 08:59:32 +0100
+
+llvm-toolchain-3.8 (1:3.8~+rc1-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Cmake migration. Done by Andrew Wilkins. Many thanks to him
+ - Update patches to set SONAME in CMake build
+ - Create symlinks with ".links", don't install from build tree
+ - Remove LLVM-internal tools (lit, FileCheck, not, tblgen, etc.)
+ - Remove llvm-X.Y-tools package, because it contained only
+ internal tools that are not intended for distribution.
+ - Remove autotools-specific artifacts from packages.
+ - Remove "dummy" documentation artifacts from llvm-X.Y-docs
+ package. Not built/installed by CMake, not useful.
+ - Update control/rules to support CMake
+ - Patch LLDB SWIG interfaces to workaround a bug in SWIG
+ See https://llvm.org/bugs/show_bug.cgi?id=25468
+ - add missing files to clang-format
+ - Add patch to fix sanitizer lit invocation
+ - removed LLVM-internal tools (lit, FileCheck, not, *-tblgen, etc.);
+ not installed by CMake, not intended for distribution
+ - removed llvm-X.Y-tools (contained only internal tools)
+ - removed autotools-specific artifacts (configure, Makefile, etc.)
+ - removed dummy documentation files
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 20 Jan 2016 16:09:01 +0100
+
+llvm-toolchain-3.8 (1:3.8.1-8) unstable; urgency=medium
+
+ * Disable the usage of ld gold on powerpc (Closes: #833583)
+ * Revert drop-avx512-from-skylake.diff, it is causing some regressions in the
+ testsuite
+ * Disable lldb on ppc64
+ * libfuzzer depends on the same version of clang (Closes: #833564)
+ * Use filter into of findstring in the gold usage. Thanks Doko for the
+ suggestion
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 07 Aug 2016 14:10:09 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-7) unstable; urgency=medium
+
+ * Fix the detection of gcc. This broke the build on the latest unstable
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 05 Aug 2016 09:55:15 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-6) unstable; urgency=medium
+
+ * Ship libFuzzer in its own package (libfuzzer-X.Y-dev) (Closes: #820159)
+ * Sync from Ubuntu. Many thanks to Matthias Klose
+ - drop-avx512-from-skylake.diff: Don't enable AVX512 on Skylake, as it's
+ a server cpu feature and breaks llvmpipe on workstations.
+ - Remove the build tree before calling dh_strip; at least the amd64 buildd
+ runs out of diskspace at this step.
+ - Add support for gcc's attribute abi_tag (needed for compatibility with
+ GCC 5's libstdc++); taken from the trunk (Closes: #797038)
+ (LP: #1510042, #1488254)
+ D17567-PR23529-Sema-part-of-attrbute-abi_tag-support.diff
+ D18035-PR23529-Mangler-part-of-attrbute-abi_tag-support.diff
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 28 Jul 2016 11:15:04 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-5) unstable; urgency=medium
+
+ [ Gianfranco Costamagna ]
+ * Try to fix mips64el build, by enabling the same
+ packages as the mips and mipsel versions
+ * Link mips* with latomic.
+
+ [ Sylvestre Ledru ]
+ * Disable lldb on sparc64 (Closes: #832371)
+ * Hopefully fix the FTBFS on armel
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 27 Jul 2016 22:49:09 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-4) unstable; urgency=medium
+
+ * Fix the FTBFS under mips/mipsel? (enable the link against atomic)
+ (Closes: #820537)
+ * Bring back llvm-3.8-tools to life
+ * ship clang-tblgen & yaml-bench as part of the libclang-common-X.Y-dev
+ package
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 20 Jul 2016 10:20:46 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-3) unstable; urgency=medium
+
+ * Add -gsplit-dwarf to CXXFLAGS to workaround the memory allocation
+ issue on i386 (hopefully)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 02 Jul 2016 20:59:08 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-2) unstable; urgency=medium
+
+ [ Sylvestre Ledru ]
+ * Add a symlink from usr/lib/llvm-3.8/share/llvm/cmake
+ pointing to usr/share/llvm-3.8/cmake
+
+ [ Gianfranco Costamagna ]
+ * Remove python-lldb-3.8 where liblldb-3.8-dev is not built
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 28 Jun 2016 14:44:48 +0200
+
+llvm-toolchain-3.8 (1:3.8.1-1) unstable; urgency=medium
+
+ * New maintenance release
+
+ [ Kai Wasserbäch ]
+ * debian/rules: Ensure ld-gold is used. CMake invokes the linker through
+ g++ most of the time, therefore we need to set -Wl,-fuse-ld=gold.
+
+ [ Brad King ]
+ * Followup to fix the cmake install (Closes: #819072)
+
+ [ YunQiang Su ]
+ * Enable FPXX by default on mips/mipsel (Closes: #826749)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 23 Jun 2016 08:49:29 +0200
+
+llvm-toolchain-3.8 (1:3.8.1~+rc1-1~exp1) experimental; urgency=medium
+
+ * New RC release
+ * Improve the cmake detection (used for llvm.org/apt)
+ * Standards-Version updated to 3.9.8
+ * Ignore outdated-autotools-helper-file
+
+ [ Brad King ]
+ * Install cmake files in usr/share/llvm-@LLVM_VERSION@/cmake/ instead of
+ usr/share/llvm-@LLVM_VERSION@/cmake/
+ * Also install libLLVM-3.8.so.1 as a symlink
+ * debian/patches/fix-cmake-config-prefix.diff:
+ cover the CMake build system too
+ (Closes: #819072)
+
+ [ Pablo Oliveira ]
+ * Fix python-lldb dependencies and make proper symlinks to libLLVM
+ and liblldb as suggested by Graham Inggs (Closes: #821022)
+ * Fix liblldb suffix in lldb/scripts/Python/finishSwigPythonLLDB.py
+ (Closes: #813798)
+ * Fix LLVM bug 26158 - clang packages don't provide man pages
+ * Add python-six as a dependency of python-lldb (thanks to Askar Safin).
+
+ [ Gianfranco Costamagna ]
+ * Make python-lldb-3.8 depend on lldb-3.8-dev, to pick all
+ the required dependencies
+ * Unbreak circular dependency by Suggesting the python binding from
+ liblldb-3.8-dev
+
+ [ Alexis La Goutte ]
+ * Fix an issue with scan-view (Closes: #825101)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 26 May 2016 17:30:00 +0200
+
+llvm-toolchain-3.8 (1:3.8-2) unstable; urgency=medium
+
+ * Team upload.
+ * Disable polly on s390x and fix polly check.
+ * Fix VCS fields.
+
+ [ Sylvestre Ledru ]
+ * Fix txt file installation issue, by putting a README.txt file
+ with some explanation.
+
+ [ Graham Inggs ]
+ * Tighten llvm dev dependency (Closes: #814142).
+
+ -- Gianfranco Costamagna <locutusofborg@debian.org> Mon, 07 Mar 2016 10:56:05 +0100
+
+llvm-toolchain-3.8 (1:3.8-1) unstable; urgency=medium
+
+ * New upstream release
+ * Install a missing library to unbreak lldb (Closes: #815809)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 03 Mar 2016 21:16:21 +0100
+
+llvm-toolchain-3.8 (1:3.8~+rc3-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Update the clang description for something more accurate (C++-11, 14, etc)
+ * Update debian/orig-tar.sh to remove autoconf/config.sub autoconf/config.guess
+ in polly
+
+ [ Matthias Klose ]
+ * clang-tidy-3.8: Remove Breaks/Replaces on clang-modernize-3.8.
+ * Disable lldb on s390x.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 25 Feb 2016 14:26:14 +0100
+
+llvm-toolchain-3.8 (1:3.8~+rc2-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Remove build-llvm/ after the install step to save space.
+ Most of the rc1 builds failed because of hd space.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 03 Feb 2016 08:59:32 +0100
+
+llvm-toolchain-3.8 (1:3.8~+rc1-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Cmake migration. Done by Andrew Wilkins. Many thanks to him
+ - Update patches to set SONAME in CMake build
+ - Create symlinks with ".links", don't install from build tree
+ - Remove LLVM-internal tools (lit, FileCheck, not, tblgen, etc.)
+ - Remove llvm-X.Y-tools package, because it contained only
+ internal tools that are not intended for distribution.
+ - Remove autotools-specific artifacts from packages.
+ - Remove "dummy" documentation artifacts from llvm-X.Y-docs
+ package. Not built/installed by CMake, not useful.
+ - Update control/rules to support CMake
+ - Patch LLDB SWIG interfaces to workaround a bug in SWIG
+ See https://llvm.org/bugs/show_bug.cgi?id=25468
+ - add missing files to clang-format
+ - Add patch to fix sanitizer lit invocation
+ - removed LLVM-internal tools (lit, FileCheck, not, *-tblgen, etc.);
+ not installed by CMake, not intended for distribution
+ - removed llvm-X.Y-tools (contained only internal tools)
+ - removed autotools-specific artifacts (configure, Makefile, etc.)
+ - removed dummy documentation files
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 20 Jan 2016 16:09:01 +0100
+
+llvm-toolchain-snapshot (1:3.8~svn255217-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Fix an install issue with clang-tidy
+ * clang-modernize has been removed. Long live to clang-tidy, its
+ replacement
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 10 Dec 2015 05:18:29 +0100
+
+llvm-toolchain-snapshot (1:3.8~svn254193-2) UNRELEASED; urgency=medium
+
+ * disable lldb and polly on powerpc, currently ftbfs.
+ setting the lldb archs in debian/control in just one
+ place would be appreciated.
+ * quoting fixes in debian/rules, when make macros
+ are empty
+ Thanks to Doko for the two previous changes (Closes: #806729)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 30 Nov 2015 15:34:12 +0100
+
+llvm-toolchain-snapshot (1:3.8~svn254193-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Remove some warnings in the manpages generation (Closes: #795310)
+ * Also ship sancov in clang-3.8
+ * Fix the links to scan-build-3.8 & scan-view-3.8
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 20 Oct 2015 14:07:06 +0200
+
+llvm-toolchain-snapshot (1:3.8~svn250696-1) unstable; urgency=medium
+
+ * Remove macho-dump from LLVM (removed by upstream r248302)
+ * Introduce clang-tidy-3.8 as a separate package. Replaces clang-modernize
+ * Ship run-clang-tidy.py & clang-tidy-diff.py in clang-tidy-3.8
+ * Remove cpp11-migrate-3.8 package. Has been replaced by clang-modernize
+ for a while (which will be replaced by clang-tidy)
+ * Add three new symbols in libclang1
+ - clang_CompileCommand_getFilename@Base
+ - clang_CompileCommand_getMappedSourceContent@Base 3.8
+ - clang_CompileCommand_getMappedSourcePath@Base 3.8
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 21 Sep 2015 13:16:35 +0200
+
+llvm-toolchain-snapshot (1:3.8~svn247576-1) unstable; urgency=medium
+
+ [ Sylvestre Ledru ]
+ * New snapshot release
+ * Remove CVE-2015-2305.patch. Already fixed upstream in a different
+ way
+ * remove patches merge upstream
+ - lit-lang.diff
+ - locale-issue-ld.diff
+ * Also generate liblldb-3.8-dbg
+ * Select LLVM OpenMP as the default backend
+
+ [ Gianfranco Costamagna ]
+ * d/control: Add more conflicting packages (python-clang and python-lldb)
+ (Closes: #796811, #796843)
+ * Remove an obsolete declaration about dragonegg
+ (cherry-pick from 3.7 branch)
+
+ [ James Price ]
+ * d/p/fix-cmake-config-prefix.diff: fix cmake path,
+ needs a change after upstream revision r241080
+ (Addresses: #794905)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 14 Sep 2015 18:29:09 +0200
+
+llvm-toolchain-snapshot (1:3.8~svn245286-1) unstable; urgency=medium
+
+ * New snapshot release (3.7 => 3.8)
+ No need to rename libllvm as 3.8 was not part of the debian archive
+
+ [ Gianfranco Costamagna ]
+ * Fix VCS fields.
+ * d/p/CVE-2015-2305.patch, fix security issue on regcomp.c
+ * Fix many lintian warning/errors
+ - copyright fixes
+ - control files
+ - disabled ocaml documentation
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 18 Aug 2015 14:28:36 +0200
+
+llvm-toolchain-snapshot (1:3.7~svn231060-1~exp2) UNRELEASED; urgency=medium
+
+ * Reflect upstream changes wrt vim package. Split the files into different
+ directories
+ * Disable the patch force-gcc-header-obj.diff. Seems to cause bug #23556
+ * Fix the CMake build. thanks to Paweł Bylica for the fix.
+ Fix upstream bug #23352
+ * No longer building some clang help page, removing them
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 21 Apr 2015 09:41:41 +0200
+
+llvm-toolchain-snapshot (1:3.7~svn231060-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * Force the version of clang in the analyzer scripts
+ clang-analyzer-force-version.diff
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 03 Mar 2015 09:19:38 +0100
+
+llvm-toolchain-snapshot (1:3.7~svn230857-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Support of gcc 5.0 (Closes: #777988)
+ * compiler-rt-i586.diff: fix a build issue of compiler-rt under i386
+ * lldb-gdbserver & lldb-platform have been merged into lldb-server
+ * Bring back polly and remove libcloog-isl-dev & libisl-dev as build deps
+ (shipped in the polly source tree)
+ * Set the correct conflicts (Closes: #777580, #777581, #777582)
+ * lit-lang.diff: Force the call to ld to be in english
+ (was failing with a french locale)
+ * silent-MCJIIT-tests.diff: enable some tests and silents some other
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 28 Feb 2015 18:44:59 +0100
+
+llvm-toolchain-snapshot (1:3.7~svn227076-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Switch to version 3.7
+ * Standards-Version updated to 3.9.6
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 26 Jan 2015 09:23:41 +0100
+
+llvm-toolchain-snapshot (1:3.6~svn224810-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Update library filename declaration 3.5 => 3.6 (Closes: #772006)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 05 Dec 2014 17:46:56 -0800
+
+llvm-toolchain-snapshot (1:3.6~svn221998-1~exp1) experimental; urgency=medium
+
+ * Disable ocaml binding. Needs libctypes-ocaml 0.3.3 which is not available
+ * libllvm*.a is not longer built
+ * Update of the libclang symbols
+ * Improve the copyright file. Thanks to Dann Frazier (Closes: #766778)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 04 Nov 2014 14:43:28 +0100
+
+llvm-toolchain-snapshot (1:3.6~svn218612-1) unstable; urgency=medium
+
+ * Fix my screw up. Add .1 to the libclang soname to make
+ dpkg-shlibdeps happy
+ * Remove useless dependency on doxygen
+ * scan-build could not find clang binary (Closes: #758998)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 26 Sep 2014 17:05:26 +0200
+
+llvm-toolchain-snapshot (1:3.6~svn218446-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Upload in unstable
+ * Disable the co-instability of lldb & python-lldb
+ (Python stuff conflicts)
+ * Fix bad dependencies on lldb 3.6
+ * Refresh of the list of symbol in libclang
+ * Try to workaround the FTBFS under ppc64el (create an empty directory)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 24 Sep 2014 14:20:49 +0200
+
+llvm-toolchain-snapshot (1:3.6~svn216933-1~exp1) experimental; urgency=medium
+
+ * New snapshot release
+ * sync from 1:3.5~+rc4-2~exp1
+ * libclang-3.6.so should be used instead libclang.so. Update the soname
+ to match the new lib name (Closes: #759538)
+ * Rename liblldb.so to liblldb-3.6.so + update of the soname.
+ * python-clang-3.6 description updated
+ * liblldb-3.6 and python-lldb-3.6 added
+ * lldb-3.6-dev renamed to liblldb-3.6-dev to match the previous changes
+ * Manpages for llvm-ranlib, clang-apply-replacements, pp-trace and clang-tidy
+ added
+ * clang-3.6 should depends on binutils (for ld, at least)
+ (Closes: #751030)
+ * clang/www/analyzer/scripts/dbtree.js removed
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 30 Aug 2014 18:09:20 +0200
+
+llvm-toolchain-snapshot (1:3.6~svn215195-3) unstable; urgency=medium
+
+ * Just like in 3.4 & 3.5, bring back lldb & lldb-dev under mips & mipsel
+ * Ship clang-rename/clang-rename-3.6
+ * Disable libstdc++-header-i386.diff & include-target.diff (merged upstream)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 18 Aug 2014 09:02:30 +0200
+
+llvm-toolchain-snapshot (1:3.6~svn215195-2) unstable; urgency=medium
+
+ * try to build lldb-mi under kfreebsd (kfreebsd-lldb-mi.diff)
+ * kfreebsd-lldb-gdbserver.diff removed (applied upstream)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 11 Aug 2014 08:44:13 +0200
+
+llvm-toolchain-snapshot (1:3.6~svn215195-1) unstable; urgency=medium
+
+ * Upload in unstable
+ * Enable compressed debug sections (Closes: #757002)
+ * Force scan-build to use the same version of clang
+ * Old JIT has been removed. 0050-powerpcspe-fp.diff is useless
+ * try to build lldb-gdbserver under kfreebsd (kfreebsd-lldb-gdbserver.diff)
+ * Second try to fix build under HURD (hurd-EIEIO-undef.diff)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 04 Aug 2014 13:36:15 +0200
+
+llvm-toolchain-3.4 (1:3.4.2-8) unstable; urgency=medium
+
+ * Try to bring back lldb-3.4-dev on mips & mipsel (Closes: #758314)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 16 Aug 2014 22:39:13 +0200
+
+llvm-toolchain-3.4 (1:3.4.2-7) unstable; urgency=medium
+
+ * Upload in unstable
+ * Try to bring back lldb on mips & mipsel
+ * Force scan-build to use the same version of clang
+ * Try to fix hurd (hurd-EIEIO-undef.diff)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 05 Aug 2014 14:40:05 +0200
+
+llvm-toolchain-3.5 (1:3.5~+rc4-1) unstable; urgency=medium
+
+ * New snapshot release
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 27 Aug 2014 23:09:59 +0200
+
+llvm-toolchain-3.5 (1:3.5~+rc3-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Cherry-pick to commit from upstream (revisions 214906 214907)
+ to improve the gcc compat
+ * Remove scan-build-clang-path.diff (applied upstream)
+ * Just like in 3.4, bring back lldb & lldb-dev under mips & mipsel
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 20 Aug 2014 23:43:06 +0200
+
+llvm-toolchain-3.5 (1:3.5~+rc2-1) unstable; urgency=medium
+
+ * Fix the version
+ * try to build lldb-gdbserver under kfreebsd (kfreebsd-lldb-gdbserver.diff)
+ * Second try to fix build under HURD (hurd-EIEIO-undef.diff)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 08 Aug 2014 10:42:13 +0200
+
+llvm-toolchain-3.5 (1:3.5~+rc2-1~exp1) unstable; urgency=medium
+
+ * New snapshot release
+ * Enable compressed debug sections (Closes: #757002)
+ * Force scan-build to use the same version of clang
+ * Bring back scan-build-search-path.diff (Closes: #757219)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 04 Aug 2014 13:35:35 +0200
+
+llvm-toolchain-snapshot (1:3.6~svn214630-1~exp1) experimental; urgency=medium
+
+ * New snapshot release (3.5 => 3.6)
+ * Co installation of clang (Closes: #736057)
+ - scan-build => scan-build-3.6
+ - scan-view => scan-view-3.6
+ - asan_symbolize => asan_symbolize-3.6
+ * Refresh of the patches
+ * Install yaml2obj, obj2yaml & verify-uselistorder in llvm-3.6
+ * Remove of pollycc
+ * clang alternatives are managed by llvm-defaults
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 31 Jul 2014 18:12:59 +0200
+
+llvm-toolchain-3.5 (1:3.5~+rc1-2) unstable; urgency=medium
+
+ * Sync with 3.4 svn to retrieve some changes:
+ * Replace $(CURDIR)/debian/tmp by a variable
+ * Move the polly installation in the dh_auto_install rules instead
+ of using *.install files. In llvm.org/apt/, I have to sometime disable
+ polly
+ * hurd-EIEIO-undef.diff: try to undef an errno.h to fix the ftbfs
+ * clang-X suggests clang-X-doc (Closes: #755922)
+ * Manage all files using .in mechanism. It will simplify the upgrade of
+ version
+ * Disable lldb for ppc64el. Thanks to Dimitri John Ledkov (Closes: #756380)
+ * Fix the FTBFS under PowerPC. Thanks to Dimitri John Ledkov for the patch
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 24 Jul 2014 11:42:56 +0200
+
+llvm-toolchain-3.5 (1:3.5~+rc1-1) unstable; urgency=medium
+
+ * First RC release of the 3.5 llvm toolchain
+ * Apply lldb-kfreebsd.diff patch to fix FTBFS under KFreeBSD
+ Thanks to Ed Maste
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 23 Jul 2014 08:57:59 +0200
+
+llvm-toolchain-snapshot (1:3.5~svn213451-1) unstable; urgency=medium
+
+ * New snapshot release
+ * If the version of gcc is too old, force the usage of gcc 4.8
+ * Clang will now show the full version. Example: 3.5.0-svn213052-1~exp1
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 19 Jul 2014 15:27:11 +0200
+
+llvm-toolchain-snapshot (1:3.5~svn211669-2) unstable; urgency=medium
+
+ * Remove useless dependency on g++
+ * Use the option stable '-analyzer-config stable-report-filename=true'
+ to the llvm scan-build reports
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 29 Jun 2014 19:13:05 +0200
+
+llvm-toolchain-snapshot (1:3.5~svn211669-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Fix CVE-2014-2893 (Closes: #744817)
+ * Merge with 3.4/debian
+ * Ship lldb-mi in lldb
+ * Remove scan-build-fix-clang-detection.diff (applied upstream)
+ * Ship the compiler-rt static libraries
+ * Running tests respect DEB_BUILD_OPTIONS=parallel=X
+ (Closes: #751943)
+ * Fix FTBFS on powerpc and powerpcspe (Closes: #733890)
+ * Broken library symlink fixed in lldb-3.5 (Closes: #715130)
+ * Fix --use-cc when no absolute path is provided (Closes: #748777)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 25 Jun 2014 07:58:03 +0200
+
+llvm-toolchain-snapshot (1:3.5~svn209039-2) unstable; urgency=medium
+
+ * Provide a link as compatibility with previous lib name (Closes: #748569)
+ * Be less permissive when installing lldb. Remove duplication of the install
+ of liblldb.so.1
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 18 May 2014 20:01:40 +0200
+
+llvm-toolchain-snapshot (1:3.5~svn209039-1) unstable; urgency=medium
+
+ * New snapshot release
+ * Fix the cmake install patch
+ * Disable profile_rt.diff for now
+ * Refresh of libclang1-3.5.symbols
+ * Fix path to /usr/lib/clang/3.5.0/ (Closes upstream #19088)
+ * Fix the wrong dependency declaration on llvm-3.5-tools
+ * Add gnustep & gnustep-devel as suggests of clang-3.5
+ * Add libc6-dev as an explicit dependency of clang-3.5
+ * 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.5-runtime
+ - count - llvm-3.5-tools
+ - html.tar.gz - llvm-3.5-doc
+ - ocamldoc.tar.gz - llvm-3.5-doc
+ - BugpointPasses.so - llvm-3.5-dev
+ - liblldb* - lldb-3.5-dev
+ - clang-apply-replacements - clang-3.5
+ - clang-tidy - clang-3.5
+ - clang-query - clang-3.5
+ - pp-trace - clang-3.5
+ - lldb-platform - lldb-3.5
+ - lldb-gdbserver - lldb-3.5
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 16 May 2014 23:23:50 +0200
+
+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 <sylvestre@debian.org> Mon, 16 Jun 2014 23:00:47 +0200
+
+llvm-toolchain-3.4 (1:3.4.2-1) unstable; urgency=medium
+
+ * New upstream release
+ * Add build conflict on libllvm-3.5-ocaml-dev
+ * 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 <sylvestre@debian.org> Fri, 06 Jun 2014 15:55:57 +0200
+
+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 <sylvestre@debian.org> 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
+ FTBFS
+
+ -- Sylvestre Ledru <sylvestre@debian.org> 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
+ (Closes: #747701)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> 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.
+ 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
+ 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)
+ (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
+ * 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
+ - 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 <sylvestre@debian.org> Fri, 09 May 2014 19:57:33 +0200
+
+llvm-toolchain-snapshot (1:3.5~svn200375-1) unstable; urgency=medium
+
+ * New snapshot release
+ * polly unnopstream is now using the isl trunk. Disabling it for now.
+ * Only explicit the link against atomic when running mips & mipsel
+ * Fix the cindex.py declaration (3.3 => 3.5). Closes upstream bug #18365
+ * Bring back the dependency on gcc 4.8. It breaks the nightly snapshot
+ packages and it should be the norm now...
+
+ [ Martin Nowack ]
+ * Fixed build directory for llvm-config
+ * Add Unittests for running tests for llvm-based projects
+ * Install FileCheck and not for testing
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 29 Jan 2014 07:36:29 -0800
+
+llvm-toolchain-snapshot (1:3.5~svn199601-1) unstable; urgency=low
+
+ * New snapshot release
+ * Update clang-format declaration from 3.4 => 3.5. Closes upstream bug #18451
+ * Fix the cindex.py declaration (3.3 => 3.5). Closes upstream bug #18365
+ * Force gcc 4.8. LLVM & Co are now in C++ 11.
+ * Also make clang-3.5 breaks/replaces clang. Conflicts on
+ /usr/share/clang/scan-view/ScanView.py (Closes: #730266)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 15 Jan 2014 15:08:03 +0100
+
+llvm-toolchain-snapshot (1:3.5~svn197556-1) unstable; urgency=low
+
+ * New snapshot release
+ * Merge changes from 1:3.4~+rc3-1
+ * Disable much of the display of the lldb display
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 17 Dec 2013 12:02:52 +0100
+
+llvm-toolchain-snapshot (1:3.5~svn195337-1) unstable; urgency=low
+
+ * Sync from 3.4~+rc2-1
+ * Make lldb 3.5 also conflict with 3.4 (Closes: #730163)
+ * Make python-clang 3.5 also conflict with 3.4 (Closes: #730164)
+ * Fix a FTBFS with clang
+ * Refresh the /usr/include/clang mess
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 10 Dec 2013 09:57:15 +0100
+
+llvm-toolchain-snapshot (1:3.5~svn195337-1) unstable; urgency=low
+
+ * Switch from 3.4 to 3.5
+ * Remove patch 0046-Revert-Patch-to-set-is_stmt-a-little-better-for-prol.patch
+ Useless now and missleading
+ * Standards-Version updated to 3.9.5
+ * kfreebsd.diff remove (applied upstream)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 20 Nov 2013 21:24:28 +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
+ * Bring back the dependency on gcc 4.8. It breaks the nightly snapshot
+ packages and it should be the norm now...
+ * Introduce llvm-3.4-tools to contain the new files needed by Martin
+
+ [ Matthias Klose ]
+ * Disable the lldb build for AArch64.
+ * Don't run the lldb tests on armhf (time out on the buildd).
+
+ [ Martin Nowack ]
+ * Fixed build directory for llvm-config
+ * Add Unittests for running tests for llvm-based projects
+ * Install FileCheck and not for testing
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 11 Feb 2014 11:19:21 +0100
+
+llvm-toolchain-3.4 (1:3.4-1) unstable; urgency=medium
+
+ * New upstream release
+ * Remove explicit dep on gcc 4.8
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 20 Dec 2013 18:36:58 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu4) trusty; urgency=medium
+
+ * Rebuild for ocaml-4.01.
+
+ -- Matthias Klose <doko@ubuntu.com> Mon, 23 Dec 2013 12:11:17 +0000
+
+llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu3) trusty; urgency=low
+
+ * Bring over Ubuntu changes from 3.3:
+ - Revert to using the static copy of libjsoncpp, since the shared
+ library lacks sane versioning, and this is only a few thousand
+ lines of cargo-culted code from a reasonably stagnant upstream.
+ - Drop lcov build-dep to avoid pulling it into main, due to its
+ being fundamentally incompatibe with our newer GCC versions.
+
+ -- Matthias Klose <doko@ubuntu.com> Fri, 20 Dec 2013 12:59:01 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu2) trusty; urgency=low
+
+ * Don't run the lldb tests on armhf (time out on the buildd).
+
+ -- Matthias Klose <doko@ubuntu.com> Wed, 18 Dec 2013 12:29:56 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc3-1ubuntu1) trusty; urgency=low
+
+ * Disable the lldb build for AArch64.
+ * Build-depend on gcc-multilib on amd64 and i386.
+
+ -- Matthias Klose <doko@ubuntu.com> Tue, 17 Dec 2013 18:44:50 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc3-1) unstable; urgency=low
+
+ * New testing upstream release
+ * Relative call in the chroot without proc failed.
+ See: fix-an-issue-in-chroot-witout-proc.diff
+ * Bring back lldb-link-atomic.diff to make sure lldb builds under
+ powerpc
+ * Also limit the number of archs for liblldb-dev
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 17 Dec 2013 11:27:40 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc2-3) unstable; urgency=low
+
+ * Fix the bad declaration on the lldb desactivation
+ * Also disable lldb under powerpc
+ * Hopefully, fix lldb under Kfreebsd-* (thanks to Ed Maste if it works)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 04 Dec 2013 23:53:49 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc2-2) unstable; urgency=low
+
+ * Add the Ocaml ABI dependency (Closes: #731344)
+ * Disable LLDB also for ia64, mips & mipsel
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 04 Dec 2013 15:37:39 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc2-1) unstable; urgency=low
+
+ * New testing upstream release
+ * 0047-version-name.diff ocamldoc.diff removed (applied upstream)
+ * r600 is now compiled by default (remove the configure arg)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 03 Dec 2013 10:25:59 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc1-3) unstable; urgency=low
+
+ * Remove the usage of --with-c-include-dirs, --with-cxx-include-root,
+ --with-cxx-include-arch and --with-cxx-include-64bit-dir
+ It was blocking the automatic detection of the path of clang.
+ In particular in the context of the usage of -target.
+ However, it does not completely fix the detection of the i386 C++ path.
+ See the next item.
+ (Closes: #729933)
+ * Bring back the path to libstdc++ under i386. Still not fixed upstream
+ (Closes: #730857)
+ * Define also MAXPATHLEN in Path.inc for HURD.
+ * Silent the trillion of warnings in the LLDB Python wrapper (swig generated)
+ See silent-swig-warning.diff
+ * Silent some i386 tests failing (it is expected)
+ See silent-MCJIIT-tests.diff
+ * Make lldb 3.4 also conflict with 3.5 (Closes: #730163)
+ * Make python-clang 3.4 also conflict with 3.5 (Closes: #730164)
+ * Port LLVM to mips64el. Thanks to YunQiang Su. Initially done for
+ 3.3 and ported on the 3.4 (Closes: #730808)
+ * If we get an unexpected pass, do not break the tests
+ do-not-fail-on-unexpected-pass.diff (I am disabling some tests)
+ * Fix the path detection of the objective h headers.
+ * Also add usr/lib/llvm-3.4/lib/clang/3.4/include =>
+ usr/lib/clang/3.4/include symlink to simplify the path detection
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 01 Dec 2013 17:49:46 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc1-2) unstable; urgency=low
+
+ * Force the build to gcc 4.8... gcc 4.6 used on some Debian archs does not
+ support some C++ features.
+ * Fail the build when llvm tests are failing under amd64 + i386. More to come.
+ * Fix a libclang.so.1 issue during the clang tests
+ * Improve the patch 23-strlcpy_strlcat_warning_removed.diff
+ (also remove the tests)
+ * Make lldb 3.4 also conflict with 3.5 (Closes: #730163)
+ * Make python-clang 3.4 also conflict with 3.5 (Closes: #730164)
+ * Remove usr/lib/llvm-3.4/build/autoconf/LICENSE.TXT
+ * silent warning "manpage-has-useless-whatis-entry" in lldb-3.4
+ * silent warning "package-name-doesnt-match-sonames libclang1"
+ * Refresh patch kfreebsd_v2.diff to, maybe, fix lldb build under kfreebsd.
+ Thanks to Ed Maste for the patch.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 26 Nov 2013 18:32:49 +0100
+
+llvm-toolchain-3.4 (1:3.4~+rc1-1) unstable; urgency=low
+
+ * New testing upstream release
+ * kfreebsd.diff removed. Applied upstream
+ * Remove patch 0046-Revert-Patch-to-set-is_stmt-a-little-better-for-prol.patch
+ Useless now and missleading
+ * Branch from llvm-toolchain-snapshot
+ * Standards-Version updated to 3.9.5
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 20 Nov 2013 21:24:28 +0100
+
+llvm-toolchain-snapshot (1:3.4~svn194079-1) unstable; urgency=low
+
+ * New snapshot release
+ * Also install clang 3.4 examples (clang-3.4-examples) (Closes: #728260)
+ * Move c-index-test* from llvm-3.4 => clang-3.4. It was triggering an
+ unnecessary dependency from llvm-3.4 to libclang
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 01 Nov 2013 05:19:55 +0100
+
+llvm-toolchain-snapshot (1:3.4~svn193628-1) unstable; urgency=low
+
+ * New snapshot release
+ - Fix the scan-build warning (Closes: #725332)
+ * Merge changes from the 3.3 branch (see 1:3.3-12)
+ * Add lldb-3.4-dev package
+ * Remove mipsel-ftbfs.diff (applied upstream)
+ * Add support of coverity checker (non-free and not packaged)
+ * libprofile_rt and runtime has been removed upstream (r191835)
+ Features are provided by compiler-rt
+ * Update the build dependency from tcl8.5 to tcl (Closes: #725954)
+ * clang-modernize-3.4 was not coinstallable with clang 3.4
+ (Closes: #724245)
+ * The package wasn't cleaned correctly (Closes: #722155)
+ * libtinfo-dev is now a dependency of llvm-3.4-dev (Closes: #727129)
+ * Install libclang.so in /usr/lib/*/libclang-3.4.so
+ * Install libclang.so.1 in /usr/lib/*/libclang-3.4.so.1
+ * Also ship the python clang binding (python-clang-3.4)
+ * Enable polly if the dependencies are OK (only Debian unstable for now)
+ * Bring back /usr/lib/llvm-3.4/lib/libclang.so (libclang-3.4-dev) and
+ /usr/lib/llvm-3.4/lib/libclang.so.1 (libclang1-3.4)
+ * Honor the option "nocheck"
+ * Disable the build of lldb under HURD
+ * Ship the lldb headers into lldb-X.Y-dev (Closes: #723743)
+ I might create a liblldb-X.Y library at some point but I think it is too
+ early.
+ * Update the build dependency from tcl8.5 to tcl (Closes: #725953)
+ * Update of the clang descriptions (Closes: #727684)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 29 Oct 2013 17:56:18 +0100
+
+llvm-toolchain-snapshot (1:3.4~svn190846-1) unstable; urgency=low
+
+ * New snapshot release
+ * Merge changes from the 3.3 branch (see 1:3.3-9)
+ * Remove ia64-fix.diff (applied upstream)
+ * cpp11-migrate renamed to clang-modernize
+ * lldb-3.4 is back to Architectures: any
+ * Patch lldb-hurd.diff removed (applied upstream)
+ * Directory www/ from tarballs polly & lldb removed
+ * Update of the description of LLVM packages
+ (LLVM no longer mean Low Level Virtual Machine)
+
+ [ Luca Falavigna ]
+ * debian/control:
+ - Add llvm-3.4-dev to lldb-3.4 Depends field.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 05 Sep 2013 12:04:35 +0200
+
+llvm-toolchain-3.3 (1:3.3-9) unstable; urgency=low
+
+ [ Luca Falavigna ]
+ * debian/control:
+ - Add llvm-3.3-dev to lldb-3.3 Depends field (Closes: #715129).
+
+ [ Sylvestre Ledru ]
+ * Only use -fuse-ld=gold on supported distribution. Simplify the
+ backports.
+ * Fix 'bits/c++config.h' file not found under i386
+ See libstdc++-header-i386.diff. (Closes: #714890)
+ * Add more fixes for the HURD port... (but still fails)
+
+ [ Robert Millan ]
+ * clang under KfFreeBSD was not exporting the correct defines
+ (Closes: #721880)
+
+ [ Jon Severinsson ]
+ * Merge from llvm-toolchain-3.2 branch up to 3.2repack-11.
+ * Drop auto-generated file debian/libllvm3.3.install.
+ * Automatically determine GCC_VERSION and dep:devlibs based on g++ package
+ version.
+ * Automatically determine if -fuse-ld=gold is supported based on binutils
+ package version.
+
+ [ Adam Conrad ]
+ * debian/patches/lldb-link-atomic.diff: Link lldb with -latomic to get
+ builtin GCC atomic helpers on arches (like powerpc) that need them.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 26 Aug 2013 14:48:42 +0200
+
+llvm-toolchain-3.3 (1:3.3-8) unstable; urgency=low
+
+ [ Sylvestre Ledru ]
+ * Fix another issues under HURD...
+
+ [ Luca Falavigna ]
+ * debian/patches/libprofile_rt_sparc.patch:
+ - Re-enable libprofile_rt on Sparc, fix FTBFS.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 23 Aug 2013 15:02:05 +0200
+
+llvm-toolchain-3.3 (1:3.3-7) unstable; urgency=low
+
+ * debhelper version 9.20130720 fails on the call to dh_auto_clean
+ Remove it. It was anyway useless.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 22 Aug 2013 14:28:25 +0200
+
+llvm-toolchain-3.3 (1:3.3-6) unstable; urgency=low
+
+ * Fix the FTBFS under hurd and KFreeBSD
+ * Do not remove all *.o in tests. Some of them are from upstream source
+ tarball. Thanks to Maarten Lankhorst for the fix.
+ * Fix the lintian error 'lldb-3.3: postinst-must-call-ldconfig'
+ * Add the manpages of clang-format-3.3
+ * Overrides the manpages warnings
+ * Also apply unwind-chain-inclusion.diff from the snapshot branch to make sure
+ we can build the package locally even if libclang-dev is installed
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 22 Aug 2013 09:01:04 +0200
+
+llvm-toolchain-3.3 (1:3.3-5) unstable; urgency=low
+
+ * Install llvm-c headers also in usr/include/llvm-3.3/llvm-c
+ * Fix the FTBFS under mips & mipsel
+ * Refresh of the kfreebsd i386 patch
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 07 Aug 2013 13:12:23 +0200
+
+llvm-toolchain-3.3 (1:3.3-4) unstable; urgency=low
+
+ * Use the static library libjsoncpp.a instead of the ship library in polly
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 11 Aug 2013 09:54:17 +0200
+
+llvm-toolchain-snapshot (1:3.4~svn185325-1) unstable; urgency=low
+
+ * binutils-gold no longer exists. Use -fuse-ld=gold instead.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 01 Aug 2013 14:06:38 +0200
+
+llvm-toolchain-snapshot (1:3.3-2) unstable; urgency=low
+
+ * Fix warning python-script-but-no-python-dep on clang-format-X.Y
+ * manpages are generated during build time (simplifies maintenance)
+ * Fix duplicate underscore.js and jquery.js
+ * Move libjs-jquery & libjs-underscore dependencies to llvm-X.Y-doc
+ * Add lldb-X.Y manpage
+ * Hopefully fix the ftbfs under mipsel (mipsel-ftbfs.diff)
+ * Disable the usage of binutils-gold under armel. It currently fails with:
+ "attempt to map 2752512 bytes at offset 2066666 exceeds size of file;
+ the file may be corrupt"
+
+ [ Léo Cavaillé ]
+ * Add patch to find correctly LLVMGold.so with -O4 (Closes: #712437)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 20 Jun 2013 15:39:11 +0200
+
+llvm-toolchain-snapshot (1:3.4~svn184294-1~exp1) experimental; urgency=low
+
+ * New snapshot release
+ * Improve some scripts and fix cpp11-migrate install from
+ clang-tools-extra.
+ * Fix "versionless" clang manpages install.
+ * Fix Toolchain patch from change of scope (add namespaces).
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 19 Jun 2013 14:20:12 +0200
+
+llvm-toolchain-snapshot (1:3.4~svn183914-1) unstable; urgency=low
+
+ * New snapshot release
+ * Upload to unstable (will be blocked by a RC bug)
+ * Sync changes from llvm-toolchain-3.3:
+ - Introduce cpp11-migrate-3.4 and clang-format-3.4
+ - Install the vim llvm script at the right place
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 13 Jun 2013 18:47:08 +0200
+
+llvm-toolchain-snapshot (1:3.4~svn182733-1~exp1) experimental; urgency=low
+
+ * New snapshot release (3.4 release)
+ * Add a symlink of libLLVM-3.4.so.1 to usr/lib/llvm-3.4/lib/libLLVM-3.4.so
+ to fix make the llvm-config-3.4 --libdir work (Closes: #708677)
+ * Various packages rename to allow co installations:
+ * libclang1 => libclang1-3.4
+ * libclang1-dbg => libclang1-3.4-dbg
+ * libclang-dev => libclang-3.4-dev
+ * libclang-common-dev => libclang-common-3.4-dev
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 27 May 2013 15:01:57 +0200
+
+llvm-toolchain-snapshot (1:3.3~svn179851-1~exp1) experimental; urgency=low
+
+ * Draft of a snapshot release (3.3)
+ * Enable r600 experimental backend
+ * Improve the dependencies:
+ * clang-3.3 depends on the exact same libllvm3.3 release
+ * idem for lldb-3.3
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 19 Apr 2013 09:31:38 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-11) unstable; urgency=low
+
+ * dh_auto_clean removed, just like in the 3.3
+ * Use the static library libjsoncpp.a instead of shipping library in polly
+ Backport of the modification of 3.3
+
+ [ Adam Conrad ]
+ * Revive deltas from the previous Ubuntu versions of llvm and clang:
+ - debian/patches/35-ubuntu-releases.diff: Add UbuntuSaucy to table.
+ - debian/patches/JITEmitter.patch: Fix a segfault in the exception
+ table of the JIT code emitter (See Launchpad bug #1160587)
+
+ [ Luca Falavigna ]
+ * debian/patches/libprofile_rt_sparc.patch:
+ - Re-enable libprofile_rt on Sparc, fix FTBFS.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Fri, 23 Aug 2013 11:49:09 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-10) unstable; urgency=low
+
+ * Fix the wrong package declaration on libstdc++-4.8-dev (Closes: #713944)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 24 Jun 2013 23:00:47 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-9) unstable; urgency=low
+
+ * Switch to libstdc++ 4.8 instead of 4.7 for the headers (Closes: #712520)
+ * Depends against libobjc-4.8-dev and libgcc-4.8-dev
+ * Disable the usage of binutils-gold under armel. It currently fails with:
+ "attempt to map 2752512 bytes at offset 2066666 exceeds size of file;
+ the file may be corrupt"
+ * Add DEBUGMAKE=1 to get information about compiler-rt compilation
+ * Fix "libclang-common-dev: missing-depends-line"
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 22 Jun 2013 07:38:41 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-8) unstable; urgency=low
+
+ * Fix the build under ia64. Thanks to Luca Falavigna for the patch
+ (ia64-fix.diff)
+ * Disable lldb-3.2:
+ - the quality is not good enough
+ - We have lldb-3.3 now in the archive
+ - Too many backported patches would be necessary for lldb-3.2 to work
+ - It blocks some important transitions (mesa)
+ * Add the detection of Ubuntu saucy
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 03 Jun 2013 11:32:29 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-7) unstable; urgency=low
+
+ * For now, enable only lldb for amd64 and i386 (blocks too many things)
+ (Bis) (Closes: #707866)
+ * Add a symlink of libLLVM-3.2.so.1 to usr/lib/llvm-3.2/lib/libLLVM-3.2.so
+ to fix make the llvm-config-3.2 --libdir work (Closes: #708677)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Mon, 27 May 2013 13:20:30 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-6) unstable; urgency=low
+
+ * Create the compiler-rt directory to make the install of compiler-rt works
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 18 May 2013 18:08:52 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-5) unstable; urgency=low
+
+ * For now, enable only lldb for amd64 and i386 (blocks too many things)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 18 May 2013 10:24:04 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-4) unstable; urgency=low
+
+ * Add several patches which, hopefully, will fix the build under ARM, S390,
+ S390X, etc (lldb-apple_only.diff, lldb-user-remove.diff & lldb-hurd.diff)
+ * Include sys/wait.h also under kfreebsd (kfreebsd-thread.diff)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 15 May 2013 12:04:24 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-3) unstable; urgency=low
+
+ * Before the configure, show which version of CC is being used.
+ * Add support of kfreebsd and hurd in lldb (kfreebsd-hurd-lldb.diff)
+ * Force the usage of gcc 4.7 for all archs. Should fix some FTBFS
+ (Closes: #707866)
+ * Fix the symlink on clang++.1.gz llvm-clang.1.gz (Closes: #707832)
+
+ [ Jon Severinsson ]
+ * Re-enable the r600 backend and update it to the mesa-9.1.1 tag.
+ (Closes: #708009)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 14 May 2013 12:10:07 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-2) unstable; urgency=low
+
+ * Do not depend on libobjc-4.7-dev & libgcc-4.7-dev.
+ They are still only in experimental
+ * Disable the usage of binutils-gold under [powerpc powerpcspe ppc64 sparc
+ sparc64] to fix FTBFS
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Tue, 07 May 2013 13:15:20 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-1) unstable; urgency=low
+
+ * Upload to unstable
+ * Standards-Version update to 3.9.4
+ * clang pure virtual function call crash with binaries built with C++11's
+ std::thread. Upstream commit 178816 (Closes: #705838)
+ * Introduce a symbols file for libclang1 (Closes: #705672)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 21 Apr 2013 14:06:23 +0200
+
+llvm-toolchain-3.2 (1:3.2repack-1~exp4) experimental; urgency=low
+
+ * Build using binutls-gold to improve the quality of the binaries.
+ See: http://allievi.sssup.it/techblog/?p=791
+ * Detect the vendor (Debian or Ubuntu) and update the configuration
+ * Port to powerpcspe. Thanks to Roland Stigge (Closes: #701587)
+ See: 31-powerpcspe.diff
+ * Fix the path detection of scan-build (Closes: #698352)
+ See: 32-scan-build-path.diff
+ * debian/patches/r600-snapshot.diff: Move backports into individual patches.
+ * debian/patches/r600-snapshot.diff: Update to mesa-9.1 git tag.
+ (Closes: #703671, #697356)
+ * Fix a typo in the detection of the vendor
+
+ [ Peter Michael Green ]
+ * Use binutils-gold only on architectures where it is actually available
+ * 33-armhf-defaults.diff Fix defaults to use correct CPU and FPU for
+ debian armhf (Closes: #704111)
+ * 34-powerpc-no-altivec.diff disable altivec by default on powerpc because
+ debian powerpc does not require altivec (patch cherry picked from ubuntu)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Thu, 14 Mar 2013 17:47:12 +0100
+
+llvm-toolchain-3.2 (1:3.2repack-1~exp3) experimental; urgency=low
+
+ * Remove package "clang". It is now provided by llvm-defaults.
+ * Fix some issues relative to the epoch change
+ * Fix a wrong path in the _lldb.so Python symlink
+ * Install cmake files to build LLVM extensions (Closes: #701153)
+ * Remove the embedded copy of libjs-jquery (Closes: #701087)
+ * Fix the install of lli manpage (Closes: #697117)
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sun, 17 Feb 2013 12:05:15 +0100
+
+llvm-toolchain-3.2 (1:3.2repack-1~exp2) experimental; urgency=low
+
+ * Install the python files for lldb. Thanks to Daniel Malea for spotting this.
+ * Update of the clean target
+ * Introduce an epoch to match the changes in bug #699899
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Wed, 13 Feb 2013 12:22:30 +0100
+
+llvm-toolchain-3.2 (3.2repack-1~exp1) experimental; urgency=low
+
+ * Build the whole LLVM toolchain at once. This includes:
+ - LLVM
+ - Clang
+ - compiler-rt
+ - lldb
+ - polly
+ * Also install clang-check & clang-tblgen in the clang-3.2 package
+ * Fix the patch detection of clang from scan-build (Closes: #698352)
+ * debian/patches/0050-powerpcspe-fp.diff: Add, hopefully fix FTBFS on
+ powerpcspe, by disabling save / restore of floating point registers which
+ don't exist on powerpcspe. Thanks to Roland Stigge for the patch.
+ (Closes: #696474)
+ * libLLVM-3.2.so.1 is now shipped only once (Closes: #696913)
+ * Enable RTTI (Closes: #697754)
+ * Introduce lldb as a new package (Closes: #698601)
+ * Add a script pollycc which will call clang with the right arguments.
+ * Use __builtin___clear_cache on ARM to fix a clang bug.
+ Thanks to Matthias Klose.
+
+ -- Sylvestre Ledru <sylvestre@debian.org> Sat, 09 Feb 2013 12:14:10 +0100
diff --git a/debian/clang-X.Y-doc.docs.in b/debian/clang-X.Y-doc.docs.in
new file mode 100644
index 0000000..b3cc6a0
--- /dev/null
+++ b/debian/clang-X.Y-doc.docs.in
@@ -0,0 +1,2 @@
+tools/clang/docs/_build/html/
+
diff --git a/debian/clang-X.Y-examples.examples.in b/debian/clang-X.Y-examples.examples.in
new file mode 100644
index 0000000..49cbc5f
--- /dev/null
+++ b/debian/clang-X.Y-examples.examples.in
@@ -0,0 +1 @@
+clang/examples/*
diff --git a/debian/clang-X.Y.install.in b/debian/clang-X.Y.install.in
new file mode 100644
index 0000000..0b6318d
--- /dev/null
+++ b/debian/clang-X.Y.install.in
@@ -0,0 +1,59 @@
+usr/lib/llvm-@LLVM_VERSION@/bin/clang
+usr/lib/llvm-@LLVM_VERSION@/bin/clang++
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-cpp
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-check
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-apply-replacements
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-query
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-rename
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-rename.el
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-rename.py
+usr/lib/llvm-@LLVM_VERSION@/bin/scan-view
+usr/lib/llvm-@LLVM_VERSION@/bin/scan-build
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-cl
+usr/lib/llvm-@LLVM_VERSION@/bin/sancov
+usr/lib/llvm-@LLVM_VERSION@/share/scan-view/
+usr/lib/llvm-@LLVM_VERSION@/share/scan-build/
+usr/lib/llvm-@LLVM_VERSION@/share/man/man1/scan-build.1
+usr/lib/llvm-@LLVM_VERSION@/share/clang/bash-autocomplete.sh
+usr/lib/llvm-@LLVM_VERSION@/libexec/ccc-analyzer
+usr/lib/llvm-@LLVM_VERSION@/libexec/c++-analyzer
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-offload-bundler
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-reorder-fields
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-change-namespace
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-import-test
+usr/lib/llvm-@LLVM_VERSION@/bin/clangd
+
+usr/lib/llvm-@LLVM_VERSION@/bin/modularize
+usr/lib/llvm-@LLVM_VERSION@/bin/c-index-test
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-include-fixer
+usr/lib/llvm-@LLVM_VERSION@/bin/find-all-symbols
+
+tools/clang/tools/scan-build-@LLVM_VERSION@ usr/share/clang/
+tools/clang/tools/scan-build-py-@LLVM_VERSION@ usr/share/clang/
+tools/clang/tools/scan-view-@LLVM_VERSION@ usr/share/clang/
+#usr/share/man/man1/clang.1 usr/share/man/man1/
+usr/lib/llvm-@LLVM_VERSION@/lib/cmake/clang/*.cmake usr/share/llvm-@LLVM_VERSION@/cmake/
+usr/lib/llvm-@LLVM_VERSION@/share/clang/run-find-all-symbols.py
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-include-fixer.py
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-include-fixer.el
+
+usr/bin/clang-@LLVM_VERSION@
+usr/bin/clang++-@LLVM_VERSION@
+usr/bin/clang-cpp-@LLVM_VERSION@
+usr/bin/clang-check-@LLVM_VERSION@
+usr/bin/clang-apply-replacements-@LLVM_VERSION@
+usr/bin/clang-query-@LLVM_VERSION@
+usr/bin/clang-rename-@LLVM_VERSION@
+usr/bin/sancov-@LLVM_VERSION@
+usr/bin/clang-cl-@LLVM_VERSION@
+usr/bin/modularize-@LLVM_VERSION@
+usr/bin/scan-build-@LLVM_VERSION@
+usr/bin/scan-view-@LLVM_VERSION@
+usr/bin/c-index-test-@LLVM_VERSION@
+usr/bin/clang-offload-bundler-@LLVM_VERSION@
+usr/bin/clang-reorder-fields-@LLVM_VERSION@
+usr/bin/find-all-symbols-@LLVM_VERSION@
+usr/bin/clang-include-fixer-@LLVM_VERSION@
+usr/bin/clang-change-namespace-@LLVM_VERSION@
+usr/bin/clang-import-test-@LLVM_VERSION@
+usr/bin/clangd-@LLVM_VERSION@
diff --git a/debian/clang-X.Y.links.in b/debian/clang-X.Y.links.in
new file mode 100644
index 0000000..985ab16
--- /dev/null
+++ b/debian/clang-X.Y.links.in
@@ -0,0 +1,3 @@
+usr/share/clang/scan-build-@LLVM_VERSION@/bin/scan-build usr/bin/scan-build-@LLVM_VERSION@
+usr/share/clang/scan-build-py-@LLVM_VERSION@/bin/scan-build usr/bin/scan-build-py-@LLVM_VERSION@
+usr/share/clang/scan-view-@LLVM_VERSION@/bin/scan-view usr/bin/scan-view-@LLVM_VERSION@
diff --git a/debian/clang-X.Y.lintian-overrides.in b/debian/clang-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..ab2dbae
--- /dev/null
+++ b/debian/clang-X.Y.lintian-overrides.in
@@ -0,0 +1,9 @@
+# I know but well...
+clang-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-check.1.gz
+clang-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/scan-view.1.gz
+clang-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-apply-replacements-@LLVM_VERSION@.1.gz
+clang-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-check-@LLVM_VERSION@.1.gz
+clang-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-tblgen-@LLVM_VERSION@.1.gz
+clang-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/scan-view-@LLVM_VERSION@.1.gz
+# Does not link otherwise
+clang-@LLVM_VERSION@: embedded-library usr/lib/llvm-@LLVM_VERSION@/bin/clang: libjsoncpp
diff --git a/debian/clang-X.Y.manpages.in b/debian/clang-X.Y.manpages.in
new file mode 100644
index 0000000..07c2661
--- /dev/null
+++ b/debian/clang-X.Y.manpages.in
@@ -0,0 +1,12 @@
+clang/docs/_build/man/clang-@LLVM_VERSION@.1
+clang/tools/scan-build/man/scan-build-@LLVM_VERSION@.1
+debian/man/clang-check-@LLVM_VERSION@.1
+debian/man/clang-rename-@LLVM_VERSION@.1
+debian/man/clang-query-@LLVM_VERSION@.1
+debian/man/clang-apply-replacements-@LLVM_VERSION@.1
+debian/man/sancov-@LLVM_VERSION@.1
+debian/man/scan-view-@LLVM_VERSION@.1
+debian/man/modularize-@LLVM_VERSION@.1
+debian/man/find-all-symbols-@LLVM_VERSION@.1
+debian/man/clang-include-fixer-@LLVM_VERSION@.1
+debian/man/clang-reorder-fields-@LLVM_VERSION@.1
diff --git a/debian/clang-format-X.Y.install.in b/debian/clang-format-X.Y.install.in
new file mode 100644
index 0000000..d3a18a5
--- /dev/null
+++ b/debian/clang-format-X.Y.install.in
@@ -0,0 +1,10 @@
+clang/tools/clang-format/clang-format-@LLVM_VERSION@.py usr/share/vim/addons/syntax/
+clang/tools/clang-format/clang-format-diff-@LLVM_VERSION@ /usr/bin/
+usr/bin/clang-format-@LLVM_VERSION@
+usr/bin/git-clang-format-@LLVM_VERSION@
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-format
+usr/lib/llvm-@LLVM_VERSION@/bin/git-clang-format
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-format-diff.py usr/share/clang/clang-format-@LLVM_VERSION@/
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-format.py usr/share/clang/clang-format-@LLVM_VERSION@/
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-format.el usr/share/emacs/site-lisp/clang-format-@LLVM_VERSION@/
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-format-sublime.py usr/share/clang/clang-format-@LLVM_VERSION@/
diff --git a/debian/clang-format-X.Y.lintian-overrides.in b/debian/clang-format-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..aa78679
--- /dev/null
+++ b/debian/clang-format-X.Y.lintian-overrides.in
@@ -0,0 +1,4 @@
+# I know but well...
+clang-format-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-format-diff-@LLVM_VERSION@.1.gz
+clang-format-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-format-@LLVM_VERSION@.1.gz
+
diff --git a/debian/clang-format-X.Y.manpages.in b/debian/clang-format-X.Y.manpages.in
new file mode 100644
index 0000000..db4dd8f
--- /dev/null
+++ b/debian/clang-format-X.Y.manpages.in
@@ -0,0 +1,3 @@
+debian/man/clang-format-diff-@LLVM_VERSION@.1
+debian/man/clang-format-@LLVM_VERSION@.1
+
diff --git a/debian/clang-tidy-X.Y.install.in b/debian/clang-tidy-X.Y.install.in
new file mode 100644
index 0000000..ef992c5
--- /dev/null
+++ b/debian/clang-tidy-X.Y.install.in
@@ -0,0 +1,5 @@
+usr/lib/llvm-@LLVM_VERSION@/bin/clang-tidy
+usr/lib/llvm-@LLVM_VERSION@/share/clang/run-clang-tidy.py
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-tidy-diff.py
+
+usr/bin/clang-tidy-@LLVM_VERSION@
diff --git a/debian/clang-tidy-X.Y.links.in b/debian/clang-tidy-X.Y.links.in
new file mode 100644
index 0000000..5d959f4
--- /dev/null
+++ b/debian/clang-tidy-X.Y.links.in
@@ -0,0 +1,3 @@
+usr/lib/llvm-@LLVM_VERSION@/share/clang/run-clang-tidy.py usr/bin/run-clang-tidy-@LLVM_VERSION@.py
+usr/lib/llvm-@LLVM_VERSION@/share/clang/clang-tidy-diff.py usr/bin/clang-tidy-diff-@LLVM_VERSION@.py
+
diff --git a/debian/clang-tidy-X.Y.lintian-overrides.in b/debian/clang-tidy-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..c915da6
--- /dev/null
+++ b/debian/clang-tidy-X.Y.lintian-overrides.in
@@ -0,0 +1,3 @@
+# I know but well...
+clang-tidy-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/clang-tidy-@LLVM_VERSION@.1.gz
+
diff --git a/debian/clang-tidy-X.Y.manpages.in b/debian/clang-tidy-X.Y.manpages.in
new file mode 100644
index 0000000..fa4a814
--- /dev/null
+++ b/debian/clang-tidy-X.Y.manpages.in
@@ -0,0 +1 @@
+debian/man/clang-tidy-@LLVM_VERSION@.1
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..ec63514
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+9
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..cedafa6
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,538 @@
+Source: llvm-toolchain-5.0
+Section: devel
+Priority: optional
+Maintainer: LLVM Packaging Team <pkg-llvm-team@lists.alioth.debian.org>
+Uploaders: Sylvestre Ledru <sylvestre@debian.org>
+Build-Depends: debhelper (>= 9.0), flex, bison, dejagnu, tcl, expect,
+ cmake, perl, libtool, chrpath, texinfo, sharutils, libffi-dev (>= 3.0.9),
+ lsb-release, patchutils, diffstat, xz-utils, python-dev,
+ libedit-dev, libncurses5-dev, swig, python-six, python-sphinx, binutils-dev,
+ libjsoncpp-dev, pkg-config,
+ lcov, procps, help2man, zlib1g-dev,
+ g++-multilib [amd64 i386 kfreebsd-amd64 mips mips64 mips64el mipsel powerpc ppc64 s390 s390x sparc sparc64 x32],
+# ocaml-nox [amd64 arm64 armel armhf i386],
+# ocaml-findlib [amd64 arm64 armel armhf i386],
+# libctypes-ocaml-dev [amd64 arm64 armel armhf i386],
+# dh-ocaml [amd64 arm64 armel armhf i386],
+Build-Conflicts: oprofile, ocaml, libllvm-3.4-ocaml-dev, libllvm-3.5-ocaml-dev,
+ libllvm-3.8-ocaml-dev, libllvm-3.9-ocaml-dev
+Standards-Version: 4.1.0
+Homepage: http://www.llvm.org/
+Vcs-Svn: svn://anonscm.debian.org/svn/pkg-llvm/llvm-toolchain/branches/5.0/
+Vcs-Browser: https://svn.debian.org/viewsvn/pkg-llvm/llvm-toolchain/branches/5.0/
+
+# ------------- clang -------------
+
+Package: clang-5.0
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs},
+ ${dep:devlibs-objc}, libclang-common-5.0-dev (= ${binary:Version}),
+ libclang1-5.0 (= ${binary:Version}), libc6-dev, binutils
+Provides: c-compiler, objc-compiler, c++-compiler
+Recommends: llvm-5.0-dev, python
+Suggests: gnustep, gnustep-devel, clang-5.0-doc, libomp-dev
+Replaces: clang-3.1, clang-3.2, clang-3.3,
+ clang-3.4 (<< 1:3.4.2-7~exp1), clang-3.5 (<< 1:3.5~+rc1-3~exp1), compiler-rt,
+ clang-include-fixer-5.0
+Breaks: clang-3.1, clang-3.2, clang-3.3,
+ clang-3.4 (<< 1:3.4.2-7~exp1), clang-3.5 (<< 1:3.5~+rc1-3~exp1), compiler-rt,
+ clang-include-fixer-5.0
+Description: C, C++ and Objective-C compiler (LLVM based)
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+
+Package: clang-format-5.0
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, python,
+ libllvm5.0 (= ${binary:Version})
+Replaces: clang-format-3.3
+Breaks: clang-format-3.3
+Description: Tool to format C/C++/Obj-C code
+ Clang-format is both a library and a stand-alone tool with the goal of
+ automatically reformatting C++ sources files according to configurable
+ style guides. To do so, clang-format uses Clang's Lexer to transform an
+ input file into a token stream and then changes all the whitespace around
+ those tokens. The goal is for clang-format to both serve both as a user
+ tool (ideally with powerful IDE integrations) and part of other
+ refactoring tools, e.g. to do a reformatting of all the lines changed
+ during a renaming.
+ .
+ This package also provides vim and emacs plugins.
+
+Package: clang-tidy-5.0
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, python,
+ libllvm5.0 (= ${binary:Version})
+Replaces: clang-modernize-5.0, clang-5.0 (<< 1:5.0~svn250696-1)
+Breaks: clang-modernize-5.0, clang-5.0 (<< 1:5.0~svn250696-1)
+Description: clang-based C++ linter tool
+ Provide an extensible framework for diagnosing and fixing typical programming
+ errors, like style violations, interface misuse, or bugs that can be deduced
+ via static analysis. clang-tidy is modular and provides a convenient interface
+ for writing new checks.
+
+Package: clang-5.0-doc
+Architecture: all
+Section: doc
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: C, C++ and Objective-C compiler (LLVM based) - Documentation
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This package contains the documentation.
+
+Package: libclang1-5.0
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
+Description: C interface to the clang library
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This package contains the clang library.
+ .
+ The C Interface to Clang provides a relatively small API that exposes
+ facilities for parsing source code into an abstract syntax tree (AST),
+ loading already-parsed ASTs, traversing the AST, associating physical source
+ locations with elements within the AST, and other facilities that support
+ Clang-based development tools.
+
+Package: libclang1-5.0-dbg
+Architecture: any
+Multi-Arch: same
+Section: debug
+Priority: extra
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs}, libclang1-5.0 (= ${binary:Version})
+Description: clang library
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This package contains the debugging symbols.
+
+Package: libclang-5.0-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, ${dep:devlibs},
+ ${dep:devlibs-objc}, libclang1-5.0 (= ${binary:Version}),
+ libclang-common-5.0-dev (= ${binary:Version})
+Description: clang library - Development package
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This package contains the clang headers to develop extensions over
+ libclang1-5.0.
+
+Package: libclang-common-5.0-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm5.0 (= ${binary:Version})
+Description: clang library - Common development package
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This package contains the clang generic headers and some libraries
+ (profiling, etc).
+
+
+Package: libfuzzer-5.0-dev
+Architecture: linux-any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, clang-5.0 (= ${binary:Version})
+Description: Library for coverage-guided fuzz testing
+ LibFuzzer is a library for in-process, coverage-guided, evolutionary fuzzing
+ of other libraries.
+ .
+ LibFuzzer is similar in concept to American Fuzzy Lop (AFL), but it performs
+ all of its fuzzing inside a single process. This in-process fuzzing can be
+ more restrictive and fragile, but is potentially much faster as there is no
+ overhead for process start-up.
+ .
+ The fuzzer is linked with the library under test, and feeds fuzzed inputs to
+ the library via a specific fuzzing entrypoint (aka 'target function'); the
+ fuzzer then tracks which areas of the code are reached, and generates mutations
+ on the corpus of input data in order to maximize the code coverage. The code
+ coverage information for libFuzzer is provided by LLVM's SanitizerCoverage
+ instrumentation.
+
+
+Package: python-clang-5.0
+Section: python
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, python
+Replaces: python-clang-3.3, python-clang-3.4, python-clang-3.5, python-clang-3.6, python-clang-3.7, python-clang-3.8, python-clang-3.9, python-clang-x.y
+Breaks: python-clang-3.3, python-clang-3.4, python-clang-3.5, python-clang-3.6, python-clang-3.7, python-clang-3.8, python-clang-3.9
+Conflicts: python-clang-x.y
+Provides: python-clang-x.y
+Description: Clang Python Bindings
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This binding package provides access to the Clang compiler and libraries.
+
+
+Package: clang-5.0-examples
+Architecture: any
+Section: doc
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Clang examples
+ Clang project is a C, C++, Objective C and Objective C++ front-end
+ for the LLVM compiler. Its goal is to offer a replacement to the GNU Compiler
+ Collection (GCC).
+ .
+ Clang fully implements all published ISO C++ standards including C++11, as
+ well as the upcoming C++14 standard, and some parts of the fledgling C++1z
+ standard, and is considered a production-quality C++ compiler.
+ .
+ This package contains the clang examples.
+
+# ------------- LLVM -------------
+
+Package: libllvm5.0
+Architecture: any
+Section: libs
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
+Breaks: libllvm3.9v4
+Replaces: libllvm3.9v4
+Description: Modular compiler and toolchain technologies, runtime library
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ This package contains the LLVM runtime library.
+
+Package: libllvm5.0-dbg
+Architecture: any
+Section: debug
+Priority: extra
+Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm5.0 (= ${binary:Version})
+Pre-Depends: ${misc:Pre-Depends}
+Multi-Arch: same
+Breaks: libllvm3.9v4-dbg
+Replaces: libllvm3.9v4-dbg
+Description: Modular compiler and toolchain technologies, debugging libraries
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ This package contains the LLVM runtime library debug symbols.
+
+Package: llvm-5.0
+Architecture: any
+Suggests: llvm-5.0-doc
+Depends: llvm-5.0-runtime (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
+Recommends: llvm-5.0-dev
+Description: Modular compiler and toolchain technologies
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ LLVM uses a single, language-independent virtual instruction set both
+ as an offline code representation (to communicate code between
+ compiler phases and to run-time systems) and as the compiler internal
+ representation (to analyze and transform programs). This persistent
+ code representation allows a common set of sophisticated compiler
+ techniques to be applied at compile-time, link-time, install-time,
+ run-time, or "idle-time" (between program runs).
+ .
+ The strengths of the LLVM infrastructure are its extremely
+ simple design (which makes it easy to understand and use),
+ source-language independence, powerful mid-level optimizer, automated
+ compiler debugging support, extensibility, and its stability and
+ reliability. LLVM is currently being used to host a wide variety of
+ academic research projects and commercial projects. LLVM includes C
+ and C++ front-ends, a front-end for a Forth-like language (Stacker),
+ a young scheme front-end, and Java support is in development. LLVM can
+ generate code for X86, SparcV9, PowerPC or many other architectures.
+
+Package: llvm-5.0-runtime
+Architecture: any
+Depends: binfmt-support, ${shlibs:Depends}, ${misc:Depends}
+Conflicts: llvm (<< 2.7-1)
+Replaces: llvm (<< 2.7-1)
+Description: Modular compiler and toolchain technologies, IR interpreter
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ LLVM uses a single, language-independent virtual instruction set both
+ as an offline code representation (to communicate code between
+ compiler phases and to run-time systems) and as the compiler internal
+ representation (to analyze and transform programs). This persistent
+ code representation allows a common set of sophisticated compiler
+ techniques to be applied at compile-time, link-time, install-time,
+ run-time, or "idle-time" (between program runs).
+ .
+ This package provides the minimal required to execute programs in LLVM
+ format.
+
+Package: llvm-5.0-dev
+Architecture: any
+Depends: ${shlibs:Depends}, libffi-dev (>= 3.0.9), ${misc:Depends},
+ llvm-5.0 (= ${binary:Version}), libllvm5.0 (= ${binary:Version}), libtinfo-dev
+Replaces: llvm (<< 2.2-3)
+Description: Modular compiler and toolchain technologies, libraries and headers
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ LLVM uses a single, language-independent virtual instruction set both
+ as an offline code representation (to communicate code between
+ compiler phases and to run-time systems) and as the compiler internal
+ representation (to analyze and transform programs). This persistent
+ code representation allows a common set of sophisticated compiler
+ techniques to be applied at compile-time, link-time, install-time,
+ run-time, or "idle-time" (between program runs).
+ .
+ This package provides the libraries and headers to develop applications
+ using llvm.
+
+Package: llvm-5.0-tools
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, python,
+ llvm-5.0-dev (= ${binary:Version})
+Description: Modular compiler and toolchain technologies, tools
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ LLVM uses a single, language-independent virtual instruction set both
+ as an offline code representation (to communicate code between
+ compiler phases and to run-time systems) and as the compiler internal
+ representation (to analyze and transform programs). This persistent
+ code representation allows a common set of sophisticated compiler
+ techniques to be applied at compile-time, link-time, install-time,
+ run-time, or "idle-time" (between program runs).
+ .
+ This package provides tools for testing.
+
+# Package: libllvm-5.0-ocaml-dev
+# Section: ocaml
+# Architecture: amd64 arm64 armel armhf i386
+# Suggests: llvm-5.0-doc
+# Depends: ${shlibs:Depends}, ${misc:Depends}, ${ocaml:Depends}, llvm-5.0-dev (= ${binary:Version})
+# Replaces: libllvm-x.y-ocaml-dev
+# Conflicts: libllvm-x.y-ocaml-dev
+# Provides: ${ocaml:Provides}, libllvm-x.y-ocaml-dev
+# Description: Modular compiler and toolchain technologies, OCaml bindings
+# LLVM is a collection of libraries and tools that make it easy to build
+# compilers, optimizers, just-in-time code generators, and many other
+# compiler-related programs.
+# .
+# LLVM uses a single, language-independent virtual instruction set both
+# as an offline code representation (to communicate code between
+# compiler phases and to run-time systems) and as the compiler internal
+# representation (to analyze and transform programs). This persistent
+# code representation allows a common set of sophisticated compiler
+# techniques to be applied at compile-time, link-time, install-time,
+# run-time, or "idle-time" (between program runs).
+# .
+# This package provides the OCaml bindings to develop applications using llvm.
+
+Package: llvm-5.0-doc
+Section: doc
+Architecture: all
+Depends: ${misc:Depends}, libjs-jquery, libjs-underscore
+Description: Modular compiler and toolchain technologies, documentation
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ LLVM uses a single, language-independent virtual instruction set both
+ as an offline code representation (to communicate code between
+ compiler phases and to run-time systems) and as the compiler internal
+ representation (to analyze and transform programs). This persistent
+ code representation allows a common set of sophisticated compiler
+ techniques to be applied at compile-time, link-time, install-time,
+ run-time, or "idle-time" (between program runs).
+ .
+ This package contains all documentation (extensive).
+
+Package: llvm-5.0-examples
+Section: doc
+Architecture: all
+Depends: ${misc:Depends}, llvm-5.0-dev (>= ${source:Version}), llvm-5.0-dev (<< ${source:Version}+c~)
+Description: Modular compiler and toolchain technologies, examples
+ LLVM is a collection of libraries and tools that make it easy to build
+ compilers, optimizers, just-in-time code generators, and many other
+ compiler-related programs.
+ .
+ LLVM uses a single, language-independent virtual instruction set both
+ as an offline code representation (to communicate code between
+ compiler phases and to run-time systems) and as the compiler internal
+ representation (to analyze and transform programs). This persistent
+ code representation allows a common set of sophisticated compiler
+ techniques to be applied at compile-time, link-time, install-time,
+ run-time, or "idle-time" (between program runs).
+ .
+ This package contains examples for using LLVM, both in developing
+ extensions to LLVM and in using it to compile code.
+
+
+# ------------- lld -------------
+
+Package: lld-5.0
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 mips mipsel
+# ia64 mips mipsel hurd powerpc ppc64el have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm5.0 (= ${binary:Version}), llvm-5.0-dev
+Pre-Depends: ${misc:Pre-Depends}
+Description: LLVM-based linker
+ LLD is a new, high-performance linker. It is built as a set of reusable
+ components which highly leverage existing libraries in the larger LLVM
+ Project.
+
+Package: liblld-5.0
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 mips mipsel
+# ia64 mips mipsel hurd powerpc ppc64el have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm5.0 (= ${binary:Version})
+Pre-Depends: ${misc:Pre-Depends}
+Section: libs
+Description: LLVM-based linker, library
+ LLD is a new, high-performance linker. It is built as a set of reusable
+ components which highly leverage existing libraries in the larger LLVM
+ Project.
+ .
+ This package contains the LLD runtime library.
+
+Package: liblld-5.0-dbg
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc hppa m68k powerpcspe ppc64 sh4 sparc64 x32 mips mipsel
+# ia64 mips mipsel hurd ppc64el alpha s390x powerpc have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, liblld-5.0 (= ${binary:Version})
+Pre-Depends: ${misc:Pre-Depends}
+Section: debug
+Priority: extra
+Description: LLVM-based linker, debugging libraries
+ LLD is a new, high-performance linker. It is built as a set of reusable
+ components which highly leverage existing libraries in the larger LLVM
+ Project.
+ .
+ This package contains the LLD runtime library debug symbols.
+
+
+Package: liblld-5.0-dev
+Section: libdevel
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe ppc64 sh4 sparc64 x32 mips mipsel
+# ia64 mips mipsel hurd powerpc ppc64el have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, lld-5.0 (= ${binary:Version})
+Pre-Depends: ${misc:Pre-Depends}
+Description: LLVM-based linker, header files
+ LLD is a new, high-performance linker. It is built as a set of reusable
+ components which highly leverage existing libraries in the larger LLVM
+ Project.
+ .
+ This package provides the header files to build extension over lld.
+
+
+# ------------- lldb -------------
+
+Package: lldb-5.0
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe sh4 x32 mips mipsel arm64
+# ia64 mips mipsel hurd powerpc ppc64 ppc64el sparc64 have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm5.0 (= ${binary:Version}), llvm-5.0-dev,
+ python-lldb-5.0
+Conflicts: lldb-3.4, lldb-3.5
+Pre-Depends: ${misc:Pre-Depends}
+Description: Next generation, high-performance debugger
+ LLDB is a next generation, high-performance debugger. It is built as a set of
+ reusable components which highly leverage existing libraries in the larger LLVM
+ Project, such as the Clang expression parser and LLVM disassembler.
+
+Package: liblldb-5.0
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe sh4 x32 mips mipsel arm64
+# ia64 mips mipsel hurd powerpc ppc64 ppc64el sparc64 have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, libllvm5.0 (= ${binary:Version})
+Pre-Depends: ${misc:Pre-Depends}
+Section: libs
+Replaces: lldb-5.0 (<= 1:5.0~svn215195-2)
+Breaks: lldb-5.0 (<< 1:5.0~svn215195-2)
+Description: Next generation, high-performance debugger, library
+ LLDB is a next generation, high-performance debugger. It is built as a set of
+ reusable components which highly leverage existing libraries in the larger LLVM
+ Project, such as the Clang expression parser and LLVM disassembler.
+ .
+ This package contains the LLDB runtime library.
+
+Package: liblldb-5.0-dbg
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc hppa m68k powerpcspe sh4 x32 mips mipsel arm64
+# ia64 mips mipsel hurd ppc64el alpha s390x sparc64 powerpc ppc64 have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, liblldb-5.0 (= ${binary:Version})
+Pre-Depends: ${misc:Pre-Depends}
+Section: debug
+Priority: extra
+Description: Next generation, high-performance debugger, debugging libraries
+ LLDB is a next generation, high-performance debugger. It is built as a set of
+ reusable components which highly leverage existing libraries in the larger LLVM
+ Project, such as the Clang expression parser and LLVM disassembler.
+ .
+ This package contains the LLDB runtime library debug symbols.
+
+
+Package: python-lldb-5.0
+Section: python
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc hppa m68k powerpcspe sh4 x32 mips mipsel arm64
+# ia64 mips mipsel hurd ppc64 ppc64el alpha s390x powerpc sparc64 have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, liblldb-5.0-dev, python, python-six
+Conflicts: python-lldb-3.4, python-lldb-3.5, python-lldb-3.6, python-lldb-3.7, python-lldb-3.8,
+ python-lldb-3.9, python-lldb-x.y
+Replaces: python-lldb-x.y
+Provides: python-lldb-x.y
+Pre-Depends: ${misc:Pre-Depends}
+Description: Next generation, high-performance debugger, python lib
+ LLDB is a next generation, high-performance debugger. It is built as a set of
+ reusable components which highly leverage existing libraries in the larger LLVM
+ Project, such as the Clang expression parser and LLVM disassembler.
+ .
+ This binding package provides access to lldb.
+
+
+Package: liblldb-5.0-dev
+Section: libdevel
+Architecture: amd64 armel armhf i386 kfreebsd-amd64 kfreebsd-i386 s390 sparc alpha hppa m68k powerpcspe sh4 x32 mips mipsel arm64
+# ia64 mips mipsel hurd powerpc ppc64 ppc64el sparc64 have been removed
+Depends: ${shlibs:Depends}, ${misc:Depends}, lldb-5.0 (= ${binary:Version})
+Replaces: lldb-5.0-dev (<= 1:5.0~svn215195-2)
+Breaks: lldb-5.0-dev (<< 1:5.0~svn215195-2)
+Pre-Depends: ${misc:Pre-Depends}
+Description: Next generation, high-performance debugger, header files
+ LLDB is a next generation, high-performance debugger. It is built as a set of
+ reusable components which highly leverage existing libraries in the larger LLVM
+ Project, such as the Clang expression parser and LLVM disassembler.
+ .
+ This package provides the header files to build extension over lldb.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..a50dd55
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,428 @@
+Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: LLVM/Clang
+Source: http://llvm.org/releases/download.html
+
+Files: *
+Copyright: 2003-2007 University of Illinois at Urbana-Champaign.
+License: U-OF-I-BSD-LIKE
+
+Files: */install-sh
+Copyright: 1994 X Consortium
+License: LLVM
+ This script is licensed under the LLVM license, with the following
+ additional copyrights and restrictions:
+ .
+ Copyright 1991 by the Massachusetts Institute of Technology
+ .
+ Permission to use, copy, modify, distribute, and sell this software and its
+ documentation for any purpose is hereby granted without fee, provided that
+ the above copyright notice appear in all copies and that both that
+ copyright notice and this permission notice appear in supporting
+ documentation, and that the name of M.I.T. not be used in advertising or
+ publicity pertaining to distribution of the software without specific,
+ written prior permission. M.I.T. makes no representations about the
+ suitability of this software for any purpose. It is provided "as is"
+ without express or implied warranty.
+ .
+ ==============================================================================
+ LLVM Release License
+ ==============================================================================
+ University of Illinois/NCSA
+ Open Source License
+ .
+ Copyright (c) 2003-2013 University of Illinois at Urbana-Champaign.
+ All rights reserved.
+ .
+ Developed by:
+ .
+ LLVM Team
+ .
+ University of Illinois at Urbana-Champaign
+ .
+ http://llvm.org
+ .
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
+ this software and associated documentation files (the "Software"), to deal with
+ the Software without restriction, including without limitation the rights to
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+ of the Software, and to permit persons to whom the Software is furnished to do
+ so, subject to the following conditions:
+ .
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+ .
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+ .
+ * Neither the names of the LLVM Team, University of Illinois at
+ Urbana-Champaign, nor the names of its contributors may be used to
+ endorse or promote products derived from this Software without specific
+ prior written permission.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+ SOFTWARE.
+
+Files: clang/lib/Headers/*
+Copyright: 2003-2007 University of Illinois at Urbana-Champaign
+License: Expat
+
+Files: clang/lib/Headers/iso646.h
+Copyright: 2008 Eli Friedman
+License: Expat
+
+Files: clang/lib/Headers/limits.h
+Copyright: 2009 Chris Lattner
+License: Expat
+
+Files: clang/lib/Headers/stdarg.h
+Copyright: 2008 Eli Friedman
+License: Expat
+
+Files: clang/lib/Headers/stdbool.h
+Copyright: 2008 Eli Friedman
+License: Expat
+
+Files: clang/lib/Headers/stddef.h
+Copyright: 2008 Eli Friedman
+License: Expat
+
+Files: clang/lib/Headers/stdint.h
+Copyright: 2009 Chris Lattner
+License: Expat
+
+Files: clang/lib/Headers/tgmath.h
+Copyright: 2009 Howard Hinnant
+License: Expat
+
+Files: compiler-rt/*
+Copyright: 2009-2013 Craig van Vliet
+ 2009-2013 Edward O'Callaghan
+ 2009-2013 Howard Hinnant
+License: U-OF-I-BSD-LIKE or MIT
+
+Files: compiler-rt/lib/BlocksRuntime/Block.h
+Copyright: 2008-2010 Apple, Inc.
+License: MIT
+
+Files: compiler-rt/lib/BlocksRuntime/Block_private.h
+Copyright: 2008-2010 Apple, Inc.
+License: MIT
+
+Files: compiler-rt/lib/BlocksRuntime/data.c
+Copyright: 2008-2010 Apple, Inc.
+License: MIT
+
+Files: compiler-rt/lib/BlocksRuntime/runtime.c
+Copyright: 2008-2010 Apple, Inc.
+License: MIT
+
+Files: include/llvm/Support/*
+Copyright: 2003-2013 University of Illinois at Urbana-Champaign.
+ Copyright (C) 2004 eXtensible Systems, Inc.
+License: U-OF-I-BSD-LIKE
+
+Files: lib/Support/reg*
+Copyright: 1992, 1993, 1994 Henry Spencer
+ 1992, 1993, 1994 The Regents of the University of California
+License: BSD-3-clause
+
+Files: lib/Target/ARM/*
+Copyright: ARM Limited
+License: ARM
+ ARM Limited
+ .
+ Software Grant License Agreement ("Agreement")
+ .
+ Except for the license granted herein to you, ARM Limited ("ARM") reserves all
+ right, title, and interest in and to the Software (defined below).
+ .
+ Definition
+ .
+ "Software" means the code and documentation as well as any original work of
+ authorship, including any modifications or additions to an existing work, that
+ is intentionally submitted by ARM to llvm.org (http://llvm.org) ("LLVM") for
+ inclusion in, or documentation of, any of the products owned or managed by LLVM
+ (the "Work"). For the purposes of this definition, "submitted" means any form of
+ electronic, verbal, or written communication sent to LLVM or its
+ representatives, including but not limited to communication on electronic
+ mailing lists, source code control systems, and issue tracking systems that are
+ managed by, or on behalf of, LLVM for the purpose of discussing and improving
+ the Work, but excluding communication that is conspicuously marked otherwise.
+ .
+ 1. Grant of Copyright License. Subject to the terms and conditions of this
+ Agreement, ARM hereby grants to you and to recipients of the Software
+ distributed by LLVM a perpetual, worldwide, non-exclusive, no-charge,
+ royalty-free, irrevocable copyright license to reproduce, prepare derivative
+ works of, publicly display, publicly perform, sublicense, and distribute the
+ Software and such derivative works.
+ .
+ 2. Grant of Patent License. Subject to the terms and conditions of this
+ Agreement, ARM hereby grants you and to recipients of the Software
+ distributed by LLVM a perpetual, worldwide, non-exclusive, no-charge,
+ royalty-free, irrevocable (except as stated in this section) patent license
+ to make, have made, use, offer to sell, sell, import, and otherwise transfer
+ the Work, where such license applies only to those patent claims licensable
+ by ARM that are necessarily infringed by ARM's Software alone or by
+ combination of the Software with the Work to which such Software was
+ submitted. If any entity institutes patent litigation against ARM or any
+ other entity (including a cross-claim or counterclaim in a lawsuit) alleging
+ that ARM's Software, or the Work to which ARM has contributed constitutes
+ direct or contributory patent infringement, then any patent licenses granted
+ to that entity under this Agreement for the Software or Work shall terminate
+ as of the date such litigation is filed.
+ .
+ Unless required by applicable law or agreed to in writing, the software is
+ provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+ either express or implied, including, without limitation, any warranties or
+ conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE.
+
+Files: lldb/*
+Copyright: 2010, 2012 Apple Inc.
+License: NCSA
+ University of Illinois/NCSA
+ Open Source License
+ .
+ Copyright (c) 2010 Apple Inc.
+ All rights reserved.
+ .
+ Developed by:
+ .
+ LLDB Team
+ .
+ http://lldb.llvm.org/
+ .
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
+ this software and associated documentation files (the "Software"), to deal with
+ the Software without restriction, including without limitation the rights to
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+ of the Software, and to permit persons to whom the Software is furnished to do
+ so, subject to the following conditions:
+ .
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+ .
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+ .
+ * Neither the names of the LLDB Team, copyright holders, nor the names of
+ its contributors may be used to endorse or promote products derived from
+ this Software without specific prior written permission.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+ SOFTWARE.
+
+Files: lldb/test/pexpect-2.4/*
+Copyright: 2008 Noah Spurrier
+License: Expat
+
+License: Expat
+ .
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included in all
+ copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
+ OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
+ USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Files: lldb/test/unittest2/*
+Copyright: 1999-2003 Steve Purcell
+ 2003-2010 Python Software Foundation
+License: Python
+ This module is free software, and you may redistribute it and/or modify
+ it under the same terms as Python itself, so long as this copyright message
+ and disclaimer are retained in their original form.
+ .
+ IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT,
+ SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF
+ THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+ DAMAGE.
+ .
+ THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS,
+ AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
+ SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+
+Files: polly/*
+Copyright: 2009-2013 Polly Team
+License: Polly
+ ==============================================================================
+ Polly Release License
+ ==============================================================================
+ University of Illinois/NCSA
+ Open Source License
+ .
+ Copyright (c) 2009-2013 Polly Team
+ All rights reserved.
+ .
+ Developed by:
+ .
+ Polly Team
+ .
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
+ this software and associated documentation files (the "Software"), to deal with
+ the Software without restriction, including without limitation the rights to
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+ of the Software, and to permit persons to whom the Software is furnished to do
+ so, subject to the following conditions:
+ .
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+ .
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+ .
+ * Neither the names of the Polly Team, copyright holders, nor the names of
+ its contributors may be used to endorse or promote products derived from
+ this Software without specific prior written permission.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+ SOFTWARE.
+
+Files: polly/lib/JSON/*
+Copyright: Polly Team
+License: public-domain
+ **FIXME**
+ polly/lib/JSON/LICENSE.txt claims that these files are in the public domain, but
+ the machine-readable copyright spec requires additional clarification.
+
+Files: polly/tools/GPURuntime/*
+Copyright: Polly Team
+License: U-OF-I-BSD-LIKE or MIT
+
+Files: test/YAMLParser/*
+Copyright: 2006 Kirill Simonov
+License: MIT
+
+Files: lldb/tools/debugserver/source/MacOSX/stack_logging.h
+Copyright: 1999-2007 Apple Inc.
+License: Apple
+ This file contains Original Code and/or Modifications of Original Code
+ as defined in and that are subject to the Apple Public Source License
+ Version 2.0 (the 'License'). You may not use this file except in
+ compliance with the License. Please obtain a copy of the License at
+ http://www.opensource.apple.com/apsl/ and read it before using this
+ file.
+ .
+ The Original Code and all software distributed under the License are
+ distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
+ EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
+ INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
+ Please see the License for the specific language governing rights and
+ limitations under the License.
+
+Files: utils/unittest/googletest/*
+Copyright: 2006-2008, Google Inc.
+License: BSD-3-Clause
+
+License: BSD-3-Clause
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+License: U-OF-I-BSD-LIKE
+ ==============================================================================
+ LLVM Release License
+ ==============================================================================
+ University of Illinois/NCSA
+ Open Source License
+ .
+ Copyright (c) 2003-2013 University of Illinois at Urbana-Champaign.
+ All rights reserved.
+ .
+ Developed by:
+ .
+ LLVM Team
+ .
+ University of Illinois at Urbana-Champaign
+ .
+ http://llvm.org
+ .
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
+ this software and associated documentation files (the "Software"), to deal with
+ the Software without restriction, including without limitation the rights to
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+ of the Software, and to permit persons to whom the Software is furnished to do
+ so, subject to the following conditions:
+ .
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+ .
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+ .
+ * Neither the names of the LLVM Team, University of Illinois at
+ Urbana-Champaign, nor the names of its contributors may be used to
+ endorse or promote products derived from this Software without specific
+ prior written permission.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+ SOFTWARE.
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ THE SOFTWARE.
diff --git a/debian/debian_path.h b/debian/debian_path.h
new file mode 100644
index 0000000..539636f
--- /dev/null
+++ b/debian/debian_path.h
@@ -0,0 +1,16 @@
+//===----------------------------------------------------------------------===//
+//
+// Debian paths declaration management
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+#ifndef DEBIAN_PATH_H
+#define DEBIAN_PATH_H
+
+// Provides the debian revision
+#define DEB_PATCHSETVERSION "@DEB_PATCHSETVERSION@"
+
+#endif
diff --git a/debian/libclang-X.Y-dev.install.in b/debian/libclang-X.Y-dev.install.in
new file mode 100644
index 0000000..79d9db7
--- /dev/null
+++ b/debian/libclang-X.Y-dev.install.in
@@ -0,0 +1,10 @@
+usr/lib/llvm-@LLVM_VERSION@/include/clang
+usr/lib/llvm-@LLVM_VERSION@/include/clang-c
+usr/lib/llvm-@LLVM_VERSION@/lib/libclang*a
+usr/lib/llvm-@LLVM_VERSION@/lib/libclang*so
+usr/lib/llvm-@LLVM_VERSION@/lib/libfindAllSymbols.a
+
+#usr/include/clang /usr/include/
+#usr/include/clang-c /usr/include/
+#usr/lib/libclang.so /usr/lib/
+#usr/lib/libclang*a /usr/lib/
diff --git a/debian/libclang-X.Y-dev.links.in b/debian/libclang-X.Y-dev.links.in
new file mode 100644
index 0000000..6f99d5b
--- /dev/null
+++ b/debian/libclang-X.Y-dev.links.in
@@ -0,0 +1,3 @@
+usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so
+usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libclang.so
+usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so
diff --git a/debian/libclang-common-X.Y-dev.install.in b/debian/libclang-common-X.Y-dev.install.in
new file mode 100644
index 0000000..59ed5df
--- /dev/null
+++ b/debian/libclang-common-X.Y-dev.install.in
@@ -0,0 +1,14 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/include
+
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/lib
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/*.txt
+usr/lib/llvm-@LLVM_VERSION@/lib/cmake/polly/*.cmake
+
+#usr/lib/clang/@LLVM_VERSION_FULL@/lib /usr/lib/clang/@LLVM_VERSION@/
+#usr/lib/clang/@LLVM_VERSION_FULL@/include/ /usr/include/clang/@LLVM_VERSION@/
+
+usr/lib/llvm-@LLVM_VERSION@/bin/yaml-bench
+
+usr/bin/yaml-bench-@LLVM_VERSION@
+
+
diff --git a/debian/libclang-common-X.Y-dev.links.in b/debian/libclang-common-X.Y-dev.links.in
new file mode 100644
index 0000000..717c6b2
--- /dev/null
+++ b/debian/libclang-common-X.Y-dev.links.in
@@ -0,0 +1,7 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/include usr/include/clang/@LLVM_VERSION@/include
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/include usr/lib/clang/@LLVM_VERSION@/include
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/lib usr/lib/clang/@LLVM_VERSION@/lib
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/include usr/include/clang/@LLVM_VERSION_FULL@/include
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/include usr/lib/clang/@LLVM_VERSION_FULL@/include
+usr/lib/llvm-@LLVM_VERSION@/lib/clang/@LLVM_VERSION_FULL@/lib usr/lib/clang/@LLVM_VERSION_FULL@/lib
+
diff --git a/debian/libclang1-X.Y.install.in b/debian/libclang1-X.Y.install.in
new file mode 100644
index 0000000..d44e84f
--- /dev/null
+++ b/debian/libclang1-X.Y.install.in
@@ -0,0 +1,2 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/
+usr/lib/llvm-@LLVM_VERSION@/lib/libclang.so.1
diff --git a/debian/libclang1-X.Y.links.in b/debian/libclang1-X.Y.links.in
new file mode 100644
index 0000000..3ea44c8
--- /dev/null
+++ b/debian/libclang1-X.Y.links.in
@@ -0,0 +1,3 @@
+# as upstream
+usr/lib/@DEB_HOST_MULTIARCH@/libclang-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so.1
+usr/lib/llvm-@LLVM_VERSION@/lib/libclang-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libclang.so.1
diff --git a/debian/libclang1-X.Y.lintian-overrides.in b/debian/libclang1-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..9fc47a7
--- /dev/null
+++ b/debian/libclang1-X.Y.lintian-overrides.in
@@ -0,0 +1,5 @@
+# I know and I am not planning to change that yet.
+libclang1-@LLVM_VERSION@: package-name-doesnt-match-sonames libclang1-@LLVM_VERSION@-1
+# Provided as transition
+libclang1-@LLVM_VERSION@: dev-pkg-without-shlib-symlink usr/lib/*/libclang-@LLVM_VERSION@.so.1 usr/lib/*/libclang.so
+libclang1-@LLVM_VERSION@: ldconfig-symlink-missing-for-shlib usr/lib/*/libclang-LLVM_VERSION@.so usr/lib/*/libclang-LLVM_VERSION@.so.1 libclang-LLVM_VERSION@.so
diff --git a/debian/libclang1-X.Y.symbols.in b/debian/libclang1-X.Y.symbols.in
new file mode 100644
index 0000000..88eded4
--- /dev/null
+++ b/debian/libclang1-X.Y.symbols.in
@@ -0,0 +1,357 @@
+libclang-@LLVM_VERSION@.so.1 libclang1-@LLVM_VERSION@ #MINVER#
+ (optional)LLVM_@LLVM_VERSION@@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_BlockCommandComment_getArgText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_BlockCommandComment_getCommandName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_BlockCommandComment_getNumArgs@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_BlockCommandComment_getParagraph@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXCursorSet_contains@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXCursorSet_insert@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXIndex_getGlobalOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXIndex_setGlobalOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXConstructor_isConvertingConstructor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXConstructor_isCopyConstructor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXConstructor_isDefaultConstructor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXConstructor_isMoveConstructor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXField_isMutable@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXMethod_isConst@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXMethod_isDefaulted@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXMethod_isPureVirtual@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXMethod_isStatic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CXXMethod_isVirtual@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Comment_getChild@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Comment_getKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Comment_getNumChildren@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Comment_isWhitespace@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompilationDatabase_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompilationDatabase_fromDirectory@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompilationDatabase_getAllCompileCommands@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompilationDatabase_getCompileCommands@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommand_getArg@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommand_getDirectory@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommand_getFilename@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommand_getMappedSourceContent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommand_getMappedSourcePath@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommand_getNumArgs@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommands_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommands_getCommand@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_CompileCommands_getSize@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_Evaluate@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getArgument@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getBriefCommentText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getCXXManglings@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getCommentRange@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getMangling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getModule@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getNumArguments@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getNumTemplateArguments@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getObjCDeclQualifiers@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getObjCPropertyAttributes@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getObjCSelectorIndex@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getOffsetOfField@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getParsedComment@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getRawCommentText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getReceiverType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getSpellingNameRange@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getStorageClass@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getTemplateArgumentKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getTemplateArgumentType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getTemplateArgumentUnsignedValue@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getTemplateArgumentValue@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_getTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_hasAttrs@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isAnonymous@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isBitField@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isDynamicCall@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isExternalSymbol@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_Cursor_isFunctionInlined@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isMacroBuiltin@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isMacroFunctionLike@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isNull@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isObjCOptional@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Cursor_isVariadic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_EnumDecl_isScoped@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_EvalResult_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_EvalResult_getAsDouble@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_EvalResult_getAsInt@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_EvalResult_getAsLongLong@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_EvalResult_getAsStr@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_EvalResult_getAsUnsigned@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_EvalResult_getKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_EvalResult_isUnsignedInt@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_File_isEqual@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_FullComment_getAsHTML@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_FullComment_getAsXML@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_HTMLStartTagComment_isSelfClosing@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_HTMLStartTag_getAttrName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_HTMLStartTag_getAttrValue@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_HTMLStartTag_getNumAttrs@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_HTMLTagComment_getAsString@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_HTMLTagComment_getTagName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_IndexAction_create@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_IndexAction_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_InlineCommandComment_getArgText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_InlineCommandComment_getCommandName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_InlineCommandComment_getNumArgs@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_InlineCommandComment_getRenderKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_InlineContentComment_hasTrailingNewline@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Location_isFromMainFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Location_isInSystemHeader@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ModuleMapDescriptor_create@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ModuleMapDescriptor_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ModuleMapDescriptor_setFrameworkModuleName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ModuleMapDescriptor_setUmbrellaHeader@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ModuleMapDescriptor_writeToBuffer@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_getASTFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_getFullName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_getName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_getNumTopLevelHeaders@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_getParent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_getTopLevelHeader@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Module_isSystem@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ParamCommandComment_getDirection@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ParamCommandComment_getParamIndex@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ParamCommandComment_getParamName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ParamCommandComment_isDirectionExplicit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_ParamCommandComment_isParamIndexValid@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Range_isNull@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_TParamCommandComment_getDepth@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_TParamCommandComment_getIndex@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_TParamCommandComment_getParamName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_TParamCommandComment_isParamPositionValid@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_TargetInfo_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_TargetInfo_getPointerWidth@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_TargetInfo_getTriple@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_TextComment_getText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getAlignOf@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getCXXRefQualifier@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getClassType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getNamedType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getNumTemplateArguments@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getObjCEncoding@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getOffsetOf@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getSizeOf@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_getTemplateArgumentAsType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_Type_isTransparentTagTypedef@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_Type_visitFields@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VerbatimBlockLineComment_getText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VerbatimLineComment_getText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VirtualFileOverlay_addFileMapping@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VirtualFileOverlay_create@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VirtualFileOverlay_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VirtualFileOverlay_setCaseSensitivity@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_VirtualFileOverlay_writeToBuffer@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_annotateTokens@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteAt@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteGetContainerKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteGetContainerUSR@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteGetContexts@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteGetDiagnostic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteGetNumDiagnostics@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_codeCompleteGetObjCSelector@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_constructUSR_ObjCCategory@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_constructUSR_ObjCClass@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_constructUSR_ObjCIvar@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_constructUSR_ObjCMethod@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_constructUSR_ObjCProperty@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_constructUSR_ObjCProtocol@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_createCXCursorSet@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_createIndex@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_createTranslationUnit2@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_createTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_createTranslationUnitFromSourceFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_defaultCodeCompleteOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_defaultDiagnosticDisplayOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_defaultEditingTranslationUnitOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_defaultReparseOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_defaultSaveOptions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeCXCursorSet@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeCXPlatformAvailability@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeCXTUResourceUsage@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeCodeCompleteResults@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeDiagnostic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeDiagnosticSet@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeIndex@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeOverriddenCursors@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeSourceRangeList@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeString@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeStringSet@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeTokens@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_disposeTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_enableStackTraces@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_equalCursors@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_equalLocations@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_equalRanges@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_equalTypes@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_executeOnThread@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_findIncludesInFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_findIncludesInFileWithBlock@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_findReferencesInFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_findReferencesInFileWithBlock@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_formatDiagnostic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_free@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getAddressSpace@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_getAllSkippedRanges@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_getArgType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getArrayElementType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getArraySize@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getBuildSessionTimestamp@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCString@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCXTUResourceUsage@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCXXAccessSpecifier@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCanonicalCursor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCanonicalType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getChildDiagnostics@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getClangVersion@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionAnnotation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionAvailability@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionBriefComment@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionChunkCompletionString@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionChunkKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionChunkText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionNumAnnotations@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionParent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCompletionPriority@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorAvailability@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorCompletionString@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorDefinition@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorDisplayName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorExceptionSpecificationType@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_getCursorExtent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorKindSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorLanguage@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorLexicalParent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorLinkage@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorPlatformAvailability@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorReferenceNameRange@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorReferenced@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorResultType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorSemanticParent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorUSR@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getCursorVisibility@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDeclObjCTypeEncoding@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDefinitionSpellingAndExtent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnostic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticCategory@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticCategoryName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticCategoryText@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticFixIt@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticInSet@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticNumFixIts@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticNumRanges@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticOption@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticRange@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticSetFromTU@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticSeverity@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getDiagnosticSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getElementType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getEnumConstantDeclUnsignedValue@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getEnumConstantDeclValue@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getEnumDeclIntegerType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getExceptionSpecificationType@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_getExpansionLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFieldDeclBitWidth@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFileLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFileName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFileTime@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFileUniqueID@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getFunctionTypeCallingConv@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getIBOutletCollectionType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getIncludedFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getInclusions@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getInstantiationLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getLocationForOffset@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getModuleForFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNullCursor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNullLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNullRange@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNumArgTypes@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNumCompletionChunks@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNumDiagnostics@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNumDiagnosticsInSet@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNumElements@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getNumOverloadedDecls@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getOverloadedDecl@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getOverriddenCursors@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getPointeeType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getPresumedLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getRange@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getRangeEnd@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getRangeStart@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getRemappings@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getRemappingsFromFileList@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getResultType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getSkippedRanges@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getSpecializedCursorTemplate@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getSpellingLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTUResourceUsageName@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTemplateCursorKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTokenExtent@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTokenKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTokenLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTokenSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTranslationUnitCursor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTranslationUnitSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTranslationUnitTargetInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn302377-1~
+ clang_getTypeDeclaration@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTypeKindSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTypeSpelling@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTypedefDeclUnderlyingType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_getTypedefName@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_hashCursor@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_indexLoc_getCXSourceLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_indexLoc_getFileLocation@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_indexSourceFile@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_indexSourceFileFullArgv@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_indexTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getCXXClassDeclInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getClientContainer@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getClientEntity@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getIBOutletCollectionAttrInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getObjCCategoryDeclInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getObjCContainerDeclInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getObjCInterfaceDeclInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getObjCPropertyDeclInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_getObjCProtocolRefListInfo@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_isEntityObjCContainerKind@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_setClientContainer@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_index_setClientEntity@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isAttribute@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isConstQualifiedType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isCursorDefinition@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isDeclaration@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isExpression@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isFileMultipleIncludeGuarded@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isFunctionTypeVariadic@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isInvalid@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isPODType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isPreprocessing@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isReference@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isRestrictQualifiedType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isStatement@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isUnexposed@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isVirtualBase@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_isVolatileQualifiedType@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_loadDiagnostics@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_parseTranslationUnit2@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_parseTranslationUnit2FullArgv@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_parseTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_remap_dispose@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_remap_getFilenames@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_remap_getNumFiles@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_reparseTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_saveTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_sortCodeCompletionResults@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_suspendTranslationUnit@LLVM_@LLVM_VERSION@ 1:5.0~+rc1~
+ clang_toggleCrashRecovery@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_tokenize@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_visitChildren@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
+ clang_visitChildrenWithBlock@LLVM_@LLVM_VERSION@ 1:5.0~svn298832-1~
diff --git a/debian/liblld-X.Y-dev.install.in b/debian/liblld-X.Y-dev.install.in
new file mode 100644
index 0000000..b1446f0
--- /dev/null
+++ b/debian/liblld-X.Y-dev.install.in
@@ -0,0 +1,2 @@
+/usr/lib/llvm-@LLVM_VERSION@/include/lld
+
diff --git a/debian/liblld-X.Y.install.in b/debian/liblld-X.Y.install.in
new file mode 100644
index 0000000..9e815c2
--- /dev/null
+++ b/debian/liblld-X.Y.install.in
@@ -0,0 +1,9 @@
+#usr/lib/llvm-@LLVM_VERSION@/lib/liblld-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldConfig.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldReaderWriter.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldDriver.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldYAML.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldELF.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldCore.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldMachO.a
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldCOFF.a
diff --git a/debian/liblld-X.Y.links.in b/debian/liblld-X.Y.links.in
new file mode 100644
index 0000000..0005e49
--- /dev/null
+++ b/debian/liblld-X.Y.links.in
@@ -0,0 +1,4 @@
+#usr/lib/@DEB_HOST_MULTIARCH@/liblld-@LLVM_VERSION@.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblld-@LLVM_VERSION@.so
+#usr/lib/@DEB_HOST_MULTIARCH@/liblld-@LLVM_VERSION@.so usr/lib/python2.7/dist-packages/lld-@LLVM_VERSION@/_lld.so
+#usr/lib/@DEB_HOST_MULTIARCH@/liblld-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/liblld.so.1
+
diff --git a/debian/liblldb-X.Y-dev.install.in b/debian/liblldb-X.Y-dev.install.in
new file mode 100644
index 0000000..d6dd2e1
--- /dev/null
+++ b/debian/liblldb-X.Y-dev.install.in
@@ -0,0 +1,3 @@
+/usr/lib/llvm-@LLVM_VERSION@/include/lldb
+/usr/lib/llvm-@LLVM_VERSION@/lib/liblldb*a
+/usr/lib/llvm-@LLVM_VERSION@/lib/liblldb*so
diff --git a/debian/liblldb-X.Y-dev.links.in b/debian/liblldb-X.Y-dev.links.in
new file mode 100644
index 0000000..3c6aef9
--- /dev/null
+++ b/debian/liblldb-X.Y-dev.links.in
@@ -0,0 +1,3 @@
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/liblldb.so
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/liblldb-@LLVM_VERSION@.so
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/liblldb-@LLVM_VERSION@.so.1
diff --git a/debian/liblldb-X.Y.install.in b/debian/liblldb-X.Y.install.in
new file mode 100644
index 0000000..1ef1df7
--- /dev/null
+++ b/debian/liblldb-X.Y.install.in
@@ -0,0 +1,5 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/liblldb-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/
+usr/lib/llvm-@LLVM_VERSION@/lib/python2.7/site-packages/readline.so
+
+usr/bin/liblldb-intel-mpxtable.so-@LLVM_VERSION@
+usr/lib/llvm-@LLVM_VERSION@/bin/liblldb-intel-mpxtable.so
diff --git a/debian/liblldb-X.Y.links.in b/debian/liblldb-X.Y.links.in
new file mode 100644
index 0000000..ae73a19
--- /dev/null
+++ b/debian/liblldb-X.Y.links.in
@@ -0,0 +1,2 @@
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/liblldb.so.1
diff --git a/debian/liblldb-X.Y.lintian-overrides.in b/debian/liblldb-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..180aec3
--- /dev/null
+++ b/debian/liblldb-X.Y.lintian-overrides.in
@@ -0,0 +1,5 @@
+# That is normal. The lib is not (yet?) shipped as a new package
+liblldb-@LLVM_VERSION@: package-name-doesnt-match-sonames liblldb-@LLVM_VERSION@-1
+# For now, override this warning. We might create a -dev at some point
+liblldb-@LLVM_VERSION@: non-dev-pkg-with-shlib-symlink usr/lib/*/liblldb.so.1 usr/lib/*/liblldb.so
+liblldb-@LLVM_VERSION@: non-dev-pkg-with-shlib-symlink usr/lib/*/liblldb-@LLVM_VERSION@.so.1 usr/lib/*/liblldb-@LLVM_VERSION@.so
diff --git a/debian/libllvm-X.Y-ocaml-dev.META.in b/debian/libllvm-X.Y-ocaml-dev.META.in
new file mode 100644
index 0000000..366820d
--- /dev/null
+++ b/debian/libllvm-X.Y-ocaml-dev.META.in
@@ -0,0 +1,63 @@
+description = "Low Level Virtual Machine bindings"
+version = "@LLVM_VERSION@"
+
+directory = "+llvm-@LLVM_VERSION@"
+
+archive(byte) = "llvm.cma"
+archive(native) = "llvm.cmxa"
+linkopts = "-cclib -lstdc++ -cclib -lllvm"
+
+package "executionengine"
+(
+ requires = "llvm-@LLVM_VERSION@"
+ version = "@LLVM_VERSION@"
+ archive(native) = "llvm_executionengine.cmxa"
+ archive(byte) = "llvm_executionengine.cma"
+ linkopts = "-cclib -lllvm_executionengine"
+)
+
+package "target"
+(
+ requires = "llvm-@LLVM_VERSION@"
+ version = "@LLVM_VERSION@"
+ archive(native) = "llvm_target.cmxa"
+ archive(byte) = "llvm_target.cma"
+ linkopts = "-cclib -lllvm_target"
+)
+
+package "scalar_opts"
+(
+ requires = "llvm-@LLVM_VERSION@ llvm-@LLVM_VERSION@.target"
+ version = "@LLVM_VERSION@"
+ archive(native) = "llvm_scalar_opts.cmxa"
+ archive(byte) = "llvm_scalar_opts.cma"
+ linkopts = "-cclib -lllvm_scalar_opts"
+)
+
+package "analysis"
+(
+ requires = "llvm-@LLVM_VERSION@"
+ version = "@LLVM_VERSION@"
+ archive(native) = "llvm_analysis.cmxa"
+ archive(byte) = "llvm_analysis.cma"
+ linkopts = "-cclib -lllvm_analysis"
+)
+
+package "bitwriter"
+(
+ requires = "llvm-@LLVM_VERSION@"
+ version = "@LLVM_VERSION@"
+ archive(native) = "llvm_bitwriter.cmxa"
+ archive(byte) = "llvm_bitwriter.cma"
+ linkopts = "-cclib -lllvm_bitwriter"
+)
+
+package "bitreader"
+(
+ requires = "llvm-@LLVM_VERSION@ llvm-@LLVM_VERSION@.bitwriter"
+ version = "@LLVM_VERSION@"
+ archive(native) = "llvm_bitreader.cmxa"
+ archive(byte) = "llvm_bitreader.cma"
+ linkopts = "-cclib -lllvm_bitreader"
+)
+
diff --git a/debian/libllvm-X.Y-ocaml-dev.dirs.in b/debian/libllvm-X.Y-ocaml-dev.dirs.in
new file mode 100644
index 0000000..6c9c736
--- /dev/null
+++ b/debian/libllvm-X.Y-ocaml-dev.dirs.in
@@ -0,0 +1,2 @@
+@OCAML_STDLIB_DIR@/META/
+
diff --git a/debian/libllvm-X.Y-ocaml-dev.install.in b/debian/libllvm-X.Y-ocaml-dev.install.in
new file mode 100644
index 0000000..4c68fb7
--- /dev/null
+++ b/debian/libllvm-X.Y-ocaml-dev.install.in
@@ -0,0 +1,2 @@
+@OCAML_STDLIB_DIR@
+usr/lib/llvm-@LLVM_VERSION@/share/doc/llvm/ocaml-html/ usr/share/doc/libllvm-@LLVM_VERSION@-ocaml-dev/
diff --git a/debian/libllvm-X.Y-ocaml-dev.lintian-overrides.in b/debian/libllvm-X.Y-ocaml-dev.lintian-overrides.in
new file mode 100644
index 0000000..5d25d44
--- /dev/null
+++ b/debian/libllvm-X.Y-ocaml-dev.lintian-overrides.in
@@ -0,0 +1,2 @@
+# It is in the section ocaml which is fine.
+libllvm-@LLVM_VERSION@-ocaml-dev: wrong-section-according-to-package-name libllvm-@LLVM_VERSION@-ocaml-dev => libdevel
diff --git a/debian/libllvmX.Y.install.in b/debian/libllvmX.Y.install.in
new file mode 100644
index 0000000..f8d968f
--- /dev/null
+++ b/debian/libllvmX.Y.install.in
@@ -0,0 +1 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/
diff --git a/debian/libllvmX.Y.links.in b/debian/libllvmX.Y.links.in
new file mode 100644
index 0000000..067b088
--- /dev/null
+++ b/debian/libllvmX.Y.links.in
@@ -0,0 +1,4 @@
+# Should be uncommented for @LLVM_VERSION@.1 and other
+# usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 /usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so
+
diff --git a/debian/libllvmX.Y.lintian-overrides.in b/debian/libllvmX.Y.lintian-overrides.in
new file mode 100644
index 0000000..49f7ef2
--- /dev/null
+++ b/debian/libllvmX.Y.lintian-overrides.in
@@ -0,0 +1,2 @@
+# That is normal. Upstream does not match the debian convention
+libllvm@LLVM_VERSION@: package-name-doesnt-match-sonames libLLVM-@LLVM_VERSION@-1
diff --git a/debian/lld-X.Y.install.in b/debian/lld-X.Y.install.in
new file mode 100644
index 0000000..a1a0392
--- /dev/null
+++ b/debian/lld-X.Y.install.in
@@ -0,0 +1,7 @@
+usr/lib/llvm-@LLVM_VERSION@/bin/ld.lld*
+usr/lib/llvm-@LLVM_VERSION@/bin/lld-*
+usr/lib/llvm-@LLVM_VERSION@/bin/lld
+
+usr/bin/lld-link-@LLVM_VERSION@
+usr/bin/ld.lld-@LLVM_VERSION@
+usr/bin/lld-@LLVM_VERSION@*
diff --git a/debian/lld-X.Y.manpages.in b/debian/lld-X.Y.manpages.in
new file mode 100644
index 0000000..49a3f66
--- /dev/null
+++ b/debian/lld-X.Y.manpages.in
@@ -0,0 +1,2 @@
+debian/man/ld.lld-@LLVM_VERSION@.1
+
diff --git a/debian/lldb-X.Y.install.in b/debian/lldb-X.Y.install.in
new file mode 100644
index 0000000..0baf795
--- /dev/null
+++ b/debian/lldb-X.Y.install.in
@@ -0,0 +1,9 @@
+usr/lib/llvm-@LLVM_VERSION@/bin/lldb*
+usr/lib/llvm-@LLVM_VERSION@/bin/lldb-mi*
+usr/lib/llvm-@LLVM_VERSION@/bin/lldb-server*
+usr/lib/llvm-@LLVM_VERSION@/bin/lldb-argdumper
+
+usr/bin/lldb-@LLVM_VERSION@*
+usr/bin/lldb-server-@LLVM_VERSION@*
+usr/bin/lldb-mi-@LLVM_VERSION@*
+usr/bin/lldb-argdumper-@LLVM_VERSION@
diff --git a/debian/lldb-X.Y.lintian-overrides.in b/debian/lldb-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..a456a34
--- /dev/null
+++ b/debian/lldb-X.Y.lintian-overrides.in
@@ -0,0 +1,3 @@
+lldb-@LLVM_VERSION@: non-dev-pkg-with-shlib-symlink usr/lib/*/liblldb.so.1 usr/lib/*/liblldb.so
+# Does not really matter
+lldb-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/lldb-@LLVM_VERSION@.1.gz
diff --git a/debian/lldb-X.Y.manpages.in b/debian/lldb-X.Y.manpages.in
new file mode 100644
index 0000000..36a62ae
--- /dev/null
+++ b/debian/lldb-X.Y.manpages.in
@@ -0,0 +1,2 @@
+debian/man/lldb-@LLVM_VERSION@.1
+debian/man/lldb-mi-@LLVM_VERSION@.1
diff --git a/debian/lldb-X.Y.postinst.in b/debian/lldb-X.Y.postinst.in
new file mode 100644
index 0000000..a5a6071
--- /dev/null
+++ b/debian/lldb-X.Y.postinst.in
@@ -0,0 +1,8 @@
+#!/bin/sh -e
+
+if [ "$1" = "configure" ]
+then
+ ldconfig
+fi
+
+#DEBHELPER#
diff --git a/debian/llvm-X.Y-dev.dirs.in b/debian/llvm-X.Y-dev.dirs.in
new file mode 100644
index 0000000..3b3b586
--- /dev/null
+++ b/debian/llvm-X.Y-dev.dirs.in
@@ -0,0 +1,5 @@
+/usr/lib/llvm-@LLVM_VERSION@/lib
+/usr/lib/llvm-@LLVM_VERSION@/build
+/usr/lib/llvm-@LLVM_VERSION@/include
+usr/share/doc/llvm-@LLVM_VERSION@-dev
+usr/share/emacs/site-lisp/llvm-@LLVM_VERSION@
diff --git a/debian/llvm-X.Y-dev.install.in b/debian/llvm-X.Y-dev.install.in
new file mode 100644
index 0000000..13c9d4f
--- /dev/null
+++ b/debian/llvm-X.Y-dev.install.in
@@ -0,0 +1,31 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM*.a
+#usr/lib/llvm-@LLVM_VERSION@/lib/libllvm*.a
+usr/lib/llvm-@LLVM_VERSION@/lib/LLVM*.so
+usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM.so
+usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so
+usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION_FULL@.so
+usr/lib/llvm-@LLVM_VERSION@/lib/libLTO.*
+usr/lib/llvm-@LLVM_VERSION@/lib/BugpointPasses.so
+usr/lib/llvm-@LLVM_VERSION@/include/llvm/ usr/include/llvm-@LLVM_VERSION@/
+usr/lib/llvm-@LLVM_VERSION@/include/llvm-c/ usr/include/llvm-c-@LLVM_VERSION@/
+# Explicit debian/tmp since there are multiple declarations
+debian/tmp/usr/lib/llvm-@LLVM_VERSION@/lib/cmake/llvm/*.cmake
+
+utils/vim/indent/llvm-@LLVM_VERSION@.vim usr/share/vim/addons/indent/
+
+utils/vim/syntax/llvm-@LLVM_VERSION@.vim usr/share/vim/addons/syntax/
+utils/vim/syntax/tablegen-@LLVM_VERSION@.vim usr/share/vim/addons/syntax/
+
+utils/vim/ftdetect/llvm-@LLVM_VERSION@.vim usr/share/vim/addons/ftdetect/
+utils/vim/ftdetect/tablegen-@LLVM_VERSION@.vim usr/share/vim/addons/ftdetect/
+
+utils/vim/ftplugin/llvm-@LLVM_VERSION@.vim usr/share/vim/addons/ftplugin/
+utils/vim/ftplugin/tablegen-@LLVM_VERSION@.vim usr/share/vim/addons/ftplugin/
+
+utils/vim/llvm-@LLVM_VERSION@-vimrc usr/share/vim/addons
+
+
+utils/emacs/emacs.el usr/share/emacs/site-lisp/llvm-@LLVM_VERSION@/
+utils/emacs/llvm-mode.el usr/share/emacs/site-lisp/llvm-@LLVM_VERSION@/
+utils/emacs/tablegen-mode.el usr/share/emacs/site-lisp/llvm-@LLVM_VERSION@/
+
diff --git a/debian/llvm-X.Y-dev.links.in b/debian/llvm-X.Y-dev.links.in
new file mode 100644
index 0000000..b3a2a2a
--- /dev/null
+++ b/debian/llvm-X.Y-dev.links.in
@@ -0,0 +1,19 @@
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION_FULL@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/libLLVM-@LLVM_VERSION_FULL@.so
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION@.so.1 usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1
+
+usr/include/llvm-c-@LLVM_VERSION@/llvm-c usr/lib/llvm-@LLVM_VERSION@/include/llvm-c
+usr/include/llvm-@LLVM_VERSION@/llvm usr/lib/llvm-@LLVM_VERSION@/include/llvm
+usr/include/llvm-c-@LLVM_VERSION@/llvm-c usr/lib/llvm-@LLVM_VERSION@/build/include/llvm-c
+usr/include/llvm-@LLVM_VERSION@/llvm usr/lib/llvm-@LLVM_VERSION@/build/include/llvm
+
+usr/lib/llvm-@LLVM_VERSION@/include/ usr/lib/llvm-@LLVM_VERSION@/build/include
+usr/lib/llvm-@LLVM_VERSION@/lib/ usr/lib/llvm-@LLVM_VERSION@/build/lib
+usr/lib/llvm-@LLVM_VERSION@/share/ usr/lib/llvm-@LLVM_VERSION@/build/share
+usr/lib/llvm-@LLVM_VERSION@/ usr/lib/llvm-@LLVM_VERSION@/build/Release
+usr/lib/llvm-@LLVM_VERSION@/ usr/lib/llvm-@LLVM_VERSION@/build/Debug+Asserts
+
+usr/lib/llvm-@LLVM_VERSION@/lib/cmake/llvm usr/lib/llvm-@LLVM_VERSION@/cmake
+usr/lib/llvm-@LLVM_VERSION@/lib/cmake/llvm usr/lib/llvm-@LLVM_VERSION@/share/llvm/cmake
diff --git a/debian/llvm-X.Y-doc.dirs.in b/debian/llvm-X.Y-doc.dirs.in
new file mode 100644
index 0000000..5379e8e
--- /dev/null
+++ b/debian/llvm-X.Y-doc.dirs.in
@@ -0,0 +1 @@
+usr/share/doc/llvm-@LLVM_VERSION@-doc
diff --git a/debian/llvm-X.Y-doc.install.in b/debian/llvm-X.Y-doc.install.in
new file mode 100644
index 0000000..6ac115a
--- /dev/null
+++ b/debian/llvm-X.Y-doc.install.in
@@ -0,0 +1,6 @@
+docs/_build/html usr/share/doc/llvm-@LLVM_VERSION@-doc/
+#usr/lib/llvm-@LLVM_VERSION@/docs/llvm/html.tar.gz
+#usr/lib/llvm-@LLVM_VERSION@/docs/llvm/ocamldoc.tar.gz
+#usr/lib/llvm-@LLVM_VERSION@/docs/llvm/html/Dummy.html
+#usr/lib/llvm-@LLVM_VERSION@/docs/llvm/html/doxygen.css
+#usr/lib/llvm-@LLVM_VERSION@/docs/llvm/html/LibASTMatchersReference.html
diff --git a/debian/llvm-X.Y-examples.dirs.in b/debian/llvm-X.Y-examples.dirs.in
new file mode 100644
index 0000000..a8b75c6
--- /dev/null
+++ b/debian/llvm-X.Y-examples.dirs.in
@@ -0,0 +1 @@
+usr/share/doc/llvm-@LLVM_VERSION@-examples
diff --git a/debian/llvm-X.Y-examples.examples.in b/debian/llvm-X.Y-examples.examples.in
new file mode 100644
index 0000000..e39721e
--- /dev/null
+++ b/debian/llvm-X.Y-examples.examples.in
@@ -0,0 +1 @@
+examples/*
diff --git a/debian/llvm-X.Y-examples.links.in b/debian/llvm-X.Y-examples.links.in
new file mode 100644
index 0000000..a8d74aa
--- /dev/null
+++ b/debian/llvm-X.Y-examples.links.in
@@ -0,0 +1,3 @@
+/usr/lib/llvm-@LLVM_VERSION@/build/Makefile.common usr/share/doc/llvm-@LLVM_VERSION@-examples/Makefile.common
+/usr/lib/llvm-@LLVM_VERSION@/build/Makefile.config usr/share/doc/llvm-@LLVM_VERSION@-examples/Makefile.config
+/usr/lib/llvm-@LLVM_VERSION@/build/Makefile.rules usr/share/doc/llvm-@LLVM_VERSION@-examples/Makefile.rules
diff --git a/debian/llvm-X.Y-runtime.binfmt.in b/debian/llvm-X.Y-runtime.binfmt.in
new file mode 100644
index 0000000..6bb1df7
--- /dev/null
+++ b/debian/llvm-X.Y-runtime.binfmt.in
@@ -0,0 +1,3 @@
+package llvm-@LLVM_VERSION@-runtime
+interpreter /usr/bin/lli-@LLVM_VERSION@
+magic BC
diff --git a/debian/llvm-X.Y-runtime.install.in b/debian/llvm-X.Y-runtime.install.in
new file mode 100644
index 0000000..d8e16a7
--- /dev/null
+++ b/debian/llvm-X.Y-runtime.install.in
@@ -0,0 +1,8 @@
+usr/lib/llvm-@LLVM_VERSION@/bin/lli
+usr/lib/llvm-@LLVM_VERSION@/bin/lli-child-target
+
+usr/bin/lli-@LLVM_VERSION@
+usr/bin/lli-child-target-@LLVM_VERSION@
+
+debian/llvm-@LLVM_VERSION@-runtime.binfmt usr/share/binfmts/
+
diff --git a/debian/llvm-X.Y-runtime.lintian-overrides.in b/debian/llvm-X.Y-runtime.lintian-overrides.in
new file mode 100644
index 0000000..e94e713
--- /dev/null
+++ b/debian/llvm-X.Y-runtime.lintian-overrides.in
@@ -0,0 +1 @@
+llvm-@LLVM_VERSION@-runtime: binary-without-manpage usr/bin/lli-child-target-@LLVM_VERSION@
diff --git a/debian/llvm-X.Y-runtime.manpages.in b/debian/llvm-X.Y-runtime.manpages.in
new file mode 100644
index 0000000..839952d
--- /dev/null
+++ b/debian/llvm-X.Y-runtime.manpages.in
@@ -0,0 +1 @@
+debian/man/lli*
diff --git a/debian/llvm-X.Y-runtime.postinst.in b/debian/llvm-X.Y-runtime.postinst.in
new file mode 100644
index 0000000..987b3ea
--- /dev/null
+++ b/debian/llvm-X.Y-runtime.postinst.in
@@ -0,0 +1,11 @@
+#!/bin/sh
+
+set -e
+
+if test "$1" = "configure"; then
+ if test -x /usr/sbin/update-binfmts; then
+ update-binfmts --import llvm-@LLVM_VERSION@-runtime.binfmt || true
+ fi
+fi
+
+#DEBHELPER#
diff --git a/debian/llvm-X.Y-runtime.prerm.in b/debian/llvm-X.Y-runtime.prerm.in
new file mode 100644
index 0000000..3f16015
--- /dev/null
+++ b/debian/llvm-X.Y-runtime.prerm.in
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+set -e
+
+if test "$1" = "remove"; then
+ if test -x /usr/sbin/update-binfmts; then
+ update-binfmts --package llvm-@LLVM_VERSION@-runtime \
+ --remove llvm-@LLVM_VERSION@-runtime.binfmt /usr/bin/lli-@LLVM_VERSION@ || true
+ if test -f /var/lib/binfmts/llvm-@LLVM_VERSION@.binfmt; then
+ # Purge old file
+ update-binfmts --package llvm-@LLVM_VERSION@-runtime \
+ --remove llvm-@LLVM_VERSION@.binfmt /usr/bin/lli-@LLVM_VERSION@ || true
+ fi
+ fi
+fi
+
+#DEBHELPER#
+
diff --git a/debian/llvm-X.Y-tools.dirs.in b/debian/llvm-X.Y-tools.dirs.in
new file mode 100644
index 0000000..401df06
--- /dev/null
+++ b/debian/llvm-X.Y-tools.dirs.in
@@ -0,0 +1,2 @@
+/usr/lib/llvm-@LLVM_VERSION@/build/unittests
+/usr/lib/llvm-@LLVM_VERSION@/build/utils/lit/
diff --git a/debian/llvm-X.Y-tools.install.in b/debian/llvm-X.Y-tools.install.in
new file mode 100644
index 0000000..9fec1e2
--- /dev/null
+++ b/debian/llvm-X.Y-tools.install.in
@@ -0,0 +1,17 @@
+
+usr/lib/llvm-@LLVM_VERSION@/bin/count
+usr/lib/llvm-@LLVM_VERSION@/bin/FileCheck
+usr/lib/llvm-@LLVM_VERSION@/bin/not
+usr/lib/llvm-@LLVM_VERSION@/share/opt-viewer/opt-viewer.py
+usr/lib/llvm-@LLVM_VERSION@/share/opt-viewer/optrecord.py
+usr/lib/llvm-@LLVM_VERSION@/share/opt-viewer/style.css
+usr/lib/llvm-@LLVM_VERSION@/share/opt-viewer/opt-diff.py
+usr/lib/llvm-@LLVM_VERSION@/share/opt-viewer/optpmap.py
+usr/lib/llvm-@LLVM_VERSION@/share/opt-viewer/opt-stats.py
+
+utils/lit/* /usr/lib/llvm-@LLVM_VERSION@/build/utils/lit/
+
+usr/bin/count-@LLVM_VERSION@
+usr/bin/FileCheck-@LLVM_VERSION@
+usr/bin/not-@LLVM_VERSION@
+
diff --git a/debian/llvm-X.Y.dirs.in b/debian/llvm-X.Y.dirs.in
new file mode 100644
index 0000000..56a9655
--- /dev/null
+++ b/debian/llvm-X.Y.dirs.in
@@ -0,0 +1,3 @@
+/usr/lib/llvm-@LLVM_VERSION@/bin
+usr/share/man/man1
+usr/share/doc/llvm-@LLVM_VERSION@
diff --git a/debian/llvm-X.Y.install.in b/debian/llvm-X.Y.install.in
new file mode 100644
index 0000000..8893448
--- /dev/null
+++ b/debian/llvm-X.Y.install.in
@@ -0,0 +1,16 @@
+usr/lib/llvm-@LLVM_VERSION@/bin/llvm-*
+usr/lib/llvm-@LLVM_VERSION@/bin/opt*
+usr/lib/llvm-@LLVM_VERSION@/bin/bugpoint*
+usr/lib/llvm-@LLVM_VERSION@/bin/llc*
+usr/lib/llvm-@LLVM_VERSION@/bin/obj2yaml
+usr/lib/llvm-@LLVM_VERSION@/bin/yaml2obj
+usr/lib/llvm-@LLVM_VERSION@/bin/verify-uselistorder
+usr/lib/llvm-@LLVM_VERSION@/bin/sanstats
+usr/bin/llvm-*
+usr/bin/opt*
+usr/bin/bugpoint*
+usr/bin/llc*
+usr/bin/obj2yaml-*
+usr/bin/yaml2obj-*
+usr/bin/verify-uselistorder-*
+usr/bin/sanstats-*
diff --git a/debian/llvm-X.Y.lintian-overrides.in b/debian/llvm-X.Y.lintian-overrides.in
new file mode 100644
index 0000000..35c8694
--- /dev/null
+++ b/debian/llvm-X.Y.lintian-overrides.in
@@ -0,0 +1,12 @@
+# I know but well...
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-dwarfdump-@LLVM_VERSION@.1.gz
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-mc-@LLVM_VERSION@.1.gz
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-mcmarkup-@LLVM_VERSION@.1.gz
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-objdump-@LLVM_VERSION@.1.gz
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-rtdyld-@LLVM_VERSION@.1.gz
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-size-@LLVM_VERSION@.1.gz
+llvm-@LLVM_VERSION@: manpage-has-useless-whatis-entry usr/share/man/man1/llvm-ranlib-@LLVM_VERSION@.1.gz
+# Does not link otherwise
+llvm-@LLVM_VERSION@: embedded-library usr/lib/llvm-@LLVM_VERSION@/bin/bugpoint: libjsoncpp
+llvm-@LLVM_VERSION@: embedded-library usr/lib/llvm-@LLVM_VERSION@/bin/opt: libjsoncpp
+
diff --git a/debian/llvm-X.Y.manpages.in b/debian/llvm-X.Y.manpages.in
new file mode 100644
index 0000000..98f095f
--- /dev/null
+++ b/debian/llvm-X.Y.manpages.in
@@ -0,0 +1,8 @@
+docs/_build/man/*
+debian/man/llvm-dwarfdump-@LLVM_VERSION@.1
+debian/man/llvm-mc-@LLVM_VERSION@.1
+debian/man/llvm-mcmarkup-@LLVM_VERSION@.1
+debian/man/llvm-objdump-@LLVM_VERSION@.1
+debian/man/llvm-rtdyld-@LLVM_VERSION@.1
+debian/man/llvm-size-@LLVM_VERSION@.1
+debian/man/llvm-ranlib-@LLVM_VERSION@.1
diff --git a/debian/llvm-priv-dev.dirs b/debian/llvm-priv-dev.dirs
new file mode 100644
index 0000000..dab8663
--- /dev/null
+++ b/debian/llvm-priv-dev.dirs
@@ -0,0 +1 @@
+/usr/lib/llvm-3.1/build
diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh
new file mode 100755
index 0000000..59bcbad
--- /dev/null
+++ b/debian/orig-tar.sh
@@ -0,0 +1,201 @@
+#!/bin/sh
+# This script will create the following tarballs:
+# llvm-toolchain-snapshot-3.2_3.2repack.orig-clang.tar.bz2
+# llvm-toolchain-snapshot-3.2_3.2repack.orig-clang-extra.tar.bz2
+# llvm-toolchain-snapshot-3.2_3.2repack.orig-compiler-rt.tar.bz2
+# llvm-toolchain-snapshot-3.2_3.2repack.orig-lld.tar.bz2
+# llvm-toolchain-snapshot-3.2_3.2repack.orig-lldb.tar.bz2
+# llvm-toolchain-snapshot-3.2_3.2repack.orig-polly.tar.bz2
+# llvm-toolchain-snapshot-3.2_3.2repack.orig.tar.bz2
+set -e
+
+# TODO rest of the options
+
+# To create an rc1 release:
+# sh 4.0/debian/orig-tar.sh RELEASE_40 rc1
+
+SVN_BASE_URL=http://llvm.org/svn/llvm-project/
+MAJOR_VERSION=5.0
+CURRENT_VERSION=5.0 # Should be changed to 3.5.1 later
+
+if test -n "$1"; then
+# http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/branches/google/stable/
+# For example: sh 4.0/debian/orig-tar.sh release_400
+ BRANCH=$1
+fi
+
+if test -n "$1" -a -n "$2"; then
+# http://llvm.org/svn/llvm-project/{cfe,llvm,compiler-rt,...}/tags/RELEASE_34/rc1/
+# For example: sh 4.0/debian/orig-tar.sh RELEASE_401 rc3 4.0.1
+ BRANCH=$1
+ TAG=$2
+ RCRELEASE="true"
+ if test -z "$3"; then
+ echo "Please provide the exact version. Used for the tarball name Ex: 4.0.1"
+ fi
+ EXACT_VERSION=$3
+fi
+
+get_svn_url() {
+ MODULE=$1
+ BRANCH=$2
+ TAG=$3
+ if test -n "$TAG"; then
+ SVN_URL="$SVN_BASE_URL/$MODULE/tags/$BRANCH/$TAG"
+ else
+ if test -n "$BRANCH"; then
+ SVN_URL="$SVN_BASE_URL/$MODULE/branches/$BRANCH"
+ else
+ SVN_URL="$SVN_BASE_URL/$MODULE/trunk/"
+ fi
+ fi
+ echo $SVN_URL
+}
+
+get_higher_revision() {
+ PROJECTS="llvm cfe compiler-rt polly lld lldb clang-tools-extra"
+ REVISION_MAX=0
+ for f in $PROJECTS; do
+ REVISION=$(LANG=C svn info $(get_svn_url $f $BRANCH $TAG)|grep "^Last Changed Rev:"|awk '{print $4}')
+ if test $REVISION -gt $REVISION_MAX; then
+ REVISION_MAX=$REVISION
+ fi
+ done
+ echo $REVISION_MAX
+}
+
+SVN_ARCHIVES=svn-archives
+
+checkout_sources() {
+ PROJECT=$1
+ URL=$2
+ TARGET=$3
+ BRANCH=$4
+ if test -n "$BRANCH"; then
+ REVISION=$5
+ fi
+ echo "$PROJECT / $URL / $BRANCH / $TARGET / $REVISION"
+
+ cd $SVN_ARCHIVES/
+ DEST=$PROJECT-$BRANCH
+ if test -n "$TAG"; then
+ DEST=$DEST-$TAG
+ fi
+ if test -d $DEST; then
+ cd $DEST
+ if test -n "$BRANCH"; then
+ svn cleanup
+ svn up
+ else
+ svn cleanup
+ svn up -r $REVISION
+ fi
+ cd ..
+ else
+ if test -n "$BRANCH"; then
+ svn co $URL $DEST
+ else
+ svn co -r $REVISION $URL $DEST
+ fi
+ fi
+ rm -rf ../$TARGET
+ rsync -r --exclude=.svn $DEST/ ../$TARGET
+ cd ..
+}
+
+if test -n "$BRANCH"; then
+ REVISION=$(get_higher_revision)
+ # Do not use the revision when exporting branch. We consider that all the
+ # branch are sync
+ SVN_CMD="svn export"
+else
+ REVISION=$(LANG=C svn info $(get_svn_url llvm)|grep "^Revision:"|awk '{print $2}')
+ SVN_CMD="svn export -r $REVISION"
+fi
+
+if test -n "$RCRELEASE"; then
+ if test "$TAG" = "final"; then
+ VERSION=$EXACT_VERSION
+ else
+ VERSION=$EXACT_VERSION"~+"$TAG
+ fi
+ FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION
+else
+ VERSION=$CURRENT_VERSION"~svn"$REVISION
+ if echo $BRANCH|grep -q release_; then
+ FULL_VERSION="llvm-toolchain-"$MAJOR_VERSION"_"$VERSION
+ else
+ FULL_VERSION="llvm-toolchain-snapshot_"$VERSION
+ fi
+fi
+
+mkdir -p $SVN_ARCHIVES
+
+# LLVM
+LLVM_TARGET=$FULL_VERSION
+checkout_sources llvm $(get_svn_url llvm $BRANCH $TAG) $LLVM_TARGET "$BRANCH" $REVISION
+tar jcf $FULL_VERSION.orig.tar.bz2 $LLVM_TARGET
+rm -rf $LLVM_TARGET
+
+
+# Clang
+CLANG_TARGET=clang_$VERSION
+checkout_sources clang $(get_svn_url cfe $BRANCH $TAG) $CLANG_TARGET "$BRANCH" $REVISION
+tar jcf $FULL_VERSION.orig-clang.tar.bz2 $CLANG_TARGET
+rm -rf $CLANG_TARGET
+
+
+# Clang extra
+CLANG_TARGET=clang-tools-extra_$VERSION
+checkout_sources clang-tools-extra $(get_svn_url clang-tools-extra $BRANCH $TAG) $CLANG_TARGET "$BRANCH" $REVISION
+tar jcf $FULL_VERSION.orig-clang-tools-extra.tar.bz2 $CLANG_TARGET
+rm -rf $CLANG_TARGET
+
+# Compiler-rt
+COMPILER_RT_TARGET=compiler-rt_$VERSION
+checkout_sources compiler-rt $(get_svn_url compiler-rt $BRANCH $TAG) $COMPILER_RT_TARGET "$BRANCH" $REVISION
+#$SVN_CMD $(get_svn_url compiler-rt $BRANCH $TAG) $COMPILER_RT_TARGET
+tar jcf $FULL_VERSION.orig-compiler-rt.tar.bz2 $COMPILER_RT_TARGET
+rm -rf $COMPILER_RT_TARGET
+
+# Polly
+POLLY_TARGET=polly_$VERSION
+checkout_sources polly $(get_svn_url polly $BRANCH $TAG) $POLLY_TARGET "$BRANCH" $REVISION
+#$SVN_CMD $(get_svn_url polly $BRANCH $TAG) $POLLY_TARGET
+rm -rf $POLLY_TARGET/www $POLLY_TARGET/autoconf/config.sub $POLLY_TARGET/autoconf/config.guess
+tar jcf $FULL_VERSION.orig-polly.tar.bz2 $POLLY_TARGET
+rm -rf $POLLY_TARGET
+
+# LLD
+LLD_TARGET=lld_$VERSION
+checkout_sources lld $(get_svn_url lld $BRANCH $TAG) $LLD_TARGET "$BRANCH" $REVISION
+#$SVN_CMD $(get_svn_url lld $BRANCH $TAG) $LLD_TARGET
+rm -rf $LLD_TARGET/www/
+tar jcf $FULL_VERSION.orig-lld.tar.bz2 $LLD_TARGET
+rm -rf $LLD_TARGET
+
+# LLDB
+LLDB_TARGET=lldb_$VERSION
+checkout_sources lldb $(get_svn_url lldb $BRANCH $TAG) $LLDB_TARGET "$BRANCH" $REVISION
+#$SVN_CMD $(get_svn_url lldb $BRANCH $TAG) $LLDB_TARGET
+rm -rf $LLDB_TARGET/www/
+tar jcf $FULL_VERSION.orig-lldb.tar.bz2 $LLDB_TARGET
+rm -rf $LLDB_TARGET
+
+PATH_DEBIAN="$(pwd)/$(dirname $0)/../"
+echo "going into $PATH_DEBIAN"
+export DEBFULLNAME="Sylvestre Ledru"
+export DEBEMAIL="sylvestre@debian.org"
+cd $PATH_DEBIAN
+
+if test -z "$DISTRIBUTION"; then
+ DISTRIBUTION="experimental"
+fi
+
+if test -n "$RCRELEASE" -o -n "$BRANCH"; then
+ EXTRA_DCH_FLAGS="--force-bad-version --allow-lower-version"
+fi
+
+dch $EXTRA_DCH_FLAGS --distribution $DISTRIBUTION --newversion 1:$VERSION-1~exp1 "New snapshot release"
+
+exit 0
diff --git a/debian/patches/0003-Debian-version-info-and-bugreport.patch b/debian/patches/0003-Debian-version-info-and-bugreport.patch
new file mode 100644
index 0000000..6c8a1d5
--- /dev/null
+++ b/debian/patches/0003-Debian-version-info-and-bugreport.patch
@@ -0,0 +1,19 @@
+---
+ lib/Support/CommandLine.cpp | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+Index: llvm-toolchain-snapshot_5.0~svn296106/lib/Support/CommandLine.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn296106.orig/lib/Support/CommandLine.cpp
++++ llvm-toolchain-snapshot_5.0~svn296106/lib/Support/CommandLine.cpp
+@@ -2064,6 +2064,10 @@ public:
+ OS << " " << LLVM_VERSION_INFO;
+ #endif
+ OS << "\n ";
++#ifdef LLVM_DEBIAN_INFO
++ OS << LLVM_DEBIAN_INFO;
++#endif
++ OS << "\n ";
+ #ifndef __OPTIMIZE__
+ OS << "DEBUG build";
+ #else
diff --git a/debian/patches/0011-SimplifyCFG-Hoisting-invalidates-metadata.patch b/debian/patches/0011-SimplifyCFG-Hoisting-invalidates-metadata.patch
new file mode 100644
index 0000000..b184a40
--- /dev/null
+++ b/debian/patches/0011-SimplifyCFG-Hoisting-invalidates-metadata.patch
@@ -0,0 +1,84 @@
+From eee68eafa7e8e4ce996b49f5551636639a6c331a Mon Sep 17 00:00:00 2001
+From: David Majnemer <david.majnemer@gmail.com>
+Date: Mon, 29 Aug 2016 17:14:08 +0000
+Subject: [PATCH 11/17] [SimplifyCFG] Hoisting invalidates metadata
+
+We forgot to remove optimization metadata when performing hosting during
+FoldTwoEntryPHINode.
+
+This fixes PR29163.
+
+git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@279980 91177308-0d34-0410-b5e6-96231b3b80d8
+---
+ lib/Transforms/Utils/SimplifyCFG.cpp | 10 ++++++++--
+ test/Transforms/SimplifyCFG/PR29163.ll | 31 +++++++++++++++++++++++++++++++
+ 2 files changed, 39 insertions(+), 2 deletions(-)
+ create mode 100644 test/Transforms/SimplifyCFG/PR29163.ll
+
+diff --git a/lib/Transforms/Utils/SimplifyCFG.cpp b/lib/Transforms/Utils/SimplifyCFG.cpp
+index 0504646..c197317 100644
+--- a/lib/Transforms/Utils/SimplifyCFG.cpp
++++ b/lib/Transforms/Utils/SimplifyCFG.cpp
+@@ -2024,14 +2024,20 @@ static bool FoldTwoEntryPHINode(PHINode *PN, const TargetTransformInfo &TTI,
+
+ // Move all 'aggressive' instructions, which are defined in the
+ // conditional parts of the if's up to the dominating block.
+- if (IfBlock1)
++ if (IfBlock1) {
++ for (auto &I : *IfBlock1)
++ I.dropUnknownNonDebugMetadata();
+ DomBlock->getInstList().splice(InsertPt->getIterator(),
+ IfBlock1->getInstList(), IfBlock1->begin(),
+ IfBlock1->getTerminator()->getIterator());
+- if (IfBlock2)
++ }
++ if (IfBlock2) {
++ for (auto &I : *IfBlock2)
++ I.dropUnknownNonDebugMetadata();
+ DomBlock->getInstList().splice(InsertPt->getIterator(),
+ IfBlock2->getInstList(), IfBlock2->begin(),
+ IfBlock2->getTerminator()->getIterator());
++ }
+
+ while (PHINode *PN = dyn_cast<PHINode>(BB->begin())) {
+ // Change the PHI node into a select instruction.
+diff --git a/test/Transforms/SimplifyCFG/PR29163.ll b/test/Transforms/SimplifyCFG/PR29163.ll
+new file mode 100644
+index 0000000..65f9090
+--- /dev/null
++++ b/test/Transforms/SimplifyCFG/PR29163.ll
+@@ -0,0 +1,31 @@
++; RUN: opt -S -simplifycfg < %s | FileCheck %s
++target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
++target triple = "x86_64-unknown-linux-gnu"
++
++@GV = external constant i64*
++
++define i64* @test1(i1 %cond, i8* %P) {
++entry:
++ br i1 %cond, label %if, label %then
++
++then:
++ %bc = bitcast i8* %P to i64*
++ br label %join
++
++if:
++ %load = load i64*, i64** @GV, align 8, !dereferenceable !0
++ br label %join
++
++join:
++ %phi = phi i64* [ %bc, %then ], [ %load, %if ]
++ ret i64* %phi
++}
++
++; CHECK-LABEL: define i64* @test1(
++; CHECK: %[[bc:.*]] = bitcast i8* %P to i64*
++; CHECK: %[[load:.*]] = load i64*, i64** @GV, align 8{{$}}
++; CHECK: %[[phi:.*]] = select i1 %cond, i64* %[[load]], i64* %[[bc]]
++; CHECK: ret i64* %[[phi]]
++
++
++!0 = !{i64 8}
+--
+2.10.1
+
diff --git a/debian/patches/0021-shared-lib-debian.patch b/debian/patches/0021-shared-lib-debian.patch
new file mode 100644
index 0000000..b6291fb
--- /dev/null
+++ b/debian/patches/0021-shared-lib-debian.patch
@@ -0,0 +1,26 @@
+Index: llvm-toolchain-snapshot_3.7~svn241915/tools/llvm-shlib/Makefile
+===================================================================
+--- llvm-toolchain-snapshot_3.7~svn241915.orig/tools/llvm-shlib/Makefile
++++ llvm-toolchain-snapshot_3.7~svn241915/tools/llvm-shlib/Makefile
+@@ -41,6 +41,12 @@ LLVMLibsOptions := $(IncludeInLibLlvm:$(
+ LLVMLibsPaths := $(IncludeInLibLlvm)
+
+ $(LibName.SO): $(LLVMLibsPaths)
++ $(Echo) Linking $(BuildMode) $(SharedLibKindMessage) \
++ $(LIBRARYNAME)$(SHLIBEXT)
++ $(Verb) $(Link) $(SharedLinkOptions) -o $@ $(ObjectsO) \
++ $(ProjLibsOptions) $(LLVMLibsOptions) $(LIBS)
++ mv $(LibName.SO) $(LibName.SO).1
++ ln -s $(notdir $(LibName.SO)).1 $(LibName.SO)
+
+ ifeq ($(HOST_OS),Darwin)
+ # set dylib internal version number to llvmCore submission number
+@@ -61,7 +67,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)
++ LLVMLibsOptions += -Wl,--soname,lib$(LIBRARYNAME)$(SHLIBEXT) -Wl,-Bsymbolic-functions
+ endif
+
+ ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD))
diff --git a/debian/patches/0023-link-libopagent.patch b/debian/patches/0023-link-libopagent.patch
new file mode 100644
index 0000000..7a4ac52
--- /dev/null
+++ b/debian/patches/0023-link-libopagent.patch
@@ -0,0 +1,33 @@
+Index: llvm-toolchain-snapshot_3.7~svn241915/configure
+===================================================================
+--- llvm-toolchain-snapshot_3.7~svn241915.orig/configure
++++ llvm-toolchain-snapshot_3.7~svn241915/configure
+@@ -10115,7 +10115,7 @@ if test "${with_oprofile+set}" = set; th
+ case $llvm_cv_os_type in
+ Linux)
+ if test -n "$llvm_cv_oppath" ; then
+- LIBS="$LIBS -lopagent -L${llvm_cv_oppath} -Wl,-rpath,${llvm_cv_oppath}"
++ #LIBS="$LIBS -lopagent -L${llvm_cv_oppath} -Wl,-rpath,${llvm_cv_oppath}"
+ { echo "$as_me:$LINENO: checking for library containing bfd_init" >&5
+ echo $ECHO_N "checking for library containing bfd_init... $ECHO_C" >&6; }
+ if test "${ac_cv_search_bfd_init+set}" = set; then
+@@ -10211,7 +10211,7 @@ fi
+ echo "${ECHO_T}$ac_cv_search_bfd_init" >&6; }
+ ac_res=$ac_cv_search_bfd_init
+ if test "$ac_res" != no; then
+- test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
++ test "$ac_res" = "none required" || true
+
+ fi
+
+@@ -10247,8 +10247,8 @@ for ac_lib in '' opagent; do
+ if test -z "$ac_lib"; then
+ ac_res="none required"
+ else
+- ac_res=-l$ac_lib
+- LIBS="-l$ac_lib $ac_func_search_save_LIBS"
++ ac_res="-Wl,--as-needed -l$ac_lib -Wl,--no-as-needed"
++ LIBS="-Wl,--as-needed -l$ac_lib -Wl,--no-as-needed $ac_func_search_save_LIBS"
+ fi
+ rm -f conftest.$ac_objext conftest$ac_exeext
+ if { (ac_try="$ac_link"
diff --git a/debian/patches/0044-soname.diff b/debian/patches/0044-soname.diff
new file mode 100644
index 0000000..0cf7616
--- /dev/null
+++ b/debian/patches/0044-soname.diff
@@ -0,0 +1,30 @@
+---
+ clang/tools/libclang/CMakeLists.txt | 2 +-
+ tools/llvm-shlib/CMakeLists.txt | 1 +
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+Index: llvm-toolchain-snapshot_5.0~svn307684/clang/tools/libclang/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn307684.orig/clang/tools/libclang/CMakeLists.txt
++++ llvm-toolchain-snapshot_5.0~svn307684/clang/tools/libclang/CMakeLists.txt
+@@ -84,7 +84,7 @@ else()
+ set(output_name "clang")
+ endif()
+
+-add_clang_library(libclang ${ENABLE_SHARED} ${ENABLE_STATIC}
++add_clang_library(libclang ${ENABLE_SHARED} ${ENABLE_STATIC} SONAME
+ OUTPUT_NAME ${output_name}
+ ${SOURCES}
+ DEPENDS clang-headers
+Index: llvm-toolchain-snapshot_5.0~svn307684/tools/llvm-shlib/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn307684.orig/tools/llvm-shlib/CMakeLists.txt
++++ llvm-toolchain-snapshot_5.0~svn307684/tools/llvm-shlib/CMakeLists.txt
+@@ -35,6 +35,7 @@ if(LLVM_DYLIB_EXPORTED_SYMBOL_FILE)
+ endif()
+
+ add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
++set_property(TARGET LLVM PROPERTY VERSION "1") # Append .1 to SONAME
+
+ list(REMOVE_DUPLICATES LIB_NAMES)
+ if(("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") OR (MINGW) OR (HAIKU) OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "FreeBSD") OR ("${CMAKE_SYSTEM_NAME}" STREQUAL "DragonFly")) # FIXME: It should be "GNU ld for elf"
diff --git a/debian/patches/19-clang_debian_version.patch b/debian/patches/19-clang_debian_version.patch
new file mode 100644
index 0000000..c530e14
--- /dev/null
+++ b/debian/patches/19-clang_debian_version.patch
@@ -0,0 +1,21 @@
+Index: llvm-toolchain-snapshot_3.5~svn210337/clang/lib/Basic/Version.cpp
+===================================================================
+--- llvm-toolchain-snapshot_3.5~svn210337.orig/clang/lib/Basic/Version.cpp
++++ llvm-toolchain-snapshot_3.5~svn210337/clang/lib/Basic/Version.cpp
+@@ -15,6 +15,7 @@
+ #include "clang/Basic/LLVM.h"
+ #include "clang/Config/config.h"
+ #include "llvm/Support/raw_ostream.h"
++#include "clang/Debian/debian_path.h"
+ #include <cstdlib>
+ #include <cstring>
+
+@@ -125,7 +126,7 @@ std::string getClangToolFullVersion(Stri
+ #ifdef CLANG_VENDOR
+ OS << CLANG_VENDOR;
+ #endif
+- OS << ToolName << " version " CLANG_VERSION_STRING " "
++ OS << ToolName << " version " CLANG_VERSION_STRING "-" DEB_PATCHSETVERSION " "
+ << getClangFullRepositoryVersion();
+
+ // If vendor supplied, include the base LLVM version as well.
diff --git a/debian/patches/23-strlcpy_strlcat_warning_removed.diff b/debian/patches/23-strlcpy_strlcat_warning_removed.diff
new file mode 100644
index 0000000..235ffd4
--- /dev/null
+++ b/debian/patches/23-strlcpy_strlcat_warning_removed.diff
@@ -0,0 +1,195 @@
+---
+ clang/include/clang/Basic/Builtins.def | 8 +-
+ clang/lib/AST/Decl.cpp | 12 +--
+ clang/lib/Sema/SemaChecking.cpp | 11 +-
+ clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp | 6 -
+ clang/test/Sema/builtins.c | 11 +-
+ clang/test/Sema/warn-strlcpycat-size.c | 55 --------------
+ 6 files changed, 25 insertions(+), 78 deletions(-)
+
+--- a/clang/include/clang/Basic/Builtins.def
++++ b/clang/include/clang/Basic/Builtins.def
+@@ -488,8 +488,8 @@ BUILTIN(__builtin___memset_chk, "v*v*izz
+ BUILTIN(__builtin___stpcpy_chk, "c*c*cC*z", "nF")
+ BUILTIN(__builtin___strcat_chk, "c*c*cC*z", "nF")
+ BUILTIN(__builtin___strcpy_chk, "c*c*cC*z", "nF")
+-BUILTIN(__builtin___strlcat_chk, "zc*cC*zz", "nF")
+-BUILTIN(__builtin___strlcpy_chk, "zc*cC*zz", "nF")
++//BUILTIN(__builtin___strlcat_chk, "zc*cC*zz", "nF")
++//BUILTIN(__builtin___strlcpy_chk, "zc*cC*zz", "nF")
+ BUILTIN(__builtin___strncat_chk, "c*c*cC*zz", "nF")
+ BUILTIN(__builtin___strncpy_chk, "c*c*cC*zz", "nF")
+ BUILTIN(__builtin___stpncpy_chk, "c*c*cC*zz", "nF")
+@@ -874,8 +874,8 @@ LIBBUILTIN(getcontext, "iK*", "fj",
+ LIBBUILTIN(_longjmp, "vJi", "fr", "setjmp.h", ALL_GNU_LANGUAGES)
+ LIBBUILTIN(siglongjmp, "vSJi", "fr", "setjmp.h", ALL_GNU_LANGUAGES)
+ // non-standard but very common
+-LIBBUILTIN(strlcpy, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES)
+-LIBBUILTIN(strlcat, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES)
++//LIBBUILTIN(strlcpy, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES)
++//LIBBUILTIN(strlcat, "zc*cC*z", "f", "string.h", ALL_GNU_LANGUAGES)
+ // id objc_msgSend(id, SEL, ...)
+ LIBBUILTIN(objc_msgSend, "GGH.", "f", "objc/message.h", OBJC_LANG)
+ // long double objc_msgSend_fpret(id self, SEL op, ...)
+--- a/clang/lib/AST/Decl.cpp
++++ b/clang/lib/AST/Decl.cpp
+@@ -3455,13 +3455,13 @@ unsigned FunctionDecl::getMemoryFunction
+ case Builtin::BImemmove:
+ return Builtin::BImemmove;
+
+- case Builtin::BIstrlcpy:
+- case Builtin::BI__builtin___strlcpy_chk:
+- return Builtin::BIstrlcpy;
++// case Builtin::BIstrlcpy:
++// case Builtin::BI__builtin___strlcpy_chk:
++// return Builtin::BIstrlcpy;
+
+- case Builtin::BIstrlcat:
+- case Builtin::BI__builtin___strlcat_chk:
+- return Builtin::BIstrlcat;
++// case Builtin::BIstrlcat:
++// case Builtin::BI__builtin___strlcat_chk:
++// return Builtin::BIstrlcat;
+
+ case Builtin::BI__builtin_memcmp:
+ case Builtin::BImemcmp:
+--- a/clang/lib/Sema/SemaChecking.cpp
++++ b/clang/lib/Sema/SemaChecking.cpp
+@@ -975,8 +975,8 @@ Sema::CheckBuiltinFunctionCall(FunctionD
+ case Builtin::BI__builtin___memcpy_chk:
+ case Builtin::BI__builtin___memmove_chk:
+ case Builtin::BI__builtin___memset_chk:
+- case Builtin::BI__builtin___strlcat_chk:
+- case Builtin::BI__builtin___strlcpy_chk:
++// case Builtin::BI__builtin___strlcat_chk:
++// case Builtin::BI__builtin___strlcpy_chk:
+ case Builtin::BI__builtin___strncat_chk:
+ case Builtin::BI__builtin___strncpy_chk:
+ case Builtin::BI__builtin___stpncpy_chk:
+@@ -2512,9 +2512,10 @@ bool Sema::CheckFunctionCall(FunctionDec
+ return false;
+
+ // Handle memory setting and copying functions.
+- if (CMId == Builtin::BIstrlcpy || CMId == Builtin::BIstrlcat)
+- CheckStrlcpycatArguments(TheCall, FnInfo);
+- else if (CMId == Builtin::BIstrncat)
++// if (CMId == Builtin::BIstrlcpy || CMId == Builtin::BIstrlcat)
++// CheckStrlcpycatArguments(TheCall, FnInfo);
++// else
++ if (CMId == Builtin::BIstrncat)
+ CheckStrncatArguments(TheCall, FnInfo);
+ else
+ CheckMemaccessArguments(TheCall, CMId, FnInfo);
+--- a/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
++++ b/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp
+@@ -237,9 +237,9 @@ GenericTaintChecker::TaintPropagationRul
+ case Builtin::BIstrncpy:
+ case Builtin::BIstrncat:
+ return TaintPropagationRule(1, 2, 0, true);
+- case Builtin::BIstrlcpy:
+- case Builtin::BIstrlcat:
+- return TaintPropagationRule(1, 2, 0, false);
++// case Builtin::BIstrlcpy:
++// case Builtin::BIstrlcat:
++// return TaintPropagationRule(1, 2, 0, false);
+ case Builtin::BIstrndup:
+ return TaintPropagationRule(0, 1, ReturnValueIndex);
+
+--- a/clang/test/Sema/builtins.c
++++ b/clang/test/Sema/builtins.c
+@@ -190,11 +190,11 @@ void test18() {
+
+ ptr = __builtin___memccpy_chk(dst, src, '\037', sizeof(src), sizeof(dst));
+ result = __builtin___strlcpy_chk(dst, src, sizeof(dst), sizeof(dst));
+- result = __builtin___strlcat_chk(dst, src, sizeof(dst), sizeof(dst));
++// result = __builtin___strlcat_chk(dst, src, sizeof(dst), sizeof(dst));
+
+ ptr = __builtin___memccpy_chk(dst, src, '\037', sizeof(src)); // expected-error {{too few arguments to function call}}
+ ptr = __builtin___strlcpy_chk(dst, src, sizeof(dst), sizeof(dst)); // expected-warning {{incompatible integer to pointer conversion}}
+- ptr = __builtin___strlcat_chk(dst, src, sizeof(dst), sizeof(dst)); // expected-warning {{incompatible integer to pointer conversion}}
++// ptr = __builtin___strlcat_chk(dst, src, sizeof(dst), sizeof(dst)); // expected-warning {{incompatible integer to pointer conversion}}
+ }
+
+ void no_ms_builtins() {
+@@ -209,12 +209,12 @@ void unavailable() {
+ }
+
+ // rdar://18259539
+-size_t strlcpy(char * restrict dst, const char * restrict src, size_t size);
+-size_t strlcat(char * restrict dst, const char * restrict src, size_t size);
++//size_t strlcpy(char * restrict dst, const char * restrict src, size_t size);
++//size_t strlcat(char * restrict dst, const char * restrict src, size_t size);
+
+ void Test19(void)
+ {
+- static char b[40];
++/* static char b[40];
+ static char buf[20];
+
+ strlcpy(buf, b, sizeof(b)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} \\
+@@ -229,6 +229,7 @@ void Test19(void)
+ __builtin___strlcat_chk(buf, b, sizeof(b), __builtin_object_size(buf, 0)); // expected-warning {{size argument in '__builtin___strlcat_chk' call appears to be size of the source; expected the size of the destination}} \
+ // expected-note {{change size argument to be the size of the destination}} \
+ // expected-warning {{'__builtin___strlcat_chk' will always overflow destination buffer}}
++ */
+ }
+
+ // rdar://11076881
+--- a/clang/test/Sema/warn-strlcpycat-size.c
++++ /dev/null
+@@ -1,55 +0,0 @@
+-// RUN: %clang_cc1 -Wstrlcpy-strlcat-size -verify -fsyntax-only %s
+-
+-typedef __SIZE_TYPE__ size_t;
+-size_t strlcpy (char * restrict dst, const char * restrict src, size_t size);
+-size_t strlcat (char * restrict dst, const char * restrict src, size_t size);
+-size_t strlen (const char *s);
+-
+-char s1[100];
+-char s2[200];
+-char * s3;
+-
+-struct {
+- char f1[100];
+- char f2[100][3];
+-} s4, **s5;
+-
+-int x;
+-
+-void f(void)
+-{
+- strlcpy(s1, s2, sizeof(s1)); // no warning
+- strlcpy(s1, s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}}
+- strlcpy(s1, s3, strlen(s3)+1); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}}
+- strlcat(s2, s3, sizeof(s3)); // expected-warning {{size argument in 'strlcat' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}}
+- strlcpy(s4.f1, s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}}
+- strlcpy((*s5)->f2[x], s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}}
+- strlcpy(s1+3, s2, sizeof(s2)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}}
+-}
+-
+-// Don't issue FIXIT for flexible arrays.
+-struct S {
+- int y;
+- char x[];
+-};
+-
+-void flexible_arrays(struct S *s) {
+- char str[] = "hi";
+- strlcpy(s->x, str, sizeof(str)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}}
+-}
+-
+-// Don't issue FIXIT for destinations of size 1.
+-void size_1() {
+- char z[1];
+- char str[] = "hi";
+-
+- strlcpy(z, str, sizeof(str)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}}
+-}
+-
+-// Support VLAs.
+-void vlas(int size) {
+- char z[size];
+- char str[] = "hi";
+-
+- strlcpy(z, str, sizeof(str)); // expected-warning {{size argument in 'strlcpy' call appears to be size of the source; expected the size of the destination}} expected-note {{change size argument to be the size of the destination}}
+-}
diff --git a/debian/patches/26-set-correct-float-abi.diff b/debian/patches/26-set-correct-float-abi.diff
new file mode 100644
index 0000000..c7fe931
--- /dev/null
+++ b/debian/patches/26-set-correct-float-abi.diff
@@ -0,0 +1,33 @@
+Description: set correct float abi settings for armel and armhf
+ debian armel supports systems that don't have a fpu so should use a "float abi"
+ setting of soft by default.
+
+ Debian armhf needs a float abi setting of "hard"
+Author: Peter Michael Green <plugwash@debian.org>
+
+---
+The information above should follow the Patch Tagging Guidelines, please
+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
+are templates for supplementary fields that you might want to add:
+
+Origin: <vendor|upstream|other>, <url of original patch>
+Bug: <url in upstream bugtracker>
+Bug-Debian: http://bugs.debian.org/<bugnumber>
+Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber>
+Forwarded: <no|not-needed|url proving that it has been forwarded>
+Reviewed-By: <name and email of someone who approved the patch>
+Last-Update: <YYYY-MM-DD>
+
+Index: llvm-toolchain-snapshot_5.0~svn297449/clang/lib/Driver/ToolChains/Arch/ARM.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn297449.orig/clang/lib/Driver/ToolChains/Arch/ARM.cpp
++++ llvm-toolchain-snapshot_5.0~svn297449/clang/lib/Driver/ToolChains/Arch/ARM.cpp
+@@ -206,7 +206,7 @@ arm::FloatABI arm::getARMFloatABI(const
+ case llvm::Triple::MuslEABI:
+ case llvm::Triple::EABI:
+ // EABI is always AAPCS, and if it was not marked 'hard', it's softfp
+- ABI = FloatABI::SoftFP;
++ ABI = FloatABI::Soft;
+ break;
+ case llvm::Triple::Android:
+ ABI = (SubArch == 7) ? FloatABI::SoftFP : FloatABI::Soft;
diff --git a/debian/patches/27-fix_clang_stdint.diff b/debian/patches/27-fix_clang_stdint.diff
new file mode 100644
index 0000000..f1c751f
--- /dev/null
+++ b/debian/patches/27-fix_clang_stdint.diff
@@ -0,0 +1,29 @@
+Index: llvm-toolchain-snapshot_5.0~svn301630/clang/lib/Headers/stdint.h
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn301630.orig/clang/lib/Headers/stdint.h
++++ llvm-toolchain-snapshot_5.0~svn301630/clang/lib/Headers/stdint.h
+@@ -22,8 +22,6 @@
+ *
+ \*===----------------------------------------------------------------------===*/
+
+-#ifndef __CLANG_STDINT_H
+-#define __CLANG_STDINT_H
+
+ /* If we're hosted, fall back to the system's stdint.h, which might have
+ * additional definitions.
+@@ -72,6 +70,8 @@
+ # endif
+
+ #else
++#ifndef __CLANG_STDINT_H
++#define __CLANG_STDINT_H
+
+ /* C99 7.18.1.1 Exact-width integer types.
+ * C99 7.18.1.2 Minimum-width integer types.
+@@ -700,5 +700,5 @@ typedef __UINTMAX_TYPE__ uintmax_t;
+ #define INTMAX_C(v) __int_c(v, __INTMAX_C_SUFFIX__)
+ #define UINTMAX_C(v) __int_c(v, __UINTMAX_C_SUFFIX__)
+
+-#endif /* __STDC_HOSTED__ */
+ #endif /* __CLANG_STDINT_H */
++#endif /* __STDC_HOSTED__ */
diff --git a/debian/patches/31-powerpcspe.diff b/debian/patches/31-powerpcspe.diff
new file mode 100644
index 0000000..8eacce7
--- /dev/null
+++ b/debian/patches/31-powerpcspe.diff
@@ -0,0 +1,15 @@
+Index: llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile
+===================================================================
+--- llvm-toolchain-snapshot_3.4~svn188990.orig/clang/lib/Lex/Makefile 2013-08-22 09:07:43.368608381 +0200
++++ llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile 2013-08-22 09:07:43.368608381 +0200
+@@ -17,8 +17,10 @@
+ LIBRARYNAME := clangLex
+
+ ifeq ($(ARCH),PowerPC)
++ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),powerpcspe)
+ CXX.Flags += -maltivec
+ endif
++endif
+
+ include $(CLANG_LEVEL)/Makefile
+
diff --git a/debian/patches/34-powerpc-no-altivec.diff b/debian/patches/34-powerpc-no-altivec.diff
new file mode 100644
index 0000000..5f05828
--- /dev/null
+++ b/debian/patches/34-powerpc-no-altivec.diff
@@ -0,0 +1,24 @@
+Description: Make sure PowerPC doesn't default to altivec on
+Author: Adam Conrad <adconrad@ubuntu.com>
+Author: Peter Michael Green <plugwash@debian.org>
+Forwarded: no
+Reviewed-By: Colin Watson <cjwatson@ubuntu.com>
+
+Last-Update: 2013-04-01
+
+Index: llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile
+===================================================================
+--- llvm-toolchain-snapshot_3.4~svn188990.orig/clang/lib/Lex/Makefile 2013-08-22 09:11:26.616602695 +0200
++++ llvm-toolchain-snapshot_3.4~svn188990/clang/lib/Lex/Makefile 2013-08-22 09:11:26.616602695 +0200
+@@ -16,11 +16,5 @@
+
+ LIBRARYNAME := clangLex
+
+-ifeq ($(ARCH),PowerPC)
+-ifneq ($(shell dpkg-architecture -qDEB_HOST_ARCH),powerpcspe)
+-CXX.Flags += -maltivec
+-endif
+-endif
+-
+ include $(CLANG_LEVEL)/Makefile
+
diff --git a/debian/patches/atomic_library_1.diff b/debian/patches/atomic_library_1.diff
new file mode 100644
index 0000000..b73581d
--- /dev/null
+++ b/debian/patches/atomic_library_1.diff
@@ -0,0 +1,46 @@
+---
+ clang/lib/Basic/Targets.cpp | 14 ++++++++++++++
+ clang/test/CodeGen/linux-arm-atomic.c | 10 ++++++++++
+ 2 files changed, 24 insertions(+)
+
+--- a/clang/lib/Basic/Targets.cpp
++++ b/clang/lib/Basic/Targets.cpp
+@@ -4414,6 +4414,20 @@ protected:
+ Builder.defineMacro("__ELF__");
+ }
+
++ static bool shouldUseInlineAtomic(const llvm::Triple &T) {
++ // On linux, binaries targeting old cpus call functions in libgcc to
++ // perform atomic operations. The implementation in libgcc then calls into
++ // the kernel which on armv6 and newer uses ldrex and strex. The net result
++ // is that if we assume the kernel is at least as recent as the hardware,
++ // it is safe to use atomic instructions on armv6 and newer.
++ if (T.getOS() != llvm::Triple::Linux)
++ return false;
++ StringRef ArchName = T.getArchName();
++ if (ArchName.startswith("armv6") || ArchName.startswith("armv7"))
++ return true;
++ return false;
++ }
++
+ public:
+ RTEMSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts)
+ : OSTargetInfo<Target>(Triple, Opts) {
+--- a/clang/test/CodeGen/linux-arm-atomic.c
++++ b/clang/test/CodeGen/linux-arm-atomic.c
+@@ -1,5 +1,15 @@
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv7-unknown-linux | FileCheck %s
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | FileCheck %s
++
++typedef int _Atomic_word;
++_Atomic_word exchange_and_add(volatile _Atomic_word *__mem, int __val) {
++ return __atomic_fetch_add(__mem, __val, __ATOMIC_ACQ_REL);
++}
++
++// CHECK: define {{.*}} @exchange_and_add
++// CHECK: atomicrmw {{.*}} add
++// RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv7-unknown-linux | FileCheck %s
++// RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | FileCheck %s
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=thumbv7-unknown-linux | FileCheck %s
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-freebsd | FileCheck %s
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-bitrig | FileCheck %s
diff --git a/debian/patches/atomic_library_2.diff b/debian/patches/atomic_library_2.diff
new file mode 100644
index 0000000..e388350
--- /dev/null
+++ b/debian/patches/atomic_library_2.diff
@@ -0,0 +1,43 @@
+---
+ clang/lib/Basic/Targets.cpp | 20 +++++++++++++++++---
+ clang/test/CodeGen/linux-arm-atomic.c | 1 +
+ 2 files changed, 18 insertions(+), 3 deletions(-)
+
+--- a/clang/lib/Basic/Targets.cpp
++++ b/clang/lib/Basic/Targets.cpp
+@@ -4423,9 +4423,23 @@ protected:
+ if (T.getOS() != llvm::Triple::Linux)
+ return false;
+ StringRef ArchName = T.getArchName();
+- if (ArchName.startswith("armv6") || ArchName.startswith("armv7"))
+- return true;
+- return false;
++ if (T.getArch() == llvm::Triple::arm) {
++ if (!ArchName.startswith("armv"))
++ return false;
++ StringRef VersionStr = ArchName.substr(4);
++ unsigned Version;
++ if (VersionStr.getAsInteger(10, Version))
++ return false;
++ return Version >= 6;
++ }
++ assert(T.getArch() == llvm::Triple::thumb);
++ if (!ArchName.startswith("thumbv"))
++ return false;
++ StringRef VersionStr = ArchName.substr(6);
++ unsigned Version;
++ if (VersionStr.getAsInteger(10, Version))
++ return false;
++ return Version >= 7;
+ }
+
+ public:
+--- a/clang/test/CodeGen/linux-arm-atomic.c
++++ b/clang/test/CodeGen/linux-arm-atomic.c
+@@ -1,5 +1,6 @@
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv7-unknown-linux | FileCheck %s
+ // RUN: %clang_cc1 %s -emit-llvm -o - -triple=armv6-unknown-linux | FileCheck %s
++// RUN: %clang_cc1 %s -emit-llvm -o - -triple=thumbv7-unknown-linux | FileCheck %s
+
+ typedef int _Atomic_word;
+ _Atomic_word exchange_and_add(volatile _Atomic_word *__mem, int __val) {
diff --git a/debian/patches/bug-30342.diff b/debian/patches/bug-30342.diff
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/debian/patches/bug-30342.diff
diff --git a/debian/patches/clang-analyzer-force-version.diff b/debian/patches/clang-analyzer-force-version.diff
new file mode 100644
index 0000000..c1d682a
--- /dev/null
+++ b/debian/patches/clang-analyzer-force-version.diff
@@ -0,0 +1,25 @@
+# Force the version of clang in the analyzer
+# This was causing the static analyzer to fail silently if the clang & clang++ are
+# not installed
+Index: llvm-toolchain-snapshot_5.0~svn255.06/clang/tools/scan-build/libexec/ccc-analyzer
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn255.06.orig/clang/tools/scan-build/libexec/ccc-analyzer
++++ llvm-toolchain-snapshot_5.0~svn255.06/clang/tools/scan-build/libexec/ccc-analyzer
+@@ -91,7 +91,7 @@ if ($FindBin::Script =~ /c\+\+-analyzer/
+ if (!defined $Compiler || (! -x $Compiler && ! SearchInPath($Compiler))) { $Compiler = $DefaultCXXCompiler; }
+
+ $Clang = $ENV{'CLANG_CXX'};
+- if (!defined $Clang || ! -x $Clang) { $Clang = 'clang++'; }
++ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang++-5.0'; }
+
+ $IsCXX = 1
+ }
+@@ -100,7 +100,7 @@ else {
+ if (!defined $Compiler || (! -x $Compiler && ! SearchInPath($Compiler))) { $Compiler = $DefaultCCompiler; }
+
+ $Clang = $ENV{'CLANG'};
+- if (!defined $Clang || ! -x $Clang) { $Clang = 'clang'; }
++ if (!defined $Clang || ! -x $Clang) { $Clang = 'clang-5.0'; }
+
+ $IsCXX = 0
+ }
diff --git a/debian/patches/clang-apply-replacements.diff b/debian/patches/clang-apply-replacements.diff
new file mode 100644
index 0000000..f66f025
--- /dev/null
+++ b/debian/patches/clang-apply-replacements.diff
@@ -0,0 +1,35 @@
+Index: llvm-toolchain-3.7-3.7/clang-tools-extra/clang-modernize/Core/ReplacementHandling.cpp
+===================================================================
+--- llvm-toolchain-3.7-3.7.orig/clang-tools-extra/clang-modernize/Core/ReplacementHandling.cpp
++++ llvm-toolchain-3.7-3.7/clang-tools-extra/clang-modernize/Core/ReplacementHandling.cpp
+@@ -26,7 +26,7 @@ using namespace clang::tooling;
+
+ bool ReplacementHandling::findClangApplyReplacements(const char *Argv0) {
+ ErrorOr<std::string> CARPathOrErr =
+- findProgramByName("clang-apply-replacements");
++ findProgramByName("clang-apply-replacements-5.0");
+ if (!CARPathOrErr)
+ return true;
+
+@@ -34,7 +34,7 @@ bool ReplacementHandling::findClangApply
+ static int StaticSymbol;
+ std::string ClangModernizePath = fs::getMainExecutable(Argv0, &StaticSymbol);
+ SmallString<128> TestPath = path::parent_path(ClangModernizePath);
+- path::append(TestPath, "clang-apply-replacements");
++ path::append(TestPath, "clang-apply-replacements-5.0");
+ if (fs::can_execute(Twine(TestPath)))
+ CARPath = TestPath.str();
+
+Index: llvm-toolchain-3.7-3.7/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
+===================================================================
+--- llvm-toolchain-3.7-3.7.orig/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
++++ llvm-toolchain-3.7-3.7/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
+@@ -111,7 +111,7 @@ def main():
+ default='clang-tidy',
+ help='path to clang-tidy binary')
+ parser.add_argument('-clang-apply-replacements-binary', metavar='PATH',
+- default='clang-apply-replacements',
++ default='clang-apply-replacements-5.0',
+ help='path to clang-apply-replacements binary')
+ parser.add_argument('-checks', default=None,
+ help='checks filter, when not specified, use clang-tidy '
diff --git a/debian/patches/clang-default-to-i686-on-32bit-x86-targets.patch b/debian/patches/clang-default-to-i686-on-32bit-x86-targets.patch
new file mode 100644
index 0000000..5df4296
--- /dev/null
+++ b/debian/patches/clang-default-to-i686-on-32bit-x86-targets.patch
@@ -0,0 +1,15 @@
+Set i386 default target CPU to be i686 (same as gcc)
+
+Closes: #812803
+Index: llvm-toolchain-3.9-3.9/clang/lib/Driver/Tools.cpp
+===================================================================
+--- llvm-toolchain-3.9-3.9.orig/clang/lib/Driver/Tools.cpp
++++ llvm-toolchain-3.9-3.9/clang/lib/Driver/Tools.cpp
+@@ -1898,6 +1898,7 @@ static const char *getX86TargetCPU(const
+ case llvm::Triple::Haiku:
+ return "i586";
+ case llvm::Triple::Bitrig:
++ case llvm::Triple::Linux:
+ return "i686";
+ default:
+ // Fallback to p4.
diff --git a/debian/patches/clang-fix-cmpxchg8-detection-on-i386.patch b/debian/patches/clang-fix-cmpxchg8-detection-on-i386.patch
new file mode 100644
index 0000000..868e76a
--- /dev/null
+++ b/debian/patches/clang-fix-cmpxchg8-detection-on-i386.patch
@@ -0,0 +1,54 @@
+libcxx atomic tests for old i386 fail with wrong Atomic inline width.
+cmpxchg8b instruction is required for 8 byte atomics that clang was
+assuming.
+
+Too bad _GCC_ATOMIC_LLONG_LOCK_FREE 2 isn't supported even with this change
+because llvm doesn't support unaligned atomic compare and exchange operation.
+Fallback calls to libatomic.so should handle long long lock free but clang
+can't tell program if libatomic is always lock free.
+
+Related bug: https://llvm.org/bugs/show_bug.cgi?id=19355
+
+Index: llvm-toolchain-snapshot_5.0~svn304075/clang/lib/Basic/Targets.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn304075.orig/clang/lib/Basic/Targets.cpp
++++ llvm-toolchain-snapshot_5.0~svn304075/clang/lib/Basic/Targets.cpp
+@@ -2913,7 +2913,10 @@ class X86TargetInfo : public TargetInfo
+ FP_SSE,
+ FP_387
+ } FPMath = FP_Default;
+-
++protected:
++ bool isCmpXChg8Supported() const {
++ return CPU >= CK_i586;
++ }
+ public:
+ X86TargetInfo(const llvm::Triple &Triple, const TargetOptions &)
+ : TargetInfo(Triple) {
+@@ -3034,6 +3037,8 @@ public:
+ // acceptable.
+ // FIXME: This results in terrible diagnostics. Clang just says the CPU is
+ // invalid without explaining *why*.
++ if (!isCmpXChg8Supported())
++ MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 32;
+ switch (CPU) {
+ case CK_Generic:
+ // No processor selected!
+@@ -4163,7 +4168,7 @@ void X86TargetInfo::getTargetDefines(con
+ Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2");
+ Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4");
+ }
+- if (CPU >= CK_i586)
++ if (isCmpXChg8Supported())
+ Builder.defineMacro("__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8");
+
+ if (HasFloat128)
+@@ -4469,8 +4474,6 @@ public:
+ (1 << TargetInfo::LongDouble));
+
+ // x86-32 has atomics up to 8 bytes
+- // FIXME: Check that we actually have cmpxchg8b before setting
+- // MaxAtomicInlineWidth. (cmpxchg8b is an i586 instruction.)
+ MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 64;
+ }
+ BuiltinVaListKind getBuiltinVaListKind() const override {
diff --git a/debian/patches/clang-format-version.diff b/debian/patches/clang-format-version.diff
new file mode 100644
index 0000000..f8e1619
--- /dev/null
+++ b/debian/patches/clang-format-version.diff
@@ -0,0 +1,39 @@
+---
+ clang/tools/clang-format/clang-format-diff.py | 2 +-
+ clang/tools/clang-format/clang-format.el | 2 +-
+ clang/tools/clang-format/clang-format.py | 2 +-
+ 3 files changed, 3 insertions(+), 3 deletions(-)
+
+--- a/clang/tools/clang-format/clang-format-diff.py
++++ b/clang/tools/clang-format/clang-format-diff.py
+@@ -55,7 +55,7 @@ def main():
+ parser.add_argument('-style',
+ help='formatting style to apply (LLVM, Google, Chromium, '
+ 'Mozilla, WebKit)')
+- parser.add_argument('-binary', default='clang-format',
++ parser.add_argument('-binary', default='clang-format-5.0',
+ help='location of binary to use for clang-format')
+ args = parser.parse_args()
+
+--- a/clang/tools/clang-format/clang-format.el
++++ b/clang/tools/clang-format/clang-format.el
+@@ -36,7 +36,7 @@
+ :group 'tools)
+
+ (defcustom clang-format-executable
+- (or (executable-find "clang-format")
++ (or (executable-find "clang-format-5.0")
+ "clang-format")
+ "Location of the clang-format executable.
+
+--- a/clang/tools/clang-format/clang-format.py
++++ b/clang/tools/clang-format/clang-format.py
+@@ -35,7 +35,7 @@ import vim
+
+ # set g:clang_format_path to the path to clang-format if it is not on the path
+ # Change this to the full path if clang-format is not on the path.
+-binary = 'clang-format'
++binary = 'clang-format-5.0'
+ if vim.eval('exists("g:clang_format_path")') == "1":
+ binary = vim.eval('g:clang_format_path')
+
diff --git a/debian/patches/clang-tidy-run-bin.diff b/debian/patches/clang-tidy-run-bin.diff
new file mode 100644
index 0000000..3e21b5b
--- /dev/null
+++ b/debian/patches/clang-tidy-run-bin.diff
@@ -0,0 +1,17 @@
+Index: llvm-toolchain-3.8-3.8.1/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
+===================================================================
+--- llvm-toolchain-3.8-3.8.1.orig/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
++++ llvm-toolchain-3.8-3.8.1/clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
+@@ -108,10 +108,10 @@ def main():
+ 'clang-tidy and clang-apply-replacements in '
+ '$PATH.')
+ parser.add_argument('-clang-tidy-binary', metavar='PATH',
+- default='clang-tidy',
++ default='clang-tidy-5.0',
+ help='path to clang-tidy binary')
+ parser.add_argument('-clang-apply-replacements-binary', metavar='PATH',
+- default='clang-apply-replacements',
++ default='clang-apply-replacements-5.0',
+ help='path to clang-apply-replacements binary')
+ parser.add_argument('-checks', default=None,
+ help='checks filter, when not specified, use clang-tidy '
diff --git a/debian/patches/compiler-rt-i586.diff b/debian/patches/compiler-rt-i586.diff
new file mode 100644
index 0000000..d2c754a
--- /dev/null
+++ b/debian/patches/compiler-rt-i586.diff
@@ -0,0 +1,34 @@
+Index: llvm-toolchain-snapshot-3.8~svn249990/compiler-rt/make/platform/clang_linux.mk
+===================================================================
+--- llvm-toolchain-snapshot-3.8~svn249990.orig/compiler-rt/make/platform/clang_linux.mk
++++ llvm-toolchain-snapshot-3.8~svn249990/compiler-rt/make/platform/clang_linux.mk
+@@ -21,7 +21,7 @@ ifneq ($(findstring -linux-,$(CompilerTa
+
+ # Define configs only if arch in triple is i386 or x86_64
+ CompilerTargetArch := $(firstword $(subst -, ,$(CompilerTargetTriple)))
+-ifeq ($(call contains,i386 x86_64,$(CompilerTargetArch)),true)
++ifeq ($(call contains,i386 x86_64 i586 i686,$(CompilerTargetArch)),true)
+
+ # TryCompile compiler source flags
+ # Returns exit code of running a compiler invocation.
+@@ -35,7 +35,7 @@ TryCompile = \
+ echo $$?)
+
+ test_source = $(ProjSrcRoot)/make/platform/clang_linux_test_input.c
+-ifeq ($(CompilerTargetArch),i386)
++ifneq (,$(filter $(CompilerTargetArch),i386 i586 i686))
+ SupportedArches := i386
+ ifeq ($(call TryCompile,$(CC),$(test_source),-m64),0)
+ SupportedArches += x86_64
+Index: llvm-toolchain-snapshot-3.8~svn249990/clang/runtime/compiler-rt/Makefile
+===================================================================
+--- llvm-toolchain-snapshot-3.8~svn249990.orig/clang/runtime/compiler-rt/Makefile
++++ llvm-toolchain-snapshot-3.8~svn249990/clang/runtime/compiler-rt/Makefile
+@@ -161,6 +161,7 @@ BuildRuntimeLibraries:
+ ProjSrcRoot=$(COMPILERRT_SRC_ROOT) \
+ ProjObjRoot=$(PROJ_OBJ_DIR) \
+ CC="$(ToolDir)/clang" \
++ LD_LIBRARY_PATH=../build-llvm/Release/lib \
+ VERBOSE=$(VERBOSE) \
+ $(RuntimeDirs:%=clang_%)
+ .PHONY: BuildRuntimeLibraries
diff --git a/debian/patches/declare_clear_cache.diff b/debian/patches/declare_clear_cache.diff
new file mode 100644
index 0000000..9c559b0
--- /dev/null
+++ b/debian/patches/declare_clear_cache.diff
@@ -0,0 +1,15 @@
+---
+ lib/Support/Unix/Memory.inc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/lib/Support/Unix/Memory.inc
++++ b/lib/Support/Unix/Memory.inc
+@@ -319,7 +319,7 @@ void Memory::InvalidateInstructionCache(
+ // FIXME: Can we safely always call this for __GNUC__ everywhere?
+ const char *Start = static_cast<const char *>(Addr);
+ const char *End = Start + Len;
+- __clear_cache(const_cast<char *>(Start), const_cast<char *>(End));
++ __builtin___clear_cache(const_cast<char *>(Start), const_cast<char *>(End));
+ # endif
+
+ #endif // end apple
diff --git a/debian/patches/disable-display-PASS-UNSUPPORTED-XFAIL.diff b/debian/patches/disable-display-PASS-UNSUPPORTED-XFAIL.diff
new file mode 100644
index 0000000..cde5326
--- /dev/null
+++ b/debian/patches/disable-display-PASS-UNSUPPORTED-XFAIL.diff
@@ -0,0 +1,17 @@
+Index: llvm-toolchain-snapshot_4.0~svn280802/lldb/third_party/Python/module/unittest2/unittest2/runner.py
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn280802.orig/lldb/third_party/Python/module/unittest2/unittest2/runner.py
++++ llvm-toolchain-snapshot_4.0~svn280802/lldb/third_party/Python/module/unittest2/unittest2/runner.py
+@@ -174,9 +174,9 @@ class TextTestRunner(unittest.TextTestRu
+ if hasattr(result, 'separator2'):
+ self.stream.writeln(result.separator2)
+ run = result.testsRun
+- self.stream.writeln("Ran %d test%s in %.3fs" %
+- (run, run != 1 and "s" or "", timeTaken))
+- self.stream.writeln()
++# self.stream.writeln("Ran %d test%s in %.3fs" %
++# (run, run != 1 and "s" or "", timeTaken))
++# self.stream.writeln()
+
+ expectedFails = unexpectedSuccesses = skipped = passed = failed = errored = 0
+ try:
diff --git a/debian/patches/disable-error-xray.diff b/debian/patches/disable-error-xray.diff
new file mode 100644
index 0000000..2b77cf8
--- /dev/null
+++ b/debian/patches/disable-error-xray.diff
@@ -0,0 +1,13 @@
+Index: llvm-toolchain-snapshot_5.0~svn300419/compiler-rt/lib/xray/xray_tsc.h
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn300419.orig/compiler-rt/lib/xray/xray_tsc.h
++++ llvm-toolchain-snapshot_5.0~svn300419/compiler-rt/lib/xray/xray_tsc.h
+@@ -61,8 +61,6 @@ inline uint64_t getTSCFrequency() XRAY_N
+
+ } // namespace __xray
+
+-#else
+-#error Target architecture is not supported.
+ #endif // CPU architecture
+
+ #endif // XRAY_EMULATE_TSC_H
diff --git a/debian/patches/disable-execinfo-usage.diff b/debian/patches/disable-execinfo-usage.diff
new file mode 100644
index 0000000..e9d5bec
--- /dev/null
+++ b/debian/patches/disable-execinfo-usage.diff
@@ -0,0 +1,13 @@
+Index: llvm-toolchain-snapshot_3.8~svn253186/lldb/lib/Makefile
+===================================================================
+--- llvm-toolchain-snapshot_3.8~svn253186.orig/lldb/lib/Makefile
++++ llvm-toolchain-snapshot_3.8~svn253186/lldb/lib/Makefile
+@@ -201,7 +201,7 @@ ifeq ($(HOST_OS),FreeBSD)
+ # Allow unresolved symbols.
+ LLVMLibsOptions += -Wl,--allow-shlib-undefined
+ # Link in python
+- LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt -L/usr/local/lib -lexecinfo \
++ LLVMLibsOptions += $(PYTHON_BUILD_FLAGS) -lrt \
+ -ledit -lncurses -lpanel -lpthread
+ endif
+
diff --git a/debian/patches/disable-llvm-symbolizer-test.diff b/debian/patches/disable-llvm-symbolizer-test.diff
new file mode 100644
index 0000000..f949169
--- /dev/null
+++ b/debian/patches/disable-llvm-symbolizer-test.diff
@@ -0,0 +1,26 @@
+Description: Silent a test failing on yakkety amd64
+ /tmp/buildd/llvm-toolchain-snapshot-4.0~svn279801/test/tools/llvm-symbolizer/print_context.c:16:11: error: expected string not found in input
+ // CHECK: inc
+ ^
+ <stdin>:1:1: note: scanning from here
+ _fini
+ ^
+ <stdin>:1:3: note: possible intended match here
+ _fini
+ ^
+Author: Sylvestre <sylvestre@debian.org>
+Last-Update: 2016-08-26
+
+Index: llvm-toolchain-3.9-3.9~+rc1/test/tools/llvm-symbolizer/print_context.c
+===================================================================
+--- llvm-toolchain-3.9-3.9~+rc1.orig/test/tools/llvm-symbolizer/print_context.c
++++ llvm-toolchain-3.9-3.9~+rc1/test/tools/llvm-symbolizer/print_context.c
+@@ -1,7 +1,7 @@
+ // REQUIRES: x86_64-linux
+ // RUN: %host_cc -O0 -g %s -o %t 2>&1
+ // RUN: %t 2>&1 | llvm-symbolizer -print-source-context-lines=5 -obj=%t | FileCheck %s
+-
++// XFAIL: *
+ #include <stdio.h>
+
+ int inc(int a) {
diff --git a/debian/patches/disable-path-test-failing.diff b/debian/patches/disable-path-test-failing.diff
new file mode 100644
index 0000000..d239a12
--- /dev/null
+++ b/debian/patches/disable-path-test-failing.diff
@@ -0,0 +1,29 @@
+Index: llvm-toolchain-snapshot_5.0~svn298832/unittests/Support/Path.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn298832.orig/unittests/Support/Path.cpp
++++ llvm-toolchain-snapshot_5.0~svn298832/unittests/Support/Path.cpp
+@@ -472,7 +472,7 @@ protected:
+ errs().flush();
+ }
+
+- void TearDown() override { ASSERT_NO_ERROR(fs::remove(TestDirectory.str())); }
++// void TearDown() override { ASSERT_NO_ERROR(fs::remove(TestDirectory.str())); }
+ };
+
+ TEST_F(FileSystemTest, Unique) {
+@@ -552,13 +552,13 @@ TEST_F(FileSystemTest, RealPath) {
+
+ SmallString<64> HomeDir;
+ bool Result = llvm::sys::path::home_directory(HomeDir);
+- if (Result) {
++/* if (Result) {
+ ASSERT_NO_ERROR(fs::real_path(HomeDir, Expected));
+ ASSERT_NO_ERROR(fs::real_path("~", Actual, true));
+ EXPECT_EQ(Expected, Actual);
+ ASSERT_NO_ERROR(fs::real_path("~/", Actual, true));
+ EXPECT_EQ(Expected, Actual);
+- }
++ }*/
+
+ ASSERT_NO_ERROR(fs::remove_directories(Twine(TestDirectory) + "/test1"));
+ }
diff --git a/debian/patches/disable-source-interleave.diff b/debian/patches/disable-source-interleave.diff
new file mode 100644
index 0000000..929098e
--- /dev/null
+++ b/debian/patches/disable-source-interleave.diff
@@ -0,0 +1,12 @@
+Index: llvm-toolchain-snapshot_4.0~svn290969/test/tools/llvm-objdump/X86/source-interleave-x86_64.ll
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/test/tools/llvm-objdump/X86/source-interleave-x86_64.ll
++++ llvm-toolchain-snapshot_4.0~svn290969/test/tools/llvm-objdump/X86/source-interleave-x86_64.ll
+@@ -4,6 +4,7 @@
+ ; RUN: llvm-objdump -d -l %t.o | FileCheck --check-prefix="LINES" %t.ll
+ ; RUN: llvm-objdump -d -S %t.o | FileCheck --check-prefix="SOURCE" %t.ll
+ ; ModuleID = 'source-interleave-x86_64.bc'
++; XFAIL: *
+ source_filename = "source-interleave-x86_64.c"
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
diff --git a/debian/patches/do-not-fail-on-unexpected-pass.diff b/debian/patches/do-not-fail-on-unexpected-pass.diff
new file mode 100644
index 0000000..f9b8fab
--- /dev/null
+++ b/debian/patches/do-not-fail-on-unexpected-pass.diff
@@ -0,0 +1,13 @@
+Index: llvm-toolchain-snapshot_3.9~svn268880/utils/lit/lit/Test.py
+===================================================================
+--- llvm-toolchain-snapshot_3.9~svn268880.orig/utils/lit/lit/Test.py
++++ llvm-toolchain-snapshot_3.9~svn268880/utils/lit/lit/Test.py
+@@ -30,7 +30,7 @@ PASS = ResultCode('PASS', False)
+ FLAKYPASS = ResultCode('FLAKYPASS', False)
+ XFAIL = ResultCode('XFAIL', False)
+ FAIL = ResultCode('FAIL', True)
+-XPASS = ResultCode('XPASS', True)
++XPASS = ResultCode('XPASS', False)
+ UNRESOLVED = ResultCode('UNRESOLVED', True)
+ UNSUPPORTED = ResultCode('UNSUPPORTED', False)
+ TIMEOUT = ResultCode('TIMEOUT', True)
diff --git a/debian/patches/fix-clang-path-and-build.diff b/debian/patches/fix-clang-path-and-build.diff
new file mode 100644
index 0000000..1b47f0e
--- /dev/null
+++ b/debian/patches/fix-clang-path-and-build.diff
@@ -0,0 +1,24 @@
+---
+ clang/lib/Driver/ToolChains.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+Index: llvm-toolchain-5.0-5.0~+rc2/clang/lib/Driver/ToolChains/Gnu.cpp
+===================================================================
+--- llvm-toolchain-5.0-5.0~+rc2.orig/clang/lib/Driver/ToolChains/Gnu.cpp
++++ llvm-toolchain-5.0-5.0~+rc2/clang/lib/Driver/ToolChains/Gnu.cpp
+@@ -15,6 +15,7 @@
+ #include "Arch/SystemZ.h"
+ #include "CommonArgs.h"
+ #include "clang/Basic/VirtualFileSystem.h"
++#include "clang/Basic/Version.h"
+ #include "clang/Config/config.h" // for GCC_INSTALL_PREFIX
+ #include "clang/Driver/Compilation.h"
+ #include "clang/Driver/Driver.h"
+@@ -2368,6 +2369,7 @@ void Generic_GCC::AddClangCXXStdlibInclu
+ addLibStdCxxIncludePaths(DriverArgs, CC1Args);
+ break;
+ }
++ addSystemInclude(DriverArgs, CC1Args, "/usr/include/clang/" + std::string(CLANG_VERSION_STRING) + "/include/");
+ }
+
+ std::string Generic_GCC::findLibCxxIncludePath() const {
diff --git a/debian/patches/fix-cmake-config-prefix.diff b/debian/patches/fix-cmake-config-prefix.diff
new file mode 100644
index 0000000..2587d10
--- /dev/null
+++ b/debian/patches/fix-cmake-config-prefix.diff
@@ -0,0 +1,27 @@
+## Description: add some description
+## Origin/Author: add some origin or author
+## Bug: bug URL
+---
+# cmake/modules/CMakeLists.txt | 11 +----------
+# 1 file changed, 1 insertion(+), 10 deletions(-)
+#
+--- a/cmake/modules/CMakeLists.txt
++++ b/cmake/modules/CMakeLists.txt
+@@ -74,16 +74,7 @@ file(COPY .
+ )
+
+ # Generate LLVMConfig.cmake for the install tree.
+-set(LLVM_CONFIG_CODE "
+-# Compute the installation prefix from this LLVMConfig.cmake file location.
+-get_filename_component(LLVM_INSTALL_PREFIX \"\${CMAKE_CURRENT_LIST_FILE}\" PATH)")
+-# Construct the proper number of get_filename_component(... PATH)
+-# calls to compute the installation prefix.
+-string(REGEX REPLACE "/" ";" _count "${LLVM_INSTALL_PACKAGE_DIR}")
+-foreach(p ${_count})
+- set(LLVM_CONFIG_CODE "${LLVM_CONFIG_CODE}
+-get_filename_component(LLVM_INSTALL_PREFIX \"\${LLVM_INSTALL_PREFIX}\" PATH)")
+-endforeach(p)
++set(LLVM_CONFIG_CODE "set(LLVM_INSTALL_PREFIX \"${CMAKE_INSTALL_PREFIX}\")")
+ set(LLVM_CONFIG_INCLUDE_DIRS "\${LLVM_INSTALL_PREFIX}/include")
+ set(LLVM_CONFIG_LIBRARY_DIRS "\${LLVM_INSTALL_PREFIX}/lib\${LLVM_LIBDIR_SUFFIX}")
+ set(LLVM_CONFIG_CMAKE_DIR "\${LLVM_INSTALL_PREFIX}/${LLVM_INSTALL_PACKAGE_DIR}")
diff --git a/debian/patches/fix-lldb-server-build b/debian/patches/fix-lldb-server-build
new file mode 100644
index 0000000..c9f92d4
--- /dev/null
+++ b/debian/patches/fix-lldb-server-build
@@ -0,0 +1,73 @@
+---
+ cmake/modules/AddLLVM.cmake | 2 -
+ polly/lib/CMakeLists.txt | 47 +++++++++++++++++---------------------------
+ 2 files changed, 20 insertions(+), 29 deletions(-)
+
+--- a/cmake/modules/AddLLVM.cmake
++++ b/cmake/modules/AddLLVM.cmake
+@@ -501,7 +501,7 @@ function(llvm_add_library name)
+ # On DLL platforms symbols are imported from the tool by linking against it.
+ set(llvm_libs ${ARG_PLUGIN_TOOL})
+ elseif (DEFINED LLVM_LINK_COMPONENTS OR DEFINED ARG_LINK_COMPONENTS)
+- if (LLVM_LINK_LLVM_DYLIB AND NOT ARG_DISABLE_LLVM_LINK_LLVM_DYLIB)
++ if (NOT ARG_STATIC AND LLVM_LINK_LLVM_DYLIB AND NOT ARG_DISABLE_LLVM_LINK_LLVM_DYLIB)
+ set(llvm_libs LLVM)
+ else()
+ llvm_map_components_to_libnames(llvm_libs
+--- a/polly/lib/CMakeLists.txt
++++ b/polly/lib/CMakeLists.txt
+@@ -66,35 +66,26 @@ endif (GPU_CODEGEN)
+
+ target_link_libraries(Polly PollyISL jsoncpp)
+
+-if (BUILD_SHARED_LIBS)
+- target_link_libraries(Polly
+- LLVMSupport
+- LLVMCore
+- LLVMScalarOpts
+- LLVMInstCombine
+- LLVMTransformUtils
+- LLVMAnalysis
+- LLVMipo
+- LLVMMC
++target_link_libraries(Polly
++ LLVMSupport
++ LLVMCore
++ LLVMScalarOpts
++ LLVMInstCombine
++ LLVMTransformUtils
++ LLVMAnalysis
++ LLVMipo
++ LLVMMC
+ # The libraries below are required for darwin: http://PR26392
+- LLVMBitReader
+- LLVMMCParser
+- LLVMObject
+- LLVMProfileData
+- LLVMTarget
+- LLVMVectorize
+- )
+- link_directories(
+- ${LLVM_LIBRARY_DIR}
+- )
+-elseif (LLVM_LINK_LLVM_DYLIB)
+- target_link_libraries(Polly
+- LLVM
+- )
+- link_directories(
+- ${LLVM_LIBRARY_DIR}
+- )
+-endif()
++ LLVMBitReader
++ LLVMMCParser
++ LLVMObject
++ LLVMProfileData
++ LLVMTarget
++ LLVMVectorize
++)
++link_directories(
++ ${LLVM_LIBRARY_DIR}
++)
+
+ # Build a monolithic Polly.a and a thin module LLVMPolly.moduleext that links to
+ # that static library.
diff --git a/debian/patches/fix-llvm-config-obj-src-root.patch b/debian/patches/fix-llvm-config-obj-src-root.patch
new file mode 100644
index 0000000..bc1e679
--- /dev/null
+++ b/debian/patches/fix-llvm-config-obj-src-root.patch
@@ -0,0 +1,20 @@
+---
+ tools/llvm-config/llvm-config.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: llvm-toolchain-snapshot_5.0~svn298810/tools/llvm-config/llvm-config.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn298810.orig/tools/llvm-config/llvm-config.cpp
++++ llvm-toolchain-snapshot_5.0~svn298810/tools/llvm-config/llvm-config.cpp
+@@ -555,9 +555,9 @@ int main(int argc, char **argv) {
+ } else if (Arg == "--shared-mode") {
+ PrintSharedMode = true;
+ } else if (Arg == "--obj-root") {
+- OS << ActivePrefix << '\n';
++ OS << ActivePrefix << "/build/" << '\n';
+ } else if (Arg == "--src-root") {
+- OS << LLVM_SRC_ROOT << '\n';
++ OS << ActivePrefix << "/build/" << '\n';
+ } else if (Arg == "--ignore-libllvm") {
+ LinkDyLib = false;
+ LinkMode = BuiltSharedLibs ? LinkModeShared : LinkModeAuto;
diff --git a/debian/patches/fix-scan-view-path.diff b/debian/patches/fix-scan-view-path.diff
new file mode 100644
index 0000000..d9fa6c8
--- /dev/null
+++ b/debian/patches/fix-scan-view-path.diff
@@ -0,0 +1,21 @@
+Index: llvm-toolchain-3.9-3.9/clang/tools/scan-view/bin/scan-view
+===================================================================
+--- llvm-toolchain-3.9-3.9.orig/clang/tools/scan-view/bin/scan-view
++++ llvm-toolchain-3.9-3.9/clang/tools/scan-view/bin/scan-view
+@@ -23,6 +23,7 @@ kDefaultPort = 8181
+ kMaxPortsToTry = 100
+
+ ###
++BASE_DIR = '/usr/share/clang/scan-view-3.9'
+
+
+ def url_is_up(url):
+@@ -61,7 +62,7 @@ def start_browser(port, options):
+
+ def run(port, options, root):
+ # Prefer to look relative to the installed binary
+- share = os.path.dirname(__file__) + "/../share/"
++ share = os.path.join(BASE_DIR, 'share')
+ if not os.path.isdir(share):
+ # Otherwise look relative to the source
+ share = os.path.dirname(__file__) + "/../../scan-view/share"
diff --git a/debian/patches/follow-parallel-var.diff b/debian/patches/follow-parallel-var.diff
new file mode 100644
index 0000000..45af781
--- /dev/null
+++ b/debian/patches/follow-parallel-var.diff
@@ -0,0 +1,16 @@
+Index: llvm-toolchain-3.4-3.4.2/test/Makefile
+===================================================================
+--- llvm-toolchain-3.4-3.4.2.orig/test/Makefile
++++ llvm-toolchain-3.4-3.4.2/test/Makefile
+@@ -29,6 +29,11 @@ else
+ LIT_ARGS := -s -v
+ endif
+
++# NJOBS allows an override of the number of threads
++ifneq ($(NJOBS),)
++LIT_ARGS += $(NJOBS)
++endif
++
+ ifdef TESTSUITE
+ LIT_TESTSUITE := $(TESTSUITE)
+ else
diff --git a/debian/patches/force-gcc-header-obj.diff b/debian/patches/force-gcc-header-obj.diff
new file mode 100644
index 0000000..bcd2cbd
--- /dev/null
+++ b/debian/patches/force-gcc-header-obj.diff
@@ -0,0 +1,16 @@
+Index: llvm-toolchain-snapshot_3.5~svn201651/clang/lib/Driver/ToolChains.cpp
+===================================================================
+--- llvm-toolchain-snapshot_3.5~svn201651.orig/clang/lib/Driver/ToolChains.cpp 2014-02-19 09:46:43.433569829 +0100
++++ llvm-toolchain-snapshot_3.5~svn201651/clang/lib/Driver/ToolChains.cpp 2014-02-19 09:46:45.621708435 +0100
+@@ -3078,6 +3078,11 @@
+ return;
+ }
+
++ // Force the inclusion of the gcc headers (objc/objc.h)
++ addExternCSystemIncludeIfExists(
++ DriverArgs, CC1Args, GCCInstallation.getInstallPath() + "/include");
++
++
+ // Lacking those, try to detect the correct set of system includes for the
+ // target triple.
+
diff --git a/debian/patches/force-link-pass.o.diff b/debian/patches/force-link-pass.o.diff
new file mode 100644
index 0000000..f913491
--- /dev/null
+++ b/debian/patches/force-link-pass.o.diff
@@ -0,0 +1,28 @@
+Index: llvm-toolchain-snapshot_3.7~svn231588/tools/bugpoint/Makefile
+===================================================================
+--- llvm-toolchain-snapshot_3.7~svn231588.orig/tools/bugpoint/Makefile
++++ llvm-toolchain-snapshot_3.7~svn231588/tools/bugpoint/Makefile
+@@ -12,6 +12,9 @@ TOOLNAME := bugpoint
+ LINK_COMPONENTS := asmparser instrumentation scalaropts ipo linker bitreader \
+ bitwriter irreader vectorize objcarcopts codegen
+
++# Crappy workaround to make sure it links correctly.
++LLVMLibsOptions := ../../lib/IR/Release*/Pass.o
++
+ # Support plugins.
+ NO_DEAD_STRIP := 1
+
+Index: llvm-toolchain-snapshot_3.7~svn231588/tools/opt/Makefile
+===================================================================
+--- llvm-toolchain-snapshot_3.7~svn231588.orig/tools/opt/Makefile
++++ llvm-toolchain-snapshot_3.7~svn231588/tools/opt/Makefile
+@@ -11,6 +11,9 @@ LEVEL := ../..
+ TOOLNAME := opt
+ LINK_COMPONENTS := bitreader bitwriter asmparser irreader instrumentation scalaropts objcarcopts ipo vectorize all-targets codegen passes
+
++# Crappy workaround to make sure it links correctly.
++LLVMLibsOptions := ../../lib/IR/Release*/Pass.o
++
+ # Support plugins.
+ NO_DEAD_STRIP := 1
+
diff --git a/debian/patches/gcc-7.1-workaround.diff b/debian/patches/gcc-7.1-workaround.diff
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/debian/patches/gcc-7.1-workaround.diff
diff --git a/debian/patches/hurd-EIEIO-undef.diff b/debian/patches/hurd-EIEIO-undef.diff
new file mode 100644
index 0000000..3b98ad9
--- /dev/null
+++ b/debian/patches/hurd-EIEIO-undef.diff
@@ -0,0 +1,14 @@
+Index: llvm-toolchain-snapshot_3.9~svn268880/utils/TableGen/CodeEmitterGen.cpp
+===================================================================
+--- llvm-toolchain-snapshot_3.9~svn268880.orig/utils/TableGen/CodeEmitterGen.cpp
++++ llvm-toolchain-snapshot_3.9~svn268880/utils/TableGen/CodeEmitterGen.cpp
+@@ -229,6 +229,9 @@ void CodeEmitterGen::run(raw_ostream &o)
+ ArrayRef<const CodeGenInstruction*> NumberedInstructions =
+ Target.getInstructionsByEnumValue();
+
++ o << "// Undef for HURD\n";
++ o << "#ifdef EIEIO\n#undef EIEIO\n#endif\n";
++
+ // Emit function declaration
+ o << "uint64_t " << Target.getName();
+ o << "MCCodeEmitter::getBinaryCodeForInstr(const MCInst &MI,\n"
diff --git a/debian/patches/hurd-pathmax.diff b/debian/patches/hurd-pathmax.diff
new file mode 100644
index 0000000..229c9d5
--- /dev/null
+++ b/debian/patches/hurd-pathmax.diff
@@ -0,0 +1,77 @@
+Index: llvm-toolchain-4.0-4.0.1~+rc2/clang/lib/Basic/FileManager.cpp
+===================================================================
+--- llvm-toolchain-4.0-4.0.1~+rc2.orig/clang/lib/Basic/FileManager.cpp
++++ llvm-toolchain-4.0-4.0.1~+rc2/clang/lib/Basic/FileManager.cpp
+@@ -500,6 +500,12 @@ void FileManager::invalidateCache(const
+ UniqueRealFiles.erase(Entry->getUniqueID());
+ }
+
++// For GNU Hurd
++#if defined(__GNU__) && !defined(PATH_MAX)
++# define PATH_MAX 4096
++#endif
++
++
+ void FileManager::GetUniqueIDMapping(
+ SmallVectorImpl<const FileEntry *> &UIDToFiles) const {
+ UIDToFiles.clear();
+Index: llvm-toolchain-4.0-4.0.1~+rc2/lldb/include/lldb/lldb-defines.h
+===================================================================
+--- llvm-toolchain-4.0-4.0.1~+rc2.orig/lldb/include/lldb/lldb-defines.h
++++ llvm-toolchain-4.0-4.0.1~+rc2/lldb/include/lldb/lldb-defines.h
+@@ -28,6 +28,11 @@
+ #define INT32_MAX 2147483647
+ #endif
+
++// For GNU Hurd
++#if defined(__GNU__) && !defined(PATH_MAX)
++# define PATH_MAX 4096
++#endif
++
+ #if !defined(UINT32_MAX)
+ #define UINT32_MAX 4294967295U
+ #endif
+Index: llvm-toolchain-4.0-4.0.1~+rc2/lib/Support/Unix/Path.inc
+===================================================================
+--- llvm-toolchain-4.0-4.0.1~+rc2.orig/lib/Support/Unix/Path.inc
++++ llvm-toolchain-4.0-4.0.1~+rc2/lib/Support/Unix/Path.inc
+@@ -62,6 +62,7 @@
+ // For GNU Hurd
+ #if defined(__GNU__) && !defined(PATH_MAX)
+ # define PATH_MAX 4096
++# define MAXPATHLEN 4096
+ #endif
+
+ #include <sys/types.h>
+Index: llvm-toolchain-4.0-4.0.1~+rc2/tools/dsymutil/DwarfLinker.cpp
+===================================================================
+--- llvm-toolchain-4.0-4.0.1~+rc2.orig/tools/dsymutil/DwarfLinker.cpp
++++ llvm-toolchain-4.0-4.0.1~+rc2/tools/dsymutil/DwarfLinker.cpp
+@@ -42,6 +42,11 @@
+ #include <string>
+ #include <tuple>
+
++// For GNU Hurd
++#if defined(__GNU__) && !defined(PATH_MAX)
++# define PATH_MAX 4096
++#endif
++
+ namespace llvm {
+ namespace dsymutil {
+
+Index: llvm-toolchain-4.0-4.0.1~+rc2/polly/lib/External/ppcg/cuda_common.c
+===================================================================
+--- llvm-toolchain-4.0-4.0.1~+rc2.orig/polly/lib/External/ppcg/cuda_common.c
++++ llvm-toolchain-4.0-4.0.1~+rc2/polly/lib/External/ppcg/cuda_common.c
+@@ -15,6 +15,11 @@
+ #include "cuda_common.h"
+ #include "ppcg.h"
+
++// For GNU Hurd
++#if defined(__GNU__) && !defined(PATH_MAX)
++# define PATH_MAX 4096
++#endif
++
+ /* Open the host .cu file and the kernel .hu and .cu files for writing.
+ * Add the necessary includes.
+ */
diff --git a/debian/patches/install-scan-build-py.diff b/debian/patches/install-scan-build-py.diff
new file mode 100644
index 0000000..0d09cdc
--- /dev/null
+++ b/debian/patches/install-scan-build-py.diff
@@ -0,0 +1,14 @@
+---
+ clang/tools/CMakeLists.txt | 1 +
+ 1 file changed, 1 insertion(+)
+
+--- a/clang/tools/CMakeLists.txt
++++ b/clang/tools/CMakeLists.txt
+@@ -17,6 +17,7 @@ endif()
+ if(CLANG_ENABLE_STATIC_ANALYZER)
+ add_clang_subdirectory(clang-check)
+ add_clang_subdirectory(scan-build)
++ add_clang_subdirectory(scan-build-py)
+ add_clang_subdirectory(scan-view)
+ endif()
+
diff --git a/debian/patches/lld-arg-cmake-issue.diff b/debian/patches/lld-arg-cmake-issue.diff
new file mode 100644
index 0000000..40ff8ab
--- /dev/null
+++ b/debian/patches/lld-arg-cmake-issue.diff
@@ -0,0 +1,141 @@
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/cmake/modules/AddLLD.cmake
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/cmake/modules/AddLLD.cmake
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/cmake/modules/AddLLD.cmake
+@@ -1,5 +1,5 @@
+ macro(add_lld_library name)
+- add_llvm_library(${name} ${ARGN})
++ llvm_add_library(${name} ${ARGN})
+ set_target_properties(${name} PROPERTIES FOLDER "lld libraries")
+ endmacro(add_lld_library)
+
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/lib/Config/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/lib/Config/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/lib/Config/CMakeLists.txt
+@@ -4,6 +4,6 @@
+ ADDITIONAL_HEADER_DIRS
+ ${LLD_INCLUDE_DIR}/lld/Config
+
+- LINK_LIBS
+- LLVMSupport
++ LINK_COMPONENTS
++ Support
+ )
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/lib/Core/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/lib/Core/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/lib/Core/CMakeLists.txt
+@@ -12,6 +12,6 @@
+ ADDITIONAL_HEADER_DIRS
+ ${LLD_INCLUDE_DIR}/lld/Core
+
+- LINK_LIBS
+- LLVMSupport
++ LINK_COMPONENTS
++ Support
+ )
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/lib/Driver/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/lib/Driver/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/lib/Driver/CMakeLists.txt
+@@ -8,15 +8,17 @@
+ ADDITIONAL_HEADER_DIRS
+ ${LLD_INCLUDE_DIR}/lld/Driver
+
++ LINK_COMPONENTS
++ Object
++ Option
++ Support
++
+ LINK_LIBS
+ lldConfig
+ lldMachO
+ lldCore
+ lldReaderWriter
+ lldYAML
+- LLVMObject
+- LLVMOption
+- LLVMSupport
+ )
+
+ add_dependencies(lldDriver DriverOptionsTableGen)
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/lib/ReaderWriter/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/lib/ReaderWriter/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/lib/ReaderWriter/CMakeLists.txt
+@@ -11,9 +11,11 @@
+ ADDITIONAL_HEADER_DIRS
+ ${LLD_INCLUDE_DIR}/lld/ReaderWriter
+
++ LINK_COMPONENTS
++ Object
++ Support
++
+ LINK_LIBS
+ lldCore
+ lldYAML
+- LLVMObject
+- LLVMSupport
+ )
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/lib/ReaderWriter/MachO/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/lib/ReaderWriter/MachO/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/lib/ReaderWriter/MachO/CMakeLists.txt
+@@ -18,13 +18,16 @@
+ StubsPass.cpp
+ TLVPass.cpp
+ WriterMachO.cpp
++
++ LINK_COMPONENTS
++ DebugInfoDWARF
++ Object
++ Support
++ Demangle
++
+ LINK_LIBS
+ lldCore
+ lldYAML
+- LLVMDebugInfoDWARF
+- LLVMObject
+- LLVMSupport
+- LLVMDemangle
+ ${PTHREAD_LIB}
+ )
+
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/lib/ReaderWriter/YAML/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/lib/ReaderWriter/YAML/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/lib/ReaderWriter/YAML/CMakeLists.txt
+@@ -1,6 +1,9 @@
+ add_lld_library(lldYAML
+ ReaderWriterYAML.cpp
++
++ LINK_COMPONENTS
++ Support
++
+ LINK_LIBS
+ lldCore
+- LLVMSupport
+ )
+Index: llvm-toolchain-snapshot_4.0~svn290969/lld/tools/lld/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn290969.orig/lld/tools/lld/CMakeLists.txt
++++ llvm-toolchain-snapshot_4.0~svn290969/lld/tools/lld/CMakeLists.txt
+@@ -1,12 +1,15 @@
++set(LLVM_LINK_COMPONENTS
++ Support
++ )
++
+ add_lld_tool(lld
+ lld.cpp
+ )
+
+ target_link_libraries(lld
+ lldDriver
+ lldCOFF
+ lldELF
+- LLVMSupport
+ )
+
+ install(TARGETS lld
diff --git a/debian/patches/lldb-addversion-suffix-to-llvm-server-exec.patch b/debian/patches/lldb-addversion-suffix-to-llvm-server-exec.patch
new file mode 100644
index 0000000..9cb1c43
--- /dev/null
+++ b/debian/patches/lldb-addversion-suffix-to-llvm-server-exec.patch
@@ -0,0 +1,35 @@
+lldb-server exec users always /usr/bin/lldb-server. Server is required
+for any debugging with lldb which makes it unusable unless default version
+package has been installed. Small changes to code and debian/rules allows
+a workaround for lldb-server start up.
+
+To use this one needs to add cmake defination during configure. eg
+-DDEBIAN_VERSION_SUFFIX=-$(LLVM_VERSION)
+
+Better implementation would be to use /usr/share/llvm-$(VERSION)/bin but
+that change seems to require a big change to the path handling code
+which could then break something else.
+
+This probably should have upstream bug but I couldn't find any existing report.
+
+Index: llvm-toolchain-snapshot_5.0~svn293997/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293997.orig/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
++++ llvm-toolchain-snapshot_5.0~svn293997/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp
+@@ -32,6 +32,7 @@
+ #include "lldb/Utility/StreamString.h"
+ #include "llvm/ADT/SmallString.h"
+ #include "llvm/Support/ScopedPrinter.h"
++#include "llvm/Config/llvm-config.h"
+
+ // Project includes
+ #include "ProcessGDBRemoteLog.h"
+@@ -39,7 +40,7 @@
+ #if defined(__APPLE__)
+ #define DEBUGSERVER_BASENAME "debugserver"
+ #else
+-#define DEBUGSERVER_BASENAME "lldb-server"
++# define DEBUGSERVER_BASENAME "lldb-server-"LLVM_VERSION_STRING
+ #endif
+
+ #if defined(HAVE_LIBCOMPRESSION)
diff --git a/debian/patches/lldb-disable-swig-error.diff b/debian/patches/lldb-disable-swig-error.diff
new file mode 100644
index 0000000..a715805
--- /dev/null
+++ b/debian/patches/lldb-disable-swig-error.diff
@@ -0,0 +1,13 @@
+Index: llvm-toolchain-snapshot_5.0~svn306792/lldb/scripts/lldb.swig
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn306792.orig/lldb/scripts/lldb.swig
++++ llvm-toolchain-snapshot_5.0~svn306792/lldb/scripts/lldb.swig
+@@ -50,7 +50,7 @@ except ImportError:
+ %enddef
+ // These versions will not generate working python modules, so error out early.
+ #if SWIG_VERSION >= 0x030009 && SWIG_VERSION < 0x030011
+-#error Swig versions 3.0.9 and 3.0.10 are incompatible with lldb.
++#warning Swig versions 3.0.9 and 3.0.10 are incompatible with lldb.
+ #endif
+
+ // The name of the module to be created.
diff --git a/debian/patches/lldb-libname.diff b/debian/patches/lldb-libname.diff
new file mode 100644
index 0000000..617060e
--- /dev/null
+++ b/debian/patches/lldb-libname.diff
@@ -0,0 +1,15 @@
+---
+ lldb/scripts/Python/finishSwigPythonLLDB.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/lldb/scripts/Python/finishSwigPythonLLDB.py
++++ b/lldb/scripts/Python/finishSwigPythonLLDB.py
+@@ -443,7 +443,7 @@ def make_symlink_liblldb(
+ if eOSType == utilsOsType.EnumOsType.Darwin:
+ strLibFileExtn = ".dylib"
+ else:
+- strLibFileExtn = ".so"
++ strLibFileExtn = "-5.0.so"
+ strSrc = os.path.join(vstrLldbLibDir, "liblldb" + strLibFileExtn)
+
+ bOk, strErrMsg = make_symlink(
diff --git a/debian/patches/lldb-link-atomic-cmake.patch b/debian/patches/lldb-link-atomic-cmake.patch
new file mode 100644
index 0000000..1a40671
--- /dev/null
+++ b/debian/patches/lldb-link-atomic-cmake.patch
@@ -0,0 +1,26 @@
+Description: Link with -latomic when mips* processor is detected
+Author: Gianfranco Costamagna <locutusofborg@debian.org>
+Last-Update: 2016-07-27
+
+---
+ lldb/cmake/LLDBDependencies.cmake | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+Index: llvm-toolchain-5.0_5.0~svn311110/lldb/cmake/LLDBDependencies.cmake
+===================================================================
+--- llvm-toolchain-5.0_5.0~svn311110.orig/lldb/cmake/LLDBDependencies.cmake
++++ llvm-toolchain-5.0_5.0~svn311110/lldb/cmake/LLDBDependencies.cmake
+@@ -30,6 +30,13 @@ endif()
+
+ list(APPEND LLDB_SYSTEM_LIBS ${system_libs})
+
++if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "mips" OR
++ CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "mipsel" OR
++ CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "mips64el" OR
++ CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "powerpcspe")
++ list(APPEND LLDB_SYSTEM_LIBS atomic)
++endif()
++
+ if (LLVM_BUILD_STATIC)
+ if (NOT LLDB_DISABLE_PYTHON)
+ list(APPEND LLDB_SYSTEM_LIBS python2.7 util)
diff --git a/debian/patches/lldb-missing-install.diff b/debian/patches/lldb-missing-install.diff
new file mode 100644
index 0000000..d8a7b9a
--- /dev/null
+++ b/debian/patches/lldb-missing-install.diff
@@ -0,0 +1,22 @@
+Index: llvm-toolchain-snapshot_5.0~svn294583/lldb/tools/argdumper/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn294583.orig/lldb/tools/argdumper/CMakeLists.txt
++++ llvm-toolchain-snapshot_5.0~svn294583/lldb/tools/argdumper/CMakeLists.txt
+@@ -8,3 +8,5 @@ add_lldb_tool(lldb-argdumper INCLUDE_IN_
+ lldbUtility
+ )
+
++install(TARGETS lldb-argdumper
++ RUNTIME DESTINATION bin)
+Index: llvm-toolchain-snapshot_5.0~svn294583/lldb/tools/lldb-server/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn294583.orig/lldb/tools/lldb-server/CMakeLists.txt
++++ llvm-toolchain-snapshot_5.0~svn294583/lldb/tools/lldb-server/CMakeLists.txt
+@@ -79,3 +79,7 @@ add_lldb_tool(lldb-server INCLUDE_IN_FRA
+ )
+
+ target_link_libraries(lldb-server ${LLDB_SYSTEM_LIBS})
++
++install(TARGETS lldb-server
++ RUNTIME DESTINATION bin)
++
diff --git a/debian/patches/lldb-soname.diff b/debian/patches/lldb-soname.diff
new file mode 100644
index 0000000..e2267c1
--- /dev/null
+++ b/debian/patches/lldb-soname.diff
@@ -0,0 +1,43 @@
+---
+ lldb/source/API/CMakeLists.txt | 14 +++++++-------
+ 1 file changed, 7 insertions(+), 7 deletions(-)
+
+Index: llvm-toolchain-snapshot_5.0~svn294583/lldb/source/API/CMakeLists.txt
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn294583.orig/lldb/source/API/CMakeLists.txt
++++ llvm-toolchain-snapshot_5.0~svn294583/lldb/source/API/CMakeLists.txt
+@@ -18,7 +18,12 @@ endif()
+
+ get_property(LLDB_ALL_PLUGINS GLOBAL PROPERTY LLDB_PLUGINS)
+
+-add_lldb_library(liblldb SHARED
++set(output_name lldb)
++if (CMAKE_SYSTEM_NAME MATCHES "Windows")
++ set(output_name liblldb)
++endif()
++
++add_lldb_library(liblldb SHARED OUTPUT_NAME ${output_name} SONAME
+ SBAddress.cpp
+ SBAttachInfo.cpp
+ SBBlock.cpp
+@@ -116,7 +121,7 @@ target_link_libraries(liblldb PRIVATE
+
+ set_target_properties(liblldb
+ PROPERTIES
+- VERSION ${LLDB_VERSION}
++ VERSION 1
+ )
+
+ if (NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
+@@ -140,11 +145,6 @@ if ( CMAKE_SYSTEM_NAME MATCHES "Windows"
+ if (MSVC AND NOT LLDB_DISABLE_PYTHON)
+ target_link_libraries(liblldb PRIVATE ${PYTHON_LIBRARY})
+ endif()
+-else()
+- set_target_properties(liblldb
+- PROPERTIES
+- OUTPUT_NAME lldb
+- )
+ endif()
+
+ if (LLDB_WRAP_PYTHON)
diff --git a/debian/patches/mips-fpxx-enable.diff b/debian/patches/mips-fpxx-enable.diff
new file mode 100644
index 0000000..7a07a20
--- /dev/null
+++ b/debian/patches/mips-fpxx-enable.diff
@@ -0,0 +1,17 @@
+Index: llvm-toolchain-snapshot_5.0~svn297449/clang/lib/Driver/ToolChains/Arch/Mips.cpp
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn297449.orig/clang/lib/Driver/ToolChains/Arch/Mips.cpp
++++ llvm-toolchain-snapshot_5.0~svn297449/clang/lib/Driver/ToolChains/Arch/Mips.cpp
+@@ -368,10 +368,10 @@ bool mips::isFP64ADefault(const llvm::Tr
+
+ bool mips::isFPXXDefault(const llvm::Triple &Triple, StringRef CPUName,
+ StringRef ABIName, mips::FloatABI FloatABI) {
+- if (Triple.getVendor() != llvm::Triple::ImaginationTechnologies &&
++/* if (Triple.getVendor() != llvm::Triple::ImaginationTechnologies &&
+ Triple.getVendor() != llvm::Triple::MipsTechnologies &&
+ !Triple.isAndroid())
+- return false;
++ return false;*/
+
+ if (ABIName != "32")
+ return false;
diff --git a/debian/patches/pthread-link.diff b/debian/patches/pthread-link.diff
new file mode 100644
index 0000000..d4d890b
--- /dev/null
+++ b/debian/patches/pthread-link.diff
@@ -0,0 +1,18 @@
+Index: llvm-toolchain-4.0-4.0~svn292009/clang/tools/libclang/CMakeLists.txt
+1;4601;0c===================================================================
+--- llvm-toolchain-4.0-4.0~svn292009.orig/clang/tools/libclang/CMakeLists.txt
++++ llvm-toolchain-4.0-4.0~svn292009/clang/tools/libclang/CMakeLists.txt
+@@ -56,6 +56,13 @@ endif ()
+ find_library(DL_LIBRARY_PATH dl)
+ if (DL_LIBRARY_PATH)
+ list(APPEND LIBS dl)
++
++endif()
++if (PTHREAD_LIB)
++ # libpthreads overrides some standard library symbols, so main
++ # executable must be linked with it in order to provide consistent
++ # API for all shared libaries loaded by this executable.
++ list(APPEND LIBS ${PTHREAD_LIB})
+ endif()
+
+ option(LIBCLANG_BUILD_STATIC
diff --git a/debian/patches/python-clangpath.diff b/debian/patches/python-clangpath.diff
new file mode 100644
index 0000000..99ca33f
--- /dev/null
+++ b/debian/patches/python-clangpath.diff
@@ -0,0 +1,15 @@
+---
+ clang/bindings/python/clang/cindex.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/clang/bindings/python/clang/cindex.py
++++ b/clang/bindings/python/clang/cindex.py
+@@ -3851,7 +3851,7 @@ class Config:
+ elif name == 'Windows':
+ file = 'libclang.dll'
+ else:
+- file = 'libclang.so'
++ file = 'libclang-5.0.so'
+
+ if Config.library_path:
+ file = Config.library_path + '/' + file
diff --git a/debian/patches/removeduplicatedeclaration.diff b/debian/patches/removeduplicatedeclaration.diff
new file mode 100644
index 0000000..0a750d6
--- /dev/null
+++ b/debian/patches/removeduplicatedeclaration.diff
@@ -0,0 +1,40 @@
+---
+ clang/lib/Basic/Targets.cpp | 27 ---------------------------
+ 1 file changed, 27 deletions(-)
+
+--- a/clang/lib/Basic/Targets.cpp
++++ b/clang/lib/Basic/Targets.cpp
+@@ -4414,33 +4414,6 @@ protected:
+ Builder.defineMacro("__ELF__");
+ }
+
+- static bool shouldUseInlineAtomic(const llvm::Triple &T) {
+- // On linux, binaries targeting old cpus call functions in libgcc to
+- // perform atomic operations. The implementation in libgcc then calls into
+- // the kernel which on armv6 and newer uses ldrex and strex. The net result
+- // is that if we assume the kernel is at least as recent as the hardware,
+- // it is safe to use atomic instructions on armv6 and newer.
+- if (T.getOS() != llvm::Triple::Linux)
+- return false;
+- StringRef ArchName = T.getArchName();
+- if (T.getArch() == llvm::Triple::arm) {
+- if (!ArchName.startswith("armv"))
+- return false;
+- StringRef VersionStr = ArchName.substr(4);
+- unsigned Version;
+- if (VersionStr.getAsInteger(10, Version))
+- return false;
+- return Version >= 6;
+- }
+- assert(T.getArch() == llvm::Triple::thumb);
+- if (!ArchName.startswith("thumbv"))
+- return false;
+- StringRef VersionStr = ArchName.substr(6);
+- unsigned Version;
+- if (VersionStr.getAsInteger(10, Version))
+- return false;
+- return Version >= 7;
+- }
+
+ public:
+ RTEMSTargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts)
diff --git a/debian/patches/scan-build-clang-path.diff b/debian/patches/scan-build-clang-path.diff
new file mode 100644
index 0000000..dc59bf0
--- /dev/null
+++ b/debian/patches/scan-build-clang-path.diff
@@ -0,0 +1,15 @@
+---
+ clang/tools/scan-build/bin/scan-build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/clang/tools/scan-build/bin/scan-build
++++ b/clang/tools/scan-build/bin/scan-build
+@@ -1432,7 +1432,7 @@ sub FindClang {
+ if (!defined $Options{AnalyzerDiscoveryMethod}) {
+ $Clang = Cwd::realpath("$RealBin/bin/clang") if (-f "$RealBin/bin/clang");
+ if (!defined $Clang || ! -x $Clang) {
+- $Clang = Cwd::realpath("$RealBin/clang") if (-f "$RealBin/clang");
++ $Clang = Cwd::realpath("/usr/lib/llvm-5.0/bin/clang");
+ }
+ if (!defined $Clang || ! -x $Clang) {
+ return "error: Cannot find an executable 'clang' relative to" .
diff --git a/debian/patches/scan-build-py-default.diff b/debian/patches/scan-build-py-default.diff
new file mode 100644
index 0000000..431bffb
--- /dev/null
+++ b/debian/patches/scan-build-py-default.diff
@@ -0,0 +1,518 @@
+Index: llvm-toolchain-snapshot_3.9-svn269220/home/sylvestre/dev/debian/pkg-llvm/llvm-toolchain-branches/llvm-toolchain-snapshot_3.9-svn269220/clang/tools/scan-build-py/libscanbuild/analyze.py
+===================================================================
+--- llvm-toolchain-snapshot_3.9-svn269220.orig/home/sylvestre/dev/debian/pkg-llvm/llvm-toolchain-branches/llvm-toolchain-snapshot_3.9-svn269220/clang/tools/scan-build-py/libscanbuild/analyze.py
++++ /dev/null
+@@ -1,513 +0,0 @@
+-# -*- coding: utf-8 -*-
+-# The LLVM Compiler Infrastructure
+-#
+-# This file is distributed under the University of Illinois Open Source
+-# License. See LICENSE.TXT for details.
+-""" This module implements the 'scan-build' command API.
+-
+-To run the static analyzer against a build is done in multiple steps:
+-
+- -- Intercept: capture the compilation command during the build,
+- -- Analyze: run the analyzer against the captured commands,
+- -- Report: create a cover report from the analyzer outputs. """
+-
+-import sys
+-import re
+-import os
+-import os.path
+-import json
+-import argparse
+-import logging
+-import subprocess
+-import multiprocessing
+-from libscanbuild import initialize_logging, tempdir, command_entry_point
+-from libscanbuild.runner import run
+-from libscanbuild.intercept import capture
+-from libscanbuild.report import report_directory, document
+-from libscanbuild.clang import get_checkers
+-from libscanbuild.compilation import split_command
+-
+-__all__ = ['analyze_build_main', 'analyze_build_wrapper']
+-
+-COMPILER_WRAPPER_CC = 'analyze-cc'
+-COMPILER_WRAPPER_CXX = 'analyze-c++'
+-
+-
+-@command_entry_point
+-def analyze_build_main(bin_dir, from_build_command):
+- """ Entry point for 'analyze-build' and 'scan-build'. """
+-
+- parser = create_parser(from_build_command)
+- args = parser.parse_args()
+- validate(parser, args, from_build_command)
+-
+- # setup logging
+- initialize_logging(args.verbose)
+- logging.debug('Parsed arguments: %s', args)
+-
+- with report_directory(args.output, args.keep_empty) as target_dir:
+- if not from_build_command:
+- # run analyzer only and generate cover report
+- run_analyzer(args, target_dir)
+- number_of_bugs = document(args, target_dir, True)
+- return number_of_bugs if args.status_bugs else 0
+- elif args.intercept_first:
+- # run build command and capture compiler executions
+- exit_code = capture(args, bin_dir)
+- # next step to run the analyzer against the captured commands
+- if need_analyzer(args.build):
+- run_analyzer(args, target_dir)
+- # cover report generation and bug counting
+- number_of_bugs = document(args, target_dir, True)
+- # remove the compilation database when it was not requested
+- if os.path.exists(args.cdb):
+- os.unlink(args.cdb)
+- # set exit status as it was requested
+- return number_of_bugs if args.status_bugs else exit_code
+- else:
+- return exit_code
+- else:
+- # run the build command with compiler wrappers which
+- # execute the analyzer too. (interposition)
+- environment = setup_environment(args, target_dir, bin_dir)
+- logging.debug('run build in environment: %s', environment)
+- exit_code = subprocess.call(args.build, env=environment)
+- logging.debug('build finished with exit code: %d', exit_code)
+- # cover report generation and bug counting
+- number_of_bugs = document(args, target_dir, False)
+- # set exit status as it was requested
+- return number_of_bugs if args.status_bugs else exit_code
+-
+-
+-def need_analyzer(args):
+- """ Check the intent of the build command.
+-
+- When static analyzer run against project configure step, it should be
+- silent and no need to run the analyzer or generate report.
+-
+- To run `scan-build` against the configure step might be neccessary,
+- when compiler wrappers are used. That's the moment when build setup
+- check the compiler and capture the location for the build process. """
+-
+- return len(args) and not re.search('configure|autogen', args[0])
+-
+-
+-def run_analyzer(args, output_dir):
+- """ Runs the analyzer against the given compilation database. """
+-
+- def exclude(filename):
+- """ Return true when any excluded directory prefix the filename. """
+- return any(re.match(r'^' + directory, filename)
+- for directory in args.excludes)
+-
+- consts = {
+- 'clang': args.clang,
+- 'output_dir': output_dir,
+- 'output_format': args.output_format,
+- 'output_failures': args.output_failures,
+- 'direct_args': analyzer_params(args),
+- 'force_debug': args.force_debug
+- }
+-
+- logging.debug('run analyzer against compilation database')
+- with open(args.cdb, 'r') as handle:
+- generator = (dict(cmd, **consts)
+- for cmd in json.load(handle) if not exclude(cmd['file']))
+- # when verbose output requested execute sequentially
+- pool = multiprocessing.Pool(1 if args.verbose > 2 else None)
+- for current in pool.imap_unordered(run, generator):
+- if current is not None:
+- # display error message from the static analyzer
+- for line in current['error_output']:
+- logging.info(line.rstrip())
+- pool.close()
+- pool.join()
+-
+-
+-def setup_environment(args, destination, bin_dir):
+- """ Set up environment for build command to interpose compiler wrapper. """
+-
+- environment = dict(os.environ)
+- environment.update({
+- 'CC': os.path.join(bin_dir, COMPILER_WRAPPER_CC),
+- 'CXX': os.path.join(bin_dir, COMPILER_WRAPPER_CXX),
+- 'ANALYZE_BUILD_CC': args.cc,
+- 'ANALYZE_BUILD_CXX': args.cxx,
+- 'ANALYZE_BUILD_CLANG': args.clang if need_analyzer(args.build) else '',
+- 'ANALYZE_BUILD_VERBOSE': 'DEBUG',
+- 'ANALYZE_BUILD_REPORT_DIR': destination,
+- 'ANALYZE_BUILD_REPORT_FORMAT': args.output_format,
+- 'ANALYZE_BUILD_REPORT_FAILURES': 'yes' if args.output_failures else '',
+- 'ANALYZE_BUILD_PARAMETERS': ' '.join(analyzer_params(args)),
+- 'ANALYZE_BUILD_FORCE_DEBUG': 'yes' if args.force_debug else ''
+- })
+- return environment
+-
+-
+-def analyze_build_wrapper(cplusplus):
+- """ Entry point for `analyze-cc` and `analyze-c++` compiler wrappers. """
+-
+- # initialize wrapper logging
+- logging.basicConfig(format='analyze: %(levelname)s: %(message)s',
+- level=os.getenv('ANALYZE_BUILD_VERBOSE', 'INFO'))
+- # execute with real compiler
+- compiler = os.getenv('ANALYZE_BUILD_CXX', 'c++') if cplusplus \
+- else os.getenv('ANALYZE_BUILD_CC', 'cc')
+- compilation = [compiler] + sys.argv[1:]
+- logging.info('execute compiler: %s', compilation)
+- result = subprocess.call(compilation)
+- # exit when it fails, ...
+- if result or not os.getenv('ANALYZE_BUILD_CLANG'):
+- return result
+- # ... and run the analyzer if all went well.
+- try:
+- # check is it a compilation
+- compilation = split_command(sys.argv)
+- if compilation is None:
+- return result
+- # collect the needed parameters from environment, crash when missing
+- parameters = {
+- 'clang': os.getenv('ANALYZE_BUILD_CLANG'),
+- 'output_dir': os.getenv('ANALYZE_BUILD_REPORT_DIR'),
+- 'output_format': os.getenv('ANALYZE_BUILD_REPORT_FORMAT'),
+- 'output_failures': os.getenv('ANALYZE_BUILD_REPORT_FAILURES'),
+- 'direct_args': os.getenv('ANALYZE_BUILD_PARAMETERS',
+- '').split(' '),
+- 'force_debug': os.getenv('ANALYZE_BUILD_FORCE_DEBUG'),
+- 'directory': os.getcwd(),
+- 'command': [sys.argv[0], '-c'] + compilation.flags
+- }
+- # call static analyzer against the compilation
+- for source in compilation.files:
+- parameters.update({'file': source})
+- logging.debug('analyzer parameters %s', parameters)
+- current = run(parameters)
+- # display error message from the static analyzer
+- if current is not None:
+- for line in current['error_output']:
+- logging.info(line.rstrip())
+- except Exception:
+- logging.exception("run analyzer inside compiler wrapper failed.")
+- return result
+-
+-
+-def analyzer_params(args):
+- """ A group of command line arguments can mapped to command
+- line arguments of the analyzer. This method generates those. """
+-
+- def prefix_with(constant, pieces):
+- """ From a sequence create another sequence where every second element
+- is from the original sequence and the odd elements are the prefix.
+-
+- eg.: prefix_with(0, [1,2,3]) creates [0, 1, 0, 2, 0, 3] """
+-
+- return [elem for piece in pieces for elem in [constant, piece]]
+-
+- result = []
+-
+- if args.store_model:
+- result.append('-analyzer-store={0}'.format(args.store_model))
+- if args.constraints_model:
+- result.append('-analyzer-constraints={0}'.format(
+- args.constraints_model))
+- if args.internal_stats:
+- result.append('-analyzer-stats')
+- if args.analyze_headers:
+- result.append('-analyzer-opt-analyze-headers')
+- if args.stats:
+- result.append('-analyzer-checker=debug.Stats')
+- if args.maxloop:
+- result.extend(['-analyzer-max-loop', str(args.maxloop)])
+- if args.output_format:
+- result.append('-analyzer-output={0}'.format(args.output_format))
+- if args.analyzer_config:
+- result.append(args.analyzer_config)
+- if args.verbose >= 4:
+- result.append('-analyzer-display-progress')
+- if args.plugins:
+- result.extend(prefix_with('-load', args.plugins))
+- if args.enable_checker:
+- checkers = ','.join(args.enable_checker)
+- result.extend(['-analyzer-checker', checkers])
+- if args.disable_checker:
+- checkers = ','.join(args.disable_checker)
+- result.extend(['-analyzer-disable-checker', checkers])
+- if os.getenv('UBIVIZ'):
+- result.append('-analyzer-viz-egraph-ubigraph')
+-
+- return prefix_with('-Xclang', result)
+-
+-
+-def print_active_checkers(checkers):
+- """ Print active checkers to stdout. """
+-
+- for name in sorted(name for name, (_, active) in checkers.items()
+- if active):
+- print(name)
+-
+-
+-def print_checkers(checkers):
+- """ Print verbose checker help to stdout. """
+-
+- print('')
+- print('available checkers:')
+- print('')
+- for name in sorted(checkers.keys()):
+- description, active = checkers[name]
+- prefix = '+' if active else ' '
+- if len(name) > 30:
+- print(' {0} {1}'.format(prefix, name))
+- print(' ' * 35 + description)
+- else:
+- print(' {0} {1: <30} {2}'.format(prefix, name, description))
+- print('')
+- print('NOTE: "+" indicates that an analysis is enabled by default.')
+- print('')
+-
+-
+-def validate(parser, args, from_build_command):
+- """ Validation done by the parser itself, but semantic check still
+- needs to be done. This method is doing that. """
+-
+- if args.help_checkers_verbose:
+- print_checkers(get_checkers(args.clang, args.plugins))
+- parser.exit()
+- elif args.help_checkers:
+- print_active_checkers(get_checkers(args.clang, args.plugins))
+- parser.exit()
+-
+- if from_build_command and not args.build:
+- parser.error('missing build command')
+-
+-
+-def create_parser(from_build_command):
+- """ Command line argument parser factory method. """
+-
+- parser = argparse.ArgumentParser(
+- formatter_class=argparse.ArgumentDefaultsHelpFormatter)
+-
+- parser.add_argument(
+- '--verbose', '-v',
+- action='count',
+- default=0,
+- help="""Enable verbose output from '%(prog)s'. A second and third
+- flag increases verbosity.""")
+- parser.add_argument(
+- '--override-compiler',
+- action='store_true',
+- help="""Always resort to the compiler wrapper even when better
+- interposition methods are available.""")
+- parser.add_argument(
+- '--intercept-first',
+- action='store_true',
+- help="""Run the build commands only, build a compilation database,
+- then run the static analyzer afterwards.
+- Generally speaking it has better coverage on build commands.
+- With '--override-compiler' it use compiler wrapper, but does
+- not run the analyzer till the build is finished. """)
+- parser.add_argument(
+- '--cdb',
+- metavar='<file>',
+- default="compile_commands.json",
+- help="""The JSON compilation database.""")
+-
+- parser.add_argument(
+- '--output', '-o',
+- metavar='<path>',
+- default=tempdir(),
+- help="""Specifies the output directory for analyzer reports.
+- Subdirectory will be created if default directory is targeted.
+- """)
+- parser.add_argument(
+- '--status-bugs',
+- action='store_true',
+- help="""By default, the exit status of '%(prog)s' is the same as the
+- executed build command. Specifying this option causes the exit
+- status of '%(prog)s' to be non zero if it found potential bugs
+- and zero otherwise.""")
+- parser.add_argument(
+- '--html-title',
+- metavar='<title>',
+- help="""Specify the title used on generated HTML pages.
+- If not specified, a default title will be used.""")
+- parser.add_argument(
+- '--analyze-headers',
+- action='store_true',
+- help="""Also analyze functions in #included files. By default, such
+- functions are skipped unless they are called by functions
+- within the main source file.""")
+- format_group = parser.add_mutually_exclusive_group()
+- format_group.add_argument(
+- '--plist', '-plist',
+- dest='output_format',
+- const='plist',
+- default='html',
+- action='store_const',
+- help="""This option outputs the results as a set of .plist files.""")
+- format_group.add_argument(
+- '--plist-html', '-plist-html',
+- dest='output_format',
+- const='plist-html',
+- default='html',
+- action='store_const',
+- help="""This option outputs the results as a set of .html and .plist
+- files.""")
+- # TODO: implement '-view '
+-
+- advanced = parser.add_argument_group('advanced options')
+- advanced.add_argument(
+- '--keep-empty',
+- action='store_true',
+- help="""Don't remove the build results directory even if no issues
+- were reported.""")
+- advanced.add_argument(
+- '--no-failure-reports', '-no-failure-reports',
+- dest='output_failures',
+- action='store_false',
+- help="""Do not create a 'failures' subdirectory that includes analyzer
+- crash reports and preprocessed source files.""")
+- advanced.add_argument(
+- '--stats', '-stats',
+- action='store_true',
+- help="""Generates visitation statistics for the project being analyzed.
+- """)
+- advanced.add_argument(
+- '--internal-stats',
+- action='store_true',
+- help="""Generate internal analyzer statistics.""")
+- advanced.add_argument(
+- '--maxloop', '-maxloop',
+- metavar='<loop count>',
+- type=int,
+- help="""Specifiy the number of times a block can be visited before
+- giving up. Increase for more comprehensive coverage at a cost
+- of speed.""")
+- advanced.add_argument(
+- '--store', '-store',
+- metavar='<model>',
+- dest='store_model',
+- choices=['region', 'basic'],
+- help="""Specify the store model used by the analyzer.
+- 'region' specifies a field- sensitive store model.
+- 'basic' which is far less precise but can more quickly
+- analyze code. 'basic' was the default store model for
+- checker-0.221 and earlier.""")
+- advanced.add_argument(
+- '--constraints', '-constraints',
+- metavar='<model>',
+- dest='constraints_model',
+- choices=['range', 'basic'],
+- help="""Specify the contraint engine used by the analyzer. Specifying
+- 'basic' uses a simpler, less powerful constraint model used by
+- checker-0.160 and earlier.""")
+- advanced.add_argument(
+- '--use-analyzer',
+- metavar='<path>',
+- dest='clang',
+- default='clang',
+- help="""'%(prog)s' uses the 'clang' executable relative to itself for
+- static analysis. One can override this behavior with this
+- option by using the 'clang' packaged with Xcode (on OS X) or
+- from the PATH.""")
+- advanced.add_argument(
+- '--use-cc',
+- metavar='<path>',
+- dest='cc',
+- default='cc',
+- help="""When '%(prog)s' analyzes a project by interposing a "fake
+- compiler", which executes a real compiler for compilation and
+- do other tasks (to run the static analyzer or just record the
+- compiler invocation). Because of this interposing, '%(prog)s'
+- does not know what compiler your project normally uses.
+- Instead, it simply overrides the CC environment variable, and
+- guesses your default compiler.
+-
+- If you need '%(prog)s' to use a specific compiler for
+- *compilation* then you can use this option to specify a path
+- to that compiler.""")
+- advanced.add_argument(
+- '--use-c++',
+- metavar='<path>',
+- dest='cxx',
+- default='c++',
+- help="""This is the same as "--use-cc" but for C++ code.""")
+- advanced.add_argument(
+- '--analyzer-config', '-analyzer-config',
+- metavar='<options>',
+- help="""Provide options to pass through to the analyzer's
+- -analyzer-config flag. Several options are separated with
+- comma: 'key1=val1,key2=val2'
+-
+- Available options:
+- stable-report-filename=true or false (default)
+-
+- Switch the page naming to:
+- report-<filename>-<function/method name>-<id>.html
+- instead of report-XXXXXX.html""")
+- advanced.add_argument(
+- '--exclude',
+- metavar='<directory>',
+- dest='excludes',
+- action='append',
+- default=[],
+- help="""Do not run static analyzer against files found in this
+- directory. (You can specify this option multiple times.)
+- Could be usefull when project contains 3rd party libraries.
+- The directory path shall be absolute path as file names in
+- the compilation database.""")
+- advanced.add_argument(
+- '--force-analyze-debug-code',
+- dest='force_debug',
+- action='store_true',
+- help="""Tells analyzer to enable assertions in code even if they were
+- disabled during compilation, enabling more precise results.""")
+-
+- plugins = parser.add_argument_group('checker options')
+- plugins.add_argument(
+- '--load-plugin', '-load-plugin',
+- metavar='<plugin library>',
+- dest='plugins',
+- action='append',
+- help="""Loading external checkers using the clang plugin interface.""")
+- plugins.add_argument(
+- '--enable-checker', '-enable-checker',
+- metavar='<checker name>',
+- action=AppendCommaSeparated,
+- help="""Enable specific checker.""")
+- plugins.add_argument(
+- '--disable-checker', '-disable-checker',
+- metavar='<checker name>',
+- action=AppendCommaSeparated,
+- help="""Disable specific checker.""")
+- plugins.add_argument(
+- '--help-checkers',
+- action='store_true',
+- help="""A default group of checkers is run unless explicitly disabled.
+- Exactly which checkers constitute the default group is a
+- function of the operating system in use. These can be printed
+- with this flag.""")
+- plugins.add_argument(
+- '--help-checkers-verbose',
+- action='store_true',
+- help="""Print all available checkers and mark the enabled ones.""")
+-
+- if from_build_command:
+- parser.add_argument(
+- dest='build',
+- nargs=argparse.REMAINDER,
+- help="""Command to run.""")
+-
+- return parser
+-
+-
+-class AppendCommaSeparated(argparse.Action):
+- """ argparse Action class to support multiple comma separated lists. """
+-
+- def __call__(self, __parser, namespace, values, __option_string):
+- # getattr(obj, attr, default) does not really returns default but none
+- if getattr(namespace, self.dest, None) is None:
+- setattr(namespace, self.dest, [])
+- # once it's fixed we can use as expected
+- actual = getattr(namespace, self.dest)
+- actual.extend(values.split(','))
+- setattr(namespace, self.dest, actual)
diff --git a/debian/patches/scan-view-fix-path.diff b/debian/patches/scan-view-fix-path.diff
new file mode 100644
index 0000000..a37e688
--- /dev/null
+++ b/debian/patches/scan-view-fix-path.diff
@@ -0,0 +1,13 @@
+Index: llvm-toolchain-snapshot_5.0~svn297449/clang/tools/scan-view/bin/scan-view
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn297449.orig/clang/tools/scan-view/bin/scan-view
++++ llvm-toolchain-snapshot_5.0~svn297449/clang/tools/scan-view/bin/scan-view
+@@ -61,7 +61,7 @@ def start_browser(port, options):
+
+ def run(port, options, root):
+ # Prefer to look relative to the installed binary
+- share = os.path.dirname(__file__) + "/../share/scan-view"
++ share = os.path.dirname(__file__) + "/../share/"
+ if not os.path.isdir(share):
+ # Otherwise look relative to the source
+ share = os.path.dirname(__file__) + "/../../scan-view/share"
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000..58de66c
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,48 @@
+19-clang_debian_version.patch
+23-strlcpy_strlcat_warning_removed.diff
+27-fix_clang_stdint.diff
+26-set-correct-float-abi.diff
+0003-Debian-version-info-and-bugreport.patch
+scan-build-clang-path.diff
+declare_clear_cache.diff
+clang-format-version.diff
+unwind-chain-inclusion.diff
+hurd-pathmax.diff
+silent-gold-test.diff
+atomic_library_1.diff
+atomic_library_2.diff
+python-clangpath.diff
+removeduplicatedeclaration.diff
+fix-clang-path-and-build.diff
+#force-gcc-header-obj.diff
+do-not-fail-on-unexpected-pass.diff
+silent-more-tests.diff
+disable-display-PASS-UNSUPPORTED-XFAIL.diff
+fix-llvm-config-obj-src-root.patch
+0044-soname.diff
+lldb-soname.diff
+lldb-libname.diff
+hurd-EIEIO-undef.diff
+silent-MCJIIT-tests.diff
+clang-analyzer-force-version.diff
+install-scan-build-py.diff
+scan-view-fix-path.diff
+mips-fpxx-enable.diff
+fix-cmake-config-prefix.diff
+lldb-link-atomic-cmake.patch
+disable-source-interleave.diff
+silent-gold-utils.diff
+disable-llvm-symbolizer-test.diff
+#fix-lldb-server-build
+clang-tidy-run-bin.diff
+#bug-30342.diff
+fix-scan-view-path.diff
+#0011-SimplifyCFG-Hoisting-invalidates-metadata.patch
+clang-fix-cmpxchg8-detection-on-i386.patch
+lldb-addversion-suffix-to-llvm-server-exec.patch
+lldb-missing-install.diff
+silent-test-failing-codeverage.diff
+disable-path-test-failing.diff
+silent-amd-tet.diff
+disable-error-xray.diff
+lldb-disable-swig-error.diff
diff --git a/debian/patches/silent-MCJIIT-tests.diff b/debian/patches/silent-MCJIIT-tests.diff
new file mode 100644
index 0000000..6ed20d4
--- /dev/null
+++ b/debian/patches/silent-MCJIIT-tests.diff
@@ -0,0 +1,178 @@
+---
+ test/BugPoint/crash-narrowfunctiontest.ll | 1 -
+ test/BugPoint/remove_arguments_test.ll | 1 -
+ test/ExecutionEngine/MCJIT/cross-module-sm-pic-a.ll | 2 +-
+ test/ExecutionEngine/MCJIT/eh-lg-pic.ll | 2 +-
+ test/ExecutionEngine/MCJIT/multi-module-sm-pic-a.ll | 2 +-
+ test/ExecutionEngine/MCJIT/stubs-sm-pic.ll | 2 +-
+ test/ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll | 2 +-
+ test/ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/cross-module-sm-pic-a.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/eh-lg-pic.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/multi-module-sm-pic-a.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/remote/test-global-init-nonzero-sm-pic.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/remote/test-ptr-reloc-sm-pic.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/stubs-sm-pic.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/test-global-init-nonzero-sm-pic.ll | 2 +-
+ test/ExecutionEngine/OrcMCJIT/test-ptr-reloc-sm-pic.ll | 2 +-
+ test/Feature/load_module.ll | 1 -
+ 17 files changed, 14 insertions(+), 17 deletions(-)
+
+--- a/test/BugPoint/crash-narrowfunctiontest.ll
++++ b/test/BugPoint/crash-narrowfunctiontest.ll
+@@ -2,7 +2,6 @@
+ ;
+ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes > /dev/null
+ ; REQUIRES: loadable_module
+-; XFAIL: *
+
+ define i32 @foo() { ret i32 1 }
+
+--- a/test/BugPoint/remove_arguments_test.ll
++++ b/test/BugPoint/remove_arguments_test.ll
+@@ -1,7 +1,6 @@
+ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes
+ ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s
+ ; REQUIRES: loadable_module
+-; XFAIL: *
+
+ ; Test to make sure that arguments are removed from the function if they are
+ ; unnecessary. And clean up any types that frees up too.
+--- a/test/ExecutionEngine/MCJIT/cross-module-sm-pic-a.ll
++++ b/test/ExecutionEngine/MCJIT/cross-module-sm-pic-a.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -extra-module=%p/Inputs/cross-module-b.ll -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, i686, i386
++; XFAIL: *
+
+ declare i32 @FB()
+
+--- a/test/ExecutionEngine/MCJIT/eh-lg-pic.ll
++++ b/test/ExecutionEngine/MCJIT/eh-lg-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -relocation-model=pic -code-model=large %s
+-; XFAIL: cygwin, win32, mingw, mips-, mipsel-, i686, i386, aarch64, arm
++; XFAIL: *
+ declare i8* @__cxa_allocate_exception(i64)
+ declare void @__cxa_throw(i8*, i8*, i8*)
+ declare i32 @__gxx_personality_v0(...)
+--- a/test/ExecutionEngine/MCJIT/multi-module-sm-pic-a.ll
++++ b/test/ExecutionEngine/MCJIT/multi-module-sm-pic-a.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -extra-module=%p/Inputs/multi-module-b.ll -extra-module=%p/Inputs/multi-module-c.ll -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, i686, i386
++; XFAIL: *
+
+ declare i32 @FB()
+
+--- a/test/ExecutionEngine/MCJIT/stubs-sm-pic.ll
++++ b/test/ExecutionEngine/MCJIT/stubs-sm-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -disable-lazy-compilation=false -relocation-model=pic -code-model=small %s
+-; XFAIL: mips-, mipsel-, i686, i386, aarch64, arm
++; XFAIL: mips-, mipsel-, i686, i386, aarch64, arm, x86_64
+
+ define i32 @main() nounwind {
+ entry:
+--- a/test/ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll
++++ b/test/ExecutionEngine/MCJIT/test-global-init-nonzero-sm-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386
++; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, x86_64
+
+ @count = global i32 1, align 4
+
+--- a/test/ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll
++++ b/test/ExecutionEngine/MCJIT/test-ptr-reloc-sm-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -O0 -relocation-model=pic -code-model=small %s
+-; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386
++; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, x86_64
+
+ @.str = private unnamed_addr constant [6 x i8] c"data1\00", align 1
+ @ptr = global i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i32 0, i32 0), align 4
+--- a/test/ExecutionEngine/OrcMCJIT/cross-module-sm-pic-a.ll
++++ b/test/ExecutionEngine/OrcMCJIT/cross-module-sm-pic-a.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -extra-module=%p/Inputs/cross-module-b.ll -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, i686, i386
++; XFAIL: *
+
+ declare i32 @FB()
+
+--- a/test/ExecutionEngine/OrcMCJIT/eh-lg-pic.ll
++++ b/test/ExecutionEngine/OrcMCJIT/eh-lg-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -relocation-model=pic -code-model=large %s
+-; XFAIL: cygwin, win32, mingw, mips-, mipsel-, i686, i386, aarch64, arm
++; XFAIL: *
+ declare i8* @__cxa_allocate_exception(i64)
+ declare void @__cxa_throw(i8*, i8*, i8*)
+ declare i32 @__gxx_personality_v0(...)
+--- a/test/ExecutionEngine/OrcMCJIT/multi-module-sm-pic-a.ll
++++ b/test/ExecutionEngine/OrcMCJIT/multi-module-sm-pic-a.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -extra-module=%p/Inputs/multi-module-b.ll -extra-module=%p/Inputs/multi-module-c.ll -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, i686, i386
++; XFAIL: *
+
+ declare i32 @FB()
+
+--- a/test/ExecutionEngine/OrcMCJIT/remote/test-global-init-nonzero-sm-pic.ll
++++ b/test/ExecutionEngine/OrcMCJIT/remote/test-global-init-nonzero-sm-pic.ll
+@@ -1,6 +1,6 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -remote-mcjit -mcjit-remote-process=lli-child-target%exeext \
+ ; RUN: -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, mingw32, win32
++; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, mingw32, win32, x86_64
+ ; UNSUPPORTED: powerpc64-unknown-linux-gnu
+ ; Remove UNSUPPORTED for powerpc64-unknown-linux-gnu if problem caused by r266663 is fixed
+
+--- a/test/ExecutionEngine/OrcMCJIT/remote/test-ptr-reloc-sm-pic.ll
++++ b/test/ExecutionEngine/OrcMCJIT/remote/test-ptr-reloc-sm-pic.ll
+@@ -1,6 +1,6 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -remote-mcjit -mcjit-remote-process=lli-child-target%exeext \
+ ; RUN: -O0 -relocation-model=pic -code-model=small %s
+-; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, mingw32, win32
++; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, mingw32, win32, x86_64
+ ; UNSUPPORTED: powerpc64-unknown-linux-gnu
+ ; Remove UNSUPPORTED for powerpc64-unknown-linux-gnu if problem caused by r266663 is fixed
+
+--- a/test/ExecutionEngine/OrcMCJIT/stubs-sm-pic.ll
++++ b/test/ExecutionEngine/OrcMCJIT/stubs-sm-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -disable-lazy-compilation=false -relocation-model=pic -code-model=small %s
+-; XFAIL: mips-, mipsel-, i686, i386, aarch64, arm
++; XFAIL: mips-, mipsel-, i686, i386, aarch64, arm, x86_64
+
+ define i32 @main() nounwind {
+ entry:
+--- a/test/ExecutionEngine/OrcMCJIT/test-global-init-nonzero-sm-pic.ll
++++ b/test/ExecutionEngine/OrcMCJIT/test-global-init-nonzero-sm-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -relocation-model=pic -code-model=small %s > /dev/null
+-; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386
++; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, x86_64
+
+ @count = global i32 1, align 4
+
+--- a/test/ExecutionEngine/OrcMCJIT/test-ptr-reloc-sm-pic.ll
++++ b/test/ExecutionEngine/OrcMCJIT/test-ptr-reloc-sm-pic.ll
+@@ -1,5 +1,5 @@
+ ; RUN: %lli -jit-kind=orc-mcjit -O0 -relocation-model=pic -code-model=small %s
+-; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386
++; XFAIL: mips-, mipsel-, aarch64, arm, i686, i386, x86_64
+
+ @.str = private unnamed_addr constant [6 x i8] c"data1\00", align 1
+ @ptr = global i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str, i32 0, i32 0), align 4
+--- a/test/Feature/load_module.ll
++++ b/test/Feature/load_module.ll
+@@ -3,7 +3,6 @@
+ ; RUN: -disable-output 2>&1 | grep Hello
+ ; REQUIRES: loadable_module
+ ; FIXME: On Cygming, it might fail without building LLVMHello manually.
+-; XFAIL: *
+
+ @junk = global i32 0
+
diff --git a/debian/patches/silent-amd-tet.diff b/debian/patches/silent-amd-tet.diff
new file mode 100644
index 0000000..dd2f0e6
--- /dev/null
+++ b/debian/patches/silent-amd-tet.diff
@@ -0,0 +1,132 @@
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-from-llvm-ir-full.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/CodeGen/AMDGPU/code-object-metadata-from-llvm-ir-full.ll
++++ llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-from-llvm-ir-full.ll
+@@ -4,6 +4,7 @@
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx700 -amdgpu-dump-comd -amdgpu-verify-comd -filetype=obj -o - < %s 2>&1 | FileCheck --check-prefix=PARSER %s
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx800 -amdgpu-dump-comd -amdgpu-verify-comd -filetype=obj -o - < %s 2>&1 | FileCheck --check-prefix=PARSER %s
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -amdgpu-dump-comd -amdgpu-verify-comd -filetype=obj -o - < %s 2>&1 | FileCheck --check-prefix=PARSER %s
++; XFAIL: *
+
+ %struct.A = type { i8, float }
+ %opencl.image1d_t = type opaque
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-1.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-1.ll
++++ llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-1.ll
+@@ -1,4 +1,5 @@
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata | FileCheck %s
++; XFAIL: *
+
+ ; Make sure llc does not crash for invalid opencl version metadata.
+
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-2.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-2.ll
++++ llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-2.ll
+@@ -1,4 +1,5 @@
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata | FileCheck %s
++; XFAIL: *
+
+ ; Make sure llc does not crash for invalid opencl version metadata.
+
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-3.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-3.ll
++++ llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-invalid-ocl-version-3.ll
+@@ -1,4 +1,5 @@
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata | FileCheck %s
++; XFAIL: *
+
+ ; Make sure llc does not crash for invalid opencl version metadata.
+
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-kernel-code-props.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/CodeGen/AMDGPU/code-object-metadata-kernel-code-props.ll
++++ llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-kernel-code-props.ll
+@@ -1,6 +1,7 @@
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx700 -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX700 --check-prefix=NOTES %s
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx800 -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX800 --check-prefix=NOTES %s
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX900 --check-prefix=NOTES %s
++; XFAIL: *
+
+ ; CHECK: ---
+ ; CHECK: Version: [ 1, 0 ]
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-kernel-debug-props.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/CodeGen/AMDGPU/code-object-metadata-kernel-debug-props.ll
++++ llvm-toolchain-snapshot_5.0~svn299411/test/CodeGen/AMDGPU/code-object-metadata-kernel-debug-props.ll
+@@ -1,6 +1,7 @@
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx700 -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX700 --check-prefix=NOTES %s
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx800 -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX800 --check-prefix=NOTES %s
+ ; RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx900 -filetype=obj -o - < %s | llvm-readobj -amdgpu-code-object-metadata -elf-output-style=GNU -notes | FileCheck --check-prefix=CHECK --check-prefix=GFX900 --check-prefix=NOTES %s
++; XFAIL: *
+
+ declare void @llvm.dbg.declare(metadata, metadata, metadata)
+
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-args.s
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/MC/AMDGPU/code-object-metadata-kernel-args.s
++++ llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-args.s
+@@ -1,6 +1,7 @@
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx700 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX700 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx800 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX800 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx900 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX900 %s
++// XFAIL: *
+
+ // CHECK: .amdgpu_code_object_metadata
+ // CHECK: Version: [ 1, 0 ]
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-attrs.s
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/MC/AMDGPU/code-object-metadata-kernel-attrs.s
++++ llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-attrs.s
+@@ -1,6 +1,7 @@
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx700 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX700 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx800 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX800 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx900 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX900 %s
++// XFAIL: *
+
+ // CHECK: .amdgpu_code_object_metadata
+ // CHECK: Version: [ 1, 0 ]
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-code-props.s
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/MC/AMDGPU/code-object-metadata-kernel-code-props.s
++++ llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-code-props.s
+@@ -1,6 +1,7 @@
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx700 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX700 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx800 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX800 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx900 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX900 %s
++// FAIL: *
+
+ // CHECK: .amdgpu_code_object_metadata
+ // CHECK: Version: [ 1, 0 ]
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-debug-props.s
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/MC/AMDGPU/code-object-metadata-kernel-debug-props.s
++++ llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/code-object-metadata-kernel-debug-props.s
+@@ -1,6 +1,7 @@
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx700 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX700 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx800 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX800 %s
+ // RUN: llvm-mc -triple=amdgcn-amd-amdhsa -mcpu=gfx900 -show-encoding %s | FileCheck --check-prefix=CHECK --check-prefix=GFX900 %s
++// XFAIL: *
+
+ // CHECK: .amdgpu_code_object_metadata
+ // CHECK: Version: [ 1, 0 ]
+@@ -23,4 +24,4 @@
+ ReservedFirstVGPR: 11
+ PrivateSegmentBufferSGPR: 0
+ WavefrontPrivateSegmentOffsetSGPR: 11
+-.end_amdgpu_code_object_metadata
+\ No newline at end of file
++.end_amdgpu_code_object_metadata
+Index: llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/hsa.s
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn299411.orig/test/MC/AMDGPU/hsa.s
++++ llvm-toolchain-snapshot_5.0~svn299411/test/MC/AMDGPU/hsa.s
+@@ -1,5 +1,6 @@
+ // RUN: llvm-mc -triple amdgcn--amdhsa -mcpu=kaveri -show-encoding %s | FileCheck %s --check-prefix=ASM
+ // RUN: llvm-mc -filetype=obj -triple amdgcn--amdhsa -mcpu=kaveri -show-encoding %s | llvm-readobj -symbols -s -sd | FileCheck %s --check-prefix=ELF
++// XFAIL: *
+
+ // ELF: Section {
+ // ELF: Name: .text
diff --git a/debian/patches/silent-amdgpu-test-failing.diff b/debian/patches/silent-amdgpu-test-failing.diff
new file mode 100644
index 0000000..1e138cb
--- /dev/null
+++ b/debian/patches/silent-amdgpu-test-failing.diff
@@ -0,0 +1,46 @@
+Index: llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn292012.orig/test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll
++++ llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/invalid-opencl-version-metadata1.ll
+@@ -2,5 +2,6 @@
+ ; check llc does not crash for invalid opencl version metadata
+
+ ; CHECK: { amd.MDVersion: [ 2, 0 ] }
++; XFAIL: *
+
+ !opencl.ocl.version = !{}
+Index: llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn292012.orig/test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll
++++ llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/invalid-opencl-version-metadata2.ll
+@@ -2,6 +2,7 @@
+ ; check llc does not crash for invalid opencl version metadata
+
+ ; CHECK: { amd.MDVersion: [ 2, 0 ] }
++; XFAIL: *
+
+ !opencl.ocl.version = !{!0}
+ !0 = !{}
+Index: llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn292012.orig/test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll
++++ llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/invalid-opencl-version-metadata3.ll
+@@ -2,6 +2,7 @@
+ ; check llc does not crash for invalid opencl version metadata
+
+ ; CHECK: { amd.MDVersion: [ 2, 0 ] }
++; XFAIL: *
+
+ !opencl.ocl.version = !{!0}
+ !0 = !{i32 1}
+Index: llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/runtime-metadata.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn292012.orig/test/CodeGen/AMDGPU/runtime-metadata.ll
++++ llvm-toolchain-snapshot_5.0~svn292012/test/CodeGen/AMDGPU/runtime-metadata.ll
+@@ -1,5 +1,6 @@
+ ; RUN: llc -mtriple=amdgcn--amdhsa -filetype=obj -o - < %s | llvm-readobj -amdgpu-runtime-metadata | FileCheck %s
+ ; RUN: llc -mtriple=amdgcn--amdhsa -filetype=obj -amdgpu-dump-rtmd -amdgpu-check-rtmd-parser %s -o - 2>&1 | FileCheck --check-prefix=CHECK --check-prefix=PARSER %s
++; XFAIL: *
+
+ %struct.A = type { i8, float }
+ %opencl.image1d_t = type opaque
diff --git a/debian/patches/silent-gold-test.diff b/debian/patches/silent-gold-test.diff
new file mode 100644
index 0000000..fe6828d
--- /dev/null
+++ b/debian/patches/silent-gold-test.diff
@@ -0,0 +1,26 @@
+Description: fails on debian unstable amd64
+ Command Output (stderr):
+ --
+ /build/llvm-toolchain-snapshot-4.0~svn279916/test/tools/gold/X86/start-lib-common.ll:22:10: error: expected string not found in input
+ ; CHECK: @x = common global i32 0, align 8
+ ^
+ <stdin>:1:1: note: scanning from here
+ ; ModuleID = '/build/llvm-toolchain-snapshot-4.0~svn279916/build-llvm/test/tools/gold/X86/Output/start-lib-common.ll.tmp3.o'
+ ^
+ <stdin>:4:1: note: possible intended match here
+ @x = common global i32 0, align 4
+ ^
+
+
+Index: llvm-toolchain-snapshot_4.0~svn289826/test/tools/gold/X86/start-lib-common.ll
+===================================================================
+--- llvm-toolchain-snapshot_4.0~svn289826.orig/test/tools/gold/X86/start-lib-common.ll
++++ llvm-toolchain-snapshot_4.0~svn289826/test/tools/gold/X86/start-lib-common.ll
+@@ -9,6 +9,7 @@
+ ; RUN: -shared %t1.o --start-lib %t2.o --end-lib -o %t3.o
+ ; RUN: llvm-dis %t3.o -o - | FileCheck %s
+
++; XFAIL: *
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ @x = common global i32 0, align 4
+
diff --git a/debian/patches/silent-gold-utils.diff b/debian/patches/silent-gold-utils.diff
new file mode 100644
index 0000000..aee1218
--- /dev/null
+++ b/debian/patches/silent-gold-utils.diff
@@ -0,0 +1,190 @@
+---
+ test/tools/gold/X86/common_thinlto.ll | 1 +
+ test/tools/gold/X86/emit-llvm.ll | 2 ++
+ test/tools/gold/X86/parallel.ll | 1 +
+ test/tools/gold/X86/pr19901_thinlto.ll | 1 +
+ test/tools/gold/X86/slp-vectorize.ll | 1 +
+ test/tools/gold/X86/strip_names.ll | 1 +
+ test/tools/gold/X86/thinlto.ll | 2 ++
+ test/tools/gold/X86/thinlto_archive.ll | 1 +
+ test/tools/gold/X86/thinlto_internalize.ll | 2 ++
+ test/tools/gold/X86/thinlto_linkonceresolution.ll | 2 ++
+ test/tools/gold/X86/thinlto_weak_resolution.ll | 3 ++-
+ test/tools/gold/X86/type-merge2.ll | 2 +-
+ test/tools/gold/X86/vectorize.ll | 1 +
+ test/tools/gold/X86/visibility.ll | 1 +
+ 14 files changed, 19 insertions(+), 2 deletions(-)
+
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/common_thinlto.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/common_thinlto.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/common_thinlto.ll
+@@ -17,6 +17,7 @@
+
+ ; RUN: llvm-nm %t3 | FileCheck %s --check-prefix=NM
+ ; NM: bar
++; XFAIL: *
+
+ source_filename = "common1.c"
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/emit-llvm.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/emit-llvm.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/emit-llvm.ll
+@@ -21,6 +21,8 @@
+ ; RUN: not test -a %t4.o
+
+ ; NM: T f3
++; XFAIL: *
++
+
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/parallel.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/parallel.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/parallel.ll
+@@ -5,6 +5,7 @@
+ ; RUN: llvm-dis %t.1.5.precodegen.bc -o - | FileCheck --check-prefix=CHECK-BC1 %s
+ ; RUN: llvm-nm %t.o | FileCheck --check-prefix=CHECK0 %s
+ ; RUN: llvm-nm %t.o1 | FileCheck --check-prefix=CHECK1 %s
++; XFAIL: *
+
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/pr19901_thinlto.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/pr19901_thinlto.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/pr19901_thinlto.ll
+@@ -4,6 +4,7 @@
+ ; RUN: --plugin-opt=thinlto \
+ ; RUN: -shared -m elf_x86_64 -o %t.so %t2.o %t.o
+ ; RUN: llvm-readobj -t %t.so | FileCheck %s
++; XFAIL: i686, i386
+
+ ; CHECK: Symbol {
+ ; CHECK: Name: f
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/slp-vectorize.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/slp-vectorize.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/slp-vectorize.ll
+@@ -7,6 +7,7 @@
+
+ ; test that the vectorizer is run.
+ ; CHECK: fadd <4 x float>
++; XFAIL: *
+
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/strip_names.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/strip_names.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/strip_names.ll
+@@ -25,6 +25,7 @@
+ ; NONAME: %2 = load i32, i32* @GlobalValueName
+ ; NONAME: %3 = add i32 %0, %2
+ ; NONAME: ret i32 %3
++; XFAIL: *
+
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/thinlto.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto.ll
+@@ -126,6 +126,8 @@
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+
++; XFAIL: i686, i386
++
+ declare void @g(...)
+
+ define void @f() {
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_archive.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/thinlto_archive.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_archive.ll
+@@ -15,6 +15,7 @@
+ ; RUN: --plugin-opt=jobs=1 \
+ ; RUN: -shared %t.o %t.a -o %t4 2>&1 | FileCheck %s
+ ; RUN: llvm-nm %t4 | FileCheck %s --check-prefix=NM
++; XFAIL: i686, i386
+
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_internalize.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/thinlto_internalize.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_internalize.ll
+@@ -14,6 +14,8 @@
+ ; h() should be internalized after promotion, and eliminated after inlining
+ ; CHECK-NOT: @h.llvm.
+
++; XFAIL: i686, i386
++
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+ define i32 @g() {
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_linkonceresolution.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/thinlto_linkonceresolution.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_linkonceresolution.ll
+@@ -23,6 +23,8 @@
+ ; OPT-NOT: @f()
+ ; OPT2: define weak_odr hidden void @f()
+
++; XFAIL: i686, i386
++
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+ define i32 @g() {
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_weak_resolution.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/thinlto_weak_resolution.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/thinlto_weak_resolution.ll
+@@ -9,6 +9,7 @@
+ ; RUN: --plugin-opt=save-temps \
+ ; RUN: -shared \
+ ; RUN: -o %t3.o %t.o %t2.o
++; XFAIL: i686, i386
+
+ ; RUN: llvm-nm %t3.o | FileCheck %s
+ ; CHECK: weakfunc
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/type-merge2.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/type-merge2.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/type-merge2.ll
+@@ -6,6 +6,8 @@
+ ; RUN: -shared %t.o %t2.o -o %t3.o
+ ; RUN: llvm-dis %t3.o.0.2.internalize.bc -o - | FileCheck %s
+
++; XFAIL: *
++
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/vectorize.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/vectorize.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/vectorize.ll
+@@ -7,6 +7,7 @@
+
+ ; test that the vectorizer is run.
+ ; CHECK: fadd <4 x float>
++; XFAIL: *
+
+ target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-unknown-linux-gnu"
+Index: llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/visibility.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn293158.orig/test/tools/gold/X86/visibility.ll
++++ llvm-toolchain-snapshot_5.0~svn293158/test/tools/gold/X86/visibility.ll
+@@ -16,6 +16,7 @@
+ ; CHECK-NEXT: Other [
+ ; CHECK-NEXT: STV_PROTECTED
+ ; CHECK-NEXT: ]
++; XFAIL: *
+
+ ; IR: define void @foo
+
diff --git a/debian/patches/silent-more-tests.diff b/debian/patches/silent-more-tests.diff
new file mode 100644
index 0000000..56724b7
--- /dev/null
+++ b/debian/patches/silent-more-tests.diff
@@ -0,0 +1,52 @@
+# Comment the tests for the code coverage (fails otherwise)
+
+
+---
+ test/BugPoint/crash-narrowfunctiontest.ll | 1 +
+ test/BugPoint/metadata.ll | 3 ++-
+ test/BugPoint/remove_arguments_test.ll | 1 +
+ test/Feature/load_module.ll | 1 +
+ 4 files changed, 5 insertions(+), 1 deletion(-)
+
+--- a/test/BugPoint/crash-narrowfunctiontest.ll
++++ b/test/BugPoint/crash-narrowfunctiontest.ll
+@@ -2,6 +2,7 @@
+ ;
+ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes > /dev/null
+ ; REQUIRES: loadable_module
++; XFAIL: *
+
+ define i32 @foo() { ret i32 1 }
+
+--- a/test/BugPoint/metadata.ll
++++ b/test/BugPoint/metadata.ll
+@@ -7,7 +7,8 @@
+ ;
+ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t-notype -bugpoint-crashcalls -silence-passes -disable-namedmd-remove -disable-strip-debuginfo > /dev/null
+ ; RUN: llvm-dis %t-notype-reduced-simplified.bc -o - | FileCheck %s --check-prefix=NOTYPE
+-;
++; XFAIL: *
++
+ ; Bugpoint should keep the call's metadata attached to the call.
+
+ ; CHECK: call void @foo(), !dbg ![[LOC:[0-9]+]], !attach ![[CALL:[0-9]+]]
+--- a/test/BugPoint/remove_arguments_test.ll
++++ b/test/BugPoint/remove_arguments_test.ll
+@@ -1,6 +1,7 @@
+ ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes
+ ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s
+ ; REQUIRES: loadable_module
++; XFAIL: *
+
+ ; Test to make sure that arguments are removed from the function if they are
+ ; unnecessary. And clean up any types that frees up too.
+--- a/test/Feature/load_module.ll
++++ b/test/Feature/load_module.ll
+@@ -3,6 +3,7 @@
+ ; RUN: -disable-output 2>&1 | grep Hello
+ ; REQUIRES: loadable_module
+ ; FIXME: On Cygming, it might fail without building LLVMHello manually.
++; XFAIL: *
+
+ @junk = global i32 0
+
diff --git a/debian/patches/silent-test-failing-codeverage.diff b/debian/patches/silent-test-failing-codeverage.diff
new file mode 100644
index 0000000..76e8701
--- /dev/null
+++ b/debian/patches/silent-test-failing-codeverage.diff
@@ -0,0 +1,13 @@
+Index: llvm-toolchain-snapshot_5.0~svn306792/test/ThinLTO/X86/autoupgrade.ll
+===================================================================
+--- llvm-toolchain-snapshot_5.0~svn306792.orig/test/ThinLTO/X86/autoupgrade.ll
++++ llvm-toolchain-snapshot_5.0~svn306792/test/ThinLTO/X86/autoupgrade.ll
+@@ -12,6 +12,8 @@
+ ; CHECK: <STRTAB_BLOCK
+ ; CHECK-NEXT: blob data = 'mainglobalfunc1llvm.invariant.start.p0i8{{.*}}'
+
++; XFAIL: *
++
+ target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
+ target triple = "x86_64-apple-macosx10.11.0"
+
diff --git a/debian/patches/strip-svn.diff b/debian/patches/strip-svn.diff
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/debian/patches/strip-svn.diff
diff --git a/debian/patches/ubuntu-precise-compiler-rt.diff b/debian/patches/ubuntu-precise-compiler-rt.diff
new file mode 100644
index 0000000..86523bb
--- /dev/null
+++ b/debian/patches/ubuntu-precise-compiler-rt.diff
@@ -0,0 +1,23 @@
+Index: llvm-toolchain-3.7-3.7/compiler-rt/make/platform/clang_linux.mk
+===================================================================
+--- llvm-toolchain-3.7-3.7.orig/compiler-rt/make/platform/clang_linux.mk
++++ llvm-toolchain-3.7-3.7/compiler-rt/make/platform/clang_linux.mk
+@@ -21,7 +21,7 @@ ifneq ($(findstring -linux-,$(CompilerTa
+
+ # Define configs only if arch in triple is i386 or x86_64
+ CompilerTargetArch := $(firstword $(subst -, ,$(CompilerTargetTriple)))
+-ifeq ($(call contains,i386 x86_64 i586,$(CompilerTargetArch)),true)
++ifeq ($(call contains,i386 x86_64 i586 i686,$(CompilerTargetArch)),true)
+
+ # TryCompile compiler source flags
+ # Returns exit code of running a compiler invocation.
+@@ -35,7 +35,7 @@
+ echo $$?)
+
+ test_source = $(ProjSrcRoot)/make/platform/clang_linux_test_input.c
+-ifneq (,$(filter $(CompilerTargetArch),i386 i586))
++ifneq (,$(filter $(CompilerTargetArch),i386 i586 i686))
+ SupportedArches := i386
+ ifeq ($(call TryCompile,$(CC),$(test_source),-m64),0)
+ SupportedArches += x86_64
+
diff --git a/debian/patches/unwind-chain-inclusion.diff b/debian/patches/unwind-chain-inclusion.diff
new file mode 100644
index 0000000..0a7468e
--- /dev/null
+++ b/debian/patches/unwind-chain-inclusion.diff
@@ -0,0 +1,41 @@
+# Without this patch, the first local include of unwind.h might, with the
+# __has_include_next, try to include the one from the system.
+# It might be /usr/include/clang/3.4/include/unwind.h
+# Because of the #ifndef __CLANG_UNWIND_H, it might never include any declaration
+# from the system.
+
+---
+ clang/lib/Headers/unwind.h | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+--- a/clang/lib/Headers/unwind.h
++++ b/clang/lib/Headers/unwind.h
+@@ -23,9 +23,6 @@
+
+ /* See "Data Definitions for libgcc_s" in the Linux Standard Base.*/
+
+-#ifndef __CLANG_UNWIND_H
+-#define __CLANG_UNWIND_H
+-
+ #if defined(__APPLE__) && __has_include_next(<unwind.h>)
+ /* Darwin (from 11.x on) provide an unwind.h. If that's available,
+ * use it. libunwind wraps some of its definitions in #ifdef _GNU_SOURCE,
+@@ -53,6 +50,9 @@
+ # endif
+ #else
+
++#ifndef __CLANG_UNWIND_H
++#define __CLANG_UNWIND_H
++
+ #include <stdint.h>
+
+ #ifdef __cplusplus
+@@ -294,6 +294,7 @@ _Unwind_Ptr _Unwind_GetTextRelBase(struc
+ }
+ #endif
+
++#endif /* __CLANG_UNWIND_H */
++
+ #endif
+
+-#endif /* __CLANG_UNWIND_H */
diff --git a/debian/pollycc.in b/debian/pollycc.in
new file mode 100755
index 0000000..f063818
--- /dev/null
+++ b/debian/pollycc.in
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+clang -Xclang -load -Xclang /usr/lib/llvm-@LLVM_VERSION@/lib/LLVMPolly.so $@
diff --git a/debian/prepare-new-release.sh b/debian/prepare-new-release.sh
new file mode 100644
index 0000000..d1402c3
--- /dev/null
+++ b/debian/prepare-new-release.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+ORIG_VERSION=4.0
+TARGET_VERSION=5.0
+ORIG_VERSION_2=4_0
+TARGET_VERSION_2=5_0
+
+LIST=`ls debian/control debian/orig-tar.sh debian/rules debian/patches/clang-analyzer-force-version.diff debian/patches/clang-format-version.diff debian/patches/python-clangpath.diff debian/patches/scan-build-clang-path.diff debian/patches/lldb-libname.diff debian/patches/fix-scan-view-path.diff debian/patches/lldb-addversion-suffix-to-llvm-server-exec.patch debian/patches/clang-tidy-run-bin.diff`
+for F in $LIST; do
+ sed -i -e "s|$ORIG_VERSION_2|$TARGET_VERSION_2|g" $F
+ sed -i -e "s|$ORIG_VERSION|$TARGET_VERSION|g" $F
+done
+
diff --git a/debian/python-clang-X.Y.install.in b/debian/python-clang-X.Y.install.in
new file mode 100644
index 0000000..b549421
--- /dev/null
+++ b/debian/python-clang-X.Y.install.in
@@ -0,0 +1 @@
+tools/clang/bindings/python/clang/ /usr/lib/python2.7/dist-packages/
diff --git a/debian/python-lldb-X.Y.install.in b/debian/python-lldb-X.Y.install.in
new file mode 100644
index 0000000..3e2c69e
--- /dev/null
+++ b/debian/python-lldb-X.Y.install.in
@@ -0,0 +1 @@
+usr/lib/llvm-@LLVM_VERSION@/lib/python2.7/site-packages/lldb/
diff --git a/debian/python-lldb-X.Y.links.in b/debian/python-lldb-X.Y.links.in
new file mode 100644
index 0000000..bce077f
--- /dev/null
+++ b/debian/python-lldb-X.Y.links.in
@@ -0,0 +1,6 @@
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/python2.7/site-packages/lldb/libLLVM-@LLVM_VERSION_FULL@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/libLLVM-@LLVM_VERSION_FULL@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/python2.7/site-packages/lldb/libLLVM-@LLVM_VERSION@.so.1
+usr/lib/@DEB_HOST_MULTIARCH@/liblldb-@LLVM_VERSION@.so.1 usr/lib/llvm-@LLVM_VERSION@/lib/python2.7/site-packages/lldb/_lldb.so
+usr/lib/llvm-@LLVM_VERSION@/lib/python2.7/site-packages/lldb/ usr/lib/python2.7/dist-packages/lldb
+
+
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..6abdb77
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,616 @@
+#!/usr/bin/make -f
+
+TARGET_BUILD := build-llvm
+DEB_INST := $(CURDIR)/debian/tmp/
+
+GXX_VERSIONED_PACKAGE := $(shell dpkg-query -W -f '$${Depends}' g++ | grep -o 'g++-[0-9][0-9.]*' | tail -n1 )
+GXX_VERSIONED_EXECUTABLE := $(shell dpkg -L $(GXX_VERSIONED_PACKAGE) | grep '/usr/bin/g++-[0-9][0-9.]*' | xargs ls -d | tail -n1 )
+GCC_VERSION := $(subst /usr/bin/g++-,,$(GXX_VERSIONED_EXECUTABLE))
+
+LLVM_VERSION := 5.0
+LLVM_VERSION_FULL := $(LLVM_VERSION).0
+
+SONAME_EXT := 1
+# Manage the case when the version is 1:3.5~svn213052-1~exp1 or 1:3.4.2-1
+DEBIAN_REVISION := $(shell dpkg-parsechangelog | sed -rne "s,^Version: 1:([0-9.]+)(~|-)(.*),\3,p")
+ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+ NJOBS := -j $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+endif
+
+VENDOR=$(shell lsb_release -is)
+
+DEB_HOST_MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+DEB_HOST_GNU_TYPE = $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_HOST_ARCH_BITS = $(shell dpkg-architecture -qDEB_HOST_ARCH_BITS)
+DEB_HOST_ARCH = $(shell dpkg-architecture -qDEB_HOST_ARCH)
+DEB_HOST_ARCH_OS = $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
+
+LDFLAGS_EXTRA =
+CXXFLAGS_EXTRA = -std=c++0x
+CONFIGURE_EXTRA =
+CMAKE_EXTRA =
+
+ifneq (,$(filter $(DEB_HOST_ARCH),powerpc powerpcspe))
+LDFLAGS_EXTRA += -latomic
+endif
+
+ENABLE_SPLIT_DWARF_ARCHS := armel armhf i386 mips powerpc
+# Only enable gsplit dwarf on archs which needs it
+ifneq (,$(filter $(DEB_HOST_ARCH),$(ENABLE_SPLIT_DWARF_ARCHS)))
+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~ || \
+ dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) ge 7.2.0-2; echo $$?),0)
+# Only pass -gsplit-dwarf with working version of gcc 7
+# More: https://bugs.llvm.org/show_bug.cgi?id=34140 & https://bugs.debian.org/873609
+CXXFLAGS_EXTRA += -gsplit-dwarf
+else
+$(error "Broken gcc version for -gsplit-dwarf support. Please use < gcc 7 or >= 7.2.0-2")
+endif # < gcc 7 or >= 7.2.0-2
+endif # binutils
+endif # archs
+
+
+ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) lt 4.7.2-10~ ; echo $$?),0)
+# Too old version of gcc. Force 4.9
+ GCC_VERSION := 4.9
+endif
+
+export CC=gcc-$(GCC_VERSION)
+export CXX=g++-$(GCC_VERSION)
+
+opt_flags = -O2 -DNDEBUG
+ifneq (,$(filter $(DEB_HOST_ARCH),amd64 arm64 ppc64el s390x))
+ opt_flags += -g1
+else
+ opt_flags += -g
+endif
+
+ifneq (,$(findstring $(DEB_HOST_ARCH),armel))
+ opt_flags += -marm
+ # 3.8 fails to build, disable the compiler_rt builtins
+ # See http://lists.llvm.org/pipermail/llvm-dev/2016-May/099761.html
+ CMAKE_EXTRA += -DCOMPILER_RT_BUILD_BUILTINS=OFF
+ # Prevent clang from getting a > v4t default
+ # See bug #868779
+ CMAKE_EXTRA += -DLLVM_HOST_TRIPLE=arm-linux-gnueabi
+endif
+
+ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) ge 4.8-20121128-1~ ; echo $$?),0)
+ control_vars = '-Vdep:devlibs=libstdc++-$(GCC_VERSION)-dev, libgcc-$(GCC_VERSION)-dev' \
+ '-Vdep:devlibs-objc=libobjc-$(GCC_VERSION)-dev'
+else ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' g++-$(GCC_VERSION)) ge 4.7.2-10~ ; echo $$?),0)
+ control_vars = '-Vdep:devlibs=libstdc++6-$(GCC_VERSION)-dev, libgcc-$(GCC_VERSION)-dev' \
+ '-Vdep:devlibs-objc=libobjc-$(GCC_VERSION)-dev'
+else
+ control_vars = '-Vdep:devlibs=libstdc++6-$(GCC_VERSION)-dev'
+endif
+
+BINUTILS_GOLD_ARCHS := amd64 arm64 armhf i386 powerpcspe ppc64 ppc64el sparc sparc64 x32 s390x
+ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' binutils) ge 2.23.1-1~exp3 ; echo $$?),0)
+ifneq (,$(filter $(DEB_HOST_ARCH),$(BINUTILS_GOLD_ARCHS)))
+# -fused-ld=gold enables the gold linker (but is not supported by all archs / distro)
+ LDFLAGS_EXTRA += -fuse-ld=gold --no-keep-files-mapped --no-map-whole-files
+ CXXFLAGS_EXTRA += -fuse-ld=gold -Wl,--no-keep-files-mapped -Wl,--no-map-whole-files
+ CMAKE_EXTRA += -DLLVM_BINUTILS_INCDIR=/usr/include/
+endif
+endif
+
+# Enable polly (or not)
+POLLY_ENABLE=yes
+ifeq (,$(filter-out $(DEB_HOST_ARCH), powerpc s390x))
+ POLLY_ENABLE=no
+endif
+
+RUN_TEST=yes
+ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+ RUN_TEST=no
+endif
+
+ifneq (,$(filter codecoverage,$(DEB_BUILD_OPTIONS)))
+# enable the code coverage
+ CODECOVERAGE=yes
+# for -fvisibility-inlines-hidden see http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130729/183016.html
+ CXXFLAGS_EXTRA += -fprofile-arcs -ftest-coverage
+ LDFLAGS_EXTRA += -coverage -lgcov
+ RUN_TEST=yes
+endif
+
+ifneq (,$(filter scan-build,$(DEB_BUILD_OPTIONS)))
+# enable the build using scan-build
+# The package are installed through the variable declarations:
+# OTHERMIRROR="deb http://llvm.org/apt/unstable/ llvm-toolchain main"
+# EXTRAPACKAGES="clang-3.5"
+ PRE_PROCESS=scan-build-$(LLVM_VERSION) --show-description -analyzer-config stable-report-filename=true -enable-checker optin.performance.Padding
+ PRE_PROCESS_CONF=scan-build-$(LLVM_VERSION)
+# no need to run tests in this case
+ RUN_TEST=no
+ CONFIGURE_EXTRA += --enable-assertions
+ CMAKE_EXTRA += -DLLVM_ENABLE_ASSERTIONS=ON
+endif
+
+ifneq (,$(filter coverity,$(DEB_BUILD_OPTIONS)))
+# enable the build using coverity
+# pbuilder contains BINDMOUNTS="/opt/cov-analysis/"
+# And we have some pbuilder hooks to configure and pack the result
+# Where the binaries are installed on the jenkins instance
+ PRE_PROCESS=PATH=$$PATH:/opt/cov-analysis/bin/ cov-build --dir cov-int
+# We don't want to check the temporary files produced by the configure
+ PRE_PROCESS_CONF=
+ COVERITY_ENABLE=1
+ CONFIGURE_EXTRA += --enable-assertions
+ CMAKE_EXTRA += -DLLVM_ENABLE_ASSERTIONS=ON
+# no need to run tests in this case
+ RUN_TEST=no
+else
+ COVERITY_ENABLE=0
+endif
+
+LLDB_ENABLE=yes
+LLDB_DISABLE_ARCHS := hurd-i386 ia64 ppc64el powerpc s390x sparc64 mips64el ppc64
+# hurd has threading issues
+ifeq (,$(filter-out $(LLDB_DISABLE_ARCHS), $(DEB_HOST_ARCH)))
+# Disable LLDB for this arch.
+ LLDB_ENABLE=no
+else
+# See https://llvm.org/bugs/show_bug.cgi?id=28898
+ CMAKE_EXTRA += -DLLDB_DISABLE_LIBEDIT=ON
+endif
+
+LLD_ENABLE=yes
+
+DH_OPTIONS=
+OCAML_ENABLE= no
+OCAML_ARCHS := amd64 arm64 armel armhf i386
+ifneq (,$(filter $(DEB_HOST_ARCH),$(OCAML_ARCHS)))
+# Enable OCAML for this arch.
+ # OCAML_ENABLE=yes
+ # OCAML_STDLIB_DIR ?= $(shell ocamlc -where)
+ # DH_OPTIONS=--with ocaml
+endif
+# Force the deactivation of ocaml until the transition is done
+OCAML_ENABLE=no
+
+LIBFUZZER_ENABLE=yes
+ifeq (,$(filter $(DEB_HOST_ARCH_OS),linux))
+ LIBFUZZER_ENABLE=no
+endif
+
+
+%:
+ dh $@ $(DH_OPTIONS)
+
+
+preconfigure:
+ for f in debian/*.in; do \
+ f2=$$(echo $$f | sed 's/\.in$$//;s/X\.Y/$(LLVM_VERSION)/'); \
+ echo "$$f => $$f2"; \
+ sed -e 's|@DEB_HOST_MULTIARCH@|$(DEB_HOST_MULTIARCH)|g' \
+ -e "s|@OCAML_STDLIB_DIR@|$(OCAML_STDLIB_DIR)|g" \
+ -e "s|@LLVM_VERSION_FULL@|$(LLVM_VERSION_FULL)|g" \
+ -e "s|@LLVM_VERSION@|$(LLVM_VERSION)|g" $$f > $$f2; \
+ done
+
+# Override this two targets. They are trying to manage the .in conversion for me
+override_dh_ocamlinit:
+override_dh_ocamlclean:
+
+override_dh_auto_configure: preconfigure
+ echo "Using gcc: "
+ $(CC) -v
+ mkdir -p $(TARGET_BUILD)
+ mkdir -p clang/include/clang/Debian
+ sed -e "s|@DEB_PATCHSETVERSION@|$(DEBIAN_REVISION)|" \
+ debian/debian_path.h > clang/include/clang/Debian/debian_path.h
+
+# Remove some old symlinks
+ cd tools/ && \
+ if test -h clang; then \
+ rm clang; \
+ fi; \
+ ln -s ../clang .; \
+ readlink clang
+
+ if test "$(POLLY_ENABLE)" = yes; then \
+ cd tools/ && \
+ if test -h polly; then \
+ rm polly; \
+ fi; \
+ ln -s ../polly .; \
+ fi
+
+ if test "$(LLD_ENABLE)" = yes; then \
+ cd tools/ && \
+ if test -h lld; then \
+ rm lld; \
+ fi; \
+ ln -s ../lld .; \
+ readlink lld; \
+ fi
+
+ if test "$(LLDB_ENABLE)" = yes; then \
+ cd tools/ && \
+ if test -h lldb; then \
+ rm lldb; \
+ fi; \
+ ln -s ../lldb .; \
+ fi
+
+ cd projects/ && \
+ if test -h compiler-rt; then \
+ rm compiler-rt; \
+ fi; \
+ ln -s ../compiler-rt .; \
+ readlink compiler-rt
+
+ # Configure coverity (we need the compilers) + work around perf issues
+ -(if test $(COVERITY_ENABLE) -eq 1; then \
+ export PATH=$$PATH:/opt/cov-analysis/bin/; \
+ cov-configure --compiler clang --comptype clang; \
+ cov-configure --compiler gcc-6 --comptype gcc; \
+ cov-configure --compiler g++-6 --comptype gcc; \
+ cov-configure -co /usr/bin/g++-6 --comptype gcc -- -std=c++0x -fPIC -std=c++11; \
+ cov-configure -co /usr/bin/gcc-6 --comptype gcc -- -fPIC; \
+ cov-configure --compiler cc --comptype gcc --template \
+ --xml-option append_arg:"--ppp_translator" \
+ --xml-option append_arg:"replace/llvm::AlignOf<PrevTy>::Alignment/(llvm::AlignOf<PrevTy>::Alignment)" \
+ --xml-option append_arg:"--ppp_translator" \
+ --xml-option append_arg:"replace/llvm::AlignOf<NextTy>::Alignment/(llvm::AlignOf<NextTy>::Alignment)"; \
+ cov-configure --compiler c++ --comptype g++ --template \
+ --xml-option append_arg:"--ppp_translator" \
+ --xml-option append_arg:"replace/llvm::AlignOf<PrevTy>::Alignment/(llvm::AlignOf<PrevTy>::Alignment)" \
+ --xml-option append_arg:"--ppp_translator" \
+ --xml-option append_arg:"replace/llvm::AlignOf<NextTy>::Alignment/(llvm::AlignOf<NextTy>::Alignment)"; \
+ fi)
+
+ # Due to bug upstream, no symlink here
+ rm -fr tools/clang/tools/extra
+ cp -R -H clang-tools-extra tools/clang/tools/extra
+
+ echo "Running tests: $(RUN_TEST)"
+
+ # if cmake is installed in /tmp/cmake/ uses it
+ # Used to build llvm on old ubuntu (precise) on the llvm.org/apt/ ci
+ CMAKE_BIN=cmake; \
+ if test -f /tmp/cmake/bin/cmake; then \
+ CMAKE_BIN=/tmp/cmake/bin/cmake; \
+ fi; \
+ echo "Using cmake: $$CMAKE_BIN"; \
+ cd $(TARGET_BUILD) && \
+ $(PRE_PROCESS_CONF) $$CMAKE_BIN ../ \
+ -DCMAKE_INSTALL_PREFIX=/usr/lib/llvm-$(LLVM_VERSION) \
+ -DCMAKE_VERBOSE_MAKEFILE=ON \
+ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
+ -DCMAKE_CXX_FLAGS_RELWITHDEBINFO="$(opt_flags)" \
+ -DCMAKE_CXX_FLAGS='$(CXXFLAGS_EXTRA)' \
+ -DLLVM_LINK_LLVM_DYLIB=ON \
+ -DLLVM_INSTALL_UTILS=ON \
+ -DLLVM_VERSION_SUFFIX= \
+ -DLLVM_ENABLE_SPHINX=ON \
+ -DSPHINX_WARNINGS_AS_ERRORS=OFF \
+ -DLLVM_BUILD_LLVM_DYLIB=ON \
+ -DLLVM_ENABLE_RTTI=ON \
+ -DLLVM_ENABLE_FFI=ON \
+ $(CMAKE_EXTRA) \
+ -DLIBCLANG_LIBRARY_VERSION=$(SONAME_EXT) \
+ -DPOLLY_BUNDLED_JSONCPP=OFF
+
+override_dh_auto_build:
+ $(PRE_PROCESS) $(MAKE) $(NJOBS) -C $(TARGET_BUILD) VERBOSE=1 CLANG_VENDOR=$(VENDOR) CXXFLAGS="$(CXXFLAGS_EXTRA)" LDFLAGS="$(LDFLAGS_EXTRA)" REQUIRES_RTTI=1 DEBUGMAKE=1
+ifeq (${LIBFUZZER_ENABLE},yes)
+ cd $(TARGET_BUILD) \
+ CFLAGS=`dpkg-buildflags --get CFLAGS`; \
+ CFLAGS="$$CFLAGS `dpkg-buildflags --get CPPFLAGS`"; \
+ echo $$CFLAGS; \
+ bin/clang++ -c $$CFLAGS -std=c++11 ../lib/Fuzzer/*.cpp -IFuzzer; \
+ ar ruv libFuzzer.a Fuzzer*.o
+endif
+
+override_dh_prep: build_doc
+ dh_prep
+
+build_doc:
+ cd $(CURDIR)/docs && make -f Makefile.sphinx && make -f Makefile.sphinx man
+ cd $(CURDIR)/clang/docs && make -f Makefile.sphinx && make -f Makefile.sphinx man
+ -(if test "$(OCAML_ENABLE)" = yes; then \
+ $(MAKE) $(NJOBS) -C "$(TARGET_BUILD)/docs" ocaml_doc; \
+ fi)
+
+# Continue if failing, Ubuntu precise cannot generate manpages as sphinx is too old
+ -(cd $(TARGET_BUILD) && make $(NJOBS) docs-llvm-html docs-clang-html docs-clang-tools-html docs-polly-html docs-polly-man docs-clang-tools-man docs-clang-man docs-llvm-man)
+
+# Rename manpages
+ d=$(CURDIR)/docs/_build/man/; \
+ if test -d $$d; then \
+ cd $$d; \
+ for f in *.1; do \
+ echo "$$f"|grep $(LLVM_VERSION) || mv $$f `echo $$f|sed "s|\.1|-$(LLVM_VERSION).1|"`; \
+ done; \
+ else \
+ echo "could not find $$d"; \
+ fi
+# the clang doc generation only generates clang manpage
+# When it will do more, we should move that in the loop above
+ cd $(CURDIR)/clang/docs/_build/man/; mv clang.1 clang-$(LLVM_VERSION).1
+
+# Remove the copy of jquery. See bug #701087
+ for d in $(TARGET_BUILD)/docs/html/_static/ $(TARGET_BUILD)/tools/clang/docs/html/_static/ $(TARGET_BUILD)/tools/clang/tools/extra/docs/html/_static/; do \
+ cd $$d && rm -f jquery.js && ln -s /usr/share/javascript/jquery/jquery.js && cd -; \
+ cd $$d && rm -f underscore.js && ln -s /usr/share/javascript/underscore/underscore.js && cd -; \
+ done
+
+ help2man --version-string=$(LLVM_VERSION) clang/tools/scan-view/bin/scan-view > debian/man/scan-view-$(LLVM_VERSION).1
+ help2man --version-string=$(LLVM_VERSION) clang/tools/clang-format/clang-format-diff.py > debian/man/clang-format-diff-$(LLVM_VERSION).1
+
+ CMDS="llvm-dwarfdump llvm-mc llvm-mcmarkup llvm-objdump llvm-rtdyld llvm-size llvm-ranlib lldb lldb-mi clang-format clang clang++ clang-tblgen clang-check clang-cpp clang-import-test clang-tidy clang-apply-replacements clang-rename clang-query pp-trace sancov lli modularize clang-include-fixer find-all-symbols clang-reorder-fields ld.lld llvm-tblgen clang-change-namespace clang-offload-bundler"; \
+ for f in $$CMDS; do \
+ echo "Generating manpage of $$f"; \
+ LD_LIBRARY_PATH=$(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/:/usr/lib/*/libfakeroot help2man --version-string=$(LLVM_VERSION) $(TARGET_BUILD)/bin/$$f > debian/man/$$f-$(LLVM_VERSION).1; \
+ done
+
+override_dh_auto_install:
+ # Clean up temporary files to make sure the install works
+ rm -rf $(find $(TARGET_BUILD) -wholename '*CMakeFiles*' -not -name CMakeLists.txt -a -name "*.dir" -type d)
+ # install/fast enables a make install without recompiling temporary files
+ $(MAKE) -C $(TARGET_BUILD) VERBOSE=1 install/fast DESTDIR=$(DEB_INST)/
+ # Not used on Linux.
+ rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/argdumper
+ rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/share/clang/clang-format-bbedit.applescript
+
+ cp $(TARGET_BUILD)/bin/clang-query $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin
+
+ # Only run on executable, not script
+ chrpath -d `find $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/ -type f -executable -exec file -i '{}' \; | grep 'x-executable; charset=binary'|cut -d: -f1`
+
+ cd debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/ && rm -f libclang.so.$(SONAME_EXT) libclang-$(LLVM_VERSION).so; \
+ ln -s libclang-$(LLVM_VERSION).so.$(SONAME_EXT) libclang.so.$(SONAME_EXT)
+
+# 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-$(LLVM_VERSION)
+
+ifeq (${LIBFUZZER_ENABLE},yes)
+ mkdir -p $(CURDIR)/debian/libfuzzer-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/
+ cp -v $(TARGET_BUILD)/libFuzzer.a $(CURDIR)/debian/libfuzzer-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/
+endif
+
+# Create this fake directory to make the install libclang-common-dev happy
+# under the unsupported archs of compiler-rt
+ mkdir -p $(DEB_INST)/usr/lib/clang/$(LLVM_VERSION)/lib
+ mkdir -p $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/lib/
+ mkdir -p $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION)/lib/clang_linux/
+ mkdir -p $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/clang_linux/
+ mkdir -p $(TARGET_BUILD)/tools/clang/runtime/compiler-rt/clang_linux/
+# On some archs, the sanatizers are not built. As we explicitly includes some txt files, create
+# a fake txt to make sure it doesn't fail
+ echo "The *.txt files, if available, contain helper to override some of the errors messages." > $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/README.txt
+ echo "Please visit https://github.com/google/sanitizers/wiki/AddressSanitizer for help" >> $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/clang/$(LLVM_VERSION_FULL)/README.txt
+
+# idem for the lldb python binding
+ mkdir -p $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/python2.7/site-packages/lldb/
+
+# Remove things that CMake install but which aren't packaged yet,
+# or are packaged from the source or build tree.
+ mv $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/clang-$(LLVM_VERSION) \
+ $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/clang
+
+# Don't think it is used
+ rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libPolly*a
+# Probably useless
+ rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/python2.7/site-packages/six.py
+
+# Rename binaries
+ mkdir -p $(DEB_INST)/usr/bin/
+ cd $(DEB_INST)/usr/bin/; \
+ rm -f *; \
+ for f in ../lib/llvm-$(LLVM_VERSION)/bin/*; do \
+ ln -s $$f `basename $$f`-$(LLVM_VERSION); \
+ echo "Link $$f to `basename $$f`-$(LLVM_VERSION)"; \
+ done
+
+# Rename some stuff with the version name
+ cp $(CURDIR)/clang/tools/scan-build/man/scan-build.1 $(CURDIR)/clang/tools/scan-build/man/scan-build-$(LLVM_VERSION).1
+
+ # copy the vim files (except that tablegen does not exist for indent
+ VIM_DIRS="ftdetect ftplugin syntax indent"; \
+ for dir in $$VIM_DIRS; do \
+ cp -f $(CURDIR)/utils/vim/$$dir/llvm.vim $(CURDIR)/utils/vim/$$dir/llvm-$(LLVM_VERSION).vim; \
+ if test -f $(CURDIR)/utils/vim/$$dir/tablegen.vim; then \
+ cp -f $(CURDIR)/utils/vim/$$dir/tablegen.vim $(CURDIR)/utils/vim/$$dir/tablegen-$(LLVM_VERSION).vim; \
+ fi; \
+ done
+ cp -f $(CURDIR)/utils/vim/vimrc $(CURDIR)/utils/vim/llvm-$(LLVM_VERSION)-vimrc
+
+ cp -f $(CURDIR)/clang/tools/clang-format/clang-format-diff.py $(CURDIR)/clang/tools/clang-format/clang-format-diff-$(LLVM_VERSION)
+
+ cp -f $(CURDIR)/clang/tools/clang-format/clang-format.py clang/tools/clang-format/clang-format-$(LLVM_VERSION).py
+
+ rm -rf clang/tools/scan-build-$(LLVM_VERSION)
+ cp -fR $(CURDIR)/clang/tools/scan-build clang/tools/scan-build-$(LLVM_VERSION)
+
+ rm -rf clang/tools/scan-build-py-$(LLVM_VERSION)
+ cp -fR $(CURDIR)/clang/tools/scan-build-py clang/tools/scan-build-py-$(LLVM_VERSION)
+ chmod +x clang/tools/scan-build-py-$(LLVM_VERSION)/bin/*
+
+ rm -rf clang/tools/scan-view-$(LLVM_VERSION)
+ cp -fR $(CURDIR)/clang/tools/scan-view clang/tools/scan-view-$(LLVM_VERSION)
+
+# Remove some license files
+ rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/include/llvm/Support/LICENSE.TXT
+
+# Change CMake module dir
+ sed -i 's|LLVM_CMAKE_DIR "/usr/lib/llvm-$(LLVM_VERSION)/share/llvm/cmake"|LLVM_CMAKE_DIR "/usr/share/llvm-$(LLVM_VERSION)/cmake"|' $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/llvm/LLVMConfig.cmake
+
+# Disable CMake's package validation checks for target files that we may remove.
+ sed -i '/_IMPORT_CHECK_TARGETS \(Polly\|sancov\)/ {s|^|#|}' $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/cmake/llvm/LLVMExports-*.cmake
+
+# Managed in python-lldb-X.Y.links.in
+ rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/site-packages/lldb/_lldb.so
+
+# Manage the polly files. Sometimes, we build them. Sometimes not.
+ if test "$(POLLY_ENABLE)" = yes; then \
+ mkdir -p $(CURDIR)/debian/libclang-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/ $(CURDIR)/debian/libclang-common-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/include/polly/; \
+ mv -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libpolly* \
+ $(CURDIR)/debian/libclang-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/lib/; \
+ rm -rf $(CURDIR)/debian/libclang-common-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/include/polly; \
+ mv -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/include/polly/ \
+ $(CURDIR)/debian/libclang-common-$(LLVM_VERSION)-dev/usr/lib/llvm-$(LLVM_VERSION)/include/; \
+ fi
+
+ mkdir -p $(CURDIR)/debian/usr/share/doc/llvm-$(LLVM_VERSION)-doc/ $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/
+ cp -R $(TARGET_BUILD)/docs/html $(CURDIR)/debian/usr/share/doc/llvm-$(LLVM_VERSION)-doc/
+ cp -R $(TARGET_BUILD)/tools/clang/docs/html $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/
+ cp -R $(TARGET_BUILD)/tools/clang/tools/extra/docs/html $(CURDIR)/debian/usr/share/doc/clang-$(LLVM_VERSION)-doc/clang-extra
+
+# Rename OCaml bindings
+ if test "$(OCAML_ENABLE)" = yes; then \
+ mkdir -p "$(DEB_INST)$(OCAML_STDLIB_DIR)"; \
+ mkdir -p "$(DEB_INST)usr/lib/llvm-$(LLVM_VERSION)/docs/ocaml/html/html"; \
+ mkdir -p "$(DEB_INST)usr/lib/llvm-$(LLVM_VERSION)/share/doc/llvm/ocaml-html/"; \
+ if test -d "$(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/ocaml"; then \
+ mv -f "$(DEB_INST)usr/lib/llvm-$(LLVM_VERSION)/lib/ocaml" \
+ "$(DEB_INST)$(OCAML_STDLIB_DIR)/llvm-$(LLVM_VERSION)"; \
+ fi; \
+ fi
+
+# Delete the target build directory to save some space on the build systems
+# All the files have been installed in $(CURDIR)/debian/tmp/ already
+ rm -rf $(TARGET_BUILD)
+
+
+override_dh_makeshlibs:
+ dh_makeshlibs -plibclang$(SONAME_EXT)-$(LLVM_VERSION) -V"libclang$(SONAME_EXT)-$(LLVM_VERSION) (>= 1:5.0~svn298832-1~)"
+ dh_makeshlibs -pliblldb-$(LLVM_VERSION) -V"liblldb-$(LLVM_VERSION) (>= 1:5.0~svn298832-1~)"
+ dh_makeshlibs -plibllvm$(LLVM_VERSION) -V"libllvm$(LLVM_VERSION) (>= 1:5.0~svn298832-1~)"
+ dh_makeshlibs --remaining-packages
+
+override_dh_shlibdeps:
+# Ignore asan libraries. They would trigger dependencies to multiarch libraries
+ dh_shlibdeps -l$(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/ -Xlibclang_rt.asan -Xlibclang_rt.asan -Xlibclang_rt.asan-*.so -Xlibclang_rt.asan-*.so
+
+override_dh_installman:
+ dh_installman
+# Make sure that lli manpage is only in llvm-3.2-runtime (See #697117)
+ rm -f $(CURDIR)/debian/llvm-$(LLVM_VERSION)/usr/share/man/man1/lli*
+
+
+override_dh_strip:
+ : # running out of diskspace on the buildds
+ find $(TARGET_BUILD) -name '*.o' -o -name '*.a' | xargs -r rm -f
+ dh_strip -p libclang$(SONAME_EXT)-$(LLVM_VERSION) --dbg-package=libclang$(SONAME_EXT)-$(LLVM_VERSION)-dbg
+ dh_strip -p libllvm$(LLVM_VERSION) --dbg-package=libllvm$(LLVM_VERSION)-dbg
+ dh_strip -p liblldb-$(LLVM_VERSION) --dbg-package=liblldb-$(LLVM_VERSION)-dbg
+ifeq (${LLD_ENABLE},yes)
+ dh_strip -p liblld-$(LLVM_VERSION) --dbg-package=liblld-$(LLVM_VERSION)-dbg
+endif
+ dh_strip -a
+
+
+override_dh_install:
+# cp $(TARGET_BUILD)/lib/libLLVM-$(LLVM_VERSION).so $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libLLVM-$(LLVM_VERSION).so.$(SONAME_EXT)
+ dh_install --fail-missing
+
+override_dh_installdeb:
+# Managed by the package
+ dh_installdeb -a
+
+ rm -f $(CURDIR)/debian/tmp/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/site-packages/lldb/__init__.pyc $(CURDIR)/debian/python-lldb-$(LLVM_VERSION)/usr/lib/llvm-$(LLVM_VERSION)/lib/python*/site-packages/lldb/__init__.pyc
+ rm -f $(CURDIR)/debian/clang-$(LLVM_VERSION)-examples/usr/share/doc/clang-$(LLVM_VERSION)-examples/examples/*Make*
+
+# Remove auto generated python pyc
+ find $(CURDIR)/debian/llvm-$(LLVM_VERSION)-tools/usr/lib/llvm-$(LLVM_VERSION)/ -name '*.pyc' | xargs -r rm -f
+
+ifeq (${RUN_TEST},yes)
+# List of the archs we know we have 100 % tests working
+ARCH_LLVM_TEST_OK := i386 amd64
+
+override_dh_auto_test:
+
+# LLVM tests
+ifneq (,$(findstring $(DEB_HOST_ARCH),$(ARCH_LLVM_TEST_OK)))
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-llvm
+else
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-llvm || true
+endif
+
+# Clang tests
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-clang || true
+
+# Clang extra tests (ex: clang-tidy)
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-clang-tools || true
+
+# LLD tests
+ifeq (${LLD_ENABLE},yes)
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-lld || true
+endif
+
+# Sanitizer
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-sanitizer || true
+
+# LLDB tests
+ifeq (,$(filter $(DEB_HOST_ARCH), $(LLDB_DISABLE_ARCHS) armhf armel))
+ifneq (,$(filter codecoverage,$(DEB_BUILD_OPTIONS)))
+# Create a symlink to run the testsuite: see https://bugs.archlinux.org/task/50759
+ cd $(CURDIR)/$(TARGET_BUILD)/lib/python*/site-packages/; \
+ if test ! -e _lldb.so; then \
+ ln -s lldb/_lldb.so; \
+ fi
+ LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/$(TARGET_BUILD)/lib/ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-lldb || true
+ # remove the workaround
+ rm $(CURDIR)/$(TARGET_BUILD)/lib/python*/site-packages/_lldb.so
+endif
+endif
+
+# Polly tests
+ifeq (${POLLY_ENABLE},yes)
+ $(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-polly || true
+endif
+
+# Managed by debian build system
+ rm -f $(CURDIR)/$(TARGET_BUILD)/lib/python*/site-packages/lldb/_lldb.so
+
+# polly tests
+ if test "$(POLLY_ENABLE)" = yes; then \
+ cd $(TARGET_BUILD)/ && LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/ $(MAKE) -C tools/polly/test/ check-polly || true; \
+ fi
+
+# The compression of the code coverage report is done in the
+# hook B21GetCoverageResults on the server
+ if test "$(CODECOVERAGE)" = "yes"; then \
+ REPORT=reports/llvm-toolchain.info; \
+ mkdir -p reports/; \
+ lcov --directory $(TARGET_BUILD)/ --capture --ignore-errors source --output-file $$REPORT; \
+ lcov --remove $$REPORT "/usr*" -o $$REPORT; \
+ genhtml -o reports/coverage --show-details --highlight --legend $$REPORT; \
+ fi
+override_dh_auto_test:
+endif
+
+
+override_dh_gencontrol:
+ dh_gencontrol -- $(control_vars)
+
+
+override_dh_auto_clean:
+ rm -rf $(TARGET_BUILD) tools/clang/include/clang/Debian/debian_path.h docs/_build/ clang/docs/_build tools/clang/docs/_html/
+# QA tools
+ rm -rf cov-int/ reports/
+ rm -f `ls debian/*.in|sed -e "s|.in$$||g"`
+ find utils -name '*.pyc' | xargs -r rm -f
+ # Use -I because a test has a space in its name
+ find lldb/test -iname '*.pyc' | xargs -I{} -r rm -f {}
+ find test -name '*.pyc' -o -name '*.cm[ix]' | xargs -r rm -f
+ find test/Bindings -name '*.o' | xargs -r rm -f
+ rm -f tools/clang tools/polly tools/lld tools/lldb projects/compiler-rt
+ rm -rf tools/clang/tools/extra clang/tools/extra/
+ rm -f $(CURDIR)/utils/vim/llvm-$(LLVM_VERSION).vim $(CURDIR)/utils/vim/tablegen-$(LLVM_VERSION).vim
+ rm -f $(CURDIR)/clang/tools/clang-format/clang-format-diff-$(LLVM_VERSION)
+ rm -f $(CURDIR)/clang/tools/clang-format/clang-format-$(LLVM_VERSION).py
+
+
+.PHONY: override_dh_strip preconfigure
diff --git a/debian/source.lintian-overrides b/debian/source.lintian-overrides
new file mode 100644
index 0000000..1039d83
--- /dev/null
+++ b/debian/source.lintian-overrides
@@ -0,0 +1,9 @@
+# Removed by patch remove-dbtree.diff
+source: source-is-missing clang/www/analyzer/scripts/dbtree.js
+# No longer used (we are using cmake now)
+source: outdated-autotools-helper-file autoconf/config.guess 2011-08-20
+source: outdated-autotools-helper-file autoconf/config.sub 2011-11-02
+# Reported here https://bugs.llvm.org/show_bug.cgi?id=32962
+# No activity, silent it to avoid false positive in automation
+source: license-problem-convert-utf-code lib/Support/ConvertUTF.cpp
+
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 0000000..eb3378a
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,4 @@
+version=3
+opts=uversionmangle=s/\.(tar.*|tgz|zip|gz|bz2)$//i,dversionmangle=s/[-.+~]?(cvs|svn|git|snapshot|pre|hg)(.*)$//i,pasv \
+http://llvm.org/releases/download.html (?:.*/)?clang-?_?([\d+\.]+|\d+)\.(tar.*|tgz|zip|gz|bz2|) debian debian/orig-tar.sh
+