2 # Watcom Makefile for dos-libpcap.
\r
4 # Specify MODEL = `3r' or `3s'
\r
5 # Specify TARGET = `pharlap' or `dos4g'
\r
7 # Use this makefile from the libpcap root directory.
\r
10 # c:\net\pcap> wmake -f msdos\makefile.wc
\r
16 OBJDIR = msdos\$(TARGET).w$(MODEL)
\r
17 LIB = $(OBJDIR)\pcap.lib
\r
21 DEFS = -dDEBUG -dNDIS_DEBUG -d_U_= -dHAVE_LIMITS_H -dHAVE_STRERROR &
\r
22 -dHAVE_SNPRINTF -dHAVE_VSNPRINTF
\r
25 ASM = wasm.exe -$(MODEL) $(DEFS) -dDOSX -dDOS4GW -zq -bt=dos -fr=nul -d3 -s
\r
27 OBJS = $(OBJDIR)\grammar.obj $(OBJDIR)\scanner.obj $(OBJDIR)\pcap.obj &
\r
28 $(OBJDIR)\bpf_filt.obj $(OBJDIR)\bpf_imag.obj $(OBJDIR)\bpf_dump.obj &
\r
29 $(OBJDIR)\etherent.obj $(OBJDIR)\gencode.obj $(OBJDIR)\nametoad.obj &
\r
30 $(OBJDIR)\pcap-dos.obj $(OBJDIR)\pktdrvr.obj $(OBJDIR)\optimize.obj &
\r
31 $(OBJDIR)\savefile.obj $(OBJDIR)\inet.obj $(OBJDIR)\ndis2.obj
\r
33 CFLAGS = $(DEFS) $(YYDEFS) -I. -I$(%watt_root)\inc -I.\msdos\pm_drvr &
\r
34 -$(MODEL) -mf -zff -zgf -zq -bt=dos -fr=nul -w6 -fpi &
\r
39 all: $(OBJDIR) $(OBJDIR)\pcap.lib
\r
44 $(OBJDIR)\pcap.lib: $(OBJS) wlib.arg
\r
45 wlib -q -b -c $(OBJDIR)\pcap.lib @wlib.arg
\r
47 wlib.arg: msdos\makefile.wc
\r
49 for %f in ($(OBJS)) do %append $^@ +- %f
\r
51 $(OBJDIR)\pktdrvr.obj: msdos\pkt_stub.inc msdos\pktdrvr.c gnuc.h &
\r
52 pcap-dos.h pcap-int.h pcap.h msdos\pktdrvr.h
\r
53 *$(CC) $(CFLAGS) msdos\pktdrvr.c -fo=$@
\r
55 $(OBJDIR)\ndis2.obj: msdos\ndis2.c
\r
56 *$(CC) $(CFLAGS) msdos\ndis2.c -fo=$@
\r
60 *$(CC) $(CFLAGS) $[@ -fo=$@
\r
62 grammar.c tokdefs.h: grammar.y
\r
63 bison --name-prefix=pcap_ --yacc --defines $[@
\r
66 ren y_tab.c grammar.c
\r
67 ren y_tab.h tokdefs.h
\r
69 scanner.c: scanner.l
\r
70 flex -Ppcap_ -7 -o$@ $[@
\r
72 msdos\pkt_stub.inc: bin2c.exe msdos\pkt_rx1.S
\r
73 nasm -fbin -dDEBUG -o $(TEMPBIN) -lmsdos\pkt_rx1.lst msdos\pkt_rx1.S
\r
74 bin2c.exe $(TEMPBIN) > $@
\r
77 bin2c.exe: msdos\bin2c.c
\r
80 clean realclean vclean: .SYMBOLIC
\r
81 for %f in (dos4g.w3r dos4g.w3s pharlap.w3r pharlap.w3s) do &
\r
88 @del msdos\pkt_stub.inc
\r
94 $(OBJDIR)\bpf_filt.obj: bpf_filt.c pcap-int.h pcap.h pcap-bpf.h gnuc.h
\r
96 $(OBJDIR)\bpf_imag.obj: bpf_imag.c pcap-int.h pcap.h pcap-bpf.h
\r
98 $(OBJDIR)\bpf_dump.obj: bpf_dump.c pcap.h pcap-bpf.h
\r
100 $(OBJDIR)\etherent.obj: etherent.c pcap-int.h pcap.h pcap-bpf.h pcap-nam.h
\r
102 $(OBJDIR)\optimize.obj: optimize.c pcap-int.h pcap.h pcap-bpf.h gencode.h
\r
104 $(OBJDIR)\savefile.obj: savefile.c pcap-int.h pcap.h pcap-bpf.h
\r
106 $(OBJDIR)\pcap.obj: pcap.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h
\r
108 $(OBJDIR)\inet.obj: inet.c pcap-int.h pcap.h pcap-bpf.h
\r
110 $(OBJDIR)\grammar.obj: grammar.c pcap-int.h pcap.h pcap-bpf.h gencode.h &
\r
113 $(OBJDIR)\scanner.obj: scanner.c pcap-int.h pcap.h pcap-bpf.h gencode.h &
\r
114 pcap-nam.h tokdefs.h
\r
116 $(OBJDIR)\gencode.obj: gencode.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h &
\r
117 ethertyp.h nlpid.h llc.h gencode.h atmuni31.h sunatmpo.h ppp.h sll.h &
\r
118 arcnet.h pf.h pcap-nam.h
\r
120 $(OBJDIR)\nametoad.obj: nametoad.c pcap-int.h pcap.h pcap-bpf.h gencode.h &
\r
121 pcap-nam.h ethertyp.h
\r
123 $(OBJDIR)\pcap-dos.obj: pcap-dos.c pcap.h pcap-bpf.h pcap-dos.h pcap-int.h &
\r
126 $(OBJDIR)\pktdrvr.obj: msdos\pktdrvr.c gnuc.h pcap-dos.h pcap-int.h &
\r
127 pcap.h pcap-bpf.h msdos\pktdrvr.h msdos\pkt_stub.inc
\r
129 $(OBJDIR)\ndis2.obj: msdos\ndis2.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h &
\r