Add dependencies on the toolchain (clang, etc)
Historically, we've relied on the path to the clang compiler changing in order to trigger rebuilds instead of direct dependencies on the compiler itself. That's somewhat more reliable, since the actual $(CLANG) file is often a script that doesn't actually change during every update. In Soong, we've added the dependency anyway, so do it here as well. This makes it easier for my RBE experiments to identify when we intend to use clang and to send the entire compiler. Test: treehugger Test: build a system image with RBE, find that every command that needed the compiler gets it. Change-Id: I3838b5d77884394a8c0f7a1ba133142102602084
This commit is contained in:
parent
4995d2fe16
commit
c5b7c4fbef
6 changed files with 20 additions and 20 deletions
|
@ -876,7 +876,7 @@ $(dotdot_objects) $(cpp_objects): PRIVATE_ARM_CFLAGS := $(normal_objects_cflags)
|
|||
ifneq ($(strip $(cpp_objects)),)
|
||||
$(cpp_objects): $(intermediates)/%.o: \
|
||||
$(TOPDIR)$(LOCAL_PATH)/%$(LOCAL_CPP_EXTENSION) \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG_CXX)
|
||||
$(transform-$(PRIVATE_HOST)cpp-to-o)
|
||||
$(call include-depfiles-for-objs, $(cpp_objects))
|
||||
endif
|
||||
|
@ -897,7 +897,7 @@ $(gen_cpp_objects): PRIVATE_ARM_MODE := $(normal_objects_mode)
|
|||
$(gen_cpp_objects): PRIVATE_ARM_CFLAGS := $(normal_objects_cflags)
|
||||
$(gen_cpp_objects): $(intermediates)/%.o: \
|
||||
$(intermediates)/%$(LOCAL_CPP_EXTENSION) \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG_CXX)
|
||||
$(transform-$(PRIVATE_HOST)cpp-to-o)
|
||||
$(call include-depfiles-for-objs, $(gen_cpp_objects))
|
||||
endif
|
||||
|
@ -912,7 +912,7 @@ $(call track-gen-file-obj,$(gen_S_sources),$(gen_S_objects))
|
|||
|
||||
ifneq ($(strip $(gen_S_sources)),)
|
||||
$(gen_S_objects): $(intermediates)/%.o: $(intermediates)/%.S \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)s-to-o)
|
||||
$(call include-depfiles-for-objs, $(gen_S_objects))
|
||||
endif
|
||||
|
@ -923,7 +923,7 @@ $(call track-gen-file-obj,$(gen_s_sources),$(gen_s_objects))
|
|||
|
||||
ifneq ($(strip $(gen_s_objects)),)
|
||||
$(gen_s_objects): $(intermediates)/%.o: $(intermediates)/%.s \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)s-to-o)
|
||||
endif
|
||||
|
||||
|
@ -961,7 +961,7 @@ $(dotdot_objects) $(c_objects): PRIVATE_ARM_CFLAGS := $(normal_objects_cflags)
|
|||
|
||||
ifneq ($(strip $(c_objects)),)
|
||||
$(c_objects): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.c \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)c-to-o)
|
||||
$(call include-depfiles-for-objs, $(c_objects))
|
||||
endif
|
||||
|
@ -981,7 +981,7 @@ ifneq ($(strip $(gen_c_objects)),)
|
|||
$(gen_c_objects): PRIVATE_ARM_MODE := $(normal_objects_mode)
|
||||
$(gen_c_objects): PRIVATE_ARM_CFLAGS := $(normal_objects_cflags)
|
||||
$(gen_c_objects): $(intermediates)/%.o: $(intermediates)/%.c \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)c-to-o)
|
||||
$(call include-depfiles-for-objs, $(gen_c_objects))
|
||||
endif
|
||||
|
@ -997,7 +997,7 @@ $(call track-src-file-obj,$(objc_sources),$(objc_objects))
|
|||
ifneq ($(strip $(objc_objects)),)
|
||||
my_soong_problems += objc
|
||||
$(objc_objects): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.m \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)m-to-o)
|
||||
$(call include-depfiles-for-objs, $(objc_objects))
|
||||
endif
|
||||
|
@ -1012,7 +1012,7 @@ $(call track-src-file-obj,$(objcpp_sources),$(objcpp_objects))
|
|||
|
||||
ifneq ($(strip $(objcpp_objects)),)
|
||||
$(objcpp_objects): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.mm \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG_CXX)
|
||||
$(transform-$(PRIVATE_HOST)mm-to-o)
|
||||
$(call include-depfiles-for-objs, $(objcpp_objects))
|
||||
endif
|
||||
|
@ -1036,7 +1036,7 @@ $(call track-src-file-obj,$(dotdot_sources),$(dotdot_objects_S))
|
|||
|
||||
ifneq ($(strip $(asm_objects_S)),)
|
||||
$(asm_objects_S): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.S \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)s-to-o)
|
||||
$(call include-depfiles-for-objs, $(asm_objects_S))
|
||||
endif
|
||||
|
@ -1056,7 +1056,7 @@ $(call track-src-file-obj,$(dotdot_sources),$(dotdot_objects_s))
|
|||
|
||||
ifneq ($(strip $(asm_objects_s)),)
|
||||
$(asm_objects_s): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.s \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(CLANG)
|
||||
$(transform-$(PRIVATE_HOST)s-to-o)
|
||||
endif
|
||||
|
||||
|
@ -1069,7 +1069,7 @@ asm_sources_asm := $(filter %.asm,$(my_src_files))
|
|||
ifneq ($(strip $(asm_sources_asm)),)
|
||||
asm_objects_asm := $(addprefix $(intermediates)/,$(asm_sources_asm:.asm=.o))
|
||||
$(asm_objects_asm): $(intermediates)/%.o: $(TOPDIR)$(LOCAL_PATH)/%.asm \
|
||||
$(my_additional_dependencies)
|
||||
$(my_additional_dependencies) $(YASM)
|
||||
$(transform-asm-to-o)
|
||||
$(call track-src-file-obj,$(asm_sources_asm),$(asm_objects_asm))
|
||||
|
||||
|
|
|
@ -1365,7 +1365,7 @@ DOTDOT_REPLACEMENT := dotdot/
|
|||
# $(3): the variable name to collect the output object file.
|
||||
define compile-dotdot-cpp-file
|
||||
o := $(intermediates)/$(patsubst %$(LOCAL_CPP_EXTENSION),%.o,$(subst ../,$(DOTDOT_REPLACEMENT),$(1)))
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2)
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2) $(CLANG_CXX)
|
||||
$$(transform-$$(PRIVATE_HOST)cpp-to-o)
|
||||
$$(call include-depfiles-for-objs, $$(o))
|
||||
$(3) += $$(o)
|
||||
|
@ -1378,7 +1378,7 @@ endef
|
|||
# $(3): the variable name to collect the output object file.
|
||||
define compile-dotdot-c-file
|
||||
o := $(intermediates)/$(patsubst %.c,%.o,$(subst ../,$(DOTDOT_REPLACEMENT),$(1)))
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2)
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2) $(CLANG)
|
||||
$$(transform-$$(PRIVATE_HOST)c-to-o)
|
||||
$$(call include-depfiles-for-objs, $$(o))
|
||||
$(3) += $$(o)
|
||||
|
@ -1391,7 +1391,7 @@ endef
|
|||
# $(3): the variable name to collect the output object file.
|
||||
define compile-dotdot-s-file
|
||||
o := $(intermediates)/$(patsubst %.S,%.o,$(subst ../,$(DOTDOT_REPLACEMENT),$(1)))
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2)
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2) $(CLANG)
|
||||
$$(transform-$$(PRIVATE_HOST)s-to-o)
|
||||
$$(call include-depfiles-for-objs, $$(o))
|
||||
$(3) += $$(o)
|
||||
|
@ -1404,7 +1404,7 @@ endef
|
|||
# $(3): the variable name to collect the output object file.
|
||||
define compile-dotdot-s-file-no-deps
|
||||
o := $(intermediates)/$(patsubst %.s,%.o,$(subst ../,$(DOTDOT_REPLACEMENT),$(1)))
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2)
|
||||
$$(o) : $(TOPDIR)$(LOCAL_PATH)/$(1) $(2) $(CLANG)
|
||||
$$(transform-$$(PRIVATE_HOST)s-to-o)
|
||||
$(3) += $$(o)
|
||||
endef
|
||||
|
|
|
@ -74,11 +74,11 @@ $(linked_module): PRIVATE_TARGET_CRTEND_O := $(my_target_crtend_o)
|
|||
$(linked_module): PRIVATE_POST_LINK_CMD := $(LOCAL_POST_LINK_CMD)
|
||||
|
||||
ifeq ($(LOCAL_FORCE_STATIC_EXECUTABLE),true)
|
||||
$(linked_module): $(my_target_crtbegin_static_o) $(all_objects) $(all_libraries) $(my_target_crtend_o) $(my_target_libcrt_builtins) $(my_target_libgcc) $(my_target_libatomic)
|
||||
$(linked_module): $(my_target_crtbegin_static_o) $(all_objects) $(all_libraries) $(my_target_crtend_o) $(my_target_libcrt_builtins) $(my_target_libgcc) $(my_target_libatomic) $(CLANG_CXX)
|
||||
$(transform-o-to-static-executable)
|
||||
$(PRIVATE_POST_LINK_CMD)
|
||||
else
|
||||
$(linked_module): $(my_target_crtbegin_dynamic_o) $(all_objects) $(all_libraries) $(my_target_crtend_o) $(my_target_libcrt_builtins) $(my_target_libgcc) $(my_target_libatomic)
|
||||
$(linked_module): $(my_target_crtbegin_dynamic_o) $(all_objects) $(all_libraries) $(my_target_crtend_o) $(my_target_libcrt_builtins) $(my_target_libgcc) $(my_target_libatomic) $(CLANG_CXX)
|
||||
$(transform-o-to-executable)
|
||||
$(PRIVATE_POST_LINK_CMD)
|
||||
endif
|
||||
|
|
|
@ -39,7 +39,7 @@ $(LOCAL_BUILT_MODULE): PRIVATE_RPATHS := ../$(my_libdir) $(my_libdir)
|
|||
endif
|
||||
my_libdir :=
|
||||
|
||||
$(LOCAL_BUILT_MODULE): $(all_objects) $(all_libraries)
|
||||
$(LOCAL_BUILT_MODULE): $(all_objects) $(all_libraries) $(CLANG_CXX)
|
||||
$(transform-host-o-to-executable)
|
||||
|
||||
endif # skip_build_from_source
|
||||
|
|
|
@ -73,7 +73,7 @@ $(linked_module): \
|
|||
$(my_target_libcrt_builtins) \
|
||||
$(my_target_libgcc) \
|
||||
$(my_target_libatomic) \
|
||||
$(LOCAL_ADDITIONAL_DEPENDENCIES)
|
||||
$(LOCAL_ADDITIONAL_DEPENDENCIES) $(CLANG_CXX)
|
||||
$(transform-o-to-shared-lib)
|
||||
|
||||
ifeq ($(my_native_coverage),true)
|
||||
|
|
|
@ -21,7 +21,7 @@ endif
|
|||
include $(BUILD_SYSTEM)/binary.mk
|
||||
|
||||
$(LOCAL_BUILT_MODULE) : $(built_whole_libraries)
|
||||
$(LOCAL_BUILT_MODULE) : $(all_objects)
|
||||
$(LOCAL_BUILT_MODULE) : $(all_objects) $($(LOCAL_2ND_ARCH_VAR_PREFIX)TARGET_AR)
|
||||
$(transform-o-to-static-lib)
|
||||
|
||||
ifeq ($(NATIVE_COVERAGE),true)
|
||||
|
|
Loading…
Reference in a new issue