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 | 5578c06 | 2025-06-30 11:22:14 +0100 | [diff] [blame] | 6 | PROGRAM_FUZZ_PATH:=$(MBEDTLS_PATH)/programs/fuzz |
Ben Taylor | c9b7175 | 2025-06-10 13:16:32 +0100 | [diff] [blame] | 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 | d9fc98a | 2025-06-30 11:21:01 +0100 | [diff] [blame] | 14 | LOCAL_CFLAGS += -I$(PROGRAM_FUZZ_PATH) |
Ben Taylor | 2584ead | 2025-04-03 13:46:13 +0100 | [diff] [blame] | 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)) |
| 18 | |
| 19 | # Construct executable name by adding OS specific suffix $(EXEXT). |
| 20 | BINARIES := $(addsuffix $(EXEXT),$(APPS)) |
| 21 | |
| 22 | .SILENT: |
| 23 | |
| 24 | .PHONY: all check test clean |
| 25 | |
| 26 | all: $(BINARIES) |
| 27 | |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 28 | C_FILES := $(addsuffix .c,$(APPS)) |
| 29 | |
| 30 | %.o: %.c |
| 31 | $(CC) $(LOCAL_CFLAGS) $(CFLAGS) -c $< -o $@ |
| 32 | |
| 33 | |
| 34 | ifdef FUZZINGENGINE |
Ben Taylor | b8ebc21 | 2025-06-30 11:23:18 +0100 | [diff] [blame] | 35 | $(BINARIES): %$(EXEXT): %.o $(PROGRAM_FUZZ_PATH)/common.o $(DEP) |
Ben Taylor | 56d54c6 | 2025-06-13 10:29:21 +0100 | [diff] [blame] | 36 | echo " $(PROGRAM_FUZZ_PATH)/common.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@" |
| 37 | $(CXX) $(PROGRAM_FUZZ_PATH)/common.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 38 | else |
Ben Taylor | 56d54c6 | 2025-06-13 10:29:21 +0100 | [diff] [blame] | 39 | $(BINARIES): %$(EXEXT): %.o $(PROGRAM_FUZZ_PATH)/common.o $(PROGRAM_FUZZ_PATH)/onefile.o $(DEP) |
| 40 | echo " $(CC) $(PROGRAM_FUZZ_PATH)/common.o $(PROGRAM_FUZZ_PATH)/onefile.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@" |
| 41 | $(CC) $(PROGRAM_FUZZ_PATH)/common.o $(PROGRAM_FUZZ_PATH)/onefile.o $< $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 42 | endif |
| 43 | |
| 44 | clean: |
| 45 | ifndef WINDOWS |
| 46 | rm -rf $(BINARIES) *.o |
Ben Taylor | 7287040 | 2025-04-14 08:43:59 +0100 | [diff] [blame] | 47 | rm -rf $(MBEDTLS_PATH)/tf-psa-crypto/programs/fuzz/*.o |
Philippe Antoine | 03e87d9 | 2019-06-04 19:37:52 +0200 | [diff] [blame] | 48 | else |
Darryl Green | 9b9a790 | 2019-08-30 14:51:55 +0100 | [diff] [blame] | 49 | if exist *.o del /Q /F *.o |
| 50 | if exist *.exe del /Q /F *.exe |
Ben Taylor | 946b0d9 | 2025-05-21 08:06:15 +0100 | [diff] [blame] | 51 | 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] | 52 | endif |