1 1.1.1.2 christos # 2 1.1.1.2 christos # Makefile for dos-libpcap. NB. This makefile requires a Borland 3 1.1.1.2 christos # compatible make tool. 4 1.1.1.2 christos # 5 1.1.1.2 christos # Targets: 6 1.1.1.2 christos # Borland C 4.0+ (DOS large model) 7 1.1.1.2 christos # Metaware HighC 3.3+ (PharLap 386|DosX) 8 1.1.1.2 christos # 9 1.1.1.2 christos 10 1.1.1.2 christos .AUTODEPEND 11 1.1.1.2 christos .SWAP 12 1.1.1.2 christos 13 1.1.1.2 christos !if "$(WATT_ROOT)" == "" 14 1.1.1.2 christos !error Environment variable "WATT_ROOT" not set. 15 1.1.1.2 christos !endif 16 1.1.1.2 christos 17 1.1.1.2 christos WATT_INC = $(WATT_ROOT)\inc 18 1.1.1.2 christos 19 1.1.1.2 christos DEFS = -DMSDOS -DDEBUG -DNDIS_DEBUG -D_U_= -Dinline= \ 20 1.1.1.2 christos -DHAVE_STRERROR -DHAVE_LIMITS_H 21 1.1.1.2 christos 22 1.1.1.2 christos ASM = tasm.exe -t -l -mx -m2 -DDEBUG 23 1.1.1.2 christos 24 1.1.1.2 christos SOURCE = grammar.c scanner.c bpf_filt.c bpf_imag.c bpf_dump.c \ 25 1.1.1.2 christos etherent.c gencode.c nametoad.c pcap-dos.c optimize.c \ 26 1.1.1.3 christos savefile.c pcap.c msdos\ndis2.c msdos\pktdrvr.c \ 27 1.1.1.2 christos missing\snprintf.c 28 1.1.1.2 christos 29 1.1.1.2 christos BORLAND_OBJ = $(SOURCE:.c=.obj) msdos\pkt_rx0.obj msdos\ndis_0.obj 30 1.1.1.2 christos 31 1.1.1.2 christos HIGHC_OBJ = $(SOURCE:.c=.o32) msdos\pkt_rx0.o32 32 1.1.1.2 christos 33 1.1.1.2 christos all: 34 1.1.1.2 christos @echo Usage: make pcap_bc.lib or pcap_hc.lib 35 1.1.1.2 christos 36 1.1.1.2 christos 37 1.1.1.2 christos pcap_bc.lib: bcc.arg $(BORLAND_OBJ) pcap_bc 38 1.1.1.2 christos 39 1.1.1.2 christos 40 1.1.1.2 christos pcap_hc.lib: hc386.arg $(HIGHC_OBJ) 41 1.1.1.2 christos 386lib $< @&&| 42 1.1.1.2 christos -nowarn -nobackup -twocase -replace $(HIGHC_OBJ) 43 1.1.1.2 christos | 44 1.1.1.2 christos 45 1.1.1.2 christos pcap_bc: $(BORLAND_OBJ) 46 1.1.1.2 christos @tlib pcap_bc.lib /C @&&| 47 1.1.1.2 christos -+$(**:.obj=-+) 48 1.1.1.2 christos | 49 1.1.1.2 christos 50 1.1.1.2 christos .c.obj: 51 1.1.1.2 christos bcc.exe @bcc.arg -o$*.obj $*.c 52 1.1.1.2 christos 53 1.1.1.2 christos .c.o32: 54 1.1.1.2 christos hc386.exe @hc386.arg -o $*.o32 $*.c 55 1.1.1.2 christos 56 1.1.1.2 christos .asm.obj: 57 1.1.1.2 christos $(ASM) $*.asm, $*.obj 58 1.1.1.2 christos 59 1.1.1.2 christos .asm.o32: 60 1.1.1.2 christos $(ASM) -DDOSX=1 $*.asm, $*.o32 61 1.1.1.2 christos 62 1.1.1.2 christos scanner.c: scanner.l 63 1.1.1.2 christos flex -Ppcap_ -7 -oscanner.c scanner.l 64 1.1.1.2 christos 65 1.1.1.2 christos grammar.c tokdefs.h: grammar.y 66 1.1.1.2 christos bison --name-prefix=pcap_ --yacc --defines grammar.y 67 1.1.1.2 christos - @del grammar.c 68 1.1.1.2 christos - @del tokdefs.h 69 1.1.1.2 christos ren y_tab.c grammar.c 70 1.1.1.2 christos ren y_tab.h tokdefs.h 71 1.1.1.2 christos 72 1.1.1.2 christos bcc.arg: msdos\Makefile 73 1.1.1.2 christos @copy &&| 74 1.1.1.2 christos $(DEFS) -ml -c -v -3 -O2 -po -RT- -w- 75 1.1.1.2 christos -I$(WATT_INC) -I. -I.\msdos\pm_drvr -H=$(TEMP)\bcc.sym 76 1.1.1.2 christos | $< 77 1.1.1.2 christos 78 1.1.1.2 christos hc386.arg: msdos\Makefile 79 1.1.1.2 christos @copy &&| 80 1.1.1.2 christos # -DUSE_32BIT_DRIVERS 81 1.1.1.2 christos $(DEFS) -DDOSX=1 -w3 -c -g -O5 82 1.1.1.2 christos -I$(WATT_INC) -I. -I.\msdos\pm_drvr 83 1.1.1.2 christos -Hsuffix=.o32 84 1.1.1.2 christos -Hnocopyr 85 1.1.1.2 christos -Hpragma=Offwarn(491,553,572) 86 1.1.1.2 christos -Hon=Recognize_library # make memcpy/strlen etc. inline 87 1.1.1.2 christos -Hoff=Behaved # turn off some optimiser warnings 88 1.1.1.2 christos | $< 89 1.1.1.2 christos 90 1.1.1.2 christos clean: 91 1.1.1.2 christos @del *.obj 92 1.1.1.2 christos @del *.o32 93 1.1.1.2 christos @del *.lst 94 1.1.1.2 christos @del *.map 95 1.1.1.2 christos @del bcc.arg 96 1.1.1.2 christos @del hc386.arg 97 1.1.1.2 christos @del grammar.c 98 1.1.1.2 christos @del tokdefs.h 99 1.1.1.2 christos @del scanner.c 100 1.1.1.2 christos @echo Cleaned 101 1.1.1.2 christos 102 1.1.1.2 christos # 103 1.1.1.2 christos # dependencies 104 1.1.1.2 christos # 105 1.1.1.2 christos pkt_rx0.obj: msdos\pkt_rx0.asm 106 1.1.1.2 christos 107 1.1.1.2 christos bpf_filt.obj: bpf_filt.c pcap-int.h pcap.h pcap-bpf.h gnuc.h 108 1.1.1.2 christos 109 1.1.1.2 christos bpf_imag.obj: bpf_imag.c pcap-int.h pcap.h pcap-bpf.h 110 1.1.1.2 christos 111 1.1.1.2 christos bpf_dump.obj: bpf_dump.c pcap.h pcap-bpf.h 112 1.1.1.2 christos 113 1.1.1.2 christos etherent.obj: etherent.c pcap-int.h pcap.h pcap-bpf.h pcap-namedb.h 114 1.1.1.2 christos 115 1.1.1.2 christos optimize.obj: optimize.c pcap-int.h pcap.h pcap-bpf.h gencode.h 116 1.1.1.2 christos 117 1.1.1.2 christos savefile.obj: savefile.c pcap-int.h pcap.h pcap-bpf.h 118 1.1.1.2 christos 119 1.1.1.2 christos pcap.obj: pcap.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h 120 1.1.1.2 christos 121 1.1.1.2 christos grammar.obj: grammar.c pcap-int.h pcap.h pcap-bpf.h gencode.h \ 122 1.1.1.2 christos pf.h pcap-namedb.h 123 1.1.1.2 christos 124 1.1.1.2 christos scanner.obj: scanner.c pcap-int.h pcap.h pcap-bpf.h gencode.h \ 125 1.1.1.2 christos pcap-namedb.h tokdefs.h 126 1.1.1.2 christos 127 1.1.1.2 christos gencode.obj: gencode.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h \ 128 1.1.1.2 christos ethertype.h nlpid.h llc.h gencode.h atmuni31.h sunatmpos.h ppp.h sll.h \ 129 1.1.1.2 christos arcnet.h pf.h pcap-namedb.h 130 1.1.1.2 christos 131 1.1.1.2 christos nametoad.obj: nametoad.c pcap-int.h pcap.h pcap-bpf.h gencode.h \ 132 1.1.1.2 christos pcap-namedb.h ethertype.h 133 1.1.1.2 christos 134 1.1.1.2 christos pcap-dos.obj: pcap-dos.c pcap.h pcap-bpf.h pcap-dos.h pcap-int.h \ 135 1.1.1.2 christos msdos\pktdrvr.h 136 1.1.1.2 christos 137 1.1.1.2 christos pktdrvr.obj: msdos\pktdrvr.c gnuc.h pcap-dos.h pcap-int.h \ 138 1.1.1.2 christos pcap.h pcap-bpf.h msdos\pktdrvr.h msdos\pkt_stub.inc 139 1.1.1.2 christos 140 1.1.1.2 christos ndis2.obj: msdos\ndis2.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h \ 141 1.1.1.2 christos msdos\ndis2.h 142 1.1.1.2 christos 143 1.1.1.2 christos pkt_rx0.o32: msdos\pkt_rx0.asm 144 1.1.1.2 christos 145 1.1.1.2 christos bpf_filt.o32: bpf_filt.c pcap-int.h pcap.h pcap-bpf.h gnuc.h 146 1.1.1.2 christos 147 1.1.1.2 christos bpf_imag.o32: bpf_imag.c pcap-int.h pcap.h pcap-bpf.h 148 1.1.1.2 christos 149 1.1.1.2 christos bpf_dump.o32: bpf_dump.c pcap.h pcap-bpf.h 150 1.1.1.2 christos 151 1.1.1.2 christos etherent.o32: etherent.c pcap-int.h pcap.h pcap-bpf.h pcap-namedb.h 152 1.1.1.2 christos 153 1.1.1.2 christos optimize.o32: optimize.c pcap-int.h pcap.h pcap-bpf.h gencode.h 154 1.1.1.2 christos 155 1.1.1.2 christos savefile.o32: savefile.c pcap-int.h pcap.h pcap-bpf.h 156 1.1.1.2 christos 157 1.1.1.2 christos pcap.o32: pcap.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h 158 1.1.1.2 christos 159 1.1.1.2 christos grammar.o32: grammar.c pcap-int.h pcap.h pcap-bpf.h gencode.h \ 160 1.1.1.2 christos pf.h pcap-namedb.h 161 1.1.1.2 christos 162 1.1.1.2 christos scanner.o32: scanner.c pcap-int.h pcap.h pcap-bpf.h gencode.h \ 163 1.1.1.2 christos pcap-namedb.h tokdefs.h 164 1.1.1.2 christos 165 1.1.1.2 christos gencode.o32: gencode.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h \ 166 1.1.1.2 christos ethertype.h nlpid.h llc.h gencode.h atmuni31.h sunatmpos.h ppp.h sll.h \ 167 1.1.1.2 christos arcnet.h pf.h pcap-namedb.h 168 1.1.1.2 christos 169 1.1.1.2 christos nametoad.o32: nametoad.c pcap-int.h pcap.h pcap-bpf.h gencode.h \ 170 1.1.1.2 christos pcap-namedb.h ethertype.h 171 1.1.1.2 christos 172 1.1.1.2 christos pcap-dos.o32: pcap-dos.c pcap.h pcap-bpf.h pcap-dos.h pcap-int.h \ 173 1.1.1.2 christos msdos\pktdrvr.h 174 1.1.1.2 christos 175 1.1.1.2 christos pktdrvr.o32: msdos\pktdrvr.c gnuc.h pcap-dos.h pcap-int.h \ 176 1.1.1.2 christos pcap.h pcap-bpf.h msdos\pktdrvr.h msdos\pkt_stub.inc 177 1.1.1.2 christos 178 1.1.1.2 christos ndis2.o32: msdos\ndis2.c pcap-dos.h pcap-int.h pcap.h pcap-bpf.h \ 179 1.1.1.2 christos msdos\ndis2.h 180 1.1.1.2 christos 181