diff --git a/debian/changelog b/debian/changelog index e7d864b4..895c2b5b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -301,6 +301,22 @@ llvm-toolchain-snapshot (1:14~++20210715093511+afc760ef3527-1~exp2) unstable; ur -- Sylvestre Ledru Fri, 06 Aug 2021 08:40:58 +0200 +llvm-toolchain-13 (1:13.0.1-2) unstable; urgency=medium + + * mlir: use the cmake option to avoid installing object files + MLIR_INSTALL_AGGREGATE_OBJECTS + Closes upstream #53134 + * Build clangd with GRPC support + Thanks to Sam McCall for the patch + + -- Sylvestre Ledru Wed, 05 Jan 2022 23:21:56 +0100 + +llvm-toolchain-13 (1:13.0.1-1) unstable; urgency=medium + + * New stable release + + -- Sylvestre Ledru Thu, 03 Feb 2022 10:21:56 +0100 + llvm-toolchain-13 (1:13.0.1~+rc3-1~exp1) experimental; urgency=medium [ Samuel Thibault ] @@ -627,6 +643,30 @@ llvm-toolchain-snapshot (1:13~++20201124100523+245052ac3080-1~exp1) experimental -- Sylvestre Ledru Wed, 27 Jan 2021 16:02:16 +0100 +llvm-toolchain-12 (1:12.0.1-19) UNRELEASED; urgency=medium + + * Build clangd with GRPC support + Thanks to Sam McCall for the patch + + -- Sylvestre Ledru Sat, 29 Jan 2022 10:17:38 +0100 + +llvm-toolchain-12 (1:12.0.1-18) unstable; urgency=medium + + * Unbreak llvm-toolchain-12 on buster. + -fuse-ld=gold wasn't passed to compiler-rt. it was using bfd. + And binutils shipping in buster has a bug preventing this to work: + https://github.com/llvm/llvm-project/issues/42339 + * Rename ocaml-nox => ocaml-base (Closes: #1002608) + * Remove Build-Conflicts: ocaml + + -- Sylvestre Ledru Thu, 16 Dec 2021 17:49:22 +0100 + +llvm-toolchain-12 (1:12.0.1-17) unstable; urgency=medium + + * Rebuild to workaround the coinstallability issue (Closes: #996858) + + -- Sylvestre Ledru Tue, 30 Nov 2021 19:32:51 +0100 + llvm-toolchain-12 (1:12.0.1-16) unstable; urgency=medium [ Erik Maciejewski ] diff --git a/debian/control b/debian/control index febdc10e..37976868 100644 --- a/debian/control +++ b/debian/control @@ -23,7 +23,8 @@ Build-Depends: debhelper (>= 10.0), cmake, ninja-build, dh-exec, dh-ocaml [amd64 arm64 armhf ppc64el riscv64 s390x], libpfm4-dev [linux-any], python3-setuptools, libz3-dev, llvm-spirv [ amd64 arm64 armel armhf mips64el mipsel ppc64el s390x ] | hello [!i386], - spirv-tools [ linux-any ] | hello [ !i386] + spirv-tools [ linux-any ] | hello [ !i386], + libgrpc++-dev, libprotobuf-dev, protobuf-compiler, protobuf-compiler-grpc # "| hello" is for older buster/bionic distros without spirv support Build-Conflicts: oprofile Standards-Version: 4.2.1 diff --git a/debian/orig-tar.sh b/debian/orig-tar.sh index 4e5acdec..e277ad08 100755 --- a/debian/orig-tar.sh +++ b/debian/orig-tar.sh @@ -1,15 +1,6 @@ #!/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-openmp.tar.bz2 -# llvm-toolchain-snapshot-3.2_3.2repack.orig-libcxx.tar.bz2 -# llvm-toolchain-snapshot-3.2_3.2repack.orig-libcxxabi.tar.bz2 -# llvm-toolchain-snapshot-3.2_3.2repack.orig.tar.bz2 +# This script will create the following tarball: +# llvm-toolchain-XX_XX\~+20200120101212+de4b2a7fad6.orig.tar.xz set -e diff --git a/debian/rules b/debian/rules index 8b8d5eee..e7c62213 100755 --- a/debian/rules +++ b/debian/rules @@ -124,6 +124,18 @@ ZARCH=z13 endif STAGE_2_CMAKE_EXTRA += -DCLANG_SYSTEMZ_DEFAULT_ARCH=$(ZARCH) +# clangd remote index support requires GRPC & protobuf. +# Enable if minimum tested versions are available. +ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' libgrpc++-dev) gt 1.30.0; echo $$?),0) +ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' protobuf-compiler-grpc) gt 1.30.0; echo $$?),0) +ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' libprotobuf-dev) gt 3.12.0; echo $$?),0) +ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' protobuf-compiler) gt 3.12.0; echo $$?),0) +STAGE_2_CMAKE_EXTRA += -DCLANGD_ENABLE_REMOTE=ON +endif +endif +endif +endif + export CC=gcc-$(GCC_VERSION) export CXX=g++-$(GCC_VERSION) @@ -274,6 +286,10 @@ ifeq ($(LIBUNWIND_ENABLE),yes) endif endif +# Do not install objects +STAGE_ALL_CMAKE_EXTRA += -DMLIR_INSTALL_AGGREGATE_OBJECTS=OFF + + RUN_TEST=yes ifneq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) RUN_TEST=no @@ -424,6 +440,8 @@ preconfigure: @echo "LLVM_VERSION=$(LLVM_VERSION)" @echo "LLVM_VERSION_FULL=$(LLVM_VERSION_FULL)" @echo "LLVM_VERSION_SNAPSHOT=$(LLVM_VERSION_SNAPSHOT)" + @echo "PATH=$(PATH)" + @echo "LD_LIBRARY_PATH=$(LD_LIBRARY_PATH)" for f in debian/*.in; do \ f2=$$(echo $$f | sed 's/\.in$$//;s/X\.Y/$(LLVM_VERSION)/'); \ @@ -715,7 +733,7 @@ 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 - DESTDIR=$(DEB_INST)/ ninja -C $(TARGET_BUILD) $(VERBOSE) stage2-install + LD_LIBRARY_PATH=$(STAGE_2_LIB_DIR) DESTDIR=$(DEB_INST)/ ninja -C $(TARGET_BUILD) $(VERBOSE) stage2-install # Not used on Linux. rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin/argdumper @@ -727,8 +745,8 @@ override_dh_auto_install: # Remove an example - introduced in https://reviews.llvm.org/D61446 rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libBye.a - # should not be installed (mlir) - rm -rf $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/objects-Release/ + # Remove unused clangd lib + rm -f $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libRemoteIndexProto.a $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libRemoteIndexServiceProto.a $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/libMonitoringServiceProto.a cp $(TARGET_BUILD_STAGE2)/bin/clang-query $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/bin