1# For <shared.h> and <stage1.h>.
2INCLUDES = -I$(top_srcdir)/stage2 -I$(top_srcdir)/stage1
3
4# Don't build the netboot support by default.
5if NETBOOT_SUPPORT
6LIBDRIVERS = libdrivers.a
7else
8LIBDRIVERS =
9endif
10
11noinst_LIBRARIES = $(LIBDRIVERS)
12
13libdrivers_a_SOURCES = cards.h config.c etherboot.h \
14	fsys_tftp.c linux-asm-io.h linux-asm-string.h \
15	main.c misc.c nic.h osdep.h pci.c pci.h timer.c timer.h
16EXTRA_libdrivers_a_SOURCES = 3c509.c 3c509.h 3c595.c 3c595.h 3c90x.c \
17	cs89x0.c cs89x0.h davicom.c depca.c eepro.c eepro100.c \
18	epic100.c epic100.h fa311.c i82586.c lance.c natsemi.c \
19	ni5010.c ns8390.c ns8390.h otulip.c otulip.h rtl8139.c \
20	sis900.c sis900.h sk_g16.c sk_g16.h smc9000.c smc9000.h \
21	tiara.c tlan.c tulip.c via-rhine.c w89c840.c
22libdrivers_a_CFLAGS = $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
23	-DFSYS_TFTP=1 $(NET_CFLAGS) $(NET_EXTRAFLAGS)
24# Filled by configure.
25libdrivers_a_LIBADD = @NETBOOT_DRIVERS@
26libdrivers_a_DEPENDENCIES = $(libdrivers_a_LIBADD)
27
28EXTRA_DIST = README.netboot 3c90x.txt cs89x0.txt sis900.txt tulip.txt
29
30# These below are several special rules for the device drivers.
31# We cannot use a simple rule for them...
32
33# What objects are derived from a driver?
343c509_drivers = 3c509.o 3c529.o
353c595_drivers = 3c595.o
363c90x_drivers = 3c90x.o
37cs89x0_drivers = cs89x0.o
38davicom_drivers = davicom.o
39depca_drivers = depca.o
40eepro_drivers = eepro.o
41eepro100_drivers = eepro100.o
42epic100_drivers = epic100.o
43#fa311_drivers = fa311.o
44i82586_drivers = 3c507.o exos205.o ni5210.o
45lance_drivers = lance.o ne2100.o ni6510.o
46natsemi_drivers = natsemi.o
47ni5010_drivers = ni5010.o
48ns8390_drivers = 3c503.o ne.o ns8390.o wd.o
49otulip_drivers = otulip.o
50rtl8139_drivers = rtl8139.o
51sis900_drivers = sis900.o
52sk_g16_drivers = sk_g16.o
53smc9000_drivers = smc9000.o
54tiara_drivers = tiara.o
55#tlan_drivers = tlan.o
56tulip_drivers = tulip.o
57via_rhine_drivers = via_rhine.o
58w89c840_drivers = w89c840.o
59
60# Is it really necessary to specify dependecies explicitly?
61$(3c509_drivers): 3c509.c 3c509.h
62$(3c509_drivers): %.o: 3c509.c
63	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
64	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
65
66$(3c595_drivers): 3c595.c 3c595.h
67$(3c595_drivers): %.o: 3c595.c
68	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
69	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
70
71$(3c90x_drivers): 3c90x.c
72$(3c90x_drivers): %.o: 3c90x.c
73	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
74	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
75
76$(cs89x0_drivers): cs89x0.c cs89x0.h
77$(cs89x0_drivers): %.o: cs89x0.c
78	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
79	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
80
81$(davicom_drivers): davicom.c
82$(davicom_drivers): %.o: davicom.c
83	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
84	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
85
86$(depca_drivers): depca.c
87$(depca_drivers): %.o: depca.c
88	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
89	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
90
91$(eepro_drivers): eepro.c
92$(eepro_drivers): %.o: eepro.c
93	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
94	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
95
96$(eepro100_drivers): eepro100.c
97$(eepro100_drivers): %.o: eepro100.c
98	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
99	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
100
101$(epic100_drivers): epic100.c epic100.h
102$(epic100_drivers): %.o: epic100.c
103	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
104	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
105
106#$(fa311_drivers): fa311.c
107#$(fa311_drivers): %.o: fa311.c
108#	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
109#	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
110
111$(i82586_drivers): i82586.c
112$(i82586_drivers): %.o: i82586.c
113	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
114	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
115
116$(lance_drivers): lance.c
117$(lance_drivers): %.o: lance.c
118	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
119	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
120
121$(natsemi_drivers): natsemi.c
122$(natsemi_drivers): %.o: natsemi.c
123	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
124	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
125
126$(ni5010_drivers): ni5010.c
127$(ni5010_drivers): %.o: ni5010.c
128	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
129	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
130
131$(ns8390_drivers): ns8390.c ns8390.h
132$(ns8390_drivers): %.o: ns8390.c
133	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
134	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
135
136$(otulip_drivers): otulip.c otulip.h
137$(otulip_drivers): %.o: otulip.c
138	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
139	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
140
141$(rtl8139_drivers): rtl8139.c
142$(rtl8139_drivers): %.o: rtl8139.c
143	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
144	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
145
146$(sis900_drivers): sis900.c
147$(sis900_drivers): %.o: sis900.c sis900.h
148	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
149	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
150
151$(sk_g16_drivers): sk_g16.c sk_g16.h
152$(sk_g16_drivers): %.o: sk_g16.c
153	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
154	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
155
156$(smc9000_drivers): smc9000.c smc9000.h
157$(smc9000_drivers): %.o: smc9000.c
158	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
159	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
160
161$(tiara_drivers): tiara.c
162$(tiara_drivers): %.o: tiara.c
163	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
164	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
165
166#$(tlan_drivers): tlan.c
167#$(tlan_drivers): %.o: tlan.c
168#	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
169#	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
170
171$(tulip_drivers): tulip.c
172$(tulip_drivers): %.o: tulip.c
173	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
174	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
175
176$(via_rhine_drivers): via-rhine.c
177$(via_rhine_drivers): %.o: via-rhine.c
178	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
179	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
180
181$(w89c840_drivers): w89c840.c
182$(w89c840_drivers): %.o: w89c840.c
183	$(COMPILE) $(STAGE2_CFLAGS) -fno-builtin -nostdinc \
184	  $(NET_EXTRAFLAGS) $($(basename $@)_o_CFLAGS) -o $@ -c $<
185
186# Per-object flags.
1873c509_o_CFLAGS = -DINCLUDE_3C509=1
1883c529_o_CFLAGS = -DINCLUDE_3C529=1
1893c595_o_CFLAGS = -DINCLUDE_3C595=1
1903c90x_o_CFLAGS = -DINCLUDE_3C90X=1
191cs89x0_o_CFLAGS = -DINCLUDE_CS89X0=1
192davicom_o_CFLAGS = -DINCLUDE_DAVICOM=1
193depca_o_CFLAGS = -DINCLUDE_DEPCA=1
194eepro_o_CFLAGS = -DINCLUDE_EEPRO=1
195eepro100_o_CFLAGS = -DINCLUDE_EEPRO100=1
196epic100_o_CFLAGS = -DINCLUDE_EPIC100=1
197#fa311_o_CFLAGS = -DINCLUDE_FA311=1
1983c507_o_CFLAGS = -DINCLUDE_3C507=1
199exos205_o_CFLAGS = -DINCLUDE_EXOS205=1
200ni5210_o_CFLAGS = -DINCLUDE_NI5210=1
201lance_o_CFLAGS = -DINCLUDE_LANCE=1
202ne2100_o_CFLAGS = -DINCLUDE_NE2100=1
203ni6510_o_CFLAGS = -DINCLUDE_NI6510=1
204natsemi_o_CFLAGS = -DINCLUDE_NATSEMI=1
205ni5010_o_CFLAGS = -DINCLUDE_NI5010=1
2063c503_o_CFLAGS = -DINCLUDE_3C503=1
207ne_o_CFLAGS = -DINCLUDE_NE=1
208ns8390_o_CFLAGS = -DINCLUDE_NS8390=1
209wd_o_CFLAGS = -DINCLUDE_WD=1
210otulip_o_CFLAGS = -DINCLUDE_OTULIP=1
211rtl8139_o_CFLAGS = -DINCLUDE_RTL8139=1
212sis900_o_CFLAGS = -DINCLUDE_SIS900=1
213sk_g16_o_CFLAGS = -DINCLUDE_SK_G16=1
214smc9000_o_CFLAGS = -DINCLUDE_SMC9000=1
215tiara_o_CFLAGS = -DINCLUDE_TIARA=1
216#tlan_o_CFLAGS = -DINCLUDE_TLAN=1
217tulip_o_CFLAGS = -DINCLUDE_TULIP=1
218via_rhine_o_CFLAGS = -DINCLUDE_VIA_RHINE=1
219w89c840_o_CFLAGS = -DINCLUDE_W89C840=1
220