Makefile 903 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. TEST_NAME=test
  2. FUZZ=afl-fuzz
  3. COMPONENTS_DIR=../..
  4. CFLAGS=-g -DMDNS_TEST_MODE -I. -I.. -I../include -I../private_include -I$(COMPONENTS_DIR)/tcpip_adapter/include -I$(COMPONENTS_DIR)/esp32/include -include esp32_compat.h
  5. MDNS_C_DEPENDENCY_INJECTION=-include mdns_di.h
  6. ifeq ($(INSTR),off)
  7. CC=gcc
  8. CFLAGS+=-DINSTR_IS_OFF
  9. TEST_NAME=test_sim
  10. else
  11. CC=afl-clang-fast
  12. endif
  13. CPP=$(CC)
  14. LD=$(CC)
  15. OBJECTS=mdns.o esp32_mock.o test.o
  16. OS := $(shell uname)
  17. ifeq ($(OS),Darwin)
  18. LDLIBS=
  19. else
  20. LDLIBS=-lbsd
  21. CFLAGS+=-DUSE_BSD_STRING
  22. endif
  23. all: $(TEST_NAME)
  24. %.o: %.c
  25. @echo "[CC] $<"
  26. @$(CC) $(CFLAGS) -c $< -o $@
  27. mdns.o: ../mdns.c
  28. @echo "[CC] $<"
  29. @$(CC) $(CFLAGS) $(MDNS_C_DEPENDENCY_INJECTION) -c $< -o $@
  30. $(TEST_NAME): $(OBJECTS)
  31. @echo "[LD] $@"
  32. @$(LD) $(OBJECTS) -o $@ $(LDLIBS)
  33. fuzz: $(TEST_NAME)
  34. @$(FUZZ) -i "in" -o "out" -- ./$(TEST_NAME)
  35. clean:
  36. @rm -rf *.o *.SYM $(TEST_NAME) out