@@ -34,8 +34,11 @@ OBJS:= \
3434 ./src/string.o \
3535 ./src/image.o \
3636 ./src/libwolfboot.o \
37- ./hal/hal.o \
38- ./hal/$(TARGET ) .o
37+ ./hal/hal.o
38+
39+ ifneq ($(TARGET ) ,library)
40+ OBJS+=./hal/$(TARGET).o
41+ endif
3942
4043ifeq ($(SIGN ) ,NONE)
4144 PRIVATE_KEY =
@@ -171,12 +174,14 @@ stage1/loader_stage1.bin: FORCE
171174 @echo " \t[BIN] $@ "
172175 $(Q )$(MAKE ) -C $(dir $@ ) $(notdir $@ )
173176
174- test-lib : include/target.h $(OBJS )
175- $(Q )$(CC ) $(CFLAGS ) -o $@ $(OBJS )
176-
177- libwolfboot.a : $(OBJS )
177+ libwolfboot.a : include/target.h $(OBJS )
178+ @echo " \t[LIB] $@ "
178179 $(Q )$(AR ) rcs $@ $(OBJS )
179180
181+ test-lib : libwolfboot.a hal/library.o
182+ @echo " \t[BIN] $@ "
183+ $(Q )$(CC ) $(CFLAGS ) -o $@ hal/library.o libwolfboot.a
184+
180185wolfboot.efi : wolfboot.elf
181186 @echo " \t[BIN] $@ "
182187 $(Q )$(OBJCOPY ) -j .rodata -j .text -j .sdata -j .data \
@@ -379,7 +384,7 @@ distclean: clean keysclean utilsclean
379384 $(Q ) rm -f * .bin * .elf
380385
381386include/target.h : $(TARGET_H_TEMPLATE ) FORCE
382- @ cat $(TARGET_H_TEMPLATE ) | \
387+ $( Q ) cat $(TARGET_H_TEMPLATE ) | \
383388 sed -e " s/@WOLFBOOT_PARTITION_SIZE@/$( WOLFBOOT_PARTITION_SIZE) /g" | \
384389 sed -e " s/@WOLFBOOT_SECTOR_SIZE@/$( WOLFBOOT_SECTOR_SIZE) /g" | \
385390 sed -e " s/@WOLFBOOT_PARTITION_BOOT_ADDRESS@/$( WOLFBOOT_PARTITION_BOOT_ADDRESS) /g" | \
@@ -447,11 +452,11 @@ tools/keytools/otp/otp-keystore-primer.bin: FORCE
447452secondary : $(SECONDARY_PRIVATE_KEY )
448453
449454% .o :% .c
450- @echo " \t[CC- $( ARCH) ] $@ "
455+ @echo " \t[CC $( ARCH) ] $@ "
451456 $(Q )$(CC ) $(CFLAGS ) -c $(OUTPUT_FLAG ) $@ $^
452457
453458% .o :% .S
454- @echo " \t[AS- $( ARCH) ] $@ "
459+ @echo " \t[AS $( ARCH) ] $@ "
455460 $(Q )$(CC ) $(CFLAGS ) -c $(OUTPUT_FLAG ) $@ $^
456461
457462src/x86/fsp_s.o : $(FSP_S_BIN )
0 commit comments