Skip to content

Commit aa4917c

Browse files
committed
Discard volatile sections during app objcopy when compiling with clang
1 parent 40d8c2e commit aa4917c

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

Makefile

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ DEBUG_UART?=0
2424
LIBS=
2525
SIGN_ALG=
2626
OBJCOPY_FLAGS=
27+
OBJCOPY_BIN_FLAGS=
2728
BIG_ENDIAN?=0
2829
USE_CLANG?=0
2930
ifeq ($(USE_CLANG),1)
@@ -196,6 +197,12 @@ ifeq ($(USE_GCC_HEADLESS),1)
196197
LSCRIPT_FLAGS+=-T $(LSCRIPT)
197198
OBJCOPY_FLAGS+=--gap-fill $(FILL_BYTE)
198199
endif
200+
201+
ifeq ($(USE_CLANG),1)
202+
ifeq ($(ARCH),ARM)
203+
OBJCOPY_BIN_FLAGS+=-j .text -j .ramcode -j .keystore -j .edidx -j .gnu.sgstubs
204+
endif
205+
endif
199206
ifeq ($(TARGET),ti_hercules)
200207
LSCRIPT_FLAGS+=--run_linker $(LSCRIPT)
201208
endif
@@ -322,7 +329,7 @@ wolfboot.efi: wolfboot.elf
322329

323330
wolfboot.bin: wolfboot.elf
324331
@echo "\t[BIN] $@"
325-
$(Q)$(OBJCOPY) $(OBJCOPY_FLAGS) -O binary $^ $@
332+
$(Q)$(OBJCOPY) $(OBJCOPY_FLAGS) $(OBJCOPY_BIN_FLAGS) -O binary $^ $@
326333
@echo
327334
@echo "\t[SIZE]"
328335
$(Q)$(SIZE) wolfboot.elf

test-app/Makefile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ endif
8888
include ../arch.mk
8989

9090
ifeq ($(USE_CLANG),1)
91-
APP_OBJS+=../src/string.o
91+
APP_NEEDS_STRING:=1
9292
endif
9393

9494
# Optional alias for clearer TZ PSA selection in app builds.
@@ -114,6 +114,10 @@ endif
114114

115115
ifeq ($(DEBUG_UART),1)
116116
CFLAGS+=-DDEBUG_UART
117+
APP_NEEDS_STRING:=1
118+
endif
119+
120+
ifeq ($(APP_NEEDS_STRING),1)
117121
APP_OBJS+=../src/string.o
118122
endif
119123

0 commit comments

Comments
 (0)