20 #
21
22 #
23 # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
24 # Copyright (c) 2012 by Delphix. All rights reserved.
25 #
26
27 #
28 # Makefile.master, global definitions for system source
29 #
30 ROOT= /proto
31
32 #
33 # RELEASE_BUILD should be cleared for final release builds.
34 # NOT_RELEASE_BUILD is exactly what the name implies.
35 #
36 # INTERNAL_RELEASE_BUILD is a subset of RELEASE_BUILD. It mostly controls
37 # identification strings. Enabling RELEASE_BUILD automatically enables
38 # INTERNAL_RELEASE_BUILD.
39 #
40 # CLOSED_BUILD controls whether we try to build files under
41 # usr/closed. ("" means to build closed code, "#" means don't try to
42 # build it.) Skipping the closed code implies doing an export release
43 # build.
44 #
45 # STRIP_COMMENTS toggles comment section striping. Generally the same setting
46 # as INTERNAL_RELEASE_BUILD.
47 #
48 # __GNUC toggles the building of ON components using gcc and related tools.
49 # Normally set to `#', set it to `' to do gcc build.
50 #
51 # The declaration POUND_SIGN is always '#'. This is needed to get around the
52 # make feature that '#' is always a comment delimiter, even when escaped or
53 # quoted. We use this macro expansion method to get POUND_SIGN rather than
54 # always breaking out a shell because the general case can cause a noticable
55 # slowdown in build times when so many Makefiles include Makefile.master.
56 #
57 # While the majority of users are expected to override the setting below
58 # with an env file (via nightly or bldenv), if you aren't building that way
59 # (ie, you're using "ws" or some other bootstrapping method) then you need
60 # this definition in order to avoid the subshell invocation mentioned above.
61 #
62
63 PRE_POUND= pre\#
64 POUND_SIGN= $(PRE_POUND:pre\%=%)
65
66 NOT_RELEASE_BUILD=
67 INTERNAL_RELEASE_BUILD= $(POUND_SIGN)
68 RELEASE_BUILD= $(POUND_SIGN)
69 $(RELEASE_BUILD)NOT_RELEASE_BUILD= $(POUND_SIGN)
70 $(RELEASE_BUILD)INTERNAL_RELEASE_BUILD=
71 PATCH_BUILD= $(POUND_SIGN)
72
73 # If CLOSED_IS_PRESENT is not set, assume the closed tree is present.
74 CLOSED_BUILD_1= $(CLOSED_IS_PRESENT:yes=)
75 CLOSED_BUILD= $(CLOSED_BUILD_1:no=$(POUND_SIGN))
76
77 # SPARC_BLD is '#' for an Intel build.
78 # INTEL_BLD is '#' for a Sparc build.
79 SPARC_BLD_1= $(MACH:i386=$(POUND_SIGN))
80 SPARC_BLD= $(SPARC_BLD_1:sparc=)
81 INTEL_BLD_1= $(MACH:sparc=$(POUND_SIGN))
82 INTEL_BLD= $(INTEL_BLD_1:i386=)
83
84 STRIP_COMMENTS= $(INTERNAL_RELEASE_BUILD)
85
86 # Are we building tonic closedbins? Unless you have used the
87 # -O flag to nightly or bldenv, leave the definition of TONICBUILD
88 # as $(POUND_SIGN).
89 #
90 # IF YOU CHANGE CLOSEDROOT, you MUST change install.bin
91 # to match the new definition.
92 TONICBUILD= $(POUND_SIGN)
93 $(TONICBUILD)CLOSEDROOT= $(ROOT)-closed
94
95
96 # The variables below control the compilers used during the build.
|
20 #
21
22 #
23 # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
24 # Copyright (c) 2012 by Delphix. All rights reserved.
25 #
26
27 #
28 # Makefile.master, global definitions for system source
29 #
30 ROOT= /proto
31
32 #
33 # RELEASE_BUILD should be cleared for final release builds.
34 # NOT_RELEASE_BUILD is exactly what the name implies.
35 #
36 # INTERNAL_RELEASE_BUILD is a subset of RELEASE_BUILD. It mostly controls
37 # identification strings. Enabling RELEASE_BUILD automatically enables
38 # INTERNAL_RELEASE_BUILD.
39 #
40 # STRIP_COMMENTS toggles comment section striping. Generally the same setting
41 # as INTERNAL_RELEASE_BUILD.
42 #
43 # __GNUC toggles the building of ON components using gcc and related tools.
44 # Normally set to `#', set it to `' to do gcc build.
45 #
46 # The declaration POUND_SIGN is always '#'. This is needed to get around the
47 # make feature that '#' is always a comment delimiter, even when escaped or
48 # quoted. We use this macro expansion method to get POUND_SIGN rather than
49 # always breaking out a shell because the general case can cause a noticable
50 # slowdown in build times when so many Makefiles include Makefile.master.
51 #
52 # While the majority of users are expected to override the setting below
53 # with an env file (via nightly or bldenv), if you aren't building that way
54 # (ie, you're using "ws" or some other bootstrapping method) then you need
55 # this definition in order to avoid the subshell invocation mentioned above.
56 #
57
58 PRE_POUND= pre\#
59 POUND_SIGN= $(PRE_POUND:pre\%=%)
60
61 NOT_RELEASE_BUILD=
62 INTERNAL_RELEASE_BUILD= $(POUND_SIGN)
63 RELEASE_BUILD= $(POUND_SIGN)
64 $(RELEASE_BUILD)NOT_RELEASE_BUILD= $(POUND_SIGN)
65 $(RELEASE_BUILD)INTERNAL_RELEASE_BUILD=
66 PATCH_BUILD= $(POUND_SIGN)
67
68 # SPARC_BLD is '#' for an Intel build.
69 # INTEL_BLD is '#' for a Sparc build.
70 SPARC_BLD_1= $(MACH:i386=$(POUND_SIGN))
71 SPARC_BLD= $(SPARC_BLD_1:sparc=)
72 INTEL_BLD_1= $(MACH:sparc=$(POUND_SIGN))
73 INTEL_BLD= $(INTEL_BLD_1:i386=)
74
75 STRIP_COMMENTS= $(INTERNAL_RELEASE_BUILD)
76
77 # Are we building tonic closedbins? Unless you have used the
78 # -O flag to nightly or bldenv, leave the definition of TONICBUILD
79 # as $(POUND_SIGN).
80 #
81 # IF YOU CHANGE CLOSEDROOT, you MUST change install.bin
82 # to match the new definition.
83 TONICBUILD= $(POUND_SIGN)
84 $(TONICBUILD)CLOSEDROOT= $(ROOT)-closed
85
86
87 # The variables below control the compilers used during the build.
|