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