From eb890d8891c23706bf1be934b4d73655b768826a Mon Sep 17 00:00:00 2001 From: Allen Webb Date: Wed, 5 Dec 2018 15:53:41 -0800 Subject: Makefiles: Set fuzz targets to use the correct CROSS_COMPILE. This addresses a cross compilation bug for fuzzing targets where CROSS_COMPILE was always ''. BRANCH=None BUG=chromium:911310 TEST=USE="ubsan asan fuzzer" ./build_packages \ --board=amd64-generic --skip_chroot_upgrade chromeos-ec && (cd ../platform/ec && unset BOARD && make -j buildall) Change-Id: I1c0b99f4ecef1e6ddec489568ccb13a8e8f5fb85 Signed-off-by: Allen Webb Reviewed-on: https://chromium-review.googlesource.com/1363541 Reviewed-by: Manoj Gupta Reviewed-by: Nicolas Boichat --- Makefile.rules | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'Makefile.rules') diff --git a/Makefile.rules b/Makefile.rules index 5a7ac71688..fd13a040ef 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -89,8 +89,8 @@ cmd_c_to_host = $(HOSTCC) $(HOST_CFLAGS) $(HOST_LDFLAGS) -MMD -MF $@.d -o $@ \ cmd_cxx_to_host = $(HOSTCXX) -std=c++0x $(COMMON_WARN) $(HOST_CXXFLAGS)\ -I ./$($(notdir $@)_ROOT) -o $@ $(filter %.cc,$^) $($(notdir $@)_LIBS) cmd_host_test = $(MAKE) --no-print-directory BOARD=host PROJECT=$* \ - V=$(V) out=build/host/$* TEST_BUILD=y EMU_BUILD=y $(TEST_FLAG) \ - CROSS_COMPILE= build/host/$*/$*.exe + V=$(V) out=build/host/$* TEST_BUILD=y EMU_BUILD=y CROSS_COMPILE= \ + $(TEST_FLAG) build/host/$*/$*.exe cmd_run_host_test = ./util/run_host_test $* $(silent) # generate new version.h, compare if it changed and replace if so cmd_version = ./util/getversion.sh > $@.tmp && cmp -s $@.tmp $@ || mv $@.tmp $@; rm -f $@.tmp @@ -345,7 +345,9 @@ $(fuzz-test-targets): host-%: .PHONY: buildfuzztests buildfuzztests: TEST_FLAG=TEST_FUZZ=y TEST_ASAN=$(TEST_ASAN) \ - TEST_MSAN=$(TEST_MSAN) TEST_UBSAN=$(TEST_UBSAN) + TEST_MSAN=$(TEST_MSAN) TEST_UBSAN=$(TEST_UBSAN) \ + CROSS_COMPILE=$(shell echo $(HOSTCC) | grep -v ccache | \ + sed -e 's/[^-]*$$//') buildfuzztests: $(fuzz-test-targets) $(out)/libec.a: $(ro-objs) -- cgit v1.2.1