xref: /freebsd/contrib/libpcap/msdos/makefile.dj (revision afdbf109c6a661a729938f68211054a0a50d38ac)
1b00ab754SHans Petter Selasky#
2b00ab754SHans Petter Selasky# GNU Makefile for DOS-libpcap. djgpp version.
3b00ab754SHans Petter Selasky#
4b00ab754SHans Petter Selasky# Use this makefile from the libpcap root directory.
5b00ab754SHans Petter Selasky# E.g. like this:
6b00ab754SHans Petter Selasky#
7b00ab754SHans Petter Selasky#  c:\net\pcap> make -f msdos/makefile.dj
8b00ab754SHans Petter Selasky#
9b00ab754SHans Petter Selasky# Note: you should do a "set LFN=y" before running this makefile.
10b00ab754SHans Petter Selasky#
11b00ab754SHans Petter Selasky
12*afdbf109SJoseph MingroneVPATH = missing msdos
13b00ab754SHans Petter Selasky
14b00ab754SHans Petter SelaskyPREREQUISITES = scanner.c grammar.c tokdefs.h version.h msdos/pkt_stub.inc
15b00ab754SHans Petter Selasky
16b00ab754SHans Petter Selaskyinclude ./msdos/common.dj
17b00ab754SHans Petter Selasky
18b00ab754SHans Petter SelaskyDRIVER_DIR = ./msdos/pm_drvr
19b00ab754SHans Petter Selasky
20b00ab754SHans Petter SelaskyCFLAGS += -DDEBUG -DNDIS_DEBUG -DHAVE_LIMITS_H -DHAVE_STRERROR -DHAVE_SNPRINTF -DHAVE_VSNPRINTF\
21b00ab754SHans Petter Selasky          -D_U_='__attribute__((unused))'
22b00ab754SHans Petter Selasky
23b00ab754SHans Petter SelaskyCFLAGS += -Dyylval=pcap_lval # -DBDEBUG -DNDEBUG
24b00ab754SHans Petter Selasky
25*afdbf109SJoseph MingroneSOURCES = grammar.c scanner.c bpf_filter.c bpf_image.c bpf_dump.c \
26b00ab754SHans Petter Selasky          etherent.c gencode.c nametoaddr.c pcap-common.c pcap-dos.c optimize.c \
27b00ab754SHans Petter Selasky          savefile.c pcap.c sf-pcap.c sf-pcapng.c \
28b00ab754SHans Petter Selasky          msdos/pktdrvr.c msdos/ndis2.c # missing/snprintf.c
29b00ab754SHans Petter Selasky
30b00ab754SHans Petter SelaskyOBJECTS = $(addprefix $(OBJ_DIR)/, $(notdir $(SOURCES:.c=.o)))
31b00ab754SHans Petter SelaskyTEMPBIN = tmp.bin
32b00ab754SHans Petter Selasky
33b00ab754SHans Petter Selaskyifeq ($(USE_32BIT_DRIVERS),1)
34b00ab754SHans Petter Selasky  PM_OBJECTS = $(addprefix $(OBJ_DIR)/, \
35b00ab754SHans Petter Selasky                 printk.o pci.o pci-scan.o bios32.o dma.o irq.o intwrap.o \
36b00ab754SHans Petter Selasky                 lock.o kmalloc.o quirks.o timer.o net_init.o)
37b00ab754SHans Petter Selasky  #
38b00ab754SHans Petter Selasky  # Static link of drivers
39b00ab754SHans Petter Selasky  #
40b00ab754SHans Petter Selasky  ifeq ($(USE_32BIT_MODULES),0)
41b00ab754SHans Petter Selasky    PM_OBJECTS += $(addprefix $(OBJ_DIR)/, \
42b00ab754SHans Petter Selasky                    accton.o 8390.o 3c503.o 3c509.o 3c59x.o 3c515.o \
43b00ab754SHans Petter Selasky                    3c575_cb.o 3c90x.o ne.o wd.o cs89x0.o rtl8139.o)
44b00ab754SHans Petter Selasky  endif
45b00ab754SHans Petter Selaskyendif
46b00ab754SHans Petter Selasky
47b00ab754SHans Petter SelaskyTARGETS = msdos/bin2c.exe libpcap.a filtertest.exe findalldevstest.exe \
48b00ab754SHans Petter Selasky          nonblocktest.exe opentest.exe
49b00ab754SHans Petter Selasky
50b00ab754SHans Petter Selaskyall: $(TARGETS)
51b00ab754SHans Petter Selasky	@echo 'Welcome to libpcap/djgpp with samples.'
52b00ab754SHans Petter Selasky
53b00ab754SHans Petter Selaskyifeq ($(USE_32BIT_DRIVERS),1)
54b00ab754SHans Petter Selasky$(PM_OBJECTS):
55b00ab754SHans Petter Selasky	$(MAKE) -f Makefile.dj -C $(DRIVER_DIR) $(notdir $@)
56b00ab754SHans Petter Selaskyendif
57b00ab754SHans Petter Selasky
58b00ab754SHans Petter Selaskylibpcap.a: version.h $(OBJECTS) $(PM_OBJECTS)
59b00ab754SHans Petter Selasky	rm -f $@
60b00ab754SHans Petter Selasky	ar rs $@ $^
61b00ab754SHans Petter Selasky
62b00ab754SHans Petter Selaskyfiltertest.exe: tests/filtertest.c libpcap.a
63b00ab754SHans Petter Selasky	$(CC) $(CFLAGS) -Din_addr_t=u_long -o $@ $^ $(WATT32_ROOT)/lib/libwatt.a
64b00ab754SHans Petter Selasky	@echo
65b00ab754SHans Petter Selasky
66b00ab754SHans Petter Selaskyfindalldevstest.exe: tests/findalldevstest.c libpcap.a
67b00ab754SHans Petter Selasky	$(CC) $(CFLAGS) -o $@ $^ $(WATT32_ROOT)/lib/libwatt.a
68b00ab754SHans Petter Selasky	@echo
69b00ab754SHans Petter Selasky
70b00ab754SHans Petter Selaskynonblocktest.exe: tests/nonblocktest.c libpcap.a
71b00ab754SHans Petter Selasky	$(CC) $(CFLAGS) -o $@ $^ $(WATT32_ROOT)/lib/libwatt.a
72b00ab754SHans Petter Selasky	@echo
73b00ab754SHans Petter Selasky
74b00ab754SHans Petter Selaskyopentest.exe: tests/opentest.c libpcap.a
75b00ab754SHans Petter Selasky	$(CC) $(CFLAGS) -o $@ $^ $(WATT32_ROOT)/lib/libwatt.a
76b00ab754SHans Petter Selasky	@echo
77b00ab754SHans Petter Selasky
78b00ab754SHans Petter Selaskymsdos/pkt_stub.inc: msdos/bin2c.exe msdos/pkt_rx1.S
79b00ab754SHans Petter Selasky	$(ASM) -o $(TEMPBIN) -lmsdos/pkt_rx1.lst msdos/pkt_rx1.S
80b00ab754SHans Petter Selasky	./msdos/bin2c $(TEMPBIN) > $@
81b00ab754SHans Petter Selasky	rm -f $(TEMPBIN)
82b00ab754SHans Petter Selasky
83b00ab754SHans Petter Selaskygrammar.c tokdefs.h: grammar.y
84b00ab754SHans Petter Selasky	rm -f grammar.c tokdefs.h
85b00ab754SHans Petter Selasky	$(YACC) --name-prefix=pcap_ --yacc --defines grammar.y
86b00ab754SHans Petter Selasky	mv -f y.tab.c grammar.c
87b00ab754SHans Petter Selasky	mv -f y.tab.h tokdefs.h
88b00ab754SHans Petter Selasky
89b00ab754SHans Petter Selaskyversion.h: ./VERSION
90b00ab754SHans Petter Selasky	@echo '/* Generated from VERSION. Do not edit */' > $@
91b00ab754SHans Petter Selasky	sed -e 's/.*/static char pcap_version_string[] = "libpcap (&)";/' ./VERSION >> $@
92b00ab754SHans Petter Selasky
93b00ab754SHans Petter Selaskyscanner.c: scanner.l
94b00ab754SHans Petter Selasky	$(LEX) -Ppcap_ -7 -t $^ > $@
95b00ab754SHans Petter Selasky	@echo
96b00ab754SHans Petter Selasky
97b00ab754SHans Petter Selaskymsdos/bin2c.exe: msdos/bin2c.c
98b00ab754SHans Petter Selasky	$(CC) $*.c -o $*.exe
99b00ab754SHans Petter Selasky
100b00ab754SHans Petter Selaskyclean:
101b00ab754SHans Petter Selasky	rm -f $(OBJECTS) msdos/pkt_rx1.lst Makefile.bak .depend.dj $(PREREQUISITES)
102b00ab754SHans Petter Selasky#	$(MAKE) -f Makefile.dj -C $(DRIVER_DIR) clean
103b00ab754SHans Petter Selasky
104b00ab754SHans Petter Selaskyvclean: clean
105b00ab754SHans Petter Selasky	rm -f $(TARGETS)
106b00ab754SHans Petter Selasky	-rmdir $(OBJ_DIR)
107b00ab754SHans Petter Selasky
108b00ab754SHans Petter Selasky#
109b00ab754SHans Petter Selasky# Manually generated dependencies
110b00ab754SHans Petter Selasky#
111b00ab754SHans Petter Selaskymsdos/pktdrvr.c: msdos/pkt_stub.inc
112b00ab754SHans Petter Selaskyscanner.c: scanner.l
113b00ab754SHans Petter Selaskygrammar.c tokdefs.h: grammar.y
114b00ab754SHans Petter Selaskygrammar.h: grammar.y
115b00ab754SHans Petter Selaskyscanner.l: pcap-int.h pcap-namedb.h gencode.h grammar.h
116b00ab754SHans Petter Selaskygrammar.y: pcap-int.h gencode.h pcap-namedb.h
117b00ab754SHans Petter Selasky
118b00ab754SHans Petter Selasky#
119b00ab754SHans Petter Selasky# Generate dependencies.
120b00ab754SHans Petter Selasky#
121b00ab754SHans Petter SelaskyREPLACE = sed -e 's/\(.*\)\.o: /\n$$(OBJ_DIR)\/\1.o: /'
122b00ab754SHans Petter Selasky
123b00ab754SHans Petter Selaskydepend: $(PREREQUISITES)
124b00ab754SHans Petter Selasky	$(CC) -MM $(CFLAGS) $(SOURCES) | $(REPLACE) > .depend.dj
125b00ab754SHans Petter Selasky
126b00ab754SHans Petter Selasky-include .depend.dj
127b00ab754SHans Petter Selasky
128