2024-01-05 18:11:32 +00:00
|
|
|
MBEDTLS_TEST_PATH:=../../tests
|
2019-06-04 19:37:52 +02:00
|
|
|
|
2024-01-05 18:11:32 +00:00
|
|
|
MBEDTLS_PATH := ../..
|
|
|
|
|
include ../../scripts/common.make
|
2019-06-04 19:37:52 +02:00
|
|
|
|
2025-07-24 11:13:23 +01:00
|
|
|
PROGRAM_FUZZ_PATH:=$(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz
|
2025-06-10 13:16:32 +01:00
|
|
|
|
2024-01-05 18:11:32 +00:00
|
|
|
DEP=${MBEDLIBS}
|
2019-06-04 19:37:52 +02:00
|
|
|
|
|
|
|
|
ifdef FUZZINGENGINE
|
|
|
|
|
LOCAL_LDFLAGS += -lFuzzingEngine
|
|
|
|
|
endif
|
|
|
|
|
|
2025-06-30 11:21:01 +01:00
|
|
|
LOCAL_CFLAGS += -I$(PROGRAM_FUZZ_PATH)
|
2025-04-03 13:46:13 +01:00
|
|
|
|
2024-07-12 19:37:00 +02:00
|
|
|
# A test application is built for each fuzz_*.c file.
|
2019-06-04 19:37:52 +02:00
|
|
|
APPS = $(basename $(wildcard fuzz_*.c))
|
2025-06-13 11:05:09 +01:00
|
|
|
APPS += $(basename $(PROGRAM_FUZZ_PATH)/fuzz_privkey.c)
|
|
|
|
|
APPS += $(basename $(PROGRAM_FUZZ_PATH)/fuzz_pubkey.c)
|
2019-06-04 19:37:52 +02:00
|
|
|
|
|
|
|
|
# Construct executable name by adding OS specific suffix $(EXEXT).
|
|
|
|
|
BINARIES := $(addsuffix $(EXEXT),$(APPS))
|
|
|
|
|
|
|
|
|
|
.SILENT:
|
|
|
|
|
|
|
|
|
|
.PHONY: all check test clean
|
|
|
|
|
|
|
|
|
|
all: $(BINARIES)
|
|
|
|
|
|
|
|
|
|
C_FILES := $(addsuffix .c,$(APPS))
|
|
|
|
|
|
|
|
|
|
%.o: %.c
|
|
|
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) -c $< -o $@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ifdef FUZZINGENGINE
|
2025-06-13 11:05:09 +01:00
|
|
|
$(BINARIES): %$(EXEXT): %.o $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(DEP)
|
2025-07-24 11:13:23 +01:00
|
|
|
echo " $(CC) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@"
|
2025-06-13 11:05:09 +01:00
|
|
|
$(CXX) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
2019-06-04 19:37:52 +02:00
|
|
|
else
|
2025-06-13 11:05:09 +01:00
|
|
|
$(BINARIES): %$(EXEXT): %.o $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(PROGRAM_FUZZ_PATH)/fuzz_onefile.o $(DEP)
|
|
|
|
|
echo " $(CC) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(PROGRAM_FUZZ_PATH)/fuzz_onefile.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@"
|
|
|
|
|
$(CC) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(PROGRAM_FUZZ_PATH)/fuzz_onefile.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
2019-06-04 19:37:52 +02:00
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
clean:
|
|
|
|
|
ifndef WINDOWS
|
|
|
|
|
rm -rf $(BINARIES) *.o
|
2025-04-14 08:43:59 +01:00
|
|
|
rm -rf $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/*.o
|
2019-06-04 19:37:52 +02:00
|
|
|
else
|
2019-08-30 14:51:55 +01:00
|
|
|
if exist *.o del /Q /F *.o
|
|
|
|
|
if exist *.exe del /Q /F *.exe
|
2025-05-21 08:06:15 +01:00
|
|
|
if exist $(MBEDTLS_PATH)\tf-psa-crypto\programs\fuzz\*.o del /Q /F $(MBEDTLS_PATH)\tf-psa-crypto\programs\fuzz\*.o
|
2019-06-04 19:37:52 +02:00
|
|
|
endif
|