Paul Elliott | 053db69 | 2024-01-05 18:11:32 +0000 | [diff] [blame] | 1 | MBEDTLS_TEST_PATH:=../../tests |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 2 | |
Paul Elliott | 053db69 | 2024-01-05 18:11:32 +0000 | [diff] [blame] | 3 | MBEDTLS_PATH := ../.. |
| 4 | include ../../scripts/common.make |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 5 | |
Ben Taylor | c9b7175 | 2025-06-10 13:16:32 +0100 | [diff] [blame^] | 6 | PROGRAM_FUZZ_PATH:=$(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/ |
| 7 | |
Paul Elliott | 053db69 | 2024-01-05 18:11:32 +0000 | [diff] [blame] | 8 | DEP=${MBEDLIBS} |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 9 | |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 10 | ifdef FUZZINGENGINE |
| 11 | LOCAL_LDFLAGS += -lFuzzingEngine |
| 12 | endif |
| 13 | |
Ben Taylor | 2584ead | 2025-04-03 13:46:13 +0100 | [diff] [blame] | 14 | LOCAL_CFLAGS += -I$(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/ |
| 15 | |
Ronald Cron | 6f55ddc | 2024-07-12 19:37:00 +0200 | [diff] [blame] | 16 | # A test application is built for each fuzz_*.c file. |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 17 | APPS = $(basename $(wildcard fuzz_*.c)) |
Ben Taylor | 9784b40 | 2025-05-21 08:01:28 +0100 | [diff] [blame] | 18 | APPS += $(basename $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/fuzz_privkey.c) |
| 19 | APPS += $(basename $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/fuzz_pubkey.c) |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 20 | |
| 21 | # Construct executable name by adding OS specific suffix $(EXEXT). |
| 22 | BINARIES := $(addsuffix $(EXEXT),$(APPS)) |
| 23 | |
| 24 | .SILENT: |
| 25 | |
| 26 | .PHONY: all check test clean |
| 27 | |
| 28 | all: $(BINARIES) |
| 29 | |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 30 | C_FILES := $(addsuffix .c,$(APPS)) |
| 31 | |
| 32 | %.o: %.c |
| 33 | $(CC) $(LOCAL_CFLAGS) $(CFLAGS) -c $< -o $@ |
| 34 | |
| 35 | |
| 36 | ifdef FUZZINGENGINE |
Ben Taylor | c9b7175 | 2025-06-10 13:16:32 +0100 | [diff] [blame^] | 37 | $(BINARIES): %$(EXEXT): %.o $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(DEP) |
| 38 | echo " $(PROGRAM_FUZZ_PATH)/fuzz_common.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@" |
| 39 | $(CXX) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 40 | else |
Ben Taylor | c9b7175 | 2025-06-10 13:16:32 +0100 | [diff] [blame^] | 41 | $(BINARIES): %$(EXEXT): %.o $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/onefile.o $(DEP) |
| 42 | echo " $(CC) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/onefile.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@" |
| 43 | $(CC) $(PROGRAM_FUZZ_PATH)/fuzz_common.o $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/onefile.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 44 | endif |
| 45 | |
| 46 | clean: |
| 47 | ifndef WINDOWS |
| 48 | rm -rf $(BINARIES) *.o |
Ben Taylor | 7287040 | 2025-04-14 08:43:59 +0100 | [diff] [blame] | 49 | rm -rf $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/*.o |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 50 | else |
Darryl Green | 9b9a790 | 2019-08-30 14:51:55 +0100 | [diff] [blame] | 51 | if exist *.o del /Q /F *.o |
| 52 | if exist *.exe del /Q /F *.exe |
Ben Taylor | 946b0d9 | 2025-05-21 08:06:15 +0100 | [diff] [blame] | 53 | if exist $(MBEDTLS_PATH)\tf-psa-crypto\programs\fuzz\*.o del /Q /F $(MBEDTLS_PATH)\tf-psa-crypto\programs\fuzz\*.o |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 54 | endif |