Skip to content

Commit 3ecb535

Browse files
committed
Discard volatile sections during app objcopy when compiling with clang
1 parent 818415a commit 3ecb535

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
@@ -25,6 +25,7 @@ DEBUG_UART?=0
2525
LIBS=
2626
SIGN_ALG=
2727
OBJCOPY_FLAGS=
28+
OBJCOPY_BIN_FLAGS=
2829
BIG_ENDIAN?=0
2930
USE_CLANG?=0
3031
ifeq ($(USE_CLANG),1)
@@ -197,6 +198,12 @@ ifeq ($(USE_GCC_HEADLESS),1)
197198
LSCRIPT_FLAGS+=-T $(LSCRIPT)
198199
OBJCOPY_FLAGS+=--gap-fill $(FILL_BYTE)
199200
endif
201+
202+
ifeq ($(USE_CLANG),1)
203+
ifeq ($(ARCH),ARM)
204+
OBJCOPY_BIN_FLAGS+=-j .text -j .ramcode -j .keystore -j .edidx -j .gnu.sgstubs
205+
endif
206+
endif
200207
ifeq ($(TARGET),ti_hercules)
201208
LSCRIPT_FLAGS+=--run_linker $(LSCRIPT)
202209
endif
@@ -326,7 +333,7 @@ wolfboot.efi: wolfboot.elf
326333

327334
wolfboot.bin: wolfboot.elf
328335
@echo "\t[BIN] $@"
329-
$(Q)$(OBJCOPY) $(OBJCOPY_FLAGS) -O binary $^ $@
336+
$(Q)$(OBJCOPY) $(OBJCOPY_FLAGS) $(OBJCOPY_BIN_FLAGS) -O binary $^ $@
330337
@echo
331338
@echo "\t[SIZE]"
332339
$(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)