CC		= gcc
CFLAGS          = -g -W -Wall -O2
OPTFLAGS        = -D_FILE_OFFSET_BITS=64

prefix          = /usr/local
bindir          = $(prefix)/bin
sbindir		= $(prefix)/sbin
datadir         = $(prefix)/share
docdir          = $(datadir)/doc/aircrack-ng

DESTDIR         = 
BINFILES        = aircrack-ng airdecap-ng arpforge mergeivs pcap2ivs
SBINFILES	= aireplay-ng airodump-ng airmon.sh
DOCFILES        = ChangeLog README.txt
MANDESTDIR	= $(datadir)/man/man1

all: aircrack-ng airdecap-ng arpforge aireplay-ng airodump-ng mergeivs pcap2ivs

aircrack-ng: src/aircrack-ng.c src/crypto.c src/sha1-mmx.S
	$(CC) $(CFLAGS) $(OPTFLAGS) src/aircrack-ng.c src/crypto.c src/sha1-mmx.S -o aircrack-ng -lpthread

airdecap-ng: src/airdecap-ng.c src/crypto.c
	$(CC) $(CFLAGS) $(OPTFLAGS) src/airdecap-ng.c src/crypto.c -o airdecap-ng

arpforge: src/arpforge.c
	$(CC) $(CFLAGS) $(OPTFLAGS) src/arpforge.c -o arpforge

aireplay-ng: src/aireplay-ng.c
	$(CC) $(CFLAGS) $(OPTFLAGS) src/aireplay-ng.c -o aireplay-ng

airodump-ng: src/airodump-ng.c
	$(CC) $(CFLAGS) $(OPTFLAGS) src/airodump-ng.c -o airodump-ng

mergeivs: src/mergeivs.c
	$(CC) $(CFLAGS) $(OPTFLAGS) src/mergeivs.c -o mergeivs

pcap2ivs: src/pcap2ivs.c
	$(CC) $(CFLAGS) $(OPTFLAGS) src/pcap2ivs.c -o pcap2ivs

install:
	install -d $(DESTDIR)$(bindir)
	install -m 755 $(BINFILES) $(DESTDIR)$(bindir)
	install -d $(DESTDIR)$(sbindir)
	install -m 755 $(SBINFILES) $(DESTDIR)$(sbindir)
	install -d $(DESTDIR)$(MANDESTDIR)
	install -m 644 ./manpages/* $(DESTDIR)$(MANDESTDIR)

uninstall:
	rm -f $(DESTDIR)$(bindir)/aircrack-ng
	rm -f $(DESTDIR)$(bindir)/airodump-ng
	rm -f $(DESTDIR)$(bindir)/airdecap-ng
	rm -f $(DESTDIR)$(bindir)/arpforge
	rm -f $(DESTDIR)$(bindir)/aireplay-ng
	rm -f $(DESTDIR)$(bindir)/airmon.sh
	rm -f $(DESTDIR)$(bindir)/mergeivs
	rm -f $(DESTDIR)$(bindir)/pcap2ivs
	rm -f $(DESTDIR)$(sbindir)/airodump-ng
	rm -f $(DESTDIR)$(sbindir)/aireplay-ng
	rm -f $(DESTDIR)$(sbindir)/airmon.sh
	rm -f $(DESTDIR)$(MANDESTDIR)/aircrack-ng.1
	rm -f $(DESTDIR)$(MANDESTDIR)/airdecap-ng.1
	rm -f $(DESTDIR)$(MANDESTDIR)/aireplay-ng.1
	rm -f $(DESTDIR)$(MANDESTDIR)/airmon.sh.1
	rm -f $(DESTDIR)$(MANDESTDIR)/airodump-ng.1
	rm -f $(DESTDIR)$(MANDESTDIR)/arpforge.1
	rm -f $(DESTDIR)$(MANDESTDIR)/mergeivs.1
	rm -f $(DESTDIR)$(MANDESTDIR)/pcap2ivs.1
	
doc:
	install -d $(DESTDIR)$(docdir)
	install -m 644 $(DOCFILES) $(DESTDIR)$(docdir)
	

clean:
	rm -f aircrack-ng airdecap-ng arpforge aireplay-ng airodump-ng mergeivs pcap2ivs
