39 HASH:=\# |
39 HASH:=\# |
40 SQUOTE:=' |
40 SQUOTE:=' |
41 #' |
41 #' |
42 DQUOTE:=" |
42 DQUOTE:=" |
43 #" |
43 #" |
44 define NEWLINE:= |
44 define NEWLINE |
|
45 |
|
46 |
45 endef |
47 endef |
46 |
48 |
47 # A self-referential reference to this file. |
49 # A self-referential reference to this file. |
48 SPEC:=@SPEC@ |
50 SPEC:=@SPEC@ |
49 |
51 |
50 # Specify where the spec file is. |
52 # Specify where the spec file is. |
51 MAKE_ARGS="SPEC=$(SPEC)" |
53 MAKE_ARGS="SPEC=$(SPEC)" |
52 |
54 |
53 # TODO The logic for finding and setting MAKE is currently not working |
55 MAKE:=@MAKE@ |
54 # well on windows. Disable it TEMPORARILY there for now. |
|
55 ifneq (@OPENJDK_TARGET_OS@,windows) |
|
56 MAKE:=@MAKE@ |
|
57 endif |
|
58 |
56 |
59 # Pass along the verbosity setting. |
57 # Pass along the verbosity setting. |
60 ifeq (,$(findstring VERBOSE=,$(MAKE))) |
58 ifeq (,$(findstring VERBOSE=,$(MAKE))) |
61 MAKE:=$(MAKE) $(VERBOSE) VERBOSE="$(VERBOSE)" |
59 MAKE:=$(MAKE) $(VERBOSE) VERBOSE="$(VERBOSE)" |
62 endif |
60 endif |
75 CONF_NAME:=@CONF_NAME@ |
73 CONF_NAME:=@CONF_NAME@ |
76 |
74 |
77 # The built jdk will run in this target system. |
75 # The built jdk will run in this target system. |
78 OPENJDK_TARGET_OS:=@OPENJDK_TARGET_OS@ |
76 OPENJDK_TARGET_OS:=@OPENJDK_TARGET_OS@ |
79 OPENJDK_TARGET_OS_API:=@OPENJDK_TARGET_OS_API@ |
77 OPENJDK_TARGET_OS_API:=@OPENJDK_TARGET_OS_API@ |
|
78 OPENJDK_TARGET_OS_ENV:=@OPENJDK_TARGET_OS_ENV@ |
80 |
79 |
81 OPENJDK_TARGET_CPU:=@OPENJDK_TARGET_CPU@ |
80 OPENJDK_TARGET_CPU:=@OPENJDK_TARGET_CPU@ |
82 OPENJDK_TARGET_CPU_ARCH:=@OPENJDK_TARGET_CPU_ARCH@ |
81 OPENJDK_TARGET_CPU_ARCH:=@OPENJDK_TARGET_CPU_ARCH@ |
83 OPENJDK_TARGET_CPU_BITS:=@OPENJDK_TARGET_CPU_BITS@ |
82 OPENJDK_TARGET_CPU_BITS:=@OPENJDK_TARGET_CPU_BITS@ |
84 OPENJDK_TARGET_CPU_ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@ |
83 OPENJDK_TARGET_CPU_ENDIAN:=@OPENJDK_TARGET_CPU_ENDIAN@ |
107 # Legacy OS values for use in release file. |
106 # Legacy OS values for use in release file. |
108 REQUIRED_OS_NAME:=@REQUIRED_OS_NAME@ |
107 REQUIRED_OS_NAME:=@REQUIRED_OS_NAME@ |
109 REQUIRED_OS_VERSION:=@REQUIRED_OS_VERSION@ |
108 REQUIRED_OS_VERSION:=@REQUIRED_OS_VERSION@ |
110 |
109 |
111 @SET_OPENJDK@ |
110 @SET_OPENJDK@ |
112 JIGSAW:=@JIGSAW@ |
|
113 LIBM:=-lm |
111 LIBM:=-lm |
114 LIBDL:=@LIBDL@ |
112 LIBDL:=@LIBDL@ |
115 |
113 |
116 # colon or semicolon |
114 # colon or semicolon |
117 PATH_SEP:=@PATH_SEP@ |
115 PATH_SEP:=@PATH_SEP@ |
118 |
116 |
119 # Set special env variables, to be passed to external tools. |
117 ifeq ($(OPENJDK_TARGET_OS), windows) |
120 # Used for cygwin setups. |
118 # On Windows, the Visual Studio toolchain needs the LIB and INCLUDE |
121 @SETUPDEVENV@ |
119 # environment variables (in Windows path style), and the PATH needs to |
|
120 # be adjusted to include Visual Studio tools (but this needs to be in |
|
121 # cygwin/msys style). |
|
122 export PATH:=@VS_PATH@ |
|
123 export INCLUDE:=@VS_INCLUDE@ |
|
124 export LIB:=@VS_LIB@ |
|
125 endif |
122 |
126 |
123 # The sys root where standard headers and libraries are found. |
127 # The sys root where standard headers and libraries are found. |
124 # Usually not needed since the configure script should have |
128 # Usually not needed since the configure script should have |
125 # taken it into account already when setting CFLAGS et al. |
129 # taken it into account already when setting CFLAGS et al. |
126 SYS_ROOT:=@SYS_ROOT@ |
130 SYS_ROOT:=@SYS_ROOT@ |
129 SRC_ROOT:=@SRC_ROOT@ |
133 SRC_ROOT:=@SRC_ROOT@ |
130 ADD_SRC_ROOT:=@ADD_SRC_ROOT@ |
134 ADD_SRC_ROOT:=@ADD_SRC_ROOT@ |
131 OVERRIDE_SRC_ROOT:=@OVERRIDE_SRC_ROOT@ |
135 OVERRIDE_SRC_ROOT:=@OVERRIDE_SRC_ROOT@ |
132 TOPDIR:=@SRC_ROOT@ |
136 TOPDIR:=@SRC_ROOT@ |
133 OUTPUT_ROOT:=@OUTPUT_ROOT@ |
137 OUTPUT_ROOT:=@OUTPUT_ROOT@ |
134 JDK_MAKE_SHARED_DIR:=@JDK_TOPDIR@/makefiles/common/shared |
|
135 JDK_TOPDIR:=@JDK_TOPDIR@ |
138 JDK_TOPDIR:=@JDK_TOPDIR@ |
136 LANGTOOLS_TOPDIR:=@LANGTOOLS_TOPDIR@ |
139 LANGTOOLS_TOPDIR:=@LANGTOOLS_TOPDIR@ |
137 CORBA_TOPDIR:=@CORBA_TOPDIR@ |
140 CORBA_TOPDIR:=@CORBA_TOPDIR@ |
138 JAXP_TOPDIR:=@JAXP_TOPDIR@ |
141 JAXP_TOPDIR:=@JAXP_TOPDIR@ |
139 JAXWS_TOPDIR:=@JAXWS_TOPDIR@ |
142 JAXWS_TOPDIR:=@JAXWS_TOPDIR@ |
153 LAUNCHER_NAME:=@LAUNCHER_NAME@ |
156 LAUNCHER_NAME:=@LAUNCHER_NAME@ |
154 PRODUCT_NAME:=@PRODUCT_NAME@ |
157 PRODUCT_NAME:=@PRODUCT_NAME@ |
155 PRODUCT_SUFFIX:=@PRODUCT_SUFFIX@ |
158 PRODUCT_SUFFIX:=@PRODUCT_SUFFIX@ |
156 JDK_RC_PLATFORM_NAME:=@JDK_RC_PLATFORM_NAME@ |
159 JDK_RC_PLATFORM_NAME:=@JDK_RC_PLATFORM_NAME@ |
157 COMPANY_NAME:=@COMPANY_NAME@ |
160 COMPANY_NAME:=@COMPANY_NAME@ |
|
161 MACOSX_BUNDLE_NAME_BASE=@MACOSX_BUNDLE_NAME_BASE@ |
|
162 MACOSX_BUNDLE_ID_BASE=@MACOSX_BUNDLE_ID_BASE@ |
158 |
163 |
159 # Different version strings generated from the above information. |
164 # Different version strings generated from the above information. |
160 JDK_VERSION:=@JDK_VERSION@ |
165 JDK_VERSION:=@JDK_VERSION@ |
161 RUNTIME_NAME:=@RUNTIME_NAME@ |
166 RUNTIME_NAME:=@RUNTIME_NAME@ |
162 FULL_VERSION:=@FULL_VERSION@ |
167 FULL_VERSION:=@FULL_VERSION@ |
287 |
292 |
288 C_FLAG_DEPS:=@C_FLAG_DEPS@ |
293 C_FLAG_DEPS:=@C_FLAG_DEPS@ |
289 CXX_FLAG_DEPS:=@CXX_FLAG_DEPS@ |
294 CXX_FLAG_DEPS:=@CXX_FLAG_DEPS@ |
290 |
295 |
291 # Tools that potentially need to be cross compilation aware. |
296 # Tools that potentially need to be cross compilation aware. |
292 CC:=@UNCYGDRIVE@ @CCACHE@ @CC@ |
297 CC:=@FIXPATH@ @CCACHE@ @CC@ |
293 |
298 |
294 # CFLAGS used to compile the jdk native libraries (C-code) |
299 # CFLAGS used to compile the jdk native libraries (C-code) |
295 CFLAGS_JDKLIB:=@CFLAGS_JDKLIB@ |
300 CFLAGS_JDKLIB:=@CFLAGS_JDKLIB@ |
296 CXXFLAGS_JDKLIB:=@CXXFLAGS_JDKLIB@ |
301 CXXFLAGS_JDKLIB:=@CXXFLAGS_JDKLIB@ |
297 |
302 |
298 # CFLAGS used to compile the jdk native launchers (C-code) |
303 # CFLAGS used to compile the jdk native launchers (C-code) |
299 CFLAGS_JDKEXE:=@CFLAGS_JDKEXE@ |
304 CFLAGS_JDKEXE:=@CFLAGS_JDKEXE@ |
300 CXXFLAGS_JDKEXE:=@CXXFLAGS_JDKEXE@ |
305 CXXFLAGS_JDKEXE:=@CXXFLAGS_JDKEXE@ |
301 |
306 |
302 CXX:=@UNCYGDRIVE@ @CCACHE@ @CXX@ |
307 CXX:=@FIXPATH@ @CCACHE@ @CXX@ |
303 #CXXFLAGS:=@CXXFLAGS@ |
308 #CXXFLAGS:=@CXXFLAGS@ |
304 |
309 |
305 OBJC:=@CCACHE@ @OBJC@ |
310 OBJC:=@CCACHE@ @OBJC@ |
306 #OBJCFLAGS:=@OBJCFLAGS@ |
311 #OBJCFLAGS:=@OBJCFLAGS@ |
307 |
312 |
308 CPP:=@UNCYGDRIVE@ @CPP@ |
313 CPP:=@FIXPATH@ @CPP@ |
309 #CPPFLAGS:=@CPPFLAGS@ |
314 #CPPFLAGS:=@CPPFLAGS@ |
310 |
315 |
311 # The linker can be gcc or ld on posix systems, or link.exe on windows systems. |
316 # The linker can be gcc or ld on posix systems, or link.exe on windows systems. |
312 LD:=@UNCYGDRIVE@ @LD@ |
317 LD:=@FIXPATH@ @LD@ |
313 |
318 |
314 # LDFLAGS used to link the jdk native libraries (C-code) |
319 # LDFLAGS used to link the jdk native libraries (C-code) |
315 LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@ |
320 LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@ |
316 LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@ |
321 LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@ |
317 |
322 |
318 # On some platforms the linker cannot be used to create executables, thus |
323 # On some platforms the linker cannot be used to create executables, thus |
319 # the need for a separate LDEXE command. |
324 # the need for a separate LDEXE command. |
320 LDEXE:=@UNCYGDRIVE@ @LDEXE@ |
325 LDEXE:=@FIXPATH@ @LDEXE@ |
321 |
326 |
322 # LDFLAGS used to link the jdk native launchers (C-code) |
327 # LDFLAGS used to link the jdk native launchers (C-code) |
323 LDFLAGS_JDKEXE:=@LDFLAGS_JDKEXE@ |
328 LDFLAGS_JDKEXE:=@LDFLAGS_JDKEXE@ |
324 LDFLAGS_JDKEXE_SUFFIX:=@LDFLAGS_JDKEXE_SUFFIX@ |
329 LDFLAGS_JDKEXE_SUFFIX:=@LDFLAGS_JDKEXE_SUFFIX@ |
325 |
330 |
326 # LDFLAGS specific to C++ linking. |
331 # LDFLAGS specific to C++ linking. |
327 LDFLAGS_CXX_JDK:=@LDFLAGS_CXX_JDK@ |
332 LDFLAGS_CXX_JDK:=@LDFLAGS_CXX_JDK@ |
328 |
333 |
329 # Sometimes a different linker is needed for c++ libs |
334 # Sometimes a different linker is needed for c++ libs |
330 LDCXX:=@UNCYGDRIVE@ @LDCXX@ |
335 LDCXX:=@FIXPATH@ @LDCXX@ |
331 # The flags for linking libstdc++ linker. |
336 # The flags for linking libstdc++ linker. |
332 LIBCXX:=@LIBCXX@ |
337 LIBCXX:=@LIBCXX@ |
333 |
338 |
334 # Sometimes a different linker is needed for c++ executables |
339 # Sometimes a different linker is needed for c++ executables |
335 LDEXECXX:=@UNCYGDRIVE@ @LDEXECXX@ |
340 LDEXECXX:=@FIXPATH@ @LDEXECXX@ |
336 |
341 |
337 # BUILD_CC/BUILD_LD is a compiler/linker that generates code that is runnable on the |
342 # BUILD_CC/BUILD_LD is a compiler/linker that generates code that is runnable on the |
338 # build platform. |
343 # build platform. |
339 BUILD_CC:=@UNCYGDRIVE@ @BUILD_CC@ |
344 BUILD_CC:=@FIXPATH@ @BUILD_CC@ |
340 BUILD_LD:=@UNCYGDRIVE@ @BUILD_LD@ |
345 BUILD_LD:=@FIXPATH@ @BUILD_LD@ |
341 |
346 |
342 AS:=@UNCYGDRIVE@ @AS@ |
347 AS:=@FIXPATH@ @AS@ |
343 |
348 |
344 # AR is used to create a static library (is ar in posix, lib.exe in windows) |
349 # AR is used to create a static library (is ar in posix, lib.exe in windows) |
345 AR:=@UNCYGDRIVE@ @AR@ |
350 AR:=@FIXPATH@ @AR@ |
346 ARFLAGS:=@ARFLAGS@ |
351 ARFLAGS:=@ARFLAGS@ |
347 |
352 |
348 NM:=@NM@ |
353 NM:=@NM@ |
349 STRIP:=@STRIP@ |
354 STRIP:=@STRIP@ |
350 MCS:=@MCS@ |
355 MCS:=@MCS@ |
398 POST_STRIP_CMD:=@POST_STRIP_CMD@ |
403 POST_STRIP_CMD:=@POST_STRIP_CMD@ |
399 POST_MCS_CMD:=@POST_MCS_CMD@ |
404 POST_MCS_CMD:=@POST_MCS_CMD@ |
400 |
405 |
401 JAVA_FLAGS:=@BOOT_JDK_JVMARGS@ |
406 JAVA_FLAGS:=@BOOT_JDK_JVMARGS@ |
402 |
407 |
403 JAVA=@UNCYGDRIVE@ $(BOOT_JDK)/bin/java $(JAVA_FLAGS) |
408 JAVA=@FIXPATH@ $(BOOT_JDK)/bin/java $(JAVA_FLAGS) |
404 |
409 |
405 JAVAC=@UNCYGDRIVE@ $(BOOT_JDK)/bin/javac |
410 JAVAC=@FIXPATH@ $(BOOT_JDK)/bin/javac |
406 # Hotspot sets this variable before reading the SPEC when compiling sa-jdi.jar. Avoid |
411 # Hotspot sets this variable before reading the SPEC when compiling sa-jdi.jar. Avoid |
407 # overriding that value by using ?=. |
412 # overriding that value by using ?=. |
408 JAVAC_FLAGS?=@JAVAC_FLAGS@ |
413 JAVAC_FLAGS?=@JAVAC_FLAGS@ |
409 |
414 |
410 JAVAH=@UNCYGDRIVE@ $(BOOT_JDK)/bin/javah |
415 JAVAH=@FIXPATH@ $(BOOT_JDK)/bin/javah |
411 |
416 |
412 JAR=@UNCYGDRIVE@ $(BOOT_JDK)/bin/jar |
417 JAR=@FIXPATH@ $(BOOT_JDK)/bin/jar |
413 |
418 |
414 RMIC=@UNCYGDRIVE@ $(BOOT_JDK)/bin/rmic |
419 RMIC=@FIXPATH@ $(BOOT_JDK)/bin/rmic |
415 |
420 |
416 NATIVE2ASCII=@UNCYGDRIVE@ $(BOOT_JDK)/bin/native2ascii |
421 NATIVE2ASCII=@FIXPATH@ $(BOOT_JDK)/bin/native2ascii |
417 |
422 |
418 # Base flags for RC |
423 # Base flags for RC |
419 # Guarding this against resetting value. Legacy make files include spec multiple |
424 # Guarding this against resetting value. Legacy make files include spec multiple |
420 # times. |
425 # times. |
421 ifndef RC_FLAGS |
426 ifndef RC_FLAGS |
422 RC_FLAGS:=@RC_FLAGS@ |
427 RC_FLAGS:=@RC_FLAGS@ |
423 endif |
428 endif |
424 |
429 |
425 # A specific java binary with specific options can be used to run |
430 # A specific java binary with specific options can be used to run |
426 # the long running background sjavac servers and other long running tasks. |
431 # the long running background sjavac servers and other long running tasks. |
427 SJAVAC_SERVER_JAVA:=@UNCYGDRIVE@ @SJAVAC_SERVER_JAVA@ |
432 SJAVAC_SERVER_JAVA:=@FIXPATH@ @SJAVAC_SERVER_JAVA@ |
428 |
433 |
429 # Tools adhering to a minimal and common standard of posix compliance. |
434 # Tools adhering to a minimal and common standard of posix compliance. |
430 AWK:=@AWK@ |
435 AWK:=@AWK@ |
431 BASENAME:=@BASENAME@ |
436 BASENAME:=@BASENAME@ |
|
437 BASH:=@BASH@ |
432 CAT:=@CAT@ |
438 CAT:=@CAT@ |
433 CCACHE:=@CCACHE@ |
439 CCACHE:=@CCACHE@ |
434 # CD is going away, but remains to cater for legacy makefiles. |
440 # CD is going away, but remains to cater for legacy makefiles. |
435 CD:=cd |
441 CD:=cd |
436 CHMOD:=@CHMOD@ |
442 CHMOD:=@CHMOD@ |
437 CP:=@CP@ |
443 CP:=@CP@ |
438 CPIO:=@CPIO@ |
|
439 CUT:=@CUT@ |
444 CUT:=@CUT@ |
440 DATE:=@DATE@ |
445 DATE:=@DATE@ |
441 DF:=@DF@ |
|
442 DIFF:=@DIFF@ |
446 DIFF:=@DIFF@ |
443 FIND:=@FIND@ |
447 FIND:=@FIND@ |
444 FIND_DELETE:=@FIND_DELETE@ |
448 FIND_DELETE:=@FIND_DELETE@ |
445 ECHO:=@ECHO@ |
449 ECHO:=@ECHO@ |
446 EGREP:=@EGREP@ |
450 EGREP:=@EGREP@ |
459 SH:=@SH@ |
463 SH:=@SH@ |
460 SORT:=@SORT@ |
464 SORT:=@SORT@ |
461 TAR:=@TAR@ |
465 TAR:=@TAR@ |
462 TAIL:=@TAIL@ |
466 TAIL:=@TAIL@ |
463 TEE:=@TEE@ |
467 TEE:=@TEE@ |
|
468 TIME:=@TIME@ |
464 TR:=@TR@ |
469 TR:=@TR@ |
465 TOUCH:=@TOUCH@ |
470 TOUCH:=@TOUCH@ |
466 WC:=@WC@ |
471 WC:=@WC@ |
467 XARGS:=@XARGS@ |
472 XARGS:=@XARGS@ |
468 ZIPEXE:=@ZIP@ |
473 ZIPEXE:=@ZIP@ |
469 ZIP:=@ZIP@ |
474 ZIP:=@ZIP@ |
470 UNZIP:=@UNZIP@ |
475 UNZIP:=@UNZIP@ |
471 MT:=@UNCYGDRIVE@ @MT@ |
476 MT:=@FIXPATH@ @MT@ |
472 RC:=@UNCYGDRIVE@ @RC@ |
477 RC:=@FIXPATH@ @RC@ |
473 DUMPBIN:=@UNCYGDRIVE@ @DUMPBIN@ |
478 DUMPBIN:=@FIXPATH@ @DUMPBIN@ |
474 CYGPATH:=@CYGPATH@ |
479 CYGPATH:=@CYGPATH@ |
475 LDD:=@LDD@ |
480 LDD:=@LDD@ |
476 OTOOL:=@OTOOL@ |
481 OTOOL:=@OTOOL@ |
477 READELF:=@READELF@ |
482 READELF:=@READELF@ |
478 EXPR:=@EXPR@ |
483 EXPR:=@EXPR@ |
479 FILE:=@FILE@ |
484 FILE:=@FILE@ |
480 HG:=@HG@ |
485 HG:=@HG@ |
481 OBJCOPY:=@OBJCOPY@ |
486 OBJCOPY:=@OBJCOPY@ |
482 |
487 SETFILE:=@SETFILE@ |
483 UNCYGDRIVE:=@UNCYGDRIVE@ |
488 |
|
489 FIXPATH:=@FIXPATH@ |
484 |
490 |
485 # Where the build output is stored for your convenience. |
491 # Where the build output is stored for your convenience. |
486 BUILD_LOG:=@BUILD_LOG@ |
492 BUILD_LOG:=@BUILD_LOG@ |
487 BUILD_LOG_PREVIOUS:=@BUILD_LOG_PREVIOUS@ |
493 BUILD_LOG_PREVIOUS:=@BUILD_LOG_PREVIOUS@ |
488 BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@ |
494 BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@ |
489 |
495 |
490 # Build setup |
496 # Build setup |
491 DISABLE_NIMBUS:=@DISABLE_NIMBUS@ |
|
492 ENABLE_JFR=@ENABLE_JFR@ |
497 ENABLE_JFR=@ENABLE_JFR@ |
493 USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ |
498 USE_EXTERNAL_LIBJPEG:=@USE_EXTERNAL_LIBJPEG@ |
494 USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ |
499 USE_EXTERNAL_LIBGIF:=@USE_EXTERNAL_LIBGIF@ |
495 USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ |
500 USE_EXTERNAL_LIBZ:=@USE_EXTERNAL_LIBZ@ |
496 LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@ |
501 LIBZIP_CAN_USE_MMAP:=@LIBZIP_CAN_USE_MMAP@ |
497 CHECK_FOR_VCINSTALLDIR=@CHECK_FOR_VCINSTALLDIR@ |
502 MSVCR_DLL:=@MSVCR_DLL@ |
498 MSVCRNN_DLL:=@MSVCR100DLL@ |
|
499 |
503 |
500 |
504 |
501 # ADD_SRCS takes a single argument with source roots |
505 # ADD_SRCS takes a single argument with source roots |
502 # and appends any corresponding source roots found |
506 # and appends any corresponding source roots found |
503 # below --with-add-source-root and below |
507 # below --with-add-source-root and below |