PREFIX ?= /usr/local BIN_PATH = $(PREFIX)/bin HELPER_PATH = $(PREFIX)/lib/afl DOC_PATH = $(PREFIX)/share/doc/afl SYS = $(shell uname -s) PROGRAMS = afl-network-client afl-network-server HASH=\# CFLAGS += -Wno-pointer-sign ifdef STATIC CFLAGS += -static endif ifeq "$(SYS)" "SunOS" LDFLAGS += -lnsl -lsocket endif ifeq "$(shell echo '$(HASH)include @int main() { struct libdeflate_compressor *d = libdeflate_alloc_compressor(1); return 0;}' | tr @ '\n' | $(CC) $(CFLAGS) -x c - -o .test2 -ldeflate 2>/dev/null && echo 1 || echo 0 ; rm -f .test2 )" "1" CFLAGS += -DUSE_DEFLATE=1 LDFLAGS += -ldeflate $(info libdeflate-dev was detected, using compression) else $(warn did not find libdeflate-dev, cannot use compression) endif all: $(PROGRAMS) help: @echo make options: @echo STATIC - build as static binaries @echo COMPRESS_TESTCASES - compress test cases afl-network-client: afl-network-client.c $(CC) $(CFLAGS) -I../../include -o afl-network-client afl-network-client.c $(LDFLAGS) afl-network-server: afl-network-server.c $(CC) $(CFLAGS) -I../../include -o afl-network-server afl-network-server.c ../../src/afl-forkserver.c ../../src/afl-sharedmem.c ../../src/afl-common.c -DAFL_PATH=\"$(HELPER_PATH)\" -DBIN_PATH=\"$(BIN_PATH)\" $(LDFLAGS) clean: rm -f $(PROGRAMS) *~ core install: all install -d -m 755 $${DESTDIR}$(BIN_PATH) $${DESTDIR}$(DOC_PATH) install -m 755 $(PROGRAMS) $${DESTDIR}$(BIN_PATH) install -T -m 644 README.md $${DESTDIR}$(DOC_PATH)/README.network_proxy.md