##  Makefile
##
##  copyright (c) 2005 SeaD
##

PREFIX=/usr/local
ETHERS=/etc/ethers

NAME=ipguard
VERSION=0.04
INCLUDES=-I/usr/local/include
LIBS=-lpcap `libnet-config --libs` -L/usr/local/lib
DEFINES=`libnet-config --defines`
STATIC=
CC=gcc

CFLAGS+=-g -Wall -O2 -DETHERS='"$(ETHERS)"'

OBJS=ethers.o ipguard.o packet.o system.o
DOCS=ethers.sample ipguard.sh.sample NEWS README TODO

.c.o:
	@echo Compiling $*.c
	@$(CC) -c $(CFLAGS) $(INCLUDES) $(DEFINES) $<

all:	start $(NAME)

start:
	@echo "Making $(NAME) $(VERSION)"
	@echo "INCLUDES = $(INCLUDES)"
	@echo "LIBS = $(LIBS)"
	@echo "DEFINES = $(DEFINES)"
	@echo "CFLAGS = $(CFLAGS)"
    
$(NAME): $(OBJS)
	@echo Linking $@
	@$(CC) -o $@ $(OBJS) $(LIBS) $(STATIC)

clean:
	@echo Cleaning OBJS
	@rm -f $(OBJS)

cleanall: clean
	@echo Removing $(NAME)
	@rm -f $(NAME)

install: all
	mkdir -p -m 755 $(PREFIX)/sbin
	install -s -m 755 $(NAME) $(PREFIX)/sbin/$(NAME)
	mkdir -p -m 755 $(PREFIX)/doc/$(NAME)
	for file in $(DOCS) ; do \
	    install -m 644 doc/$$file $(PREFIX)/doc/$(NAME)/$$file ; \
	done
	mkdir -p -m 755 $(PREFIX)/man/man8
	install -m 644 doc/$(NAME).8 $(PREFIX)/man/man8/$(NAME).8

uninstall:
	rm -f $(PREFIX)/man/man8/$(NAME).8
	for file in $(DOCS) ; do \
	    rm -f $(PREFIX)/doc/$(NAME)/$$file ; \
	done
	rmdir $(PREFIX)/doc/$(NAME)
	rm -f $(PREFIX)/sbin/$(NAME)

ethers.o: ipguard.h
ipguard.o: ipguard.h
packet.o: ipguard.h
system.o: ipguard.h
