diff --git a/debian/changelog b/debian/changelog index cd0c051c..84219be6 100644 --- a/debian/changelog +++ b/debian/changelog @@ -156,6 +156,15 @@ llvm-toolchain-snapshot (1:13~++20210129063721+010b176cdefb-1~exp1) experimental -- Sylvestre Ledru Sat, 30 Jan 2021 17:31:15 +0100 +llvm-toolchain-12 (1:12.0.1-10) UNRELEASED; urgency=medium + + * If parallel is not set in DEB_BUILD_OPTIONS, use nproc + + [ John Paul Adrian Glaubitz ] + * Disable libunwind on sparc, sparc64 and x32 + + -- Sylvestre Ledru Sat, 02 Oct 2021 10:50:27 +0200 + llvm-toolchain-12 (1:12.0.1-9) unstable; urgency=medium * Replace make by ninja for the build process diff --git a/debian/rules b/debian/rules index 60791e4a..805f41ad 100755 --- a/debian/rules +++ b/debian/rules @@ -28,6 +28,8 @@ SONAME_OPENMP := 5 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)))) +else + NJOBS := $(shell nproc) endif VENDOR=$(shell lsb_release -is) @@ -205,7 +207,7 @@ endif # Enable libunwind (or not) LIBUNWIND_ENABLE=yes -ifneq (,$(filter $(DEB_HOST_ARCH), s390x armel m68k mipsel hurd-i386 powerpc sparc64 x32)) +ifneq (,$(filter $(DEB_HOST_ARCH), s390x armel m68k mipsel hurd-i386 powerpc sparc sparc64 x32)) LIBUNWIND_ENABLE=no else PROJECTS += ;libunwind @@ -453,13 +455,8 @@ override_dh_auto_configure: preconfigure fi -ifeq (Ninja, $(GENERATOR)) # ninja VERBOSE=-v -else -# make -VERBOSE=VERBOSE=1 -endif debian-full-build: $(PRE_PROCESS) ninja $(NJOBS) -C $(TARGET_BUILD) $(VERBOSE) stage2 @@ -590,13 +587,13 @@ build_doc: cd $(CURDIR)/llvm/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 \ - ninja -C "$(TARGET_BUILD_STAGE2)" ocaml_doc $(VERBOSE); \ + ninja -C "$(TARGET_BUILD_STAGE2)" $(VERBOSE) ocaml_doc; \ fi) - ninja -C $(TARGET_BUILD_STAGE2) docs-llvm-html docs-clang-html docs-clang-tools-html docs-clang-tools-man docs-clang-man docs-llvm-man $(VERBOSE) + ninja -C $(TARGET_BUILD_STAGE2) $(VERBOSE) docs-llvm-html docs-clang-html docs-clang-tools-html docs-clang-tools-man docs-clang-man docs-llvm-man ifeq (${POLLY_ENABLE},yes) - ninja -C $(TARGET_BUILD_STAGE2) docs-polly-html docs-polly-man $(VERBOSE) + ninja -C $(TARGET_BUILD_STAGE2) $(VERBOSE) docs-polly-html docs-polly-man endif # Rename manpages @@ -715,9 +712,9 @@ endif rm -rf $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/build/utils/lit/lit/__pycache__/ \ $(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/build/utils/lit/lit/*/__pycache__/ - DESTDIR=$(DEB_INST) ninja -C libcxxabi/build install $(VERBOSE) - DESTDIR=$(DEB_INST) ninja -C libcxx/build install $(VERBOSE) - DESTDIR=$(DEB_INST) ninja -C libclc/build install $(VERBOSE) + DESTDIR=$(DEB_INST) ninja $(VERBOSE) -C libcxxabi/build install + DESTDIR=$(DEB_INST) ninja $(VERBOSE) -C libcxx/build install + DESTDIR=$(DEB_INST) ninja $(VERBOSE) -C libclc/build install # Rename binaries mkdir -p $(DEB_INST)/usr/bin/ @@ -892,33 +889,33 @@ override_dh_auto_test: # LLVM tests ifneq (,$(findstring $(DEB_HOST_ARCH),$(ARCH_LLVM_TEST_OK))) # logs the output to check-llvm_build_log.txt for validation through autopkgtest - ninja -C $(TARGET_BUILD) stage2-check-llvm | tee check-llvm_build_log.txt + ninja $(VERBOSE) -C $(TARGET_BUILD) stage2-check-llvm | tee check-llvm_build_log.txt else - ninja -C $(TARGET_BUILD) stage2-check-llvm || true + ninja $(VERBOSE) -C $(TARGET_BUILD) stage2-check-llvm || true endif # Clang tests - ninja -C $(TARGET_BUILD) stage2-check-clang || true + ninja $(VERBOSE) -C $(TARGET_BUILD) stage2-check-clang || true # Clang extra tests (ex: clang-tidy) - ninja -C $(TARGET_BUILD_STAGE2) check-clang-tools || true + ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-clang-tools || true # LLD tests ifeq (${LLD_ENABLE},yes) - ninja -C $(TARGET_BUILD_STAGE2) check-lld || true + ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-lld || true endif # Sanitizer - ninja -C $(TARGET_BUILD_STAGE2) check-sanitizer || true + ninja $(VERBOSE) -C $(TARGET_BUILD_STAGE2) check-sanitizer || true # Libcxx - ninja -C libcxx/build check-libcxx || true + ninja $(VERBOSE) -C libcxx/build check-libcxx || true # Libcxxabi - ninja -C libcxxabi/build check-libcxxabi || true + ninja $(VERBOSE) -C libcxxabi/build check-libcxxabi || true # Libclc - ninja -C libclc/build test || true + ninja $(VERBOSE) -C libclc/build test || true # LLDB tests ifeq (,$(filter $(DEB_HOST_ARCH), $(LLDB_DISABLE_ARCHS) armhf armel)) @@ -929,7 +926,7 @@ ifneq (,$(filter codecoverage,$(DEB_BUILD_OPTIONS))) ln -s lldb/_lldb.so; \ fi if test "$(CODECOVERAGE)" = "no"; then \ - LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/$(TARGET_BUILD)/lib/ ninja -C $(TARGET_BUILD) check-lldb || true; \ + LD_LIBRARY_PATH=$$LD_LIBRARY_PATH:$(CURDIR)/$(TARGET_BUILD)/lib/ ninja $(VERBOSE) -C $(TARGET_BUILD) check-lldb || true; \ fi # remove the workaround rm $(CURDIR)/$(TARGET_BUILD)/lib/python*/*-packages/_lldb.so