xref: /titanic_44/usr/src/grub/grub-0.97/netboot/Makefile.solaris (revision 1b8adde7ba7d5e04395c141c5400dc2cffd7d809)
1*1b8adde7SWilliam Kucharski#
2*1b8adde7SWilliam Kucharski# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
3*1b8adde7SWilliam Kucharski# Use is subject to license terms.
4*1b8adde7SWilliam Kucharski#
5*1b8adde7SWilliam Kucharski# ident	"%Z%%M%	%I%	%E% SMI"
6*1b8adde7SWilliam Kucharski#
7*1b8adde7SWilliam Kucharskiinclude ../../Makefile.grub
8*1b8adde7SWilliam Kucharskiinclude ../Makefile.solaris.defs
9*1b8adde7SWilliam Kucharski
10*1b8adde7SWilliam KucharskiLIBDRIVERS = libdrivers.a
11*1b8adde7SWilliam Kucharski
12*1b8adde7SWilliam KucharskiLIBDRIVERS_OBJS	= $(LIB_OBJS) $(DRIVER_OBJS)
13*1b8adde7SWilliam Kucharski
14*1b8adde7SWilliam KucharskiLIB_OBJS	= libdrivers_a-basemem.o	\
15*1b8adde7SWilliam Kucharski		  libdrivers_a-config.o		\
16*1b8adde7SWilliam Kucharski		  libdrivers_a-fsys_tftp.o	\
17*1b8adde7SWilliam Kucharski		  libdrivers_a-i386_timer.o	\
18*1b8adde7SWilliam Kucharski		  libdrivers_a-misc.o		\
19*1b8adde7SWilliam Kucharski		  libdrivers_a-nic.o		\
20*1b8adde7SWilliam Kucharski		  libdrivers_a-pci.o		\
21*1b8adde7SWilliam Kucharski		  libdrivers_a-pci_io.o		\
22*1b8adde7SWilliam Kucharski		  libdrivers_a-pic8259.o	\
23*1b8adde7SWilliam Kucharski		  libdrivers_a-timer.o
24*1b8adde7SWilliam Kucharski$(LIB_OBJS)	:= CFLAGS = $(BASE_CFLAGS) -Os -fno-builtin -nostdinc \
25*1b8adde7SWilliam Kucharski			-DFSYS_TFTP=1 $(NET_CFLAGS) $(NET_EXTRAFLAGS)
26*1b8adde7SWilliam Kucharski
27*1b8adde7SWilliam Kucharski#
28*1b8adde7SWilliam Kucharski# The following netboot drivers are available.
29*1b8adde7SWilliam Kucharski# NOTE: Compiling too many netboot drivers into stage2 could cause GRUB to
30*1b8adde7SWilliam Kucharski#	crash or misbehave.
31*1b8adde7SWilliam Kucharski# NOTE: NET_CFLAGS has to be adjusted to correspond to the drivers
32*1b8adde7SWilliam Kucharski#	selected in $(DRIVER_OBJS).
33*1b8adde7SWilliam Kucharski#
34*1b8adde7SWilliam Kucharski#	3c595.o		- 3Com595 driver
35*1b8adde7SWilliam Kucharski#	3c90x.o		- 3Com90x driver
36*1b8adde7SWilliam Kucharski#	davicom.o	- Davicom driver
37*1b8adde7SWilliam Kucharski#	e1000.o		- Etherexpress Pro/1000 driver
38*1b8adde7SWilliam Kucharski#	eepro100.o	- Etherexpress Pro/100 driver
39*1b8adde7SWilliam Kucharski#	epic100.o	- SMC 83c170 EPIC/100 driver
40*1b8adde7SWilliam Kucharski#	forcedeth.o	- Nvidia Geforce driver
41*1b8adde7SWilliam Kucharski#	natsemi.o	- NatSemi DP8381x driver
42*1b8adde7SWilliam Kucharski#	ns83820.o	- NS83820 driver
43*1b8adde7SWilliam Kucharski#	ns8390.o	- NE2000 PCI driver
44*1b8adde7SWilliam Kucharski#	pcnet32.o	- AMD Lance/PCI PCNet/32 driver
45*1b8adde7SWilliam Kucharski#	pnic.o		- Bochs Pseudo Nic driver
46*1b8adde7SWilliam Kucharski#	r8169.o		- Realtek 8169 driver
47*1b8adde7SWilliam Kucharski#	rtl8139.o	- Realtek 8139 driver
48*1b8adde7SWilliam Kucharski#	sis900.o	- SIS 900 and SIS 7016 driver
49*1b8adde7SWilliam Kucharski#	sundance.o	- Sundance ST201 driver
50*1b8adde7SWilliam Kucharski#	tg3.o		- Broadcom Tigon3 driver
51*1b8adde7SWilliam Kucharski#	tlan.o		- TI ThunderLAN driver
52*1b8adde7SWilliam Kucharski#	tulip.o		- Tulip driver
53*1b8adde7SWilliam Kucharski#	undi.o		- PXE UNDI driver
54*1b8adde7SWilliam Kucharski#	via-rhine.o	- Rhine-I/II driver
55*1b8adde7SWilliam Kucharski#	w89c840.o	- Winbond W89c840 driver
56*1b8adde7SWilliam Kucharski#
57*1b8adde7SWilliam KucharskiDRIVER_OBJS	= undi.o
58*1b8adde7SWilliam Kucharski
59*1b8adde7SWilliam KucharskiNET_CFLAGS	= -DINCLUDE_UNDI=1
60*1b8adde7SWilliam Kucharski
61*1b8adde7SWilliam Kucharski$(DRIVER_OBJS)	:= CFLAGS = $(BASE_CFLAGS) -Os -fno-builtin -nostdinc \
62*1b8adde7SWilliam Kucharski			$(NET_EXTRAFLAGS) $(DRIVER_DEFS)
63*1b8adde7SWilliam Kucharski
64*1b8adde7SWilliam Kucharski3c595.o		:= DRIVER_DEFS = -DINCLUDE_3C595=1
65*1b8adde7SWilliam Kucharski3c90x.o		:= DRIVER_DEFS = -DINCLUDE_3C90X=1
66*1b8adde7SWilliam Kucharskidavicom.o	:= DRIVER_DEFS = -DINCLUDE_DAVICOM=1
67*1b8adde7SWilliam Kucharskie1000.o		:= DRIVER_DEFS = -DINCLUDE_E1000=1
68*1b8adde7SWilliam Kucharskieepro100.o	:= DRIVER_DEFS = -DINCLUDE_EEPRO100=1
69*1b8adde7SWilliam Kucharskiepic100.o	:= DRIVER_DEFS = -DINCLUDE_EPIC100=1
70*1b8adde7SWilliam Kucharskiforcedeth.o	:= DRIVER_DEFS = -DINCLUDE_FORCEDETH=1
71*1b8adde7SWilliam Kucharskinatsemi.o	:= DRIVER_DEFS = -DINCLUDE_NATSEMI=1
72*1b8adde7SWilliam Kucharskins83820.o	:= DRIVER_DEFS = -DINCLUDE_NS83820=1
73*1b8adde7SWilliam Kucharskins8390.o	:= DRIVER_DEFS = -DINCLUDE_NS8390=1
74*1b8adde7SWilliam Kucharskipcnet32.o	:= DRIVER_DEFS = -DINCLUDE_PCNET32=1
75*1b8adde7SWilliam Kucharskipnic.o		:= DRIVER_DEFS = -DINCLUDE_PNIC=1
76*1b8adde7SWilliam Kucharskir8169.o		:= DRIVER_DEFS = -DINCLUDE_R8169=1
77*1b8adde7SWilliam Kucharskirtl8139.o	:= DRIVER_DEFS = -DINCLUDE_RTL8139=1
78*1b8adde7SWilliam Kucharskisis900.o	:= DRIVER_DEFS = -DINCLUDE_SIS900=1
79*1b8adde7SWilliam Kucharskisundance.o	:= DRIVER_DEFS = -DINCLUDE_SUNDANCE=1
80*1b8adde7SWilliam Kucharskitg3.o		:= DRIVER_DEFS = -DINCLUDE_TG3=1
81*1b8adde7SWilliam Kucharskitlan.o		:= DRIVER_DEFS = -DINCLUDE_TLAN=1
82*1b8adde7SWilliam Kucharskitulip.o		:= DRIVER_DEFS = -DINCLUDE_TULIP=1
83*1b8adde7SWilliam Kucharskiundi.o		:= DRIVER_DEFS = -DINCLUDE_UNDI=1
84*1b8adde7SWilliam Kucharskivia-rhine.o	:= DRIVER_DEFS = -DINCLUDE_VIA_RHINE=1
85*1b8adde7SWilliam Kucharskiw89c840.o	:= DRIVER_DEFS = -DINCLUDE_W89C840=1
86*1b8adde7SWilliam Kucharski
87*1b8adde7SWilliam Kucharski3c595.o		:= DRIVER_SRC = 3c595.c
88*1b8adde7SWilliam Kucharski3c90x.o		:= DRIVER_SRC = 3c90x.c
89*1b8adde7SWilliam Kucharskidavicom.o	:= DRIVER_SRC = davicom.c
90*1b8adde7SWilliam Kucharskie1000.o		:= DRIVER_SRC = e1000.c
91*1b8adde7SWilliam Kucharskieepro100.o	:= DRIVER_SRC = eepro100.c
92*1b8adde7SWilliam Kucharskiepic100.o	:= DRIVER_SRC = epic100.c
93*1b8adde7SWilliam Kucharskiforcedeth.o	:= DRIVER_SRC = forcedeth.c
94*1b8adde7SWilliam Kucharskinatsemi.o	:= DRIVER_SRC = natsemi.c
95*1b8adde7SWilliam Kucharskins83820.o	:= DRIVER_SRC = ns83820.c
96*1b8adde7SWilliam Kucharskins8390.o	:= DRIVER_SRC = ns8390.c
97*1b8adde7SWilliam Kucharskipcnet32.o	:= DRIVER_SRC = pcnet32.c
98*1b8adde7SWilliam Kucharskipnic.o		:= DRIVER_SRC = pnic.c
99*1b8adde7SWilliam Kucharskir8169.o		:= DRIVER_SRC = r8169.c
100*1b8adde7SWilliam Kucharskirtl8139.o	:= DRIVER_SRC = rtl8139.c
101*1b8adde7SWilliam Kucharskisis900.o	:= DRIVER_SRC = sis900.c
102*1b8adde7SWilliam Kucharskisundance.o	:= DRIVER_SRC = sundance.c
103*1b8adde7SWilliam Kucharskitg3.o		:= DRIVER_SRC = tg3.c
104*1b8adde7SWilliam Kucharskitlan.o		:= DRIVER_SRC = tlan.c
105*1b8adde7SWilliam Kucharskitulip.o		:= DRIVER_SRC = tulip.c
106*1b8adde7SWilliam Kucharskiundi.o		:= DRIVER_SRC = undi.c
107*1b8adde7SWilliam Kucharskivia-rhine.o	:= DRIVER_SRC = via-rhine.c
108*1b8adde7SWilliam Kucharskiw89c840.o	:= DRIVER_SRC = w89c840.c
109*1b8adde7SWilliam Kucharski
110*1b8adde7SWilliam Kucharski
111*1b8adde7SWilliam KucharskiINCLUDES	= -I. -I.. -I../stage2 -I../stage1
112*1b8adde7SWilliam Kucharski
113*1b8adde7SWilliam KucharskiNET_EXTRAFLAGS	= -DCONFIG_PCI				\
114*1b8adde7SWilliam Kucharski		  -DCONFIG_PCI_DIRECT=1			\
115*1b8adde7SWilliam Kucharski		  -DCONGESTED=1				\
116*1b8adde7SWilliam Kucharski		  -DNE_SCAN=0x280,0x300,0x320,0x340	\
117*1b8adde7SWilliam Kucharski		  -DWD_DEFAULT_MEM=0xCC000
118*1b8adde7SWilliam Kucharski
119*1b8adde7SWilliam Kucharski#
120*1b8adde7SWilliam Kucharski# Source files to be installed in $(SRC_DIR).
121*1b8adde7SWilliam Kucharski#
122*1b8adde7SWilliam KucharskiSRC_DIR		= $(ROOT_SRC)/netboot
123*1b8adde7SWilliam KucharskiSRC_FILES	= Makefile.am Makefile.in README.netboot \
124*1b8adde7SWilliam Kucharski		  3c595.c 3c595.h 3c90x.c basemem.c big_bswap.h bootp.h \
125*1b8adde7SWilliam Kucharski		  byteswap.h config.c cpu.h davicom.c dev.h e1000.c \
126*1b8adde7SWilliam Kucharski		  e1000_hw.h eepro100.c elf.h endian.h epic100.c epic100.h \
127*1b8adde7SWilliam Kucharski		  etherboot.h forcedeth.c fsys_tftp.c grub.h i386_byteswap.h \
128*1b8adde7SWilliam Kucharski		  i386_elf.h i386_endian.h i386_timer.c if_arp.h if_ether.h \
129*1b8adde7SWilliam Kucharski		  igmp.h in.h io.h ip.h isa.h latch.h little_bswap.h mii.h \
130*1b8adde7SWilliam Kucharski		  misc.c natsemi.c nfs.h nic.c nic.h ns83820.c ns8390.c \
131*1b8adde7SWilliam Kucharski		  ns8390.h osdep.h pci.c pci.h pci_ids.h pci_io.c pcnet32.c \
132*1b8adde7SWilliam Kucharski		  pic8259.c pic8259.h pnic.c pnic_api.h pxe.h r8169.c \
133*1b8adde7SWilliam Kucharski		  rtl8139.c segoff.h sis900.c sis900.h stdint.h sundance.c \
134*1b8adde7SWilliam Kucharski		  tftp.h tg3.c tg3.h timer.c timer.h tlan.c tlan.h tulip.c \
135*1b8adde7SWilliam Kucharski		  types.h udp.h undi.c undi.h via-rhine.c w89c840.c
136*1b8adde7SWilliam Kucharski
137*1b8adde7SWilliam KucharskiINSTALL_TARGETS	= $(SRC_FILES:%=$(SRC_DIR)/%)
138*1b8adde7SWilliam Kucharski
139*1b8adde7SWilliam Kucharski
140*1b8adde7SWilliam Kucharskiall: $(LIBDRIVERS)
141*1b8adde7SWilliam Kucharski
142*1b8adde7SWilliam Kucharski$(LIBDRIVERS): $(LIBDRIVERS_OBJS)
143*1b8adde7SWilliam Kucharski	$(RM) $@
144*1b8adde7SWilliam Kucharski	$(AR) cru $@ $(LIBDRIVERS_OBJS)
145*1b8adde7SWilliam Kucharski	$(RANLIB) $@
146*1b8adde7SWilliam Kucharski
147*1b8adde7SWilliam Kucharski$(LIB_OBJS): $$(@:libdrivers_a-%.o=%.c)
148*1b8adde7SWilliam Kucharski	$(CC) $(CFLAGS) -c -o $@ $(@:libdrivers_a-%.o=%.c)
149*1b8adde7SWilliam Kucharski
150*1b8adde7SWilliam Kucharski$(DRIVER_OBJS): $$(DRIVER_SRC)
151*1b8adde7SWilliam Kucharski	$(CC) $(CFLAGS) -c -o $@ $(DRIVER_SRC)
152*1b8adde7SWilliam Kucharski
153*1b8adde7SWilliam Kucharski
154*1b8adde7SWilliam Kucharskiinstall: all $(INSTALL_TARGETS)
155*1b8adde7SWilliam Kucharski
156*1b8adde7SWilliam Kucharski$(SRC_DIR)/%: $(SRC_DIR) %
157*1b8adde7SWilliam Kucharski	$(INS.file)
158*1b8adde7SWilliam Kucharski
159*1b8adde7SWilliam Kucharski$(SRC_DIR):
160*1b8adde7SWilliam Kucharski	$(INS.dir)
161*1b8adde7SWilliam Kucharski
162*1b8adde7SWilliam Kucharski
163*1b8adde7SWilliam Kucharskiclean: _FORCE
164*1b8adde7SWilliam Kucharski	$(RM) *.o $(LIBDRIVERS)
165*1b8adde7SWilliam Kucharski
166*1b8adde7SWilliam Kucharskiclobber: clean
167*1b8adde7SWilliam Kucharski
168*1b8adde7SWilliam Kucharski_FORCE:
169