-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathNMakefile
61 lines (38 loc) · 1.55 KB
/
NMakefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# path to your winpcap developers kit
WPDPACK=..\WpdPack
# path to your spread developers kit
SPREAD=..\spread-bin-3.17.3
LEX=flex
YACC=bison -y
ETCDIR=/opt/wackamole/etc
PIDDIR=/opt/wackamole/var/run/
# no user config below this point
CC=$(CC) /nologo
LIBS=$(SPREAD)\win\libtspread.lib $(WPDPACK)\Lib\wpcap.lib ws2_32.lib kernel32.lib user32.lib advapi32.lib iphlpapi.lib mprapi.lib
CFLAGS=/MT -DETCDIR="\"$(ETCDIR)\"" -I$(SPREAD)\include -I$(WPDPACK)\Include -D_PATH_WACKAMOLE_PIDDIR="\"$(PIDDIR)\"" -DHAVE_CONFIG_H=1
TARGETS=wackamole.exe wackatrl.exe ife.exe
WACKOBJS=wackamole.obj alarm.obj lex.wack.obj y.tab.obj arpcache.obj spoofmanager.obj \
abt.obj control.obj apue.obj configuration.obj userloader.obj ife-win32.obj \
ife-icmp-support.obj win32.obj getopt_long.obj
WACKATRLOBJS=wackatrl.obj alarm.obj lex.wack.obj y.tab.obj apue.obj \
configuration.obj userloader.obj win32.obj getopt_long.obj
IFEOBJS=ife.obj ife-win32.obj arpcache.obj abt.obj alarm.obj ife-icmp-support.obj
CONFIGFILES=config.h defines.h
all: $(CONFIGFILES) $(TARGETS)
parser: lex.wack.c y.tab.c y.tab.h
$(WACKOBJS): config.h
$(WACKATRLOBJS): config.h
config.h: config.w32.h
copy /y config.w32.h config.h
lex.wack.c: config_gram.l y.tab.h
$(LEX) -Pwack config_gram.l
y.tab.c y.tab.h: config_gram.y
$(YACC) -p wack -d config_gram.y
wackamole.exe: $(WACKOBJS)
$(CC) -o wackamole.exe $(WACKOBJS) $(LIBS)
wackatrl.exe: $(WACKATRLOBJS)
$(CC) -o wackatrl.exe $(WACKATRLOBJS) $(LIBS)
ife.exe: $(IFEOBJS)
$(CC) -o ife.exe $(IFEOBJS) $(LIBS)
clean:
-del /q *.obj *.exe *.exp *.lib