From 3fd411e017ca78eb814272a3b3a71c8b755c4550 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Mon, 27 Jun 2016 18:59:55 -0700 Subject: [PATCH] mk: Make some LLVM building support more robust * Implement the clean-llvm target for those cases where makefiles are being used * Have all cross-compiled LLVMs depend on the **host** LLVM as they'll require the llvm-tablegen executable from there --- mk/llvm.mk | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/mk/llvm.mk b/mk/llvm.mk index cc868a49e4b02..6d8601f3dad6d 100644 --- a/mk/llvm.mk +++ b/mk/llvm.mk @@ -27,12 +27,18 @@ endif define DEF_LLVM_RULES +ifeq ($(1),$$(CFG_BUILD)) +LLVM_DEPS_TARGET_$(1) := $$(LLVM_DEPS) +else +LLVM_DEPS_TARGET_$(1) := $$(LLVM_DEPS) $$(LLVM_CONFIG_$$(CFG_BUILD)) +endif + # If CFG_LLVM_ROOT is defined then we don't build LLVM ourselves ifeq ($(CFG_LLVM_ROOT),) LLVM_STAMP_$(1) = $$(CFG_LLVM_BUILD_DIR_$(1))/llvm-auto-clean-stamp -$$(LLVM_CONFIG_$(1)): $$(LLVM_DEPS) $$(LLVM_STAMP_$(1)) +$$(LLVM_CONFIG_$(1)): $$(LLVM_DEPS_TARGET_$(1)) $$(LLVM_STAMP_$(1)) @$$(call E, cmake: llvm) ifeq ($$(findstring msvc,$(1)),msvc) $$(Q)$$(CFG_CMAKE) --build $$(CFG_LLVM_BUILD_DIR_$(1)) \ @@ -42,7 +48,13 @@ else endif $$(Q)touch $$(LLVM_CONFIG_$(1)) +ifeq ($$(findstring msvc,$(1)),msvc) clean-llvm$(1): +else +clean-llvm$(1): + @$$(call E, clean: llvm) + $$(Q)$$(MAKE) -C $$(CFG_LLVM_BUILD_DIR_$(1)) clean +endif else clean-llvm$(1):