common/autoconf/spec.gmk.in

changeset 478
2ba6f4da4bf3
parent 458
c8d320b48626
child 494
e64f2cb57d05
equal deleted inserted replaced
476:76844579fa4b 478:2ba6f4da4bf3
21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 # or visit www.oracle.com if you need additional information or have any 22 # or visit www.oracle.com if you need additional information or have any
23 # questions. 23 # questions.
24 # 24 #
25 25
26 # Configured @DATE_WHEN_CONFIGURED@ to build for a @OPENJDK_TARGET_SYSTEM@ system, 26 # Configured @DATE_WHEN_CONFIGURED@ to build
27 # for target system @OPENJDK_TARGET_OS@-@OPENJDK_TARGET_CPU@
28 # (called @OPENJDK_TARGET_AUTOCONF_NAME@ by autoconf)
29 # on build system @OPENJDK_BUILD_OS@-@OPENJDK_BUILD_CPU@
30 # (called @OPENJDK_BUILD_AUTOCONF_NAME@ by autoconf)
27 # using 'configure @CONFIGURE_COMMAND_LINE@' 31 # using 'configure @CONFIGURE_COMMAND_LINE@'
28 32
29 # When calling macros, the spaces between arguments are 33 # When calling macros, the spaces between arguments are
30 # often semantically important! Sometimes we need to subst 34 # often semantically important! Sometimes we need to subst
31 # spaces and commas, therefore we need the following macros. 35 # spaces and commas, therefore we need the following macros.
38 DQUOTE:=" 42 DQUOTE:="
39 #" 43 #"
40 define NEWLINE:= 44 define NEWLINE:=
41 endef 45 endef
42 46
47 # A self-referential reference to this file.
48 SPEC:=@SPEC@
49
50 # Specify where the spec file is.
51 MAKE_ARGS="SPEC=$(SPEC)"
52
53 # TODO The logic for finding and setting MAKE is currently not working
54 # well on windows. Disable it TEMPORARILY there for now.
55 ifneq (@OPENJDK_TARGET_OS@,windows)
56 MAKE:=@MAKE@
57 endif
43 58
44 # Pass along the verbosity setting. 59 # Pass along the verbosity setting.
45 ifeq (,$(findstring VERBOSE=,$(MAKE))) 60 ifeq (,$(findstring VERBOSE=,$(MAKE)))
46 MAKE:=$(MAKE) $(VERBOSE) VERBOSE="$(VERBOSE)" 61 MAKE:=$(MAKE) $(VERBOSE) VERBOSE="$(VERBOSE)"
47 endif 62 endif
49 # No implicit variables or rules! 64 # No implicit variables or rules!
50 ifeq (,$(findstring -R,$(MAKE))) 65 ifeq (,$(findstring -R,$(MAKE)))
51 MAKE:=$(MAKE) -R 66 MAKE:=$(MAKE) -R
52 endif 67 endif
53 68
54 # Specify where the spec file is.
55 ifeq (,$(findstring SPEC=,$(MAKE)))
56 MAKE:=$(MAKE) SPEC=@SPEC@
57 endif
58
59 # Specify where the common include directory for makefiles is. 69 # Specify where the common include directory for makefiles is.
60 ifeq (,$(findstring -I @SRC_ROOT@/common/makefiles,$(MAKE))) 70 ifeq (,$(findstring -I @SRC_ROOT@/common/makefiles,$(MAKE)))
61 MAKE:=$(MAKE) -I @SRC_ROOT@/common/makefiles 71 MAKE:=$(MAKE) -I @SRC_ROOT@/common/makefiles
62 endif 72 endif
63 73
64 # A self-referential reference to this file.
65 SPEC:=@SPEC@
66
67 # The "human readable" name of this configuration 74 # The "human readable" name of this configuration
68 CONF_NAME:=@CONF_NAME@ 75 CONF_NAME:=@CONF_NAME@
69 76
70 # The built jdk will run in this target system. 77 # The built jdk will run in this target system.
71 OPENJDK_TARGET_SYSTEM:=@OPENJDK_TARGET_SYSTEM@
72
73 OPENJDK_TARGET_OS:=@OPENJDK_TARGET_OS@ 78 OPENJDK_TARGET_OS:=@OPENJDK_TARGET_OS@
74 OPENJDK_TARGET_OS_FAMILY:=@OPENJDK_TARGET_OS_FAMILY@
75 OPENJDK_TARGET_OS_API:=@OPENJDK_TARGET_OS_API@ 79 OPENJDK_TARGET_OS_API:=@OPENJDK_TARGET_OS_API@
76 80
77 OPENJDK_TARGET_CPU:=@OPENJDK_TARGET_CPU@ 81 OPENJDK_TARGET_CPU:=@OPENJDK_TARGET_CPU@
78 OPENJDK_TARGET_CPU_ARCH:=@OPENJDK_TARGET_CPU_ARCH@ 82 OPENJDK_TARGET_CPU_ARCH:=@OPENJDK_TARGET_CPU_ARCH@
79 OPENJDK_TARGET_CPU_BITS:=@OPENJDK_TARGET_CPU_BITS@ 83 OPENJDK_TARGET_CPU_BITS:=@OPENJDK_TARGET_CPU_BITS@
80 OPENJDK_TARGET_CPU_ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@ 84 OPENJDK_TARGET_CPU_ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@
81 85
86 COMPILE_TYPE:=@COMPILE_TYPE@
87
88 # Legacy support
89 OPENJDK_TARGET_CPU_ISADIR:=@OPENJDK_TARGET_CPU_ISADIR@
90 OPENJDK_TARGET_CPU_LIBDIR:=@OPENJDK_TARGET_CPU_LIBDIR@
91 OPENJDK_TARGET_CPU_LEGACY:=@OPENJDK_TARGET_CPU_LEGACY@
92 OPENJDK_TARGET_CPU_LEGACY_LIB:=@OPENJDK_TARGET_CPU_LEGACY_LIB@
93 OPENJDK_TARGET_CPU_OSARCH:=@OPENJDK_TARGET_CPU_OSARCH@
94 OPENJDK_TARGET_CPU_JLI_CFLAGS:=@OPENJDK_TARGET_CPU_JLI_CFLAGS@
95 OPENJDK_TARGET_OS_API_DIR:=@OPENJDK_TARGET_OS_API_DIR@
96
82 # We are building on this build system. 97 # We are building on this build system.
83 # When not cross-compiling, it is the same as the target. 98 # When not cross-compiling, it is the same as the target.
84 OPENJDK_BUILD_SYSTEM:=@OPENJDK_BUILD_SYSTEM@
85
86 OPENJDK_BUILD_OS:=@OPENJDK_BUILD_OS@ 99 OPENJDK_BUILD_OS:=@OPENJDK_BUILD_OS@
87 OPENJDK_BUILD_OS_FAMILY:=@OPENJDK_BUILD_OS_FAMILY@
88 OPENJDK_BUILD_OS_API:=@OPENJDK_BUILD_OS_API@ 100 OPENJDK_BUILD_OS_API:=@OPENJDK_BUILD_OS_API@
89 101
90 OPENJDK_BUILD_CPU:=@OPENJDK_BUILD_CPU@ 102 OPENJDK_BUILD_CPU:=@OPENJDK_BUILD_CPU@
91 OPENJDK_BUILD_CPU_ARCH:=@OPENJDK_BUILD_CPU_ARCH@ 103 OPENJDK_BUILD_CPU_ARCH:=@OPENJDK_BUILD_CPU_ARCH@
92 OPENJDK_BUILD_CPU_BITS:=@OPENJDK_BUILD_CPU_BITS@ 104 OPENJDK_BUILD_CPU_BITS:=@OPENJDK_BUILD_CPU_BITS@
94 106
95 # Legacy OS values for use in release file. 107 # Legacy OS values for use in release file.
96 REQUIRED_OS_NAME:=@REQUIRED_OS_NAME@ 108 REQUIRED_OS_NAME:=@REQUIRED_OS_NAME@
97 REQUIRED_OS_VERSION:=@REQUIRED_OS_VERSION@ 109 REQUIRED_OS_VERSION:=@REQUIRED_OS_VERSION@
98 110
99 # Old name for OPENJDK_TARGET_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc)
100 PLATFORM:=@OPENJDK_TARGET_OS@
101 # Old name for OPENJDK_TARGET_CPU, uses i586 and amd64, instead of ia32 and x64.
102 ARCH:=@LEGACY_OPENJDK_TARGET_CPU1@
103 # Yet another name for arch used for an extra subdir below the jvm lib.
104 # Uses i386 and amd64, instead of ia32 and x64.
105 LIBARCH:=@LEGACY_OPENJDK_TARGET_CPU2@
106 # Use to switch between solaris and windows subdirs in the jdk.
107 LEGACY_OPENJDK_TARGET_OS_API:=@LEGACY_OPENJDK_TARGET_OS_API@
108 # 32 or 64 bit
109 ARCH_DATA_MODEL:=@OPENJDK_TARGET_CPU_BITS@
110 # Legacy setting for building for a 64 bit machine.
111 # If yes then this expands to _LP64:=1
112 @LP64@
113 ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@
114 @SET_OPENJDK@ 111 @SET_OPENJDK@
115 JIGSAW:=@JIGSAW@ 112 JIGSAW:=@JIGSAW@
116 LIBM:=-lm 113 LIBM:=-lm
117 LIBDL:=@LIBDL@ 114 LIBDL:=@LIBDL@
118 115
141 JAXP_TOPDIR:=@JAXP_TOPDIR@ 138 JAXP_TOPDIR:=@JAXP_TOPDIR@
142 JAXWS_TOPDIR:=@JAXWS_TOPDIR@ 139 JAXWS_TOPDIR:=@JAXWS_TOPDIR@
143 HOTSPOT_TOPDIR:=@HOTSPOT_TOPDIR@ 140 HOTSPOT_TOPDIR:=@HOTSPOT_TOPDIR@
144 COPYRIGHT_YEAR:=@COPYRIGHT_YEAR@ 141 COPYRIGHT_YEAR:=@COPYRIGHT_YEAR@
145 142
143 # Location where build customization files may be found
144 CUSTOM_MAKE_DIR:=@CUSTOM_MAKE_DIR@
145
146 # Information gathered from the version.numbers file. 146 # Information gathered from the version.numbers file.
147 JDK_MAJOR_VERSION:=@JDK_MAJOR_VERSION@ 147 JDK_MAJOR_VERSION:=@JDK_MAJOR_VERSION@
148 JDK_MINOR_VERSION:=@JDK_MINOR_VERSION@ 148 JDK_MINOR_VERSION:=@JDK_MINOR_VERSION@
149 JDK_MICRO_VERSION:=@JDK_MICRO_VERSION@ 149 JDK_MICRO_VERSION:=@JDK_MICRO_VERSION@
150 JDK_UPDATE_VERSION:=@JDK_UPDATE_VERSION@ 150 JDK_UPDATE_VERSION:=@JDK_UPDATE_VERSION@
169 169
170 # This is the JDK variant to build. 170 # This is the JDK variant to build.
171 # The JDK variant is a name for a specific set of modules to be compiled for the JDK. 171 # The JDK variant is a name for a specific set of modules to be compiled for the JDK.
172 JDK_VARIANT:=@JDK_VARIANT@ 172 JDK_VARIANT:=@JDK_VARIANT@
173 173
174 # Legacy defines controlling the JDK variant embedded.
175 @JAVASE_EMBEDDED@
176 @MINIMIZE_RAM_USAGE@
177
178 # Should we compile support for running with a graphical UI? (ie headful) 174 # Should we compile support for running with a graphical UI? (ie headful)
179 # Should we compile support for running without? (ie headless) 175 # Should we compile support for running without? (ie headless)
180 SUPPORT_HEADFUL:=@SUPPORT_HEADFUL@ 176 SUPPORT_HEADFUL:=@SUPPORT_HEADFUL@
181 SUPPORT_HEADLESS:=@SUPPORT_HEADLESS@ 177 SUPPORT_HEADLESS:=@SUPPORT_HEADLESS@
182 # Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options. 178 # Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options.
183 @BUILD_HEADLESS@ 179 @BUILD_HEADLESS@
184 @BUILD_HEADLESS_ONLY@
185 180
186 # These are the libjvms that we want to build. 181 # These are the libjvms that we want to build.
187 # The java launcher uses the default. 182 # The java launcher uses the default.
188 # The other can be selected by specifying -client -server -kernel -zero or -zeroshark 183 # The other can be selected by specifying -client -server -kernel -zero or -zeroshark
189 # on the java launcher command line. 184 # on the java launcher command line.
192 JVM_VARIANT_CLIENT:=@JVM_VARIANT_CLIENT@ 187 JVM_VARIANT_CLIENT:=@JVM_VARIANT_CLIENT@
193 JVM_VARIANT_KERNEL:=@JVM_VARIANT_KERNEL@ 188 JVM_VARIANT_KERNEL:=@JVM_VARIANT_KERNEL@
194 JVM_VARIANT_ZERO:=@JVM_VARIANT_ZERO@ 189 JVM_VARIANT_ZERO:=@JVM_VARIANT_ZERO@
195 JVM_VARIANT_ZEROSHARK:=@JVM_VARIANT_ZEROSHARK@ 190 JVM_VARIANT_ZEROSHARK:=@JVM_VARIANT_ZEROSHARK@
196 191
197 # Legacy setting: OPT or DBG 192 # Universal binaries on macosx
198 VARIANT:=@VARIANT@ 193 MACOSX_UNIVERSAL=@MACOSX_UNIVERSAL@
199 # Legacy setting: true or false 194
200 FASTDEBUG:=@FASTDEBUG@
201 # Legacy setting: debugging the class files?
202 DEBUG_CLASSFILES:=@DEBUG_CLASSFILES@
203 # Legacy setting: -debug or -fastdebug 195 # Legacy setting: -debug or -fastdebug
196 # Still used in version string...
204 BUILD_VARIANT_RELEASE:=@BUILD_VARIANT_RELEASE@ 197 BUILD_VARIANT_RELEASE:=@BUILD_VARIANT_RELEASE@
205 198
206 LANGTOOLS_OUTPUTDIR:=@LANGTOOLS_OUTPUTDIR@ 199 # JDK_OUTPUTDIR specifies where a working jvm is built.
207 CORBA_OUTPUTDIR:=@CORBA_OUTPUTDIR@
208 JAXP_OUTPUTDIR:=@JAXP_OUTPUTDIR@
209 JAXWS_OUTPUTDIR:=@JAXWS_OUTPUTDIR@
210 HOTSPOT_OUTPUTDIR:=@HOTSPOT_OUTPUTDIR@
211
212 # This where a working jvm is built.
213 # You can run $(JDK_OUTPUTDIR)/bin/java 200 # You can run $(JDK_OUTPUTDIR)/bin/java
214 # Though the layout of the contents of $(JDK_OUTPUTDIR) is not 201 # Though the layout of the contents of $(JDK_OUTPUTDIR) is not
215 # yet the same as a default installation. 202 # yet the same as a default installation.
216 JDK_OUTPUTDIR:=@OUTPUT_ROOT@/jdk 203 #
217
218 # When you run "make install" it will create the standardized 204 # When you run "make install" it will create the standardized
219 # layout for the jdk and the jre inside the images subdir. 205 # layout for the jdk and the jre inside the IMAGES_OUTPUTDIR subdir.
220 # Then it will copy the contents of the jdk into the installation 206 # Then it will copy the contents of the jdk into the installation
221 # directory. 207 # directory.
222 IMAGES_OUTPUTDIR:=@OUTPUT_ROOT@/images 208
223 209 BUILD_OUTPUT:=@BUILD_OUTPUT@
224 LANGTOOLS_DIST:=@LANGTOOLS_DIST@ 210 LANGTOOLS_OUTPUTDIR=$(BUILD_OUTPUT)/langtools
225 CORBA_DIST:=@CORBA_DIST@ 211 CORBA_OUTPUTDIR=$(BUILD_OUTPUT)/corba
226 JAXP_DIST:=@JAXP_DIST@ 212 JAXP_OUTPUTDIR=$(BUILD_OUTPUT)/jaxp
227 JAXWS_DIST:=@JAXWS_DIST@ 213 JAXWS_OUTPUTDIR=$(BUILD_OUTPUT)/jaxws
228 HOTSPOT_DIST:=@HOTSPOT_DIST@ 214 HOTSPOT_OUTPUTDIR=$(BUILD_OUTPUT)/hotspot
229 215 JDK_OUTPUTDIR=$(BUILD_OUTPUT)/jdk
230 # Legacy variables used by Release.gmk 216 IMAGES_OUTPUTDIR=$(BUILD_OUTPUT)/images
231 JDK_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/j2sdk-image 217
232 JRE_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/j2re-image 218 LANGTOOLS_DIST=$(LANGTOOLS_OUTPUTDIR)/dist
233 219 CORBA_DIST=$(CORBA_OUTPUTDIR)/dist
234 # Can be /sparcv9 or /amd64 on Solaris 220 JAXP_DIST=$(JAXP_OUTPUTDIR)/dist
235 ISA_DIR:=@LEGACY_OPENJDK_TARGET_CPU3@ 221 JAXWS_DIST=$(JAXWS_OUTPUTDIR)/dist
236 BINDIR:=$(JDK_OUTPUTDIR)/bin$(ISA_DIR) 222 HOTSPOT_DIST=$(HOTSPOT_OUTPUTDIR)/dist
237 223
238 # The boot jdk to use 224 # The boot jdk to use
239 ALT_BOOTDIR:=@BOOT_JDK@
240 BOOT_JDK:=@BOOT_JDK@ 225 BOOT_JDK:=@BOOT_JDK@
241 BOOT_JDK_JVMARGS:=@BOOT_JDK_JVMARGS@ 226 BOOT_JDK_JVMARGS:=@BOOT_JDK_JVMARGS@
242 BOOT_RTJAR:=@BOOT_RTJAR@ 227 BOOT_RTJAR:=@BOOT_RTJAR@
243 BOOT_TOOLSJAR:=@BOOT_TOOLSJAR@ 228 BOOT_TOOLSJAR=$(BOOT_JDK)/lib/tools.jar
244 229
245 # When compiling Java source to be run by the boot jdk 230 # When compiling Java source to be run by the boot jdk
246 # use these extra flags, eg -source 6 -target 6 231 # use these extra flags, eg -source 6 -target 6
247 BOOT_JDK_SOURCETARGET:=@BOOT_JDK_SOURCETARGET@ 232 BOOT_JDK_SOURCETARGET:=@BOOT_JDK_SOURCETARGET@
248 233
249 # Information about the build system 234 # Information about the build system
250 NUM_CORES:=@NUM_CORES@ 235 NUM_CORES:=@NUM_CORES@
251 # This is used from the jdk build for C/C++ code. 236 # Enable sjavac support = use a javac server,
252 PARALLEL_COMPILE_JOBS:=@CONCURRENT_BUILD_JOBS@ 237 # multi core javac compilation and dependency tracking.
253 # Store javac server synchronization files here, and 238 ENABLE_SJAVAC:=@ENABLE_SJAVAC@
254 # the javac server log files. 239 # Store sjavac server synchronization files here, and
255 JAVAC_SERVERS:=@JAVAC_SERVERS@ 240 # the sjavac server log files.
256 # Should we use a javac server or not? The javac server gives 241 SJAVAC_SERVER_DIR:=@SJAVAC_SERVER_DIR@
257 # an enormous performance improvement since it reduces the
258 # startup costs of javac and reuses as much as possible of intermediate
259 # compilation work. But if we want to compile with a non-Java
260 # javac compiler, like gcj. Then we cannot use javac server and
261 # this variable is set to false.
262 JAVAC_USE_REMOTE:=@JAVAC_USE_REMOTE@
263 # We can block the Javac server to never use more cores than this. 242 # We can block the Javac server to never use more cores than this.
264 # This is not for performance reasons, but for memory usage, since each 243 # This is not for performance reasons, but for memory usage, since each
265 # core requires its own JavaCompiler. We might have 64 cores and 4GB 244 # core requires its own JavaCompiler. We might have 64 cores and 4GB
266 # of memory, 64 JavaCompilers will currently not fit in a 3GB heap. 245 # of memory, 64 JavaCompilers will currently not fit in a 3GB heap.
267 # Since there is no sharing of data between the JavaCompilers. 246 # Since there is no sharing of data between the JavaCompilers.
268 JAVAC_SERVER_CORES:=@JAVAC_SERVER_CORES@ 247 SJAVAC_SERVER_CORES:=@SJAVAC_SERVER_CORES@
269 # Should we use dependency tracking between Java packages? true or false.
270 JAVAC_USE_DEPS:=@JAVAC_USE_DEPS@
271 # We can invoke javac: SINGLE_THREADED_BATCH or MULTI_CORE_CONCURRENT
272 JAVAC_USE_MODE:=@JAVAC_USE_MODE@
273 # Enable not yet complete sjavac support.
274 ENABLE_SJAVAC:=@ENABLE_SJAVAC@
275 248
276 # The OpenJDK makefiles should be changed to using the standard 249 # The OpenJDK makefiles should be changed to using the standard
277 # configure output ..._CFLAGS and ..._LIBS. In the meantime we 250 # configure output ..._CFLAGS and ..._LIBS. In the meantime we
278 # extract the information here. 251 # extract the information here.
279 FREETYPE2_LIB_PATH:=@FREETYPE2_LIB_PATH@ 252 FREETYPE2_LIB_PATH:=@FREETYPE2_LIB_PATH@
280 FREETYPE2_LIBS:=@FREETYPE2_LIBS@ 253 FREETYPE2_LIBS:=@FREETYPE2_LIBS@
281 FREETYPE2_CFLAGS:=@FREETYPE2_CFLAGS@ 254 FREETYPE2_CFLAGS:=@FREETYPE2_CFLAGS@
282 USING_SYSTEM_FT_LIB=@USING_SYSTEM_FT_LIB@ 255 USING_SYSTEM_FT_LIB=@USING_SYSTEM_FT_LIB@
283 ALT_CUPS_HEADERS_PATH:=$(patsubst -I%,%,$(filter -I%,@CUPS_CFLAGS@))
284 CUPS_CFLAGS:=@CUPS_CFLAGS@ 256 CUPS_CFLAGS:=@CUPS_CFLAGS@
285 257
286 PACKAGE_PATH=@PACKAGE_PATH@ 258 PACKAGE_PATH=@PACKAGE_PATH@
287 259
288 # Source file for cacerts 260 # Source file for cacerts
289 CACERTS_FILE=@CACERTS_FILE@ 261 CACERTS_FILE=@CACERTS_FILE@
290
291 #MOZILLA_HEADERS_PATH:=
292 262
293 # Necessary additional compiler flags to compile X11 263 # Necessary additional compiler flags to compile X11
294 X_CFLAGS:=@X_CFLAGS@ 264 X_CFLAGS:=@X_CFLAGS@
295 X_LIBS:=@X_LIBS@ 265 X_LIBS:=@X_LIBS@
296 OPENWIN_HOME:=@OPENWIN_HOME@ 266 OPENWIN_HOME:=@OPENWIN_HOME@
336 #OBJCFLAGS:=@OBJCFLAGS@ 306 #OBJCFLAGS:=@OBJCFLAGS@
337 307
338 CPP:=@UNCYGDRIVE@ @CPP@ 308 CPP:=@UNCYGDRIVE@ @CPP@
339 #CPPFLAGS:=@CPPFLAGS@ 309 #CPPFLAGS:=@CPPFLAGS@
340 310
341 # The linker can be gcc or ld on posix systems, or link.exe on winapi systems. 311 # The linker can be gcc or ld on posix systems, or link.exe on windows systems.
342 LD:=@UNCYGDRIVE@ @LD@ 312 LD:=@UNCYGDRIVE@ @LD@
343 313
344 # LDFLAGS used to link the jdk native libraries (C-code) 314 # LDFLAGS used to link the jdk native libraries (C-code)
345 LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@ 315 LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@
346 LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@ 316 LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@
350 LDEXE:=@UNCYGDRIVE@ @LDEXE@ 320 LDEXE:=@UNCYGDRIVE@ @LDEXE@
351 321
352 # LDFLAGS used to link the jdk native launchers (C-code) 322 # LDFLAGS used to link the jdk native launchers (C-code)
353 LDFLAGS_JDKEXE:=@LDFLAGS_JDKEXE@ 323 LDFLAGS_JDKEXE:=@LDFLAGS_JDKEXE@
354 LDFLAGS_JDKEXE_SUFFIX:=@LDFLAGS_JDKEXE_SUFFIX@ 324 LDFLAGS_JDKEXE_SUFFIX:=@LDFLAGS_JDKEXE_SUFFIX@
325
326 # LDFLAGS specific to C++ linking.
327 LDFLAGS_CXX_JDK:=@LDFLAGS_CXX_JDK@
355 328
356 # Sometimes a different linker is needed for c++ libs 329 # Sometimes a different linker is needed for c++ libs
357 LDCXX:=@UNCYGDRIVE@ @LDCXX@ 330 LDCXX:=@UNCYGDRIVE@ @LDCXX@
358 # The flags for linking libstdc++ linker. 331 # The flags for linking libstdc++ linker.
359 LIBCXX:=@LIBCXX@ 332 LIBCXX:=@LIBCXX@
360 333
361 # Sometimes a different linker is needed for c++ executables 334 # Sometimes a different linker is needed for c++ executables
362 LDEXECXX:=@UNCYGDRIVE@ @LDEXECXX@ 335 LDEXECXX:=@UNCYGDRIVE@ @LDEXECXX@
363 336
364 # If cross compiling, then define CROSS_COMPILE_ARCH:=cpu_name here. 337 # BUILD_CC/BUILD_LD is a compiler/linker that generates code that is runnable on the
365 @DEFINE_CROSS_COMPILE_ARCH@ 338 # build platform.
366 # The HOSTCC should really be named BUILDCC, ie build executable for 339 BUILD_CC:=@UNCYGDRIVE@ @BUILD_CC@
367 # the build platform. Same as CC when not cross compiling. 340 BUILD_LD:=@UNCYGDRIVE@ @BUILD_LD@
368 HOSTCC:=@UNCYGDRIVE@ @HOSTCC@
369 HOSTCXX:=@UNCYGDRIVE@ @HOSTCXX@
370 # And of course, the jdk spells HOSTCC as NIO_CC/HOST_CC
371 HOST_CC:=@UNCYGDRIVE@ @HOSTCC@
372 NIO_CC:=@UNCYGDRIVE@ @HOSTCC@
373
374 HOST_LD:=@UNCYGDRIVE@ @HOSTLD@
375 341
376 AS:=@UNCYGDRIVE@ @AS@ 342 AS:=@UNCYGDRIVE@ @AS@
377 ASFLAGS:=@ASFLAGS@ 343
378 344 # AR is used to create a static library (is ar in posix, lib.exe in windows)
379 # AR is used to create a static library (is ar in posix, lib.exe in winapi)
380 AR:=@UNCYGDRIVE@ @AR@ 345 AR:=@UNCYGDRIVE@ @AR@
381 ARFLAGS:=@ARFLAGS@ 346 ARFLAGS:=@ARFLAGS@
382 347
383 NM:=@UNCYGDRIVE@ @NM@ 348 NM:=@NM@
384 STRIP:=@UNCYGDRIVE@ @STRIP@ 349 STRIP:=@STRIP@
385 MCS:=@UNCYGDRIVE@ @MCS@ 350 MCS:=@MCS@
351
352 LIPO:=@LIPO@
386 353
387 # Command to create a shared library 354 # Command to create a shared library
388 SHARED_LIBRARY_FLAGS:=@SHARED_LIBRARY_FLAGS@ 355 SHARED_LIBRARY_FLAGS:=@SHARED_LIBRARY_FLAGS@
389 356
390 # Options to linker to specify a mapfile. 357 # Options to linker to specify a mapfile.
412 SET_SHARED_LIBRARY_NAME=@SET_SHARED_LIBRARY_NAME@ 379 SET_SHARED_LIBRARY_NAME=@SET_SHARED_LIBRARY_NAME@
413 380
414 # Set origin using the linker, ie use the relative path to the dependent library to find the dependees. 381 # Set origin using the linker, ie use the relative path to the dependent library to find the dependees.
415 # (Note absence of := assignment, because we do not want to evaluate the macro body here) 382 # (Note absence of := assignment, because we do not want to evaluate the macro body here)
416 SET_SHARED_LIBRARY_ORIGIN=@SET_SHARED_LIBRARY_ORIGIN@ 383 SET_SHARED_LIBRARY_ORIGIN=@SET_SHARED_LIBRARY_ORIGIN@
384 SET_EXECUTABLE_ORIGIN=@SET_EXECUTABLE_ORIGIN@
417 385
418 # Different OS:es have different ways of naming shared libraries. 386 # Different OS:es have different ways of naming shared libraries.
419 # The SHARED_LIBRARY macro takes "verify" as and argument and returns: 387 # The SHARED_LIBRARY macro takes "verify" as and argument and returns:
420 # "libverify.so" or "libverify.dylib" or "verify.dll" depending on platform. 388 # "libverify.so" or "libverify.dylib" or "verify.dll" depending on platform.
421 # (Note absence of := assignment, because we do not want to evaluate the macro body here) 389 # (Note absence of := assignment, because we do not want to evaluate the macro body here)
430 POST_STRIP_CMD:=@POST_STRIP_CMD@ 398 POST_STRIP_CMD:=@POST_STRIP_CMD@
431 POST_MCS_CMD:=@POST_MCS_CMD@ 399 POST_MCS_CMD:=@POST_MCS_CMD@
432 400
433 JAVA_FLAGS:=@BOOT_JDK_JVMARGS@ 401 JAVA_FLAGS:=@BOOT_JDK_JVMARGS@
434 402
435 JAVA=@UNCYGDRIVE@ @JAVA@ $(JAVA_FLAGS) 403 JAVA=@UNCYGDRIVE@ $(BOOT_JDK)/bin/java $(JAVA_FLAGS)
436 404
437 JAVAC:=@UNCYGDRIVE@ @JAVAC@ 405 JAVAC=@UNCYGDRIVE@ $(BOOT_JDK)/bin/javac
438 JAVAC_FLAGS:=@JAVAC_FLAGS@ 406 # Hotspot sets this variable before reading the SPEC when compiling sa-jdi.jar. Avoid
439 407 # overriding that value by using ?=.
440 JAVAH:=@UNCYGDRIVE@ @JAVAH@ 408 JAVAC_FLAGS?=@JAVAC_FLAGS@
441 409
442 JAR:=@UNCYGDRIVE@ @JAR@ 410 JAVAH=@UNCYGDRIVE@ $(BOOT_JDK)/bin/javah
443 411
444 RMIC:=@UNCYGDRIVE@ @RMIC@ 412 JAR=@UNCYGDRIVE@ $(BOOT_JDK)/bin/jar
445 413
446 NATIVE2ASCII:=@UNCYGDRIVE@ @NATIVE2ASCII@ 414 RMIC=@UNCYGDRIVE@ $(BOOT_JDK)/bin/rmic
447 415
448 BOOT_JAR_CMD:=@UNCYGDRIVE@ @JAR@ 416 NATIVE2ASCII=@UNCYGDRIVE@ $(BOOT_JDK)/bin/native2ascii
449 BOOT_JAR_JFLAGS:=
450 417
451 # Base flags for RC 418 # Base flags for RC
452 # Guarding this against resetting value. Legacy make files include spec multiple 419 # Guarding this against resetting value. Legacy make files include spec multiple
453 # times. 420 # times.
454 ifndef RC_FLAGS 421 ifndef RC_FLAGS
455 RC_FLAGS:=@RC_FLAGS@ 422 RC_FLAGS:=@RC_FLAGS@
456 endif 423 endif
457 424
458 # A specific java binary with specific options can be used to run 425 # A specific java binary with specific options can be used to run
459 # the long running background javac server and other long running tasks. 426 # the long running background sjavac servers and other long running tasks.
460 SERVER_JAVA:=@UNCYGDRIVE@ @SERVER_JAVA@ 427 SJAVAC_SERVER_JAVA:=@UNCYGDRIVE@ @SJAVAC_SERVER_JAVA@
461 428
462 # Tools adhering to a minimal and common standard of posix compliance. 429 # Tools adhering to a minimal and common standard of posix compliance.
463 AWK:=@AWK@ 430 AWK:=@AWK@
431 BASENAME:=@BASENAME@
464 CAT:=@CAT@ 432 CAT:=@CAT@
465 CCACHE:=@CCACHE@ 433 CCACHE:=@CCACHE@
466 # CD is going away, but remains to cater for legacy makefiles. 434 # CD is going away, but remains to cater for legacy makefiles.
467 CD:=cd 435 CD:=cd
468 CHMOD:=@CHMOD@ 436 CHMOD:=@CHMOD@
518 BUILD_LOG:=@BUILD_LOG@ 486 BUILD_LOG:=@BUILD_LOG@
519 BUILD_LOG_PREVIOUS:=@BUILD_LOG_PREVIOUS@ 487 BUILD_LOG_PREVIOUS:=@BUILD_LOG_PREVIOUS@
520 BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@ 488 BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@
521 489
522 # Build setup 490 # Build setup
523 ENABLE_DOCS:=@ENABLE_DOCS@
524 GENERATE_DOCS:=@ENABLE_DOCS@
525 DISABLE_NIMBUS:=@DISABLE_NIMBUS@ 491 DISABLE_NIMBUS:=@DISABLE_NIMBUS@
526 ENABLE_JFR=@ENABLE_JFR@ 492 ENABLE_JFR=@ENABLE_JFR@
527 USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ 493 USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@
528 USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ 494 USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@
529 USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ 495 USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@
559 OVR_SRCS:= 525 OVR_SRCS:=
560 endif 526 endif
561 527
562 #################################################### 528 ####################################################
563 # 529 #
564 # Legacy Hotspot support
565
566 HOTSPOT_DIST:=@HOTSPOT_DIST@
567 HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@
568 # This is used from the libjvm build for C/C++ code.
569 HOTSPOT_BUILD_JOBS:=@CONCURRENT_BUILD_JOBS@
570 # Control wether Hotspot runs Queens test after building
571 TEST_IN_BUILD=@TEST_IN_BUILD@
572
573 ####################################################
574 #
575 # INSTALLATION 530 # INSTALLATION
576 # 531 #
577 532
578 # Common prefix for all installed files. Defaults to /usr/local, 533 # Common prefix for all installed files. Defaults to /usr/local,
579 # but /opt/myjdk is another common version. 534 # but /opt/myjdk is another common version.
632 587
633 OS_VERSION_MAJOR:=@OS_VERSION_MAJOR@ 588 OS_VERSION_MAJOR:=@OS_VERSION_MAJOR@
634 OS_VERSION_MINOR:=@OS_VERSION_MINOR@ 589 OS_VERSION_MINOR:=@OS_VERSION_MINOR@
635 OS_VERSION_MICRO:=@OS_VERSION_MICRO@ 590 OS_VERSION_MICRO:=@OS_VERSION_MICRO@
636 591
637 # Include the closed-spec.gmk file if it exists 592 # Include the custom-spec.gmk file if it exists
638 -include $(dir @SPEC@)/closed-spec.gmk 593 -include $(dir @SPEC@)/custom-spec.gmk

mercurial