mirror of https://github.com/wolfSSL/wolfBoot.git
Speedup the key tool builds.
parent
b9949b0a0c
commit
727fc12a35
3
Makefile
3
Makefile
|
@ -163,8 +163,9 @@ $(PRIVATE_KEY):
|
||||||
$(Q)(test $(SIGN) = NONE) && (echo "// SIGN=NONE" > src/keystore.c) || true
|
$(Q)(test $(SIGN) = NONE) && (echo "// SIGN=NONE" > src/keystore.c) || true
|
||||||
|
|
||||||
keytools:
|
keytools:
|
||||||
|
@echo "Building key tools"
|
||||||
@$(MAKE) -C tools/keytools -s clean
|
@$(MAKE) -C tools/keytools -s clean
|
||||||
@$(MAKE) -C tools/keytools
|
@$(MAKE) -C tools/keytools -j
|
||||||
|
|
||||||
test-app/image_v1_signed.bin: $(BOOT_IMG)
|
test-app/image_v1_signed.bin: $(BOOT_IMG)
|
||||||
@echo "\t[SIGN] $(BOOT_IMG)"
|
@echo "\t[SIGN] $(BOOT_IMG)"
|
||||||
|
|
|
@ -8,10 +8,13 @@ ifeq ($(V),0)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CC = gcc
|
CC = gcc
|
||||||
|
LD = gcc
|
||||||
WOLFBOOTDIR = ../..
|
WOLFBOOTDIR = ../..
|
||||||
WOLFDIR = $(WOLFBOOTDIR)/lib/wolfssl/
|
WOLFDIR = $(WOLFBOOTDIR)/lib/wolfssl
|
||||||
CFLAGS = -Wall -Wextra -Werror
|
CFLAGS = -Wall -Wextra -Werror
|
||||||
CFLAGS += -I. -DWOLFSSL_USER_SETTINGS -I$(WOLFDIR) -I$(WOLFBOOTDIR)/include -DWOLFBOOT_KEYTOOLS
|
CFLAGS += -I. -DWOLFSSL_USER_SETTINGS -I$(WOLFDIR) -I$(WOLFBOOTDIR)/include -DWOLFBOOT_KEYTOOLS
|
||||||
|
LDFLAGS =
|
||||||
|
OBJDIR = ./
|
||||||
|
|
||||||
# option variables
|
# option variables
|
||||||
DEBUG_FLAGS = -g -DDEBUG -DDEBUG_SIGNTOOL -DDEBUG_WOLFSSL -DDEBUG_WOLFSSL_VERBOSE -fsanitize=address
|
DEBUG_FLAGS = -g -DDEBUG -DDEBUG_SIGNTOOL -DDEBUG_WOLFSSL -DDEBUG_WOLFSSL_VERBOSE -fsanitize=address
|
||||||
|
@ -35,33 +38,40 @@ else ifeq ($(RENESAS_KEY),2)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Sources
|
# Sources
|
||||||
SRC=$(WOLFDIR)wolfcrypt/src/asn.c \
|
OBJS_REAL=\
|
||||||
$(WOLFDIR)wolfcrypt/src/aes.c \
|
$(WOLFDIR)/wolfcrypt/src/asn.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/ecc.c \
|
$(WOLFDIR)/wolfcrypt/src/aes.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/coding.c \
|
$(WOLFDIR)/wolfcrypt/src/ecc.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/chacha.c \
|
$(WOLFDIR)/wolfcrypt/src/coding.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/ed25519.c \
|
$(WOLFDIR)/wolfcrypt/src/chacha.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/ed448.c \
|
$(WOLFDIR)/wolfcrypt/src/ed25519.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/fe_operations.c \
|
$(WOLFDIR)/wolfcrypt/src/ed448.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/ge_operations.c \
|
$(WOLFDIR)/wolfcrypt/src/fe_operations.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/fe_448.c \
|
$(WOLFDIR)/wolfcrypt/src/ge_operations.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/ge_448.c \
|
$(WOLFDIR)/wolfcrypt/src/fe_448.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/hash.c \
|
$(WOLFDIR)/wolfcrypt/src/ge_448.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/logging.c \
|
$(WOLFDIR)/wolfcrypt/src/hash.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/memory.c \
|
$(WOLFDIR)/wolfcrypt/src/logging.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/random.c \
|
$(WOLFDIR)/wolfcrypt/src/memory.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/rsa.c \
|
$(WOLFDIR)/wolfcrypt/src/random.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/sp_int.c \
|
$(WOLFDIR)/wolfcrypt/src/rsa.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/sp_c32.c \
|
$(WOLFDIR)/wolfcrypt/src/sp_int.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/sp_c64.c \
|
$(WOLFDIR)/wolfcrypt/src/sp_c32.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/sha3.c \
|
$(WOLFDIR)/wolfcrypt/src/sp_c64.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/sha256.c \
|
$(WOLFDIR)/wolfcrypt/src/sha3.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/sha512.c \
|
$(WOLFDIR)/wolfcrypt/src/sha256.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/tfm.c \
|
$(WOLFDIR)/wolfcrypt/src/sha512.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/wc_port.c \
|
$(WOLFDIR)/wolfcrypt/src/tfm.o \
|
||||||
$(WOLFDIR)wolfcrypt/src/wolfmath.c
|
$(WOLFDIR)/wolfcrypt/src/wc_port.o \
|
||||||
|
$(WOLFDIR)/wolfcrypt/src/wolfmath.o
|
||||||
|
|
||||||
SRC+=$(WOLFBOOTDIR)/src/delta.c
|
OBJS_REAL+=\
|
||||||
|
$(WOLFBOOTDIR)/src/delta.o
|
||||||
|
|
||||||
|
OBJS_VIRT=$(addprefix $(OBJDIR), $(notdir $(OBJS_REAL)))
|
||||||
|
vpath %.c $(WOLFDIR)/wolfcrypt/src/
|
||||||
|
vpath %.c $(WOLFBOOTDIR)/src/
|
||||||
|
vpath %.c ./
|
||||||
|
|
||||||
.PHONY: clean all
|
.PHONY: clean all
|
||||||
|
|
||||||
|
@ -84,14 +94,22 @@ $(WOLFBOOTDIR)/include/target.h: $(WOLFBOOTDIR)/include/target.h.in
|
||||||
sed -e "s/@WOLFBOOT_LOAD_DTS_ADDRESS@/$(WOLFBOOT_LOAD_DTS_ADDRESS)/g" \
|
sed -e "s/@WOLFBOOT_LOAD_DTS_ADDRESS@/$(WOLFBOOT_LOAD_DTS_ADDRESS)/g" \
|
||||||
> $@
|
> $@
|
||||||
|
|
||||||
# build template
|
# build objects
|
||||||
sign:
|
$(OBJDIR)/%.o: %.c
|
||||||
@echo "Building signing tool"
|
$(Q)$(CC) $(CFLAGS) -c -o $@ $<
|
||||||
$(Q)$(CC) -o $@ $@.c $(SRC) $< $(CFLAGS)
|
$(OBJDIR)/%.o: $(WOLFBOOTDIR)/src/%.c
|
||||||
|
$(Q)$(CC) $(CFLAGS) -c -o $@ $<
|
||||||
|
$(OBJDIR)/%.o: $(WOLFDIR)/wolfcrypt/src/%.c
|
||||||
|
$(Q)$(CC) $(CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
keygen:
|
# build templates
|
||||||
|
sign: $(OBJS_VIRT) sign.o
|
||||||
|
@echo "Building signing tool"
|
||||||
|
$(Q)$(LD) -o $@ $@.o $(OBJS_VIRT) $(LDFLAGS)
|
||||||
|
|
||||||
|
keygen: $(OBJS_VIRT) keygen.o
|
||||||
@echo "Building keygen tool"
|
@echo "Building keygen tool"
|
||||||
$(Q)$(CC) -o $@ $@.c $(SRC) $< $(CFLAGS)
|
$(Q)$(LD) -o $@ $@.o $(OBJS_VIRT) $(LDFLAGS)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
rm -f sign keygen
|
rm -f sign keygen *.o
|
||||||
|
|
Loading…
Reference in New Issue