1# 2# Copyright (c) 2001, 2002 Swedish Institute of Computer Science. 3# All rights reserved. 4# 5# Redistribution and use in source and binary forms, with or without modification, 6# are permitted provided that the following conditions are met: 7# 8# 1. Redistributions of source code must retain the above copyright notice, 9# this list of conditions and the following disclaimer. 10# 2. Redistributions in binary form must reproduce the above copyright notice, 11# this list of conditions and the following disclaimer in the documentation 12# and/or other materials provided with the distribution. 13# 3. The name of the author may not be used to endorse or promote products 14# derived from this software without specific prior written permission. 15# 16# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED 17# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 18# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT 19# SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 20# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT 21# OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING 24# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 25# OF SUCH DAMAGE. 26# 27# This file is part of the lwIP TCP/IP stack. 28# 29# Author: Adam Dunkels <adam@sics.se> 30# 31 32all compile: lwip_fuzz lwip_fuzz2 lwip_fuzz3 33.PHONY: all clean 34 35ifeq ($(origin CC), default) 36CC=afl-gcc 37endif 38 39LDFLAGS=-lm 40# use 'make D=-DUSER_DEFINE' to pass a user define to gcc 41CFLAGS=-O2 $(D) 42 43LWIPDIR=../../src 44CONTRIBDIR=../../contrib 45include $(CONTRIBDIR)/ports/unix/Common.mk 46 47DEPFILES=.depend_fuzz .depend_lwip .depend_app 48 49clean: 50 rm -f *.o $(LWIPLIBCOMMON) $(APPLIB) lwip_fuzz lwip_fuzz2 lwip_fuzz3 *.s $(DEPFILES) *.core core 51 52depend dep: $(DEPFILES) 53 @true 54 55ifneq ($(MAKECMDGOALS),clean) 56include $(DEPFILES) 57endif 58 59.depend_fuzz: fuzz.c fuzz2.c fuzz3.c fuzz_common.c 60 $(CCDEP) $(CFLAGS) -MM $^ > .depend_fuzz || rm -f .depend_fuzz 61.depend_lwip: $(LWIPFILES) 62 $(CCDEP) $(CFLAGS) -MM $^ > .depend_lwip || rm -f .depend_lwip 63.depend_app: $(APPFILES) 64 $(CCDEP) $(CFLAGS) -MM $^ > .depend_app || rm -f .depend_app 65 66lwip_fuzz: $(DEPFILES) $(LWIPLIBCOMMON) $(APPLIB) fuzz.o fuzz_common.o 67 $(CC) $(CFLAGS) -o lwip_fuzz fuzz.o fuzz_common.o $(APPLIB) $(LWIPLIBCOMMON) $(LDFLAGS) 68 69lwip_fuzz2: $(DEPFILES) $(LWIPLIBCOMMON) $(APPLIB) fuzz2.o fuzz_common.o 70 $(CC) $(CFLAGS) -o lwip_fuzz2 fuzz2.o fuzz_common.o $(APPLIB) $(LWIPLIBCOMMON) $(LDFLAGS) 71 72lwip_fuzz3: $(DEPFILES) $(LWIPLIBCOMMON) $(APPLIB) fuzz3.o fuzz_common.o 73 $(CC) $(CFLAGS) -o lwip_fuzz3 fuzz3.o fuzz_common.o $(APPLIB) $(LWIPLIBCOMMON) $(LDFLAGS) 74