3 VERSION = $(shell git describe --always | tail -c +2)
5 CFLAGS += -Wall -g -DNMRPFLASH_VERSION=\"$(VERSION)\"
8 nmrpflash_OBJ = nmrp.o tftp.o ethsock.o main.o util.o
10 .PHONY: clean install release release/osx release/linux release/win32
12 nmrpflash: $(nmrpflash_OBJ)
13 $(CC) $(CFLAGS) -o nmrpflash $(nmrpflash_OBJ) $(LDFLAGS)
16 CFLAGS=-DNMRPFLASH_TFTP_TEST make clean nmrpflash
19 $(CC) -c $(CFLAGS) $< -o $@
22 CC=afl-gcc CFLAGS=-DNMRPFLASH_FUZZ make nmrpflash
26 echo core | sudo tee /proc/sys/kernel/core_pattern
27 echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor
28 afl-fuzz -i fuzzin -o fuzzout -- ./fuzz
30 rm -f $(nmrpflash_OBJ) nmrpflash
33 install -m 755 nmrpflash $(PREFIX)/bin
36 CFLAGS="-arch i386 -arch x86_64 -mmacosx-version-min=10.6" make release
37 zip nmrpflash-$(VERSION)-osx.zip nmrpflash
39 release/linux: release
40 zip nmrpflash-$(VERSION)-linux.zip nmrpflash
43 zip nmrpflash-$(VERSION)-win32.zip nmrpflash.exe
45 release: clean nmrpflash