summaryrefslogtreecommitdiff
path: root/Makefile.rules
diff options
context:
space:
mode:
authorTom Hughes <tomhughes@chromium.org>2021-11-23 14:43:07 -0800
committerChromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-10-21 00:10:31 +0000
commit12e1ed299bf8a1323702fe44cff6a16c36a5d644 (patch)
tree1ddebbc44337f4e424f18216eb8c9d7842579b7b /Makefile.rules
parentba83e48f20a8f9cc4ffaabbff3e69fb33dbe1141 (diff)
downloadchrome-ec-12e1ed299bf8a1323702fe44cff6a16c36a5d644.tar.gz
Add ability to get struct offsets for use in assembly
BRANCH=none BUG=b:172020503 TEST=Using https://crrev.com/c/3299275: make BOARD=discovery-stm32f072 -j manually inspect generated file: build/discovery-stm32f072/RW/core/cortex-m0/asm_offsets.h Signed-off-by: Tom Hughes <tomhughes@chromium.org> Change-Id: I6c5a982a88ed1e77f8e98b9a0a451d52d5c03a87 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/3299274 Reviewed-by: Diana Z <dzigterman@chromium.org>
Diffstat (limited to 'Makefile.rules')
-rw-r--r--Makefile.rules7
1 files changed, 7 insertions, 0 deletions
diff --git a/Makefile.rules b/Makefile.rules
index 860d032981..8b52882635 100644
--- a/Makefile.rules
+++ b/Makefile.rules
@@ -101,6 +101,8 @@ cmd_run_fuzz = build/host/$*/$*.exe -seed=1 -runs=1 $(silent) \
cmd_exe = $(CXX) $(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_c_to_s = $(CC) -S $(C_WARN) $(CFLAGS) -fno-lto -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 $< \
-MT $(@D)/$(@F) -o $(@D)/$(@F)
cmd_c_to_build = $(BUILDCC) $(BUILD_CFLAGS) \
@@ -618,6 +620,11 @@ $(out)/RO/%.o:%.c
$(out)/RW/%.o:%.c
$(call quiet,c_to_o,CC )
+$(out)/RO/%.s:%.c
+ $(call quiet,c_to_s,CC )
+$(out)/RW/%.s:%.c
+ $(call quiet,c_to_s,CC )
+
$(out)/RO/%.o:%.cc
$(call quiet,cxx_to_o,CXX )
$(out)/RW/%.o:%.cc