makefile 4.8 KB

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