 d438b4a3ce
			
		
	
	
		d438b4a3ce
		
	
	
	
	
		
			
			src/*/Makefile needs to allow additional CFLAGS values to be provided from the calling Makefiles so that the clang command line arguments to enable sanitizers consistently. In addition, it can be useful to be able to provide CC, CFLAGS, and LDFLAGS from external setup while still requesing LIBFUZZER=y build. Allow that by not overriding these variables if they are already set. Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
		
			
				
	
	
		
			93 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			93 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| FUZZ_CFLAGS =
 | |
| 
 | |
| ifdef LIBFUZZER
 | |
| CC ?= clang
 | |
| #FUZZ_FLAGS ?= -fsanitize=fuzzer,address,signed-integer-overflow,unsigned-integer-overflow
 | |
| FUZZ_FLAGS ?= -fsanitize=fuzzer,address
 | |
| ifndef CFLAGS
 | |
| FUZZ_CFLAGS += $(FUZZ_FLAGS)
 | |
| endif
 | |
| endif
 | |
| 
 | |
| FUZZ_CFLAGS += -DCONFIG_NO_RANDOM_POOL -DTEST_FUZZ
 | |
| export FUZZ_CFLAGS
 | |
| CFLAGS ?= -MMD -O2 -Wall -g
 | |
| CFLAGS += $(FUZZ_CFLAGS)
 | |
| ifdef LIBFUZZER
 | |
| CFLAGS += -DTEST_LIBFUZZER
 | |
| LDFLAGS += $(FUZZ_FLAGS)
 | |
| endif
 | |
| 
 | |
| ifndef CC
 | |
| CC=gcc
 | |
| endif
 | |
| 
 | |
| ifndef LDO
 | |
| LDO=$(CC)
 | |
| endif
 | |
| 
 | |
| WPAS_SRC=../../../wpa_supplicant
 | |
| SRC=../../../src
 | |
| 
 | |
| CFLAGS += -I$(SRC) -I$(SRC)/utils -I$(WPAS_SRC)
 | |
| OBJS += ../fuzzer-common.o
 | |
| 
 | |
| $(SRC)/ap/libap.a:
 | |
| 	$(MAKE) -C $(SRC)/ap TEST_FUZZ=y
 | |
| 
 | |
| $(SRC)/common/libcommon.a:
 | |
| 	$(MAKE) -C $(SRC)/common
 | |
| 
 | |
| $(SRC)/crypto/libcrypto.a:
 | |
| 	$(MAKE) -C $(SRC)/crypto TEST_FUZZ=y
 | |
| 
 | |
| $(SRC)/eapol_auth/libeapol_auth.a:
 | |
| 	$(MAKE) -C $(SRC)/eapol_auth
 | |
| 
 | |
| $(SRC)/eapol_supp/libeapol_supp.a:
 | |
| 	$(MAKE) -C $(SRC)/eapol_supp
 | |
| 
 | |
| $(SRC)/eap_common/libeap_common.a:
 | |
| 	$(MAKE) -C $(SRC)/eap_common
 | |
| 
 | |
| $(SRC)/eap_peer/libeap_peer.a:
 | |
| 	$(MAKE) -C $(SRC)/eap_peer
 | |
| 
 | |
| $(SRC)/eap_server/libeap_server.a:
 | |
| 	$(MAKE) -C $(SRC)/eap_server
 | |
| 
 | |
| $(SRC)/l2_packet/libl2_packet.a:
 | |
| 	$(MAKE) -C $(SRC)/l2_packet
 | |
| 
 | |
| $(SRC)/p2p/libp2p.a:
 | |
| 	$(MAKE) -C $(SRC)/p2p
 | |
| 
 | |
| $(SRC)/radius/libradius.a:
 | |
| 	$(MAKE) -C $(SRC)/radius
 | |
| 
 | |
| $(SRC)/rsn_supp/librsn_supp.a:
 | |
| 	$(MAKE) -C $(SRC)/rsn_supp TEST_FUZZ=y
 | |
| 
 | |
| $(SRC)/tls/libtls.a:
 | |
| 	$(MAKE) -C $(SRC)/tls TEST_FUZZ=y
 | |
| 
 | |
| $(SRC)/utils/libutils.a:
 | |
| 	$(MAKE) -C $(SRC)/utils TEST_FUZZ=y
 | |
| 
 | |
| $(SRC)/wps/libwps.a:
 | |
| 	$(MAKE) -C $(SRC)/wps
 | |
| 
 | |
| Q=@
 | |
| E=echo
 | |
| ifeq ($(V), 1)
 | |
| Q=
 | |
| E=true
 | |
| endif
 | |
| ifeq ($(QUIET), 1)
 | |
| Q=@
 | |
| E=true
 | |
| endif
 | |
| 
 | |
| %.o: %.c
 | |
| 	$(Q)$(CC) -c -o $@ $(CFLAGS) $<
 | |
| 	@$(E) "  CC " $<
 |