diff options
author | Tom Hughes <tomhughes@chromium.org> | 2022-08-25 09:45:16 -0700 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-09-29 02:19:23 +0000 |
commit | 4851d8c8d52ba8376392dc1ffde5da05af938150 (patch) | |
tree | 989dd20dfa5e7511d29dddded22c527038b4c144 /Makefile.rules | |
parent | 52cd0dcce80561ea74413e3e0a1796b3dcb5e671 (diff) | |
download | chrome-ec-4851d8c8d52ba8376392dc1ffde5da05af938150.tar.gz |
Makefile: Add option to link with C++
Boards that compile C++ files should link with the C++ compiler so that
the C++ standard library is included when linking (-lc++ for clang and
-lstdc++ for g++).
BRANCH=none
BUG=b:234181908
TEST=make buildall
Force-Relevant-Builds: all
Signed-off-by: Tom Hughes <tomhughes@chromium.org>
Change-Id: I84d7ea44c7f3b3c9f17ca6308521e7041f7e5e8f
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3857942
Reviewed-by: Bobby Casey <bobbycasey@google.com>
Reviewed-by: Andrea Grandi <agrandi@google.com>
Diffstat (limited to 'Makefile.rules')
-rw-r--r-- | Makefile.rules | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/Makefile.rules b/Makefile.rules index 87d21b6b03..7173cc8aae 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -86,7 +86,7 @@ cmd_elf_to_hex = $(OBJCOPY) -O ihex $< $@ cmd_bin_to_hex = $(OBJCOPY) -I binary -O ihex \ --change-addresses $(_program_memory_base) $^ $@ cmd_smap = $(NM) $< | sort > $@ -cmd_elf = $(CC) $(objs) $(libsharedobjs_elf-y) $(LDFLAGS) \ +cmd_elf = $(COMPILER) $(objs) $(libsharedobjs_elf-y) $(LDFLAGS) \ -o $@ -Wl,-T,$< -Wl,-Map,$(patsubst %.elf,%.map,$@) ifeq ($(cc-name),gcc) cmd_elf+= -flto-partition=one @@ -98,7 +98,7 @@ endif cmd_fuzz_exe = $(CXX) $^ $(HOST_TEST_LDFLAGS) $(LDFLAGS_EXTRA) -o $@ cmd_run_fuzz = build/host/$*/$*.exe -seed=1 -runs=1 $(silent) \ $(silent_err) || (echo "Test $* failed!" && false) -cmd_exe = $(CC) $(ro-objs) $(HOST_TEST_LDFLAGS) $(LDFLAGS_EXTRA) -o $@ +cmd_exe = $(COMPILER) $(ro-objs) $(HOST_TEST_LDFLAGS) $(LDFLAGS_EXTRA) -o $@ cmd_c_to_o = $(CC) -std=gnu11 $(C_WARN) $(CFLAGS) -MMD -MP -MF $@.d -c $< \ -MT $(@D)/$(@F) -o $(@D)/$(@F) cmd_cxx_to_o = $(CXX) -std=gnu++17 $(CFLAGS) $(CXXFLAGS) -MMD -MP -MF $@.d -c $< \ @@ -131,7 +131,7 @@ cmd_mv_from_tmp = mv $(out)/$*.bin.tmp $(out)/$*.bin cmd_extractrw-y = dd if=$(out)/$(PROJECT).bin.tmp of=$(out)/$(PROJECT).RW.bin \ bs=1 count=$(_rw_size) skip=$(_rw_off) $(silent_err) cmd_copyrw-y = cd $(out) && cp RW/$(PROJECT).RW.flat RW/$(PROJECT).RW.bin -cmd_sharedlib_elf = $(CC) $(libsharedobjs_deps) \ +cmd_sharedlib_elf = $(COMPILER) $(libsharedobjs_deps) \ -Wl,-T,common/ec.$(SHOBJLIB).ld $(LDFLAGS) \ -o $(out)/$(SHOBJLIB)/$(SHOBJLIB).elf \ -Wl,-Map,$(out)/$(SHOBJLIB)/$(SHOBJLIB).map |