blob: d7ef8fe06949aa68f01a7f8896ad729e6aa4b085 [file] [log] [blame]
J. Duke319a3b92007-12-01 00:00:00 +00001#
2# Copyright 2005-2007 Sun Microsystems, Inc. All Rights Reserved.
3# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4#
5# This code is free software; you can redistribute it and/or modify it
6# under the terms of the GNU General Public License version 2 only, as
7# published by the Free Software Foundation. Sun designates this
8# particular file as subject to the "Classpath" exception as provided
9# by Sun in the LICENSE file that accompanied this code.
10#
11# This code is distributed in the hope that it will be useful, but WITHOUT
12# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14# version 2 for more details (a copy is included in the LICENSE file that
15# accompanied this code).
16#
17# You should have received a copy of the GNU General Public License version
18# 2 along with this work; if not, write to the Free Software Foundation,
19# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20#
21# Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
22# CA 95054 USA or visit www.sun.com if you need additional information or
23# have any questions.
24#
25
26#
27# Shared sanity settings file. Fills in the variable ALL_SETTINGS.
28#
29
30# On Windows in particular, it can happen that quotes get into the PATH
31# variable. This is very bad, and must be caught early or you can
32# see errors like: sh: -c: line 0: syntax error near unexpected token
33#
34ifneq ($(PATH), $(subst ",,$(PATH)))
35 dummy1:=$(error ERROR: PATH variable contains double quotes, fix your PATH.)
36endif
37ifneq ($(PATH), $(subst ',,$(PATH)))
38 dummy1:=$(error ERROR: PATH variable contains single quotes, fix your PATH.)
39endif
40
41# Used to add a heading to ALL_SETTINGS
42define addHeading
43"\n$1:\n"
44endef
45
46# Used to add a line to ALL_SETTINGS for an optional value
47# (need if test for windows which has issues with ; characters in values)
48define addOptionalSetting
49$(if $($1)," $1 = $($1)\n"," $1 = $($1)\n")
50endef
51
52# Used to add a line to ALL_SETTINGS for something that must have a value
53define addRequiredSetting
54$(if $($1)," $1 = $($1)\n",$(warning WARNING: $1 should not be empty [Sanity-Settings.gmk]))
55endef
56
57# Used to add a line to ALL_SETTINGS for something that must have a value
58define addRequiredVersionSetting
59$(if $($1)," $1 = $($1) [requires at least $(REQUIRED_$1)]\n",$(warning WARNING: $1 should not be empty [Sanity-Settings.gmk]))
60endef
61
62# Used to add a series of lines to ALL_SETTINGS
63define addAltSetting
64" $1 = $($1)\n ALT_$1 = $(ALT_$1)\n"
65endef
66
67# Variable that contains a string of all information
68
69# Make sure this is a 'do it now' variable.
70ALL_SETTINGS:=$(call addHeading,Bootstrap Settings)
71ALL_SETTINGS+=$(call addAltSetting,BOOTDIR)
72ALL_SETTINGS+=$(call addRequiredVersionSetting,BOOT_VER)
73ALL_SETTINGS+=$(call addAltSetting,OUTPUTDIR)
74ALL_SETTINGS+=$(call addRequiredSetting,ABS_OUTPUTDIR)
75
76
77ALL_SETTINGS+=$(call addHeading,Build Tool Settings)
78ALL_SETTINGS+=$(call addAltSetting,SLASH_JAVA)
79ALL_SETTINGS+=$(call addRequiredSetting,VARIANT)
80ALL_SETTINGS+=$(call addAltSetting,JDK_DEVTOOLS_DIR)
81ALL_SETTINGS+=$(call addOptionalSetting,ANT_HOME)
82ALL_SETTINGS+=$(call addOptionalSetting,FINDBUGS_HOME)
83ALL_SETTINGS+=$(call addAltSetting,UNIXCOMMAND_PATH)
84ALL_SETTINGS+=$(call addAltSetting,COMPILER_PATH)
85ALL_SETTINGS+=$(call addAltSetting,DEVTOOLS_PATH)
86ifeq ($(PLATFORM),linux)
87 ALL_SETTINGS+=$(call addAltSetting,UNIXCCS_PATH)
88 ALL_SETTINGS+=$(call addAltSetting,USRBIN_PATH)
89 ifndef OPENJDK
90 ALL_SETTINGS+=$(call addAltSetting,GCC29_COMPILER_PATH)
91 endif
92endif
93ifeq ($(PLATFORM),solaris)
94 ALL_SETTINGS+=$(call addAltSetting,UNIXCCS_PATH)
95 ifndef OPENJDK
96 ALL_SETTINGS+=$(call addAltSetting,GCC_COMPILER_PATH)
97 endif
98endif
99ifeq ($(PLATFORM),windows)
100 ALL_SETTINGS+=$(call addAltSetting,MSVCRT_DLL_PATH)
101 ifeq ($(ARCH_DATA_MODEL), 32)
102 ALL_SETTINGS+=$(call addAltSetting,MSVCR71_DLL_PATH)
103 endif
104 ALL_SETTINGS+=$(call addAltSetting,MSDEVTOOLS_PATH)
105endif
106ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_NAME)
107ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_VERSION)
108ALL_SETTINGS+=$(call addRequiredVersionSetting,CC_VER)
109ifeq ($(PLATFORM),solaris)
110 ifeq ($(ARCH_DATA_MODEL), 32)
111 ifndef OPENJDK
112 ALL_SETTINGS+=$(call addRequiredVersionSetting,GCC_VER)
113 endif
114 endif
115endif
116ALL_SETTINGS+=$(call addRequiredVersionSetting,ZIP_VER)
117ALL_SETTINGS+=$(call addRequiredVersionSetting,UNZIP_VER)
118ifeq ($(PLATFORM),windows)
119 ALL_SETTINGS+=$(call addRequiredVersionSetting,LINK_VER)
120endif
121ALL_SETTINGS+=$(call addRequiredVersionSetting,ANT_VER)
122ALL_SETTINGS+=$(call addRequiredVersionSetting,FINDBUGS_VER)
123ALL_SETTINGS+=$(call addRequiredSetting,TEMPDIR)
124
125
126ALL_SETTINGS+=$(call addHeading,Build Directives)
127ALL_SETTINGS+=$(call addOptionalSetting,OPENJDK)
128ALL_SETTINGS+=$(call addOptionalSetting,USE_HOTSPOT_INTERPRETER_MODE)
129ALL_SETTINGS+=$(call addOptionalSetting,PEDANTIC)
130ALL_SETTINGS+=$(call addOptionalSetting,DEV_ONLY)
131ALL_SETTINGS+=$(call addOptionalSetting,NO_DOCS)
132ALL_SETTINGS+=$(call addOptionalSetting,NO_IMAGES)
133ALL_SETTINGS+=$(call addOptionalSetting,TOOLS_ONLY)
134ALL_SETTINGS+=$(call addOptionalSetting,INSANE)
135ALL_SETTINGS+=$(call addRequiredSetting,COMPILE_APPROACH)
136ifeq ($(COMPILE_APPROACH), parallel)
137 ALL_SETTINGS+=$(call addAltSetting,PARALLEL_COMPILE_JOBS)
138endif
139ALL_SETTINGS+=$(call addOptionalSetting,FASTDEBUG)
140ALL_SETTINGS+=$(call addRequiredSetting,COMPILER_WARNINGS_FATAL)
141ALL_SETTINGS+=$(call addOptionalSetting,COMPILER_WARNING_LEVEL)
142ALL_SETTINGS+=$(call addRequiredSetting,INCREMENTAL_BUILD)
143ALL_SETTINGS+=$(call addOptionalSetting,CC_HIGHEST_OPT)
144ALL_SETTINGS+=$(call addOptionalSetting,CC_HIGHER_OPT)
145ALL_SETTINGS+=$(call addOptionalSetting,CC_LOWER_OPT)
146ALL_SETTINGS+=$(call addOptionalSetting,CXXFLAGS)
147ALL_SETTINGS+=$(call addOptionalSetting,CFLAGS)
148
149ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAVA_CMD)
150ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAVAC_CMD)
151ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JAR_CMD)
152ALL_SETTINGS+=$(call addOptionalSetting,BOOT_JARSIGNER_CMD)
153
154# These don't print out well with windows due to the ';' characters
155ifneq ($(PLATFORM),windows)
156 ALL_SETTINGS+=$(call addOptionalSetting,JAVAC_CMD)
157 ALL_SETTINGS+=$(call addOptionalSetting,JAVAH_CMD)
158 ALL_SETTINGS+=$(call addOptionalSetting,JAVADOC_CMD)
159endif
160
161ALL_SETTINGS+=$(call addHeading,Build Platform Settings)
162ALL_SETTINGS+=$(call addRequiredSetting,USER)
163ALL_SETTINGS+=$(call addRequiredSetting,PLATFORM)
164ALL_SETTINGS+=$(call addRequiredSetting,ARCH)
165ALL_SETTINGS+=$(call addRequiredSetting,LIBARCH)
166ALL_SETTINGS+=$(call addRequiredSetting,ARCH_FAMILY)
167ALL_SETTINGS+=$(call addRequiredSetting,ARCH_DATA_MODEL)
168ALL_SETTINGS+=$(call addRequiredSetting,ARCHPROP)
169ifeq ($(PLATFORM),windows)
170 ALL_SETTINGS+=$(call addRequiredSetting,PROCESSOR_ARCHITECTURE)
171 ALL_SETTINGS+=$(call addRequiredSetting,PROCESSOR_IDENTIFIER)
172 ALL_SETTINGS+=$(call addRequiredSetting,WINDOWS_VERSION)
173 ALL_SETTINGS+=$(call addRequiredSetting,WINDOWS_NT_VERSION_STRING)
174 ifdef USING_CYGWIN
175 ALL_SETTINGS+=$(call addRequiredSetting,USING_CYGWIN)
176 ALL_SETTINGS+=$(call addRequiredVersionSetting,CYGWIN_VER)
177 ALL_SETTINGS+=$(call addRequiredSetting,CYGPATH_CMD)
178 else
179 ALL_SETTINGS+=$(call addRequiredVersionSetting,MKS_VER)
180 ALL_SETTINGS+=$(call addOptionalSetting,DOSNAME_CMD)
181 endif
182endif
183ifeq ($(PLATFORM),linux)
184 ALL_SETTINGS+=$(call addRequiredSetting,LINUX_VERSION)
185 ifneq ($(ARCH), ia64)
186 ALL_SETTINGS+=$(call addRequiredSetting,ALSA_VERSION)
187 endif
188endif
189ALL_SETTINGS+=$(call addRequiredVersionSetting,OS_VERSION)
190ALL_SETTINGS+=$(call addRequiredSetting,OS_NAME)
191ALL_SETTINGS+=$(call addRequiredSetting,TEMP_FREE_SPACE)
192ALL_SETTINGS+=$(call addRequiredSetting,FREE_SPACE)
193ALL_SETTINGS+=$(call addRequiredSetting,MB_OF_MEMORY)
194
195
196ALL_SETTINGS+=$(call addHeading,GNU Make Settings)
197ALL_SETTINGS+=$(call addRequiredSetting,MAKE)
198ALL_SETTINGS+=$(call addRequiredVersionSetting,MAKE_VER)
199ALL_SETTINGS+=$(call addOptionalSetting,MAKECMDGOALS)
200ALL_SETTINGS+=$(call addOptionalSetting,MAKEFLAGS)
201ALL_SETTINGS+=$(call addRequiredSetting,SHELL)
202
203
204ALL_SETTINGS+=$(call addHeading,Target Build Versions)
205ALL_SETTINGS+=$(call addRequiredSetting,JDK_VERSION)
206ALL_SETTINGS+=$(call addOptionalSetting,MILESTONE)
207ALL_SETTINGS+=$(call addOptionalSetting,RELEASE)
208ALL_SETTINGS+=$(call addRequiredSetting,FULL_VERSION)
209ALL_SETTINGS+=$(call addOptionalSetting,BUILD_NUMBER)
210
211
212ALL_SETTINGS+=$(call addHeading,External File/Binary Locations)
213ALL_SETTINGS+=$(call addRequiredSetting,USRJDKINSTANCES_PATH)
214ALL_SETTINGS+=$(call addAltSetting,BUILD_JDK_IMPORT_PATH)
215ALL_SETTINGS+=$(call addAltSetting,JDK_IMPORT_PATH)
216ALL_SETTINGS+=$(call addAltSetting,LANGTOOLS_DIST)
217ALL_SETTINGS+=$(call addAltSetting,CORBA_DIST)
218ALL_SETTINGS+=$(call addAltSetting,JAXP_DIST)
219ALL_SETTINGS+=$(call addAltSetting,JAXWS_DIST)
220ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_DOCS_IMPORT_PATH)
221ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_IMPORT_PATH)
222ifeq ($(ARCH_DATA_MODEL), 32)
223 ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_CLIENT_PATH)
224endif
225ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_SERVER_PATH)
226ifeq ($(PLATFORM),windows)
227 ALL_SETTINGS+=$(call addAltSetting,HOTSPOT_LIB_PATH)
228 ALL_SETTINGS+=$(call addRequiredSetting,DXSDK_VER)
229 ALL_SETTINGS+=$(call addAltSetting,DXSDK_PATH)
230 ALL_SETTINGS+=$(call addAltSetting,DXSDK_INCLUDE_PATH)
231 ALL_SETTINGS+=$(call addAltSetting,DXSDK_LIB_PATH)
232 ifndef OPENJDK
233 ALL_SETTINGS+=$(call addAltSetting,DEPLOY_MSSDK)
234 ALL_SETTINGS+=$(call addAltSetting,INSTALL_MSSDK)
235 ALL_SETTINGS+=$(call addAltSetting,WSCRIPT)
236 ALL_SETTINGS+=$(call addAltSetting,MSICERT)
237 ALL_SETTINGS+=$(call addAltSetting,MSITRAN)
238 ALL_SETTINGS+=$(call addAltSetting,MSIVAL2)
239 endif
240endif
241ALL_SETTINGS+=$(call addAltSetting,CACERTS_FILE)
242ifndef OPENJDK
243 ALL_SETTINGS+=$(call addAltSetting,MOZILLA_HEADERS_PATH)
244endif
245ifneq ($(PLATFORM),windows)
246 ALL_SETTINGS+=$(call addAltSetting,CUPS_HEADERS_PATH)
247endif
248
249ifdef OPENJDK
250 ALL_SETTINGS+=$(call addHeading,OpenJDK-specific settings)
251 ALL_SETTINGS+=$(call addAltSetting,FREETYPE_HEADERS_PATH)
252 ALL_SETTINGS+=$(call addAltSetting,FREETYPE_LIB_PATH)
253 ALL_SETTINGS+=$(call addHeading,OPENJDK Import Binary Plug Settings)
254 ALL_SETTINGS+=$(call addAltSetting,BINARY_PLUGS_JARFILE)
255 ALL_SETTINGS+=$(call addAltSetting,BINARY_PLUGS_PATH)
256 ALL_SETTINGS+=$(call addAltSetting,BUILD_BINARY_PLUGS_PATH)
257else
258 ALL_SETTINGS+=$(call addHeading,OPENJDK Export Binary Plug Settings)
259 ALL_SETTINGS+=$(call addOptionalSetting,PLUG_EXPORT_DIRNAME)
260endif
261ALL_SETTINGS+=$(call addOptionalSetting,PLUG_LIBRARY_NAMES)
262
263ifdef OPENJDK
264 ALL_SETTINGS+=$(call addHeading,Previous JDK Settings)
265 ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_RELEASE_PATH)
266 ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JDK_VERSION)
267 ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JDK_FILE)
268 ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_JRE_FILE)
269 ALL_SETTINGS+=$(call addAltSetting,PREVIOUS_RELEASE_IMAGE)
270endif
271