use a variable for the path + use the ocaml correct target

This commit is contained in:
Sylvestre Ledru 2018-10-09 20:29:30 +02:00
parent 0f1093d2ba
commit 3b17d907fe

28
debian/rules vendored
View File

@ -1,6 +1,7 @@
#!/usr/bin/make -f #!/usr/bin/make -f
TARGET_BUILD := build-llvm TARGET_BUILD := build-llvm
TARGET_BUILD_STAGE2 := $(TARGET_BUILD)/tools/clang/stage2-bins
DEB_INST := $(CURDIR)/debian/tmp/ 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_PACKAGE := $(shell dpkg-query -W -f '$${Depends}' g++ | grep -o 'g++-[0-9][0-9.]*' | tail -n1 )
@ -361,12 +362,12 @@ VERBOSE=VERBOSE=1
debian-stage2-build: debian-stage2-build:
$(PRE_PROCESS) make $(NJOBS) -C $(TARGET_BUILD) $(VERBOSE) CXXFLAGS="$(CXXFLAGS_EXTRA)" LDFLAGS="$(LDFLAGS_EXTRA)" REQUIRES_RTTI=1 DEBUGMAKE=1 stage2 $(PRE_PROCESS) make $(NJOBS) -C $(TARGET_BUILD) $(VERBOSE) CXXFLAGS="$(CXXFLAGS_EXTRA)" LDFLAGS="$(LDFLAGS_EXTRA)" REQUIRES_RTTI=1 DEBUGMAKE=1 stage2
if grep "CMAKE_BUILD_TYPE:STRING=Debug" $(TARGET_BUILD)/tools/clang/stage2-bins/CMakeCache.txt; then \ if grep "CMAKE_BUILD_TYPE:STRING=Debug" $(TARGET_BUILD_STAGE2)/CMakeCache.txt; then \
echo "clang stage2 has been built in upstream Debug mode. Too slow, we don't want that."; \ echo "clang stage2 has been built in upstream Debug mode. Too slow, we don't want that."; \
fi fi
# Check the stage 2 build worked # Check the stage 2 build worked
if ! readelf --string-dump .comment $(TARGET_BUILD)/tools/clang/stage2-bins/bin/clang 2>&1|grep -q "clang version"; then \ if ! readelf --string-dump .comment $(TARGET_BUILD_STAGE2)/bin/clang 2>&1|grep -q "clang version"; then \
echo "clang hasn't been built using clang. Bye bye. Check that the stage2 build has been done."; \ echo "clang hasn't been built using clang. Bye bye. Check that the stage2 build has been done."; \
fi fi
@ -378,7 +379,7 @@ ifeq (${LIBFUZZER_ENABLE},yes)
CFLAGS=`dpkg-buildflags --get CFLAGS`; \ CFLAGS=`dpkg-buildflags --get CFLAGS`; \
CFLAGS="$$CFLAGS `dpkg-buildflags --get CPPFLAGS`"; \ CFLAGS="$$CFLAGS `dpkg-buildflags --get CPPFLAGS`"; \
echo $$CFLAGS; \ echo $$CFLAGS; \
tools/clang/stage2-bins/bin/clang++ -c $$CFLAGS -std=c++11 ../compiler-rt/lib/fuzzer/*.cpp -IFuzzer; \ $(TARGET_BUILD_STAGE2)/bin/clang++ -c $$CFLAGS -std=c++11 ../compiler-rt/lib/fuzzer/*.cpp -IFuzzer; \
ar ruv libFuzzer.a Fuzzer*.o ar ruv libFuzzer.a Fuzzer*.o
endif endif
touch $@ touch $@
@ -386,16 +387,16 @@ endif
LIBCXX_CMAKE_OPTIONS := \ LIBCXX_CMAKE_OPTIONS := \
-DCMAKE_INSTALL_PREFIX=/usr/lib/llvm-$(LLVM_VERSION) \ -DCMAKE_INSTALL_PREFIX=/usr/lib/llvm-$(LLVM_VERSION) \
-DLLVM_CONFIG_PATH=$(CURDIR)/$(TARGET_BUILD)/tools/clang/stage2-bins/bin/llvm-config \ -DLLVM_CONFIG_PATH=$(CURDIR)/$(TARGET_BUILD_STAGE2)/bin/llvm-config \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \ -DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_CXX_COMPILER=$(CURDIR)/$(TARGET_BUILD)/tools/clang/stage2-bins/bin/clang++ \ -DCMAKE_CXX_COMPILER=$(CURDIR)/$(TARGET_BUILD_STAGE2)/bin/clang++ \
-DCMAKE_C_COMPILER=$(CURDIR)/$(TARGET_BUILD)/tools/clang/stage2-bins/bin/clang \ -DCMAKE_C_COMPILER=$(CURDIR)/$(TARGET_BUILD_STAGE2)/bin/clang \
-DCMAKE_CXX_FLAGS="$(LIBCXXFLAGS)" \ -DCMAKE_CXX_FLAGS="$(LIBCXXFLAGS)" \
-DCMAKE_EXE_LINKER_FLAGS="" \ -DCMAKE_EXE_LINKER_FLAGS="" \
-DCMAKE_SHARED_LINKER_FLAGS="" \ -DCMAKE_SHARED_LINKER_FLAGS="" \
-DCMAKE_MODULE_LINKER_FLAGS="" \ -DCMAKE_MODULE_LINKER_FLAGS="" \
-DCMAKE_AR=$(CURDIR)/$(TARGET_BUILD)/tools/clang/stage2-bins/bin/llvm-ar \ -DCMAKE_AR=$(CURDIR)/$(TARGET_BUILD_STAGE2)/bin/llvm-ar \
-DCMAKE_RANLIB=$(CURDIR)/$(TARGET_BUILD)/tools/clang/stage2-bins/bin/llvm-ranlib \ -DCMAKE_RANLIB=$(CURDIR)/$(TARGET_BUILD_STAGE2)/bin/llvm-ranlib \
-DLLVM_EXTERNAL_LIT=$(BASE_PATH)/utils/lit/lit.py \ -DLLVM_EXTERNAL_LIT=$(BASE_PATH)/utils/lit/lit.py \
$(CMAKE_EXTRA) \ $(CMAKE_EXTRA) \
$(CMAKE_EXTRA_LIBCXX) $(CMAKE_EXTRA_LIBCXX)
@ -452,7 +453,7 @@ build_doc:
cd $(CURDIR)/docs && make -f Makefile.sphinx && make -f Makefile.sphinx man 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 cd $(CURDIR)/clang/docs && make -f Makefile.sphinx && make -f Makefile.sphinx man
-(if test "$(OCAML_ENABLE)" = yes; then \ -(if test "$(OCAML_ENABLE)" = yes; then \
$(MAKE) $(NJOBS) -C "$(TARGET_BUILD)/docs" ocaml_doc; \ make $(NJOBS) -C "$(TARGET_BUILD_STAGE2)/docs" ocaml_doc; \
fi) fi)
# Continue if failing, Ubuntu precise cannot generate manpages as sphinx is too old # Continue if failing, Ubuntu precise cannot generate manpages as sphinx is too old
@ -725,18 +726,15 @@ endif
$(MAKE) $(NJOBS) -C $(TARGET_BUILD) stage2-check-clang || true $(MAKE) $(NJOBS) -C $(TARGET_BUILD) stage2-check-clang || true
# Clang extra tests (ex: clang-tidy) # Clang extra tests (ex: clang-tidy)
$(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-clang-tools || true $(MAKE) $(NJOBS) -C $(TARGET_BUILD_STAGE2) check-clang-tools || true
# LLD tests # LLD tests
ifeq (${LLD_ENABLE},yes) ifeq (${LLD_ENABLE},yes)
$(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-lld || true $(MAKE) $(NJOBS) -C $(TARGET_BUILD_STAGE2) check-lld || true
endif endif
# Sanitizer # Sanitizer
$(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-sanitizer || true $(MAKE) $(NJOBS) -C $(TARGET_BUILD_STAGE2) check-sanitizer || true
# OpenMP
$(MAKE) $(NJOBS) -C $(TARGET_BUILD) check-openmp || true
# Libcxx # Libcxx
$(MAKE) $(NJOBS) -C libcxx/build check-libcxx || true $(MAKE) $(NJOBS) -C libcxx/build check-libcxx || true