2 # Copyright 2005 Sun Microsystems, Inc. All rights reserved.
3 # Use is subject to license terms.
5 include $(SRC)/Makefile.master
11 # $(POUND_SIGN) is just a #. Used to turn a feature off.
12 # The $(POUND_SIGN)POUND_SIGN:sh construct is just so make doesn't have to
13 # spawn a shell and redefine POUND_SIGN if it is already defined (e.g.
14 # $(SRC)/Makefile.master was already included).
15 $(POUND_SIGN)POUND_SIGN:sh = echo '\043'
19 # Optional features (set to $(POUND_SIGN) to turn off):
22 # Build the userland utilities.
23 # NOTE: these utilities will be installed in
24 # /platform/$(PLATFORM)/boot/grub, not /boot/grub.
27 # Build and install some GRUB documentations, e.g. man and info files.
28 # NOTE: these docs will be installed in
29 # /platform/$(PLATFORM)/boot/grub, not /boot/grub.
32 # Build additional filesystem support into GRUB. This will increase
33 # the sizes of stage2 and pxegrub and may cause malfunction.
36 # Include netboot support in stage2 (on by default).
37 # This only affects stage2, not pxegrub (diskless support).
39 # STAGE2_NETBOOT = $(POUND_SIGN)
40 OPTION_UTILS = $(POUND_SIGN)
41 OPTION_DOCS = $(POUND_SIGN)
42 OPTION_FS = $(POUND_SIGN)
45 BASE_CFLAGS = -B$(GCC_ROOT)/bin/ -g $(CPPFLAGS) $(OPTFLAGS) -std=gnu89
46 BASE_CCASFLAGS = -B$(GCC_ROOT)/bin/ -g $(CPPFLAGS) $(OPTFLAGS)
49 CC = $(GCC_ROOT)/bin/gcc
50 CFLAGS = $(BASE_CFLAGS)
51 CCDEPMODE = depmode=none
54 CCASFLAGS = $(BASE_CCASFLAGS)
58 # $(ENVCPPFLAGS4), if defined, should be something like "-Y I,somepath".
59 # We want to get rid of the "-Y I," part but make's pattern replacement
60 # macro reference doesn't allow spaces in it, e.g. $(ENVCPPFLAGS4:-Y I,%=%).
61 # So we'll get rid of the "-Y" now and then the "I," later. By the way, this
62 # should also work in case $(ENVCPPFLAGS4) is "-YI,somepath" (no space).
63 t.ENVCPPFLAGS4 = $(ENVCPPFLAGS4:-Y%=%)
65 CPPFLAGS = $(DEFS) $(INCLUDES) $(WARNFLAGS) \
66 $(ENVCPPFLAGS1:-I%=-isystem %) \
67 $(ENVCPPFLAGS2:-I%=-isystem %) \
68 $(ENVCPPFLAGS3:-I%=-isystem %) \
69 $(t.ENVCPPFLAGS4:I,%=-nostdinc -isystem %)
71 CCLD = $(GNU_ROOT)/bin/gld
72 LDFLAGS = $(BASE_LDFLAGS)
74 LINK = $(CCLD) $(LINKFLAGS) $(LDFLAGS)
76 DEFS = -DHAVE_CONFIG_H -DSOLARIS_NETBOOT
77 OPTFLAGS = -falign-jumps=1 -falign-loops=1 -falign-functions=1
78 #WARNFLAGS = -Wall -Wmissing-prototypes -Wunused -Wshadow \
79 # -Wpointer-arith -Wundef
81 OBJCOPY = $(GNU_ROOT)/bin/gobjcopy