xref: /illumos-gate/usr/src/grub/grub-0.97/Makefile.solaris.defs (revision 286ef71398fb54b1d5007d6f45aa4320a9e0ede2)
1#
2# Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
3# Use is subject to license terms.
4#
5include $(SRC)/Makefile.master
6
7.KEEP_STATE:
8
9VERSION		= 0.95
10
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'
16
17
18#
19# Optional features (set to $(POUND_SIGN) to turn off):
20#
21# OPTION_UTILS:
22#	Build the userland utilities.
23#	NOTE: these utilities will be installed in
24#	      /platform/$(PLATFORM)/boot/grub, not /boot/grub.
25#
26# OPTION_DOCS:
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.
30#
31# OPTION_FS:
32#	Build additional filesystem support into GRUB. This will increase
33#	the sizes of stage2 and pxegrub and may cause malfunction.
34#
35# STAGE2_NETBOOT:
36#	Include netboot support in stage2 (on by default).
37#	This only affects stage2, not pxegrub (diskless support).
38#
39# STAGE2_NETBOOT	= $(POUND_SIGN)
40OPTION_UTILS	= $(POUND_SIGN)
41OPTION_DOCS	= $(POUND_SIGN)
42OPTION_FS	= $(POUND_SIGN)
43
44
45BASE_CFLAGS	= -B$(GCC_ROOT)/bin/ -g $(CPPFLAGS) $(OPTFLAGS) -std=gnu89
46BASE_CCASFLAGS	= -B$(GCC_ROOT)/bin/ -g $(CPPFLAGS) $(OPTFLAGS)
47BASE_LDFLAGS	=
48
49CC		= $(GCC_ROOT)/bin/gcc
50CFLAGS		= $(BASE_CFLAGS)
51CCDEPMODE	= depmode=none
52
53CCAS		= $(CC)
54CCASFLAGS	= $(BASE_CCASFLAGS)
55
56CPP		= $(CC) -E
57
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).
63t.ENVCPPFLAGS4	= $(ENVCPPFLAGS4:-Y%=%)
64
65CPPFLAGS	= $(DEFS) $(INCLUDES) $(WARNFLAGS) \
66		  $(ENVCPPFLAGS1:-I%=-isystem %) \
67		  $(ENVCPPFLAGS2:-I%=-isystem %) \
68		  $(ENVCPPFLAGS3:-I%=-isystem %) \
69		  $(t.ENVCPPFLAGS4:I,%=-nostdinc -isystem %)
70
71CCLD		= $(GNU_ROOT)/bin/gld
72LDFLAGS		= $(BASE_LDFLAGS)
73LINKFLAGS	= -g
74LINK		= $(CCLD) $(LINKFLAGS) $(LDFLAGS)
75
76DEFS		= -DHAVE_CONFIG_H -DSOLARIS_NETBOOT
77OPTFLAGS	= -falign-jumps=1 -falign-loops=1 -falign-functions=1
78#WARNFLAGS	= -Wall -Wmissing-prototypes -Wunused -Wshadow \
79#		  -Wpointer-arith -Wundef
80
81OBJCOPY		= $(GNU_ROOT)/bin/gobjcopy
82
83AR		= /usr/ccs/bin/ar
84RANLIB		= :
85
86MKDIR		= mkdir -p
87