8218431: Improved platform checking in makefiles

Reviewed-by: erikj
This commit is contained in:
Magnus Ihse Bursie 2019-02-07 12:35:45 +01:00
parent 551a272ced
commit 208c58c862
65 changed files with 312 additions and 236 deletions

View File

@ -35,7 +35,7 @@ DOCS_TARGETS :=
# On Windows tar frequently complains that "file changed as we read it" for # On Windows tar frequently complains that "file changed as we read it" for
# some random source files. This seems to be cause by anti virus scanners and # some random source files. This seems to be cause by anti virus scanners and
# is most likely safe to ignore. When it happens, tar returns '1'. # is most likely safe to ignore. When it happens, tar returns '1'.
ifeq ($(OPENJDK_BUILD_OS), windows) ifeq ($(call isBuildOs, windows), true)
TAR_IGNORE_EXIT_VALUE := || test "$$$$?" = "1" TAR_IGNORE_EXIT_VALUE := || test "$$$$?" = "1"
endif endif
@ -144,7 +144,7 @@ endef
# On Macosx, we bundle up the macosx specific images which already have the # On Macosx, we bundle up the macosx specific images which already have the
# correct base directories. # correct base directories.
ifeq ($(OPENJDK_TARGET_OS)-$(DEBUG_LEVEL), macosx-release) ifeq ($(call isTargetOs, macosx)+$(DEBUG_LEVEL), true+release)
JDK_IMAGE_DIR := $(JDK_MACOSX_BUNDLE_DIR) JDK_IMAGE_DIR := $(JDK_MACOSX_BUNDLE_DIR)
JDK_IMAGE_HOMEDIR := $(JDK_MACOSX_CONTENTS_DIR)/Home JDK_IMAGE_HOMEDIR := $(JDK_MACOSX_CONTENTS_DIR)/Home
JDK_BUNDLE_SUBDIR := JDK_BUNDLE_SUBDIR :=
@ -167,7 +167,7 @@ ifneq ($(filter product-bundles, $(MAKECMDGOALS)), )
# Create special filter rules when dealing with unzipped .dSYM directories on # Create special filter rules when dealing with unzipped .dSYM directories on
# macosx # macosx
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), false) ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), false)
JDK_SYMBOLS_EXCLUDE_PATTERN := $(addprefix %, \ JDK_SYMBOLS_EXCLUDE_PATTERN := $(addprefix %, \
$(call containing, .dSYM/, $(patsubst $(JDK_IMAGE_DIR)/%, %, $(ALL_JDK_FILES)))) $(call containing, .dSYM/, $(patsubst $(JDK_IMAGE_DIR)/%, %, $(ALL_JDK_FILES))))

View File

@ -234,7 +234,7 @@ $(SUPPORT_OUTPUTDIR)/demos/image/nbproject/%: $(DEMO_SHARE_SRC)/nbproject/%
$(call install-file) $(call install-file)
$(CHMOD) -f ug+w $@ $(CHMOD) -f ug+w $@
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
TARGETS += $(patsubst $(DEMO_SHARE_SRC)/nbproject/%, \ TARGETS += $(patsubst $(DEMO_SHARE_SRC)/nbproject/%, \
$(SUPPORT_OUTPUTDIR)/demos/image/nbproject/%, \ $(SUPPORT_OUTPUTDIR)/demos/image/nbproject/%, \
$(call CacheFind, $(DEMO_SHARE_SRC)/nbproject)) $(call CacheFind, $(DEMO_SHARE_SRC)/nbproject))

View File

@ -51,21 +51,18 @@ java.base_EXCLUDES += java/lang/doc-files
# data files and shouldn't go in the product # data files and shouldn't go in the product
java.base_EXCLUDE_FILES += sun/text/resources/BreakIteratorRules.java java.base_EXCLUDE_FILES += sun/text/resources/BreakIteratorRules.java
ifneq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), false)
java.base_EXCLUDE_FILES += \ java.base_EXCLUDE_FILES += \
SolarisLoginModule.java \ SolarisLoginModule.java \
SolarisSystem.java \ SolarisSystem.java \
# #
endif endif
ifeq ($(filter $(OPENJDK_TARGET_OS), solaris macosx aix), ) ifeq ($(call isTargetOs, solaris macosx aix), false)
#
# only solaris, macosx and aix
#
java.base_EXCLUDE_FILES += sun/nio/fs/PollingWatchService.java java.base_EXCLUDE_FILES += sun/nio/fs/PollingWatchService.java
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
java.base_EXCLUDE_FILES += \ java.base_EXCLUDE_FILES += \
sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \ sun/nio/ch/SimpleAsynchronousFileChannelImpl.java \
# #
@ -124,7 +121,7 @@ java.desktop_EXCLUDE_FILES += \
.template \ .template \
# #
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
# exclude all X11 on Mac. # exclude all X11 on Mac.
java.desktop_EXCLUDES += \ java.desktop_EXCLUDES += \
sun/awt/X11 \ sun/awt/X11 \
@ -186,7 +183,7 @@ else
sun/awt/X11/XwcTextItem.java sun/awt/X11/XwcTextItem.java
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
java.desktop_EXCLUDES += com/sun/java/swing/plaf/gtk java.desktop_EXCLUDES += com/sun/java/swing/plaf/gtk
endif endif
@ -194,8 +191,7 @@ ifdef BUILD_HEADLESS_ONLY
java.desktop_EXCLUDES += sun/applet java.desktop_EXCLUDES += sun/applet
endif endif
# Used on windows and macosx ifeq ($(call isTargetOs, windows macosx), false)
ifeq ($(filter $(OPENJDK_TARGET_OS), windows macosx), )
java.desktop_EXCLUDE_FILES += sun/awt/AWTCharset.java java.desktop_EXCLUDE_FILES += sun/awt/AWTCharset.java
endif endif
@ -374,11 +370,11 @@ SCTP_IMPL_CLASSES = \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SendFailed.java \ $(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/SendFailed.java \
$(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/Shutdown.java $(TOPDIR)/src/jdk.sctp/unix/classes/sun/nio/ch/sctp/Shutdown.java
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES) jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES)
endif endif
ifeq ($(OPENJDK_TARGET_OS),aix) ifeq ($(call isTargetOs, aix), true)
jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES) jdk.sctp_EXCLUDE_FILES += $(SCTP_IMPL_CLASSES)
endif endif

View File

@ -38,7 +38,7 @@ CONF_DIR := $(wildcard $(addsuffix /$(MODULE), $(IMPORT_MODULES_CONF)))
$(eval $(call FillCacheFind, $(LIBS_DIR) $(CMDS_DIR) $(CONF_DIR))) $(eval $(call FillCacheFind, $(LIBS_DIR) $(CMDS_DIR) $(CONF_DIR)))
ifneq ($(LIBS_DIR), ) ifneq ($(LIBS_DIR), )
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
TO_BIN_FILTER := %$(SHARED_LIBRARY_SUFFIX) %.diz %.pdb %.map TO_BIN_FILTER := %$(SHARED_LIBRARY_SUFFIX) %.diz %.pdb %.map
$(eval $(call SetupCopyFiles, COPY_LIBS_TO_BIN, \ $(eval $(call SetupCopyFiles, COPY_LIBS_TO_BIN, \

View File

@ -118,7 +118,7 @@ ifeq ($(MODULE), java.base)
endif endif
endif endif
else # not java.base else # not java.base
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# Only java.base needs to include the MSVC*_DLLs. Make sure no other module # Only java.base needs to include the MSVC*_DLLs. Make sure no other module
# tries to include them (typically imported ones). # tries to include them (typically imported ones).
ifneq ($(MSVCR_DLL), ) ifneq ($(MSVCR_DLL), )

View File

@ -144,7 +144,7 @@ ifneq ($(filter jdk, $(MAKECMDGOALS)), )
) )
ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), true) ifeq ($(ZIP_EXTERNAL_DEBUG_SYMBOLS), true)
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
DEMO_FILES := $(call not-containing, .dSYM, $(DEMO_FILES)) DEMO_FILES := $(call not-containing, .dSYM, $(DEMO_FILES))
else else
DEMO_FILES := $(filter-out %.debuginfo %.pdb %.map, $(DEMO_FILES)) DEMO_FILES := $(filter-out %.debuginfo %.pdb %.map, $(DEMO_FILES))
@ -192,7 +192,7 @@ ALL_JDK_MODULES := $(JDK_MODULES)
ALL_JRE_MODULES := $(sort $(JRE_MODULES), $(foreach m, $(JRE_MODULES), \ ALL_JRE_MODULES := $(sort $(JRE_MODULES), $(foreach m, $(JRE_MODULES), \
$(call FindTransitiveDepsForModule, $m))) $(call FindTransitiveDepsForModule, $m)))
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBS_TARGET_SUBDIR := bin LIBS_TARGET_SUBDIR := bin
else else
LIBS_TARGET_SUBDIR := lib LIBS_TARGET_SUBDIR := lib
@ -211,7 +211,7 @@ else
DEBUGINFO_SUFFIXES := .debuginfo .pdb .map DEBUGINFO_SUFFIXES := .debuginfo .pdb .map
# On Macosx, if debug symbols have not been zipped, find all files inside *.dSYM # On Macosx, if debug symbols have not been zipped, find all files inside *.dSYM
# dirs. # dirs.
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(eval $(call FillCacheFind, \ $(eval $(call FillCacheFind, \
$(SUPPORT_OUTPUTDIR)/modules_cmds $(SUPPORT_OUTPUTDIR)/modules_libs)) $(SUPPORT_OUTPUTDIR)/modules_cmds $(SUPPORT_OUTPUTDIR)/modules_libs))
FindDebuginfoFiles = \ FindDebuginfoFiles = \

View File

@ -483,7 +483,7 @@ else # $(HAS_SPEC)=true
$(TOUCH) $(SJAVAC_SERVER_DIR)/server.port.stop; true $(TOUCH) $(SJAVAC_SERVER_DIR)/server.port.stop; true
endef endef
ifeq ($(OPENJDK_BUILD_OS), windows) ifeq ($(call isBuildOs, windows), true)
# On windows we need to synchronize with the javac server to be able to # On windows we need to synchronize with the javac server to be able to
# move or remove the build output directory. Since we have no proper # move or remove the build output directory. Since we have no proper
# synchronization process, wait for a while and hope it helps. This is only # synchronization process, wait for a while and hope it helps. This is only

View File

@ -30,7 +30,7 @@ include TextFileProcessing.gmk
default: bundles default: bundles
# Only macosx has bundles defined. # Only macosx has bundles defined.
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
bundles: jre-bundle jdk-bundle bundles: jre-bundle jdk-bundle

View File

@ -1032,7 +1032,7 @@ ifneq ($(CREATE_BUILDJDK), true)
endif endif
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
product-images: mac-jdk-bundle product-images: mac-jdk-bundle
endif endif

View File

@ -42,7 +42,7 @@ TARGETS :=
include $(MAKEFILE_PREFIX)-$(MODULE).gmk include $(MAKEFILE_PREFIX)-$(MODULE).gmk
# Setup copy rules from the modules directories to the jdk image directory. # Setup copy rules from the modules directories to the jdk image directory.
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
TO_BIN_FILTER := %$(SHARED_LIBRARY_SUFFIX) %.diz %.pdb %.map TO_BIN_FILTER := %$(SHARED_LIBRARY_SUFFIX) %.diz %.pdb %.map
$(eval $(call SetupCopyFiles, COPY_LIBS_TO_BIN, \ $(eval $(call SetupCopyFiles, COPY_LIBS_TO_BIN, \

View File

@ -61,7 +61,7 @@ define SetTestOpt
endef endef
# Setup _NT_SYMBOL_PATH on Windows # Setup _NT_SYMBOL_PATH on Windows
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
ifndef _NT_SYMBOL_PATH ifndef _NT_SYMBOL_PATH
# Can't use PathList here as it adds quotes around the value. # Can't use PathList here as it adds quotes around the value.
_NT_SYMBOL_PATH := \ _NT_SYMBOL_PATH := \
@ -224,7 +224,7 @@ TEST_JOBS_FACTOR_MACHINE ?= 1
ifeq ($(TEST_JOBS), 0) ifeq ($(TEST_JOBS), 0)
CORES_DIVIDER := 2 CORES_DIVIDER := 2
ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) ifeq ($(call isTargetCpuArch, sparc), true)
# For smaller SPARC machines we see reasonable scaling of throughput up to # For smaller SPARC machines we see reasonable scaling of throughput up to
# cpus/4 without affecting test reliability. On the bigger machines, cpus/4 # cpus/4 without affecting test reliability. On the bigger machines, cpus/4
# causes intermittent timeouts. # causes intermittent timeouts.
@ -808,7 +808,7 @@ define SetupRunJtregTestBody
$1_JTREG_MAX_RAM_PERCENTAGE := $$(shell $$(EXPR) 25 / $$($1_JTREG_JOBS)) $1_JTREG_MAX_RAM_PERCENTAGE := $$(shell $$(EXPR) 25 / $$($1_JTREG_JOBS))
# SPARC is in general slower per core so need to scale up timeouts a bit. # SPARC is in general slower per core so need to scale up timeouts a bit.
ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) ifeq ($(call isTargetCpuArch, sparc), true)
JTREG_TIMEOUT_FACTOR ?= 8 JTREG_TIMEOUT_FACTOR ?= 8
else else
JTREG_TIMEOUT_FACTOR ?= 4 JTREG_TIMEOUT_FACTOR ?= 4
@ -835,7 +835,7 @@ define SetupRunJtregTestBody
$1_JTREG_BASIC_OPTIONS += -e:JDK8_HOME=$$(BOOT_JDK) $1_JTREG_BASIC_OPTIONS += -e:JDK8_HOME=$$(BOOT_JDK)
# If running on Windows, propagate the _NT_SYMBOL_PATH to enable # If running on Windows, propagate the _NT_SYMBOL_PATH to enable
# symbol lookup in hserr files # symbol lookup in hserr files
ifeq ($$(OPENJDK_TARGET_OS), windows) ifeq ($$(call isTargetOs, windows), true)
$1_JTREG_BASIC_OPTIONS += -e:_NT_SYMBOL_PATH $1_JTREG_BASIC_OPTIONS += -e:_NT_SYMBOL_PATH
endif endif

View File

@ -30,7 +30,7 @@ include MakeBase.gmk
############################################################################ ############################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
FIXPATH_COPY := $(TEST_IMAGE_DIR)/bin/fixpath.exe FIXPATH_COPY := $(TEST_IMAGE_DIR)/bin/fixpath.exe
$(FIXPATH_COPY): $(firstword $(FIXPATH)) $(FIXPATH_COPY): $(firstword $(FIXPATH))

View File

@ -70,7 +70,7 @@ TARGETS += $(IMAGES_OUTPUTDIR)/sec-bin.zip
# #
# Windows specific binary security packages. # Windows specific binary security packages.
# #
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# sec-windows-bin.zip is used by builds where the corresponding sources are not available # sec-windows-bin.zip is used by builds where the corresponding sources are not available
$(eval $(call SetupZipArchive,BUILD_SEC_WINDOWS_BIN_ZIP, \ $(eval $(call SetupZipArchive,BUILD_SEC_WINDOWS_BIN_ZIP, \
SRC := $(JDK_OUTPUTDIR), \ SRC := $(JDK_OUTPUTDIR), \
@ -80,7 +80,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
TARGETS += $(IMAGES_OUTPUTDIR)/sec-windows-bin.zip TARGETS += $(IMAGES_OUTPUTDIR)/sec-windows-bin.zip
# JGSS files contain the native Kerberos library # JGSS files contain the native Kerberos library
ifeq ($(OPENJDK_TARGET_CPU), x86_64) ifeq ($(call isTargetCpu, x86_64), true)
JGSS_ZIP_NAME = jgss-windows-x64-bin.zip JGSS_ZIP_NAME = jgss-windows-x64-bin.zip
else else
JGSS_ZIP_NAME = jgss-windows-i586-bin.zip JGSS_ZIP_NAME = jgss-windows-i586-bin.zip

View File

@ -258,7 +258,7 @@ MakeTargetDir = \
################################################################################ ################################################################################
# All install-file and related macros automatically call DecodeSpace when needed. # All install-file and related macros automatically call DecodeSpace when needed.
ifeq ($(OPENJDK_TARGET_OS),solaris) ifeq ($(call isTargetOs, solaris), true)
# On Solaris, if the target is a symlink and exists, cp won't overwrite. # On Solaris, if the target is a symlink and exists, cp won't overwrite.
# Cp has to operate in recursive mode to allow for -P flag, to preserve soft links. If the # Cp has to operate in recursive mode to allow for -P flag, to preserve soft links. If the
# name of the target file differs from the source file, rename after copy. # name of the target file differs from the source file, rename after copy.
@ -284,7 +284,7 @@ ifeq ($(OPENJDK_TARGET_OS),solaris)
$(CP) -f '$(call DecodeSpace, $<)' '$(call DecodeSpace, $@)'; \ $(CP) -f '$(call DecodeSpace, $<)' '$(call DecodeSpace, $@)'; \
fi fi
endef endef
else ifeq ($(OPENJDK_TARGET_OS),macosx) else ifeq ($(call isTargetOs, macosx), true)
# On mac, extended attributes sometimes creep into the source files, which may later # On mac, extended attributes sometimes creep into the source files, which may later
# cause the creation of ._* files which confuses testing. Clear these with xattr if # cause the creation of ._* files which confuses testing. Clear these with xattr if
# set. Some files get their write permissions removed after being copied to the # set. Some files get their write permissions removed after being copied to the
@ -418,7 +418,7 @@ endif
# unchanged. # unchanged.
# This is normally not needed since we use the FIXPATH prefix for command lines, # This is normally not needed since we use the FIXPATH prefix for command lines,
# but might be needed in certain circumstances. # but might be needed in certain circumstances.
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
FixPath = \ FixPath = \
$(shell $(CYGPATH) -m $1) $(shell $(CYGPATH) -m $1)
else else

View File

@ -117,11 +117,11 @@ PLATFORM_MODULES += \
jdk.zipfs \ jdk.zipfs \
# #
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
PLATFORM_MODULES += jdk.crypto.mscapi PLATFORM_MODULES += jdk.crypto.mscapi
endif endif
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
PLATFORM_MODULES += jdk.crypto.ucrypto PLATFORM_MODULES += jdk.crypto.ucrypto
endif endif

View File

@ -175,9 +175,9 @@ $(strip \
) )
endef endef
ifeq ($(OPENJDK_BUILD_OS_ENV), windows.cygwin) ifeq ($(call isBuildOsEnv, windows.cygwin), true)
UNIX_PATH_PREFIX := /cygdrive UNIX_PATH_PREFIX := /cygdrive
else ifeq ($(OPENJDK_BUILD_OS_ENV), windows.msys) else ifeq ($(call isBuildOsEnv, windows.msys), true)
UNIX_PATH_PREFIX := UNIX_PATH_PREFIX :=
endif endif
@ -770,7 +770,7 @@ define SetupNativeCompilationBody
$(TOUCH) $$@ $(TOUCH) $$@
# On windows we need to create a resource file # On windows we need to create a resource file
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
ifneq ($$($1_VERSIONINFO_RESOURCE), ) ifneq ($$($1_VERSIONINFO_RESOURCE), )
$1_RES := $$($1_OBJECT_DIR)/$$($1_BASENAME).res $1_RES := $$($1_OBJECT_DIR)/$$($1_BASENAME).res
$1_RES_DEP := $$($1_RES).d $1_RES_DEP := $$($1_RES).d
@ -808,7 +808,7 @@ define SetupNativeCompilationBody
ifneq ($(DISABLE_MAPFILES), true) ifneq ($(DISABLE_MAPFILES), true)
$1_REAL_MAPFILE := $$($1_MAPFILE) $1_REAL_MAPFILE := $$($1_MAPFILE)
ifneq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), false)
ifneq ($$($1_REORDER), ) ifneq ($$($1_REORDER), )
$1_REAL_MAPFILE := $$($1_OBJECT_DIR)/mapfile $1_REAL_MAPFILE := $$($1_OBJECT_DIR)/mapfile
@ -845,13 +845,13 @@ define SetupNativeCompilationBody
# Only copy debug symbols for dynamic libraries and programs. # Only copy debug symbols for dynamic libraries and programs.
ifneq ($$($1_TYPE), STATIC_LIBRARY) ifneq ($$($1_TYPE), STATIC_LIBRARY)
# Generate debuginfo files. # Generate debuginfo files.
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$1_EXTRA_LDFLAGS += -debug "-pdb:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).pdb" \ $1_EXTRA_LDFLAGS += -debug "-pdb:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).pdb" \
"-map:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).map" "-map:$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).map"
$1_DEBUGINFO_FILES := $$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).pdb \ $1_DEBUGINFO_FILES := $$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).pdb \
$$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).map $$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).map
else ifneq ($(findstring $(OPENJDK_TARGET_OS), linux solaris), ) else ifeq ($(call isTargetOs, linux solaris), true)
$1_DEBUGINFO_FILES := $$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).debuginfo $1_DEBUGINFO_FILES := $$($1_OUTPUT_DIR)/$$($1_NOSUFFIX).debuginfo
# Setup the command line creating debuginfo files, to be run after linking. # Setup the command line creating debuginfo files, to be run after linking.
# It cannot be run separately since it updates the original target file # It cannot be run separately since it updates the original target file
@ -860,13 +860,13 @@ define SetupNativeCompilationBody
$(CD) $$($1_OUTPUT_DIR) && \ $(CD) $$($1_OUTPUT_DIR) && \
$$($1_OBJCOPY) --add-gnu-debuglink=$$($1_DEBUGINFO_FILES) $$($1_TARGET) $$($1_OBJCOPY) --add-gnu-debuglink=$$($1_DEBUGINFO_FILES) $$($1_TARGET)
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
$1_DEBUGINFO_FILES := \ $1_DEBUGINFO_FILES := \
$$($1_OUTPUT_DIR)/$$($1_BASENAME).dSYM/Contents/Info.plist \ $$($1_OUTPUT_DIR)/$$($1_BASENAME).dSYM/Contents/Info.plist \
$$($1_OUTPUT_DIR)/$$($1_BASENAME).dSYM/Contents/Resources/DWARF/$$($1_BASENAME) $$($1_OUTPUT_DIR)/$$($1_BASENAME).dSYM/Contents/Resources/DWARF/$$($1_BASENAME)
$1_CREATE_DEBUGINFO_CMDS := \ $1_CREATE_DEBUGINFO_CMDS := \
$(DSYMUTIL) --out $$($1_OUTPUT_DIR)/$$($1_BASENAME).dSYM $$($1_TARGET) $(DSYMUTIL) --out $$($1_OUTPUT_DIR)/$$($1_BASENAME).dSYM $$($1_TARGET)
endif # OPENJDK_TARGET_OS endif
# Since the link rule creates more than one file that we want to track, # Since the link rule creates more than one file that we want to track,
# we have to use some tricks to get make to cooperate. To properly # we have to use some tricks to get make to cooperate. To properly
@ -952,7 +952,7 @@ define SetupNativeCompilationBody
endif endif
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
ifeq ($$($1_EMBED_MANIFEST), true) ifeq ($$($1_EMBED_MANIFEST), true)
$1_EXTRA_LDFLAGS += -manifest:embed $1_EXTRA_LDFLAGS += -manifest:embed
endif endif
@ -1032,7 +1032,7 @@ define SetupNativeCompilationBody
# Keep as much as possible on one execution line for best performance # Keep as much as possible on one execution line for best performance
# on Windows # on Windows
$$(call LogInfo, Linking $$($1_BASENAME)) $$(call LogInfo, Linking $$($1_BASENAME))
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$$(call ExecuteWithLog, $$($1_OBJECT_DIR)/$$($1_SAFE_NAME)_link, \ $$(call ExecuteWithLog, $$($1_OBJECT_DIR)/$$($1_SAFE_NAME)_link, \
$$($1_LD) $$($1_LDFLAGS) $$($1_EXTRA_LDFLAGS) $$($1_SYSROOT_LDFLAGS) \ $$($1_LD) $$($1_LDFLAGS) $$($1_EXTRA_LDFLAGS) $$($1_SYSROOT_LDFLAGS) \
$(LD_OUT_OPTION)$$($1_TARGET) $$($1_LD_OBJ_ARG) $$($1_RES) $$(GLOBAL_LIBS) \ $(LD_OUT_OPTION)$$($1_TARGET) $$($1_LD_OBJ_ARG) $$($1_RES) $$(GLOBAL_LIBS) \
@ -1050,7 +1050,7 @@ define SetupNativeCompilationBody
$$($1_CREATE_DEBUGINFO_CMDS) $$($1_CREATE_DEBUGINFO_CMDS)
$$($1_STRIP_CMD) $$($1_STRIP_CMD)
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
ifneq ($$($1_MANIFEST), ) ifneq ($$($1_MANIFEST), )
$$($1_MT) -nologo -manifest $$($1_MANIFEST) -identity:"$$($1_NAME).exe, version=$$($1_MANIFEST_VERSION)" -outputresource:$$@;#1 $$($1_MT) -nologo -manifest $$($1_MANIFEST) -identity:"$$($1_NAME).exe, version=$$($1_MANIFEST_VERSION)" -outputresource:$$@;#1
endif endif

View File

@ -180,6 +180,23 @@ uppercase = \
$(uppercase_result) \ $(uppercase_result) \
) )
################################################################################
# Boolean operators.
# Return the word "true" if all the boolean words given as argument is "true",
# and returns "false" otherwise. Boolean words must be "true" or "false". It is
# an error to supply a non-boolean word. An empty string is considered "true".
And = \
$(strip $(if $(filter-out true false, $1), $(error Non-boolean values: $1)) \
$(if $(strip $(filter-out true, $1)), false, true))
# Return the word "false" if all the boolean words given as argument is "false",
# and returns "true" otherwise. Boolean words must be "true" or "false". It is
# an error to supply a non-boolean word. An empty string is considered "false".
Or = \
$(strip $(if $(filter-out true false, $1), $(error Non-boolean values: $1)) \
$(if $(strip $(filter-out false, $1)), true, false))
################################################################################ ################################################################################
# Parse a multiple-keyword variable, like FOO="KEYWORD1=val1;KEYWORD2=val2;..." # Parse a multiple-keyword variable, like FOO="KEYWORD1=val1;KEYWORD2=val2;..."
# These will be converted into a series of variables like FOO_KEYWORD1=val1, # These will be converted into a series of variables like FOO_KEYWORD1=val1,
@ -268,6 +285,50 @@ check-jvm-variant = \
$(error Internal error: Invalid variant tested: $1)) \ $(error Internal error: Invalid variant tested: $1)) \
$(if $(filter $1, $(JVM_VARIANTS)), true, false)) $(if $(filter $1, $(JVM_VARIANTS)), true, false))
################################################################################
# Check if our build or target conforms to certain restrictions. This set of
# functions all work in similar ways, testing the property that the name
# implies, so e.g. isTargetCpu test the CPU of the target system.
#
# $1 - A property, or a space separated list of properties to test for.
#
# Returns true if the actual property matches one of the properties in the list,
# and false otherwise.
#
# Examples: $(call isTargetOs, linux solaris) will return true when executed
# on either linux or solaris, and false otherwise.
# $(call isBuildCpuArch, x86) will return true iff the build CPU Arch is x86.
isTargetOs = \
$(strip $(if $(filter $(OPENJDK_TARGET_OS), $1), true, false))
isTargetOsType = \
$(strip $(if $(filter $(OPENJDK_TARGET_OS_TYPE), $1), true, false))
isTargetCpu = \
$(strip $(if $(filter $(OPENJDK_TARGET_CPU), $1), true, false))
isTargetCpuArch = \
$(strip $(if $(filter $(OPENJDK_TARGET_CPU_ARCH), $1), true, false))
isTargetCpuBits = \
$(strip $(if $(filter $(OPENJDK_TARGET_CPU_BITS), $1), true, false))
isBuildOs = \
$(strip $(if $(filter $(OPENJDK_BUILD_OS), $1), true, false))
isBuildOsType = \
$(strip $(if $(filter $(OPENJDK_BUILD_OS_TYPE), $1), true, false))
isBuildOsEnv = \
$(strip $(if $(filter $(OPENJDK_BUILD_OS_ENV), $1), true, false))
isBuildCpu = \
$(strip $(if $(filter $(OPENJDK_BUILD_CPU), $1), true, false))
isBuildCpuArch = \
$(strip $(if $(filter $(OPENJDK_BUILD_CPU_ARCH), $1), true, false))
################################################################################ ################################################################################
# Converts a space separated list to a comma separated list. # Converts a space separated list to a comma separated list.
# #

View File

@ -31,7 +31,7 @@ $(eval $(call IncludeCustomExtension, copy/Copy-java.base.gmk))
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), aix) ifeq ($(call isTargetOs, aix), true)
TZMAPPINGS_SRC := $(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS)/conf TZMAPPINGS_SRC := $(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS)/conf
@ -44,7 +44,7 @@ endif
################################################################################ ################################################################################
# Copy the microsoft runtime libraries on windows # Copy the microsoft runtime libraries on windows
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# Chmod to avoid permission issues if bundles are unpacked on unix platforms. # Chmod to avoid permission issues if bundles are unpacked on unix platforms.
define copy-and-chmod define copy-and-chmod
@ -81,7 +81,7 @@ endif
################################################################################ ################################################################################
# In jvm.cfg, the first listed KNOWN variant is the default. On most build # In jvm.cfg, the first listed KNOWN variant is the default. On most build
# configurations, that is the server variant. # configurations, that is the server variant.
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), windows-x86) ifeq ($(call And, $(call isTargetOs, windows) $(call isTargetCpu, x86)), true)
DEFAULT_CFG_VARIANT ?= client DEFAULT_CFG_VARIANT ?= client
endif endif
DEFAULT_CFG_VARIANT ?= server DEFAULT_CFG_VARIANT ?= server
@ -143,7 +143,7 @@ DEF_POLICY_DST := $(LIB_DST_DIR)/security/default.policy
DEF_POLICY_SRC_LIST := $(DEF_POLICY_SRC) DEF_POLICY_SRC_LIST := $(DEF_POLICY_SRC)
DEF_POLICY_SRC_LIST += $(CUSTOM_POLICY_SRC_LIST) DEF_POLICY_SRC_LIST += $(CUSTOM_POLICY_SRC_LIST)
ifneq ($(filter $(OPENJDK_TARGET_OS), windows solaris), ) ifeq ($(call isTargetOs, windows solaris), true)
DEF_POLICY_SRC_LIST += $(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS)/lib/security/default.policy DEF_POLICY_SRC_LIST += $(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS)/lib/security/default.policy
endif endif
@ -183,7 +183,7 @@ $(eval $(call SetupCopyFiles, COPY_NET_PROPERTIES, \
TARGETS += $(COPY_NET_PROPERTIES) TARGETS += $(COPY_NET_PROPERTIES)
ifneq ($(filter $(OPENJDK_TARGET_OS), solaris linux), ) ifeq ($(call isTargetOs, solaris linux), true)
$(eval $(call SetupCopyFiles, COPY_SDP_CONF, \ $(eval $(call SetupCopyFiles, COPY_SDP_CONF, \
FILES := $(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_TYPE)/conf/sdp/sdp.conf.template, \ FILES := $(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS_TYPE)/conf/sdp/sdp.conf.template, \
DEST := $(CONF_DST_DIR)/sdp, \ DEST := $(CONF_DST_DIR)/sdp, \

View File

@ -27,7 +27,7 @@ include CopyCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
SUNPKCS11_CFG_SRC := \ SUNPKCS11_CFG_SRC := \
$(TOPDIR)/src/jdk.crypto.cryptoki/solaris/conf/security/sunpkcs11-solaris.cfg $(TOPDIR)/src/jdk.crypto.cryptoki/solaris/conf/security/sunpkcs11-solaris.cfg

View File

@ -27,7 +27,7 @@ include CopyCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
UCRYPTO_CFG_SRC := $(TOPDIR)/src/jdk.crypto.ucrypto/solaris/conf/security/ucrypto-solaris.cfg UCRYPTO_CFG_SRC := $(TOPDIR)/src/jdk.crypto.ucrypto/solaris/conf/security/ucrypto-solaris.cfg
UCRYPTO_CFG_DST := $(CONF_DST_DIR)/security/ucrypto-solaris.cfg UCRYPTO_CFG_DST := $(CONF_DST_DIR)/security/ucrypto-solaris.cfg

View File

@ -28,11 +28,11 @@ include GensrcCommonJdk.gmk
# Hook to include the corresponding custom file, if present. # Hook to include the corresponding custom file, if present.
$(eval $(call IncludeCustomExtension, gensrc/Gensrc-java.desktop.gmk)) $(eval $(call IncludeCustomExtension, gensrc/Gensrc-java.desktop.gmk))
ifneq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), false)
include GensrcIcons.gmk include GensrcIcons.gmk
endif endif
ifneq ($(filter $(OPENJDK_TARGET_OS), linux solaris aix), ) ifeq ($(call isTargetOs, linux solaris aix), true)
include GensrcX11Wrappers.gmk include GensrcX11Wrappers.gmk
endif endif
@ -52,21 +52,21 @@ PROP_SRC_DIRS := \
$(TOPDIR)/src/java.desktop/share/classes/sun/print/resources \ $(TOPDIR)/src/java.desktop/share/classes/sun/print/resources \
# #
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
PROP_SRC_DIRS += \ PROP_SRC_DIRS += \
$(TOPDIR)/src/java.desktop/macosx/classes/com/apple/laf/resources \ $(TOPDIR)/src/java.desktop/macosx/classes/com/apple/laf/resources \
$(TOPDIR)/src/java.desktop/macosx/classes/sun/awt/resources \ $(TOPDIR)/src/java.desktop/macosx/classes/sun/awt/resources \
# #
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
PROP_SRC_DIRS += \ PROP_SRC_DIRS += \
$(TOPDIR)/src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/resources \ $(TOPDIR)/src/java.desktop/windows/classes/com/sun/java/swing/plaf/windows/resources \
$(TOPDIR)/src/java.desktop/windows/classes/sun/awt/windows \ $(TOPDIR)/src/java.desktop/windows/classes/sun/awt/windows \
# #
endif endif
ifeq ($(filter $(OPENJDK_TARGET_OS), windows macosx), ) ifeq ($(call isTargetOs, windows macosx), false)
PROP_SRC_DIRS += $(TOPDIR)/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources PROP_SRC_DIRS += $(TOPDIR)/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/resources
endif endif

View File

@ -42,7 +42,7 @@ TARGETS += $(SA_PROPERTIES)
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
MIG_OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.hotspot.agent MIG_OUTPUT_DIR := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.hotspot.agent
MACH_EXC_HEADER := $(MIG_OUTPUT_DIR)/mach_exc.h MACH_EXC_HEADER := $(MIG_OUTPUT_DIR)/mach_exc.h
MACH_EXC_USER := $(MIG_OUTPUT_DIR)/mach_excUser.c MACH_EXC_USER := $(MIG_OUTPUT_DIR)/mach_excUser.c

View File

@ -108,7 +108,7 @@ GENSRC_JAVA_DESKTOP += $(GENSRC_AWT_ICONS)
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
GENSRC_OSX_ICONS_DST := $(SUPPORT_OUTPUTDIR)/headers/java.desktop GENSRC_OSX_ICONS_DST := $(SUPPORT_OUTPUTDIR)/headers/java.desktop
GENSRC_OSX_ICONS := $(GENSRC_OSX_ICONS_DST)/AWTIconData.h GENSRC_OSX_ICONS := $(GENSRC_OSX_ICONS_DST)/AWTIconData.h

View File

@ -89,7 +89,7 @@ GENSRC_JAVA_BASE += $(GENSRC_SOR_FILE)
################################################################################ ################################################################################
ifneq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), false)
GENSRC_UC_FILE := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/nio/fs/UnixConstants.java GENSRC_UC_FILE := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/nio/fs/UnixConstants.java
@ -103,7 +103,7 @@ endif
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
GENSRC_SC_FILE := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/nio/fs/SolarisConstants.java GENSRC_SC_FILE := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/sun/nio/fs/SolarisConstants.java

View File

@ -25,7 +25,7 @@
# Copy all built libraries into exploded jdk # Copy all built libraries into exploded jdk
LIB_TARGETS := $(filter $(LIB_OUTPUTDIR)/%, $(TARGETS)) LIB_TARGETS := $(filter $(LIB_OUTPUTDIR)/%, $(TARGETS))
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupCopyFiles, COPY_LIBS_BIN, \ $(eval $(call SetupCopyFiles, COPY_LIBS_BIN, \
SRC := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base, \ SRC := $(SUPPORT_OUTPUTDIR)/modules_libs/java.base, \
DEST := $(JDK_OUTPUTDIR)/bin, \ DEST := $(JDK_OUTPUTDIR)/bin, \

View File

@ -34,16 +34,16 @@ ifeq ($(call check-jvm-feature, compiler2), true)
# Flags depending on the build platform/tool chain # Flags depending on the build platform/tool chain
# NOTE: No optimization or debug flags set here # NOTE: No optimization or debug flags set here
ifeq ($(OPENJDK_BUILD_OS), linux) ifeq ($(call isBuildOs, linux), true)
ADLC_CFLAGS := -fno-exceptions -DLINUX ADLC_CFLAGS := -fno-exceptions -DLINUX
else ifeq ($(OPENJDK_BUILD_OS), solaris) else ifeq ($(call isBuildOs, solaris), true)
ADLC_LDFLAGS := -m64 ADLC_LDFLAGS := -m64
ADLC_CFLAGS := -m64 ADLC_CFLAGS := -m64
ADLC_CFLAGS_WARNINGS := +w ADLC_CFLAGS_WARNINGS := +w
else ifeq ($(OPENJDK_BUILD_OS), aix) else ifeq ($(call isBuildOs, aix), true)
ADLC_LDFLAGS := -q64 ADLC_LDFLAGS := -q64
ADLC_CFLAGS := -qnortti -qeh -q64 -DAIX ADLC_CFLAGS := -qnortti -qeh -q64 -DAIX
else ifeq ($(OPENJDK_BUILD_OS), windows) else ifeq ($(call isBuildOs, windows), true)
ADLC_LDFLAGS := -nologo ADLC_LDFLAGS := -nologo
ADLC_CFLAGS := -nologo -EHsc ADLC_CFLAGS := -nologo -EHsc
# NOTE: The old build also have -D_CRT_SECURE_NO_DEPRECATE but it doesn't # NOTE: The old build also have -D_CRT_SECURE_NO_DEPRECATE but it doesn't
@ -87,17 +87,17 @@ ifeq ($(call check-jvm-feature, compiler2), true)
ADLCFLAGS += -q -T ADLCFLAGS += -q -T
# ADLC flags depending on target OS # ADLC flags depending on target OS
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
ADLCFLAGS += -DLINUX=1 -D_GNU_SOURCE=1 ADLCFLAGS += -DLINUX=1 -D_GNU_SOURCE=1
else ifeq ($(OPENJDK_TARGET_OS), solaris) else ifeq ($(call isTargetOs, solaris), true)
ADLCFLAGS += -DSOLARIS=1 -DSPARC_WORKS=1 ADLCFLAGS += -DSOLARIS=1 -DSPARC_WORKS=1
else ifeq ($(OPENJDK_TARGET_OS), aix) else ifeq ($(call isTargetOs, aix), true)
ADLCFLAGS += -DAIX=1 ADLCFLAGS += -DAIX=1
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
ADLCFLAGS += -D_ALLBSD_SOURCE=1 -D_GNU_SOURCE=1 ADLCFLAGS += -D_ALLBSD_SOURCE=1 -D_GNU_SOURCE=1
endif endif
ifneq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), false)
# NOTE: Windows adlc flags was different in the old build. Is this really # NOTE: Windows adlc flags was different in the old build. Is this really
# correct? # correct?
@ -109,7 +109,7 @@ ifeq ($(call check-jvm-feature, compiler2), true)
# This generates checks in the generated C++ files that _LP64 is correctly # This generates checks in the generated C++ files that _LP64 is correctly
# (un)defined when compiling them. # (un)defined when compiling them.
ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) ifeq ($(call isTargetCpuBits, 64), true)
ADLCFLAGS += -D_LP64=1 ADLCFLAGS += -D_LP64=1
else else
ADLCFLAGS += -U_LP64 ADLCFLAGS += -U_LP64

View File

@ -28,12 +28,12 @@
ifeq ($(call check-jvm-feature, dtrace), true) ifeq ($(call check-jvm-feature, dtrace), true)
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
DTRACE_FLAGS := -64 DTRACE_FLAGS := -64
DTRACE_CPP_FLAGS := -D_LP64 DTRACE_CPP_FLAGS := -D_LP64
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
DTRACE_CPP_FLAGS := -D_LP64 -x c DTRACE_CPP_FLAGS := -D_LP64 -x c
else ifeq ($(OPENJDK_TARGET_OS), linux) else ifeq ($(call isTargetOs, linux), true)
DTRACE_CPP_FLAGS := -x c DTRACE_CPP_FLAGS := -x c
endif endif
@ -54,7 +54,7 @@ ifeq ($(call check-jvm-feature, dtrace), true)
TARGETS += $(patsubst $(DTRACE_SOURCE_DIR)/%.d, \ TARGETS += $(patsubst $(DTRACE_SOURCE_DIR)/%.d, \
$(DTRACE_GENSRC_DIR)/%.h, $(wildcard $(DTRACE_SOURCE_DIR)/*.d)) $(DTRACE_GENSRC_DIR)/%.h, $(wildcard $(DTRACE_SOURCE_DIR)/*.d))
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
############################################################################ ############################################################################
# First we need to generate the dtraceGenOffsets tool. When run, this will # First we need to generate the dtraceGenOffsets tool. When run, this will
# produce two header files and a C++ file. Note that generateJvmOffsets.cpp # produce two header files and a C++ file. Note that generateJvmOffsets.cpp

View File

@ -31,7 +31,7 @@ include MakeBase.gmk
include JavaCompilation.gmk include JavaCompilation.gmk
include SetupJavaCompilers.gmk include SetupJavaCompilers.gmk
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# The next part is a bit hacky. We include the CompileJvm.gmk to be # The next part is a bit hacky. We include the CompileJvm.gmk to be
# able to extact flags, but we do not wish to execute the rules. # able to extact flags, but we do not wish to execute the rules.
@ -46,12 +46,12 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
# Helper macro to convert a unix path to a Windows path, suitable for # Helper macro to convert a unix path to a Windows path, suitable for
# inclusion in a command line. # inclusion in a command line.
ifeq ($(OPENJDK_BUILD_OS_ENV), windows.cygwin) ifeq ($(call isBuildOsEnv, windows.cygwin), true)
FixPath = \ FixPath = \
$(strip $(subst \,\\,$(shell $(CYGPATH) -w $1))) $(strip $(subst \,\\,$(shell $(CYGPATH) -w $1)))
FixLinuxExecutable = \ FixLinuxExecutable = \
$(call FixPath, $1) $(call FixPath, $1)
else ifeq ($(OPENJDK_BUILD_OS_ENV), windows.wsl) else ifeq ($(call isBuildOsEnv, windows.wsl), true)
FixPath = \ FixPath = \
$(strip $(subst \,\\,$(shell $(WSLPATH) -w $1))) $(strip $(subst \,\\,$(shell $(WSLPATH) -w $1)))
FixLinuxExecutable = \ FixLinuxExecutable = \

View File

@ -24,7 +24,7 @@
# #
ifeq ($(call check-jvm-feature, dtrace), true) ifeq ($(call check-jvm-feature, dtrace), true)
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
JNI_INCLUDE_FLAGS := \ JNI_INCLUDE_FLAGS := \
-I$(SUPPORT_OUTPUTDIR)/modules_include/java.base \ -I$(SUPPORT_OUTPUTDIR)/modules_include/java.base \
-I$(SUPPORT_OUTPUTDIR)/modules_include/java.base/$(OPENJDK_TARGET_OS_INCLUDE_SUBDIR) \ -I$(SUPPORT_OUTPUTDIR)/modules_include/java.base/$(OPENJDK_TARGET_OS_INCLUDE_SUBDIR) \

View File

@ -31,7 +31,7 @@ GTEST_FRAMEWORK_SRC := $(TOPDIR)/test/fmw/gtest
# On Windows, there are no internal debug symbols so must set copying to true # On Windows, there are no internal debug symbols so must set copying to true
# to get any at all. # to get any at all.
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
GTEST_COPY_DEBUG_SYMBOLS := true GTEST_COPY_DEBUG_SYMBOLS := true
else else
GTEST_COPY_DEBUG_SYMBOLS := false GTEST_COPY_DEBUG_SYMBOLS := false
@ -39,7 +39,7 @@ endif
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
GTEST_JVM_MAPFILE := $(JVM_MAPFILE) GTEST_JVM_MAPFILE := $(JVM_MAPFILE)
else else
GTEST_JVM_MAPFILE := $(JVM_OUTPUTDIR)/gtest/mapfile GTEST_JVM_MAPFILE := $(JVM_OUTPUTDIR)/gtest/mapfile

View File

@ -56,9 +56,9 @@ JVM_EXCLUDE_FILES += args.cc
JVM_EXCLUDES += adlc JVM_EXCLUDES += adlc
# Needed by vm_version.cpp # Needed by vm_version.cpp
ifeq ($(OPENJDK_TARGET_CPU), x86_64) ifeq ($(call isTargetCpu, x86_64), true)
OPENJDK_TARGET_CPU_VM_VERSION := amd64 OPENJDK_TARGET_CPU_VM_VERSION := amd64
else ifeq ($(OPENJDK_TARGET_CPU), sparcv9) else ifeq ($(call isTargetCpu, sparcv9), true)
OPENJDK_TARGET_CPU_VM_VERSION := sparc OPENJDK_TARGET_CPU_VM_VERSION := sparc
else else
OPENJDK_TARGET_CPU_VM_VERSION := $(OPENJDK_TARGET_CPU) OPENJDK_TARGET_CPU_VM_VERSION := $(OPENJDK_TARGET_CPU)
@ -107,10 +107,10 @@ DISABLED_WARNINGS_microsoft :=
# ARM source selection # ARM source selection
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), linux-arm) ifeq ($(call And, $(call isTargetOs, linux) $(call isTargetCpu, arm)), true)
JVM_EXCLUDE_PATTERNS += arm_64 JVM_EXCLUDE_PATTERNS += arm_64
else ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), linux-aarch64) else ifeq ($(call And, $(call isTargetOs, linux) $(call isTargetCpu, aarch64)), true)
# For 64-bit arm builds, we use the 64 bit hotspot/src/cpu/arm # For 64-bit arm builds, we use the 64 bit hotspot/src/cpu/arm
# hotspot sources if HOTSPOT_TARGET_CPU_ARCH is set to arm. # hotspot sources if HOTSPOT_TARGET_CPU_ARCH is set to arm.
# Exclude the aarch64 and 32 bit arm files for this build. # Exclude the aarch64 and 32 bit arm files for this build.
@ -119,21 +119,21 @@ else ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), linux-aarch64)
endif endif
endif endif
ifneq ($(filter $(OPENJDK_TARGET_OS), linux macosx windows), ) ifeq ($(call isTargetOs, linux macosx windows), true)
JVM_PRECOMPILED_HEADER := $(TOPDIR)/src/hotspot/share/precompiled/precompiled.hpp JVM_PRECOMPILED_HEADER := $(TOPDIR)/src/hotspot/share/precompiled/precompiled.hpp
endif endif
ifeq ($(OPENJDK_TARGET_CPU), x86) ifeq ($(call isTargetCpu, x86), true)
JVM_EXCLUDE_PATTERNS += x86_64 JVM_EXCLUDE_PATTERNS += x86_64
else ifeq ($(OPENJDK_TARGET_CPU), x86_64) else ifeq ($(call isTargetCpu, x86_64), true)
JVM_EXCLUDE_PATTERNS += x86_32 JVM_EXCLUDE_PATTERNS += x86_32
endif endif
# Inline assembly for solaris # Inline assembly for solaris
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
ifeq ($(OPENJDK_TARGET_CPU), x86_64) ifeq ($(call isTargetCpu, x86_64), true)
JVM_CFLAGS += $(TOPDIR)/src/hotspot/os_cpu/solaris_x86/solaris_x86_64.il JVM_CFLAGS += $(TOPDIR)/src/hotspot/os_cpu/solaris_x86/solaris_x86_64.il
else ifeq ($(OPENJDK_TARGET_CPU), sparcv9) else ifeq ($(call isTargetCpu, sparcv9), true)
JVM_CFLAGS += $(TOPDIR)/src/hotspot/os_cpu/solaris_sparc/solaris_sparc.il JVM_CFLAGS += $(TOPDIR)/src/hotspot/os_cpu/solaris_sparc/solaris_sparc.il
endif endif
# Exclude warnings in devstudio 12.6 # Exclude warnings in devstudio 12.6
@ -143,7 +143,7 @@ ifeq ($(OPENJDK_TARGET_OS), solaris)
endif endif
endif endif
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), solaris-sparcv9) ifeq ($(call And, $(call isTargetOs, solaris) $(call isTargetCpu, sparcv9)), true)
ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), false) ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), false)
# NOTE: In the old build, we weirdly enough set -g/-g0 always, regardless # NOTE: In the old build, we weirdly enough set -g/-g0 always, regardless
# of if debug symbols were needed. Without it, compilation fails on # of if debug symbols were needed. Without it, compilation fails on
@ -152,8 +152,8 @@ ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), solaris-sparcv9)
endif endif
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) ifeq ($(call isTargetCpuBits, 64), true)
RC_DESC := 64-Bit$(SPACE) RC_DESC := 64-Bit$(SPACE)
endif endif
JVM_RCFLAGS += -D"HS_FILEDESC=$(HOTSPOT_VM_DISTRO) $(RC_DESC)$(JVM_VARIANT) VM" JVM_RCFLAGS += -D"HS_FILEDESC=$(HOTSPOT_VM_DISTRO) $(RC_DESC)$(JVM_VARIANT) VM"
@ -209,7 +209,7 @@ $(VM_VERSION_OBJ): $(filter-out $(VM_VERSION_OBJ) $(JVM_MAPFILE), \
$(BUILD_LIBJVM_TARGET_DEPS)) $(BUILD_LIBJVM_TARGET_DEPS))
ifneq ($(GENERATE_COMPILE_COMMANDS_ONLY), true) ifneq ($(GENERATE_COMPILE_COMMANDS_ONLY), true)
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# It doesn't matter which jvm.lib file gets exported, but we need # It doesn't matter which jvm.lib file gets exported, but we need
# to pick just one. # to pick just one.
ifeq ($(JVM_VARIANT), $(JVM_VARIANT_MAIN)) ifeq ($(JVM_VARIANT), $(JVM_VARIANT_MAIN))

View File

@ -24,7 +24,7 @@
# #
ifeq ($(call check-jvm-feature, dtrace), true) ifeq ($(call check-jvm-feature, dtrace), true)
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
############################################################################ ############################################################################
# Integrate with libjvm. Here we generate two object files which are # Integrate with libjvm. Here we generate two object files which are
@ -131,7 +131,7 @@ ifeq ($(call check-jvm-feature, dtrace), true)
> $(DTRACE_SUPPORT_DIR)/$(@F).d)) > $(DTRACE_SUPPORT_DIR)/$(@F).d))
$(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -o $@ \ $(call ExecuteWithLog, $@, $(DTRACE) $(DTRACE_FLAGS) -o $@ \
-s $(DTRACE_SUPPORT_DIR)/$(@F).d) -s $(DTRACE_SUPPORT_DIR)/$(@F).d)
ifeq ($(OPENJDK_TARGET_CPU_ARCH), sparc) ifeq ($(call isTargetCpuArch, sparc), true)
$(call ExecuteWithLog, $@.elfedit, $(ELFEDIT) $(call GetElfeditCommands) $@) $(call ExecuteWithLog, $@.elfedit, $(ELFEDIT) $(call GetElfeditCommands) $@)
endif endif

View File

@ -47,14 +47,14 @@ endif
ifeq ($(call check-jvm-feature, zero), true) ifeq ($(call check-jvm-feature, zero), true)
JVM_CFLAGS_FEATURES += -DZERO -DCC_INTERP -DZERO_LIBARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' $(LIBFFI_CFLAGS) JVM_CFLAGS_FEATURES += -DZERO -DCC_INTERP -DZERO_LIBARCH='"$(OPENJDK_TARGET_CPU_LEGACY_LIB)"' $(LIBFFI_CFLAGS)
JVM_LIBS_FEATURES += $(LIBFFI_LIBS) JVM_LIBS_FEATURES += $(LIBFFI_LIBS)
ifeq ($(OPENJDK_TARGET_CPU), sparcv9) ifeq ($(call isTargetCpu, sparcv9), true)
BUILD_LIBJVM_EXTRA_FILES := $(TOPDIR)/src/hotspot/cpu/sparc/memset_with_concurrent_readers_sparc.cpp BUILD_LIBJVM_EXTRA_FILES := $(TOPDIR)/src/hotspot/cpu/sparc/memset_with_concurrent_readers_sparc.cpp
endif endif
endif endif
ifeq ($(call check-jvm-feature, minimal), true) ifeq ($(call check-jvm-feature, minimal), true)
JVM_CFLAGS_FEATURES += -DMINIMAL_JVM -DVMTYPE=\"Minimal\" JVM_CFLAGS_FEATURES += -DMINIMAL_JVM -DVMTYPE=\"Minimal\"
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
# Override the default -g with a more liberal strip policy for the minimal JVM # Override the default -g with a more liberal strip policy for the minimal JVM
JVM_STRIPFLAGS := --strip-unneeded JVM_STRIPFLAGS := --strip-unneeded
endif endif

View File

@ -74,7 +74,7 @@ ifeq ($(DEBUG_LEVEL), release)
endif endif
else ifeq ($(DEBUG_LEVEL), fastdebug) else ifeq ($(DEBUG_LEVEL), fastdebug)
JVM_CFLAGS_DEBUGLEVEL := -DASSERT JVM_CFLAGS_DEBUGLEVEL := -DASSERT
ifeq ($(filter $(OPENJDK_TARGET_OS), windows aix), ) ifeq ($call isTargetOs, windows aix), false)
# NOTE: Old build did not define CHECK_UNHANDLED_OOPS on Windows and AIX. # NOTE: Old build did not define CHECK_UNHANDLED_OOPS on Windows and AIX.
JVM_CFLAGS_DEBUGLEVEL += -DCHECK_UNHANDLED_OOPS JVM_CFLAGS_DEBUGLEVEL += -DCHECK_UNHANDLED_OOPS
endif endif

View File

@ -28,13 +28,13 @@ $(eval $(call IncludeCustomExtension, hotspot/lib/JvmMapfile.gmk))
################################################################################ ################################################################################
# Combine a list of static symbols # Combine a list of static symbols
ifneq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), windows-x86_64) ifeq ($(call And, $(call isTargetOs, windows) $(call isTargetCpu, x86_64)), false)
# On Windows x86_64, we should not have any symbols at all, since that # On Windows x86_64, we should not have any symbols at all, since that
# results in duplicate warnings from the linker (JDK-8043491). # results in duplicate warnings from the linker (JDK-8043491).
SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-shared SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-shared
endif endif
ifeq ($(OPENJDK_TARGET_OS_TYPE), unix) ifeq ($(call isTargetOsType, unix), true)
SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-unix SYMBOLS_SRC += $(TOPDIR)/make/hotspot/symbols/symbols-unix
endif endif
@ -48,7 +48,7 @@ ifneq ($(findstring debug, $(DEBUG_LEVEL)), )
endif endif
endif endif
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
ifeq ($(call check-jvm-feature, dtrace), true) ifeq ($(call check-jvm-feature, dtrace), true)
# Additional mapfiles that are only used when dtrace is enabled # Additional mapfiles that are only used when dtrace is enabled
ifeq ($(call check-jvm-feature, compiler2), true) ifeq ($(call check-jvm-feature, compiler2), true)
@ -64,7 +64,7 @@ endif
# Create a dynamic list of symbols from the built object files. This is highly # Create a dynamic list of symbols from the built object files. This is highly
# platform dependent. # platform dependent.
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o DUMP_SYMBOLS_CMD := $(NM) --defined-only *.o
ifneq ($(FILTER_SYMBOLS_PATTERN), ) ifneq ($(FILTER_SYMBOLS_PATTERN), )
FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)| FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
@ -76,7 +76,7 @@ ifeq ($(OPENJDK_TARGET_OS), linux)
if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \ if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
}' }'
else ifeq ($(OPENJDK_TARGET_OS), solaris) else ifeq ($(call isTargetOs, solaris), true)
DUMP_SYMBOLS_CMD := $(NM) -p *.o DUMP_SYMBOLS_CMD := $(NM) -p *.o
ifneq ($(FILTER_SYMBOLS_PATTERN), ) ifneq ($(FILTER_SYMBOLS_PATTERN), )
FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)| FILTER_SYMBOLS_PATTERN := $(FILTER_SYMBOLS_PATTERN)|
@ -90,7 +90,7 @@ else ifeq ($(OPENJDK_TARGET_OS), solaris)
if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \ if ($$3 ~ /$(FILTER_SYMBOLS_PATTERN)/) print $$3; \
}' }'
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
# nm on macosx prints out "warning: nm: no name list" to stderr for # nm on macosx prints out "warning: nm: no name list" to stderr for
# files without symbols. Hide this, even at the expense of hiding real errors. # files without symbols. Hide this, even at the expense of hiding real errors.
DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null DUMP_SYMBOLS_CMD := $(NM) -Uj *.o 2> /dev/null
@ -107,7 +107,7 @@ else ifeq ($(OPENJDK_TARGET_OS), macosx)
# The script below might be what was intended, but it failes to link with tons # The script below might be what was intended, but it failes to link with tons
# of 'cannot export hidden symbol vtable for X'. # of 'cannot export hidden symbol vtable for X'.
# '{ if ($$1 ~ /^__ZTV/ || $$1 ~ /^_gHotSpotVM/) print substr($$1, 2) }' # '{ if ($$1 ~ /^__ZTV/ || $$1 ~ /^_gHotSpotVM/) print substr($$1, 2) }'
else ifeq ($(OPENJDK_TARGET_OS), aix) else ifeq ($(call isTargetOs, aix), true)
# NOTE: The old build had the solution below. This should to be fixed in # NOTE: The old build had the solution below. This should to be fixed in
# configure instead. # configure instead.
@ -123,7 +123,7 @@ else ifeq ($(OPENJDK_TARGET_OS), aix)
if ($$3 ~ /^SharedArchivePath__9Arguments$$/) print $$3; \ if ($$3 ~ /^SharedArchivePath__9Arguments$$/) print $$3; \
}' }'
else ifeq ($(OPENJDK_TARGET_OS), windows) else ifeq ($(call isTargetOs, windows), true)
DUMP_SYMBOLS_CMD := $(DUMPBIN) -symbols *.obj DUMP_SYMBOLS_CMD := $(DUMPBIN) -symbols *.obj
FILTER_SYMBOLS_AWK_SCRIPT := \ FILTER_SYMBOLS_AWK_SCRIPT := \
'{ \ '{ \
@ -153,12 +153,12 @@ $(JVM_OUTPUTDIR)/symbols: $(SYMBOLS_SRC)
################################################################################ ################################################################################
# Finally convert the symbol list into a platform-specific mapfile # Finally convert the symbol list into a platform-specific mapfile
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
# On macosx, we need to add a leading underscore # On macosx, we need to add a leading underscore
define create-mapfile-work define create-mapfile-work
$(AWK) '{ if ($$0 ~ ".") { print " _" $$0 } }' < $^ > $@.tmp $(AWK) '{ if ($$0 ~ ".") { print " _" $$0 } }' < $^ > $@.tmp
endef endef
else ifeq ($(OPENJDK_TARGET_OS), windows) else ifeq ($(call isTargetOs, windows), true)
# On windows, add an 'EXPORTS' header # On windows, add an 'EXPORTS' header
define create-mapfile-work define create-mapfile-work
$(ECHO) "EXPORTS" > $@.tmp $(ECHO) "EXPORTS" > $@.tmp

View File

@ -51,7 +51,7 @@ ifneq ($(FDLIBM_CFLAGS), )
LIBJVM_FDLIBM_COPY_OPT_FLAG := $(CXX_O_FLAG_NORM) LIBJVM_FDLIBM_COPY_OPT_FLAG := $(CXX_O_FLAG_NORM)
endif endif
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
BUILD_LIBJVM_ostream.cpp_CXXFLAGS := -D_FILE_OFFSET_BITS=64 BUILD_LIBJVM_ostream.cpp_CXXFLAGS := -D_FILE_OFFSET_BITS=64
BUILD_LIBJVM_logFileOutput.cpp_CXXFLAGS := -D_FILE_OFFSET_BITS=64 BUILD_LIBJVM_logFileOutput.cpp_CXXFLAGS := -D_FILE_OFFSET_BITS=64
@ -65,7 +65,7 @@ ifeq ($(OPENJDK_TARGET_OS), linux)
# #
endif endif
ifeq ($(OPENJDK_TARGET_CPU), x86) ifeq ($(call isTargetCpu, x86), true)
# Performance measurements show that by compiling GC related code, we could # Performance measurements show that by compiling GC related code, we could
# significantly reduce the GC pause time on 32 bit Linux/Unix platforms by # significantly reduce the GC pause time on 32 bit Linux/Unix platforms by
# compiling without the PIC flag (-fPIC on linux). # compiling without the PIC flag (-fPIC on linux).
@ -83,7 +83,7 @@ ifeq ($(OPENJDK_TARGET_OS), linux)
$(foreach s, $(NONPIC_SRC), $(eval BUILD_LIBJVM_$(notdir $s)_CXXFLAGS := -fno-PIC)) $(foreach s, $(NONPIC_SRC), $(eval BUILD_LIBJVM_$(notdir $s)_CXXFLAGS := -fno-PIC))
endif endif
else ifeq ($(OPENJDK_TARGET_OS), solaris) else ifeq ($(call isTargetOs, solaris), true)
ifneq ($(DEBUG_LEVEL), slowdebug) ifneq ($(DEBUG_LEVEL), slowdebug)
# dev studio 12.6 workaround # dev studio 12.6 workaround
BUILD_LIBJVM_arguments.cpp_OPTIMIZATION := LOW BUILD_LIBJVM_arguments.cpp_OPTIMIZATION := LOW
@ -97,7 +97,7 @@ else ifeq ($(OPENJDK_TARGET_OS), solaris)
BUILD_LIBJVM_jni.cpp_CXXFLAGS := -Qoption ube -O~yz BUILD_LIBJVM_jni.cpp_CXXFLAGS := -Qoption ube -O~yz
BUILD_LIBJVM_stubGenerator_$(HOTSPOT_TARGET_CPU).cpp_CXXFLAGS := -xspace BUILD_LIBJVM_stubGenerator_$(HOTSPOT_TARGET_CPU).cpp_CXXFLAGS := -xspace
ifeq ($(OPENJDK_TARGET_CPU), x86_64) ifeq ($(call isTargetCpu, x86_64), true)
# Temporary until SS10 C++ compiler is fixed # Temporary until SS10 C++ compiler is fixed
BUILD_LIBJVM_generateOptoStub.cpp_CXXFLAGS := -xO2 BUILD_LIBJVM_generateOptoStub.cpp_CXXFLAGS := -xO2
# Temporary util SS12u1 C++ compiler is fixed # Temporary util SS12u1 C++ compiler is fixed
@ -118,7 +118,7 @@ else ifeq ($(OPENJDK_TARGET_OS), solaris)
BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS := +d BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS := +d
BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS := +d BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS := +d
ifeq ($(OPENJDK_TARGET_CPU_ARCH), x86) ifeq ($(call isTargetCpuArch, x86), true)
# ube explodes on x86 # ube explodes on x86
BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS += -xO1 BUILD_LIBJVM_bytecodeInterpreter.cpp_CXXFLAGS += -xO1
BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS += -xO1 BUILD_LIBJVM_bytecodeInterpreterWithChecks.cpp_CXXFLAGS += -xO1
@ -129,7 +129,7 @@ else ifeq ($(OPENJDK_TARGET_OS), solaris)
# Workaround for jvmciCompilerToVM.cpp long compilation time # Workaround for jvmciCompilerToVM.cpp long compilation time
BUILD_LIBJVM_jvmciCompilerToVMInit.cpp_OPTIMIZATION := NONE BUILD_LIBJVM_jvmciCompilerToVMInit.cpp_OPTIMIZATION := NONE
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
# The copied fdlibm routines in these files must not be optimized # The copied fdlibm routines in these files must not be optimized
BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG) BUILD_LIBJVM_sharedRuntimeTrig.cpp_CXXFLAGS := $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG)
BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG) BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(FDLIBM_CFLAGS) $(LIBJVM_FDLIBM_COPY_OPT_FLAG)
@ -160,7 +160,7 @@ else ifeq ($(OPENJDK_TARGET_OS), macosx)
# #
endif endif
else ifeq ($(OPENJDK_TARGET_OS), aix) else ifeq ($(call isTargetOs, aix), true)
BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -qnoinline BUILD_LIBJVM_synchronizer.cpp_CXXFLAGS := -qnoinline
BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE) BUILD_LIBJVM_sharedRuntimeTrans.cpp_CXXFLAGS := $(CXX_O_FLAG_NONE)
# Disable aggressive optimizations for functions in sharedRuntimeTrig.cpp # Disable aggressive optimizations for functions in sharedRuntimeTrig.cpp
@ -185,7 +185,7 @@ else ifeq ($(OPENJDK_TARGET_OS), aix)
# Disable ELF decoder on AIX (AIX uses XCOFF). # Disable ELF decoder on AIX (AIX uses XCOFF).
JVM_EXCLUDE_PATTERNS += elf JVM_EXCLUDE_PATTERNS += elf
else ifeq ($(OPENJDK_TARGET_OS), windows) else ifeq ($(call isTargetOs, windows), true)
JVM_PRECOMPILED_HEADER_EXCLUDE := \ JVM_PRECOMPILED_HEADER_EXCLUDE := \
bytecodeInterpreter.cpp \ bytecodeInterpreter.cpp \
bytecodeInterpreterWithChecks.cpp \ bytecodeInterpreterWithChecks.cpp \

View File

@ -37,7 +37,7 @@ $(foreach v, $(JVM_VARIANTS), \
$(eval TARGETS += $$(COPY_GTEST_$v)) \ $(eval TARGETS += $$(COPY_GTEST_$v)) \
) )
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(foreach v, $(JVM_VARIANTS), \ $(foreach v, $(JVM_VARIANTS), \
$(eval $(call SetupCopyFiles, COPY_GTEST_MSVCR_$v, \ $(eval $(call SetupCopyFiles, COPY_GTEST_MSVCR_$v, \
DEST := $(TEST_IMAGE_DIR)/hotspot/gtest/$v, \ DEST := $(TEST_IMAGE_DIR)/hotspot/gtest/$v, \
@ -54,7 +54,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
) )
endif endif
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
$(foreach v, $(JVM_VARIANTS), \ $(foreach v, $(JVM_VARIANTS), \
$(eval $(call SetupCopyFiles, COPY_GTEST_STLPORT_$v, \ $(eval $(call SetupCopyFiles, COPY_GTEST_STLPORT_$v, \
DEST := $(TEST_IMAGE_DIR)/hotspot/gtest/$v, \ DEST := $(TEST_IMAGE_DIR)/hotspot/gtest/$v, \

View File

@ -51,7 +51,7 @@ $(SUPPORT_OUTPUTDIR)/modules_cmds/java.base/java$(EXE_SUFFIX): $(BUILD_LAUNCHER_
TARGETS += $(SUPPORT_OUTPUTDIR)/modules_cmds/java.base/java$(EXE_SUFFIX) TARGETS += $(SUPPORT_OUTPUTDIR)/modules_cmds/java.base/java$(EXE_SUFFIX)
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupBuildLauncher, javaw, \ $(eval $(call SetupBuildLauncher, javaw, \
CFLAGS := -DJAVAW -DEXPAND_CLASSPATH_WILDCARDS -DENABLE_ARG_FILES, \ CFLAGS := -DJAVAW -DEXPAND_CLASSPATH_WILDCARDS -DENABLE_ARG_FILES, \
EXTRA_RC_FLAGS := $(JAVA_RC_FLAGS), \ EXTRA_RC_FLAGS := $(JAVA_RC_FLAGS), \
@ -65,7 +65,7 @@ $(eval $(call SetupBuildLauncher, keytool, \
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
$(eval $(call SetupJdkExecutable, BUILD_JEXEC, \ $(eval $(call SetupJdkExecutable, BUILD_JEXEC, \
NAME := jexec, \ NAME := jexec, \
SRC := $(TOPDIR)/src/$(MODULE)/unix/native/launcher, \ SRC := $(TOPDIR)/src/$(MODULE)/unix/native/launcher, \
@ -84,7 +84,7 @@ endif
################################################################################ ################################################################################
ifneq ($(findstring $(OPENJDK_TARGET_OS), macosx solaris aix linux), ) ifeq ($(call isTargetOs, macosx solaris aix linux), true)
$(eval $(call SetupJdkExecutable, BUILD_JSPAWNHELPER, \ $(eval $(call SetupJdkExecutable, BUILD_JSPAWNHELPER, \
NAME := jspawnhelper, \ NAME := jspawnhelper, \
SRC := $(TOPDIR)/src/$(MODULE)/unix/native/jspawnhelper, \ SRC := $(TOPDIR)/src/$(MODULE)/unix/native/jspawnhelper, \

View File

@ -25,7 +25,7 @@
include LauncherCommon.gmk include LauncherCommon.gmk
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupBuildLauncher, kinit, \ $(eval $(call SetupBuildLauncher, kinit, \
MAIN_CLASS := sun.security.krb5.internal.tools.Kinit, \ MAIN_CLASS := sun.security.krb5.internal.tools.Kinit, \
)) ))

View File

@ -28,7 +28,7 @@ include LauncherCommon.gmk
################################################################################ ################################################################################
# jabswitch # jabswitch
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
JABSWITCH_SRC := $(TOPDIR)/src/jdk.accessibility/windows/native/jabswitch JABSWITCH_SRC := $(TOPDIR)/src/jdk.accessibility/windows/native/jabswitch
ACCESSBRIDGE_SRC := $(TOPDIR)/src/jdk.accessibility/windows/native/common ACCESSBRIDGE_SRC := $(TOPDIR)/src/jdk.accessibility/windows/native/common
@ -98,7 +98,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
endef endef
ifeq ($(OPENJDK_TARGET_CPU_BITS), 32) ifeq ($(call isTargetCpuBits, 32), true)
$(eval $(call SetupInspector,-32,32)) $(eval $(call SetupInspector,-32,32))
$(eval $(call SetupWalker,-32,32)) $(eval $(call SetupWalker,-32,32))
$(eval $(call SetupInspector,,LEGACY)) $(eval $(call SetupInspector,,LEGACY))

View File

@ -45,7 +45,7 @@ ifeq ($(TOOLCHAIN_TYPE), gcc)
CXXFLAGS_JDKEXE += -fvisibility=hidden CXXFLAGS_JDKEXE += -fvisibility=hidden
LDFLAGS_JDKEXE += -Wl,--exclude-libs,ALL LDFLAGS_JDKEXE += -Wl,--exclude-libs,ALL
else ifeq ($(TOOLCHAIN_TYPE), clang) else ifeq ($(TOOLCHAIN_TYPE), clang)
ifneq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), false)
CXXFLAGS_JDKEXE += -fvisibility=hidden CXXFLAGS_JDKEXE += -fvisibility=hidden
endif endif
else ifeq ($(TOOLCHAIN_TYPE), solstudio) else ifeq ($(TOOLCHAIN_TYPE), solstudio)

View File

@ -105,7 +105,7 @@ define SetupBuildLauncherBody
$$(addprefix -J, $$($1_JAVA_ARGS)) $$($1_LAUNCHER_CLASS), "$$a"$(COMMA) )) }' $$(addprefix -J, $$($1_JAVA_ARGS)) $$($1_LAUNCHER_CLASS), "$$a"$(COMMA) )) }'
$1_CFLAGS += -DJAVA_ARGS=$$($1_JAVA_ARGS_STR) $1_CFLAGS += -DJAVA_ARGS=$$($1_JAVA_ARGS_STR)
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
ifeq ($$($1_MACOSX_SIGNED), true) ifeq ($$($1_MACOSX_SIGNED), true)
$1_PLIST_FILE := Info-privileged.plist $1_PLIST_FILE := Info-privileged.plist
$1_CODESIGN := true $1_CODESIGN := true
@ -179,11 +179,11 @@ define SetupBuildLauncherBody
$1 += $$(BUILD_LAUNCHER_$1) $1 += $$(BUILD_LAUNCHER_$1)
TARGETS += $$($1) TARGETS += $$($1)
ifeq ($(OPENJDK_TARGET_OS), aix) ifeq ($(call isTargetOs, aix), true)
$$(BUILD_LAUNCHER_$1): $(call FindStaticLib, java.base, jli_static) $$(BUILD_LAUNCHER_$1): $(call FindStaticLib, java.base, jli_static)
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$$(BUILD_LAUNCHER_$1): $(call FindStaticLib, java.base, java, /libjava) \ $$(BUILD_LAUNCHER_$1): $(call FindStaticLib, java.base, java, /libjava) \
$$($1_WINDOWS_JLI_LIB) $$($1_WINDOWS_JLI_LIB)
endif endif
@ -194,7 +194,7 @@ endef
# relationship between executables and man pages (even if this is not always # relationship between executables and man pages (even if this is not always
# the case), so piggyback man page generation on the launcher compilation. # the case), so piggyback man page generation on the launcher compilation.
ifeq ($(OPENJDK_TARGET_OS_TYPE), unix) ifeq ($(call isTargetOsType, unix), true)
# Only build manpages on unix systems. # Only build manpages on unix systems.
# We assume all our man pages should reside in section 1. # We assume all our man pages should reside in section 1.

View File

@ -43,7 +43,7 @@ BUILD_LIBMLIB_EXCLUDE_SRC_PATTERNS := unix
BUILD_LIBMLIB_CFLAGS := -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES -DMLIB_NO_LIBSUNMATH BUILD_LIBMLIB_CFLAGS := -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES -DMLIB_NO_LIBSUNMATH
ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) ifeq ($(call isTargetCpuBits, 64), true)
BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT BUILD_LIBMLIB_CFLAGS += -DMLIB_OS64BIT
endif endif
@ -68,7 +68,7 @@ TARGETS += $(BUILD_LIBMLIB_IMAGE)
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) ifeq ($(call And, $(call isTargetOs, solaris) $(call isTargetCpuArch, sparc)), true)
# libmlib_image_v is basically built from mlib_image sources, with some additions # libmlib_image_v is basically built from mlib_image sources, with some additions
# and some exclusions. # and some exclusions.
@ -80,7 +80,7 @@ ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc)
LIBMLIB_IMAGE_V_CFLAGS := -xarch=sparcvis -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \ LIBMLIB_IMAGE_V_CFLAGS := -xarch=sparcvis -D__USE_J2D_NAMES -D__MEDIALIB_OLD_NAMES \
$(TOPDIR)/src/$(MODULE)/unix/native/libmlib_image/vis_$(OPENJDK_TARGET_CPU_BITS).il $(TOPDIR)/src/$(MODULE)/unix/native/libmlib_image/vis_$(OPENJDK_TARGET_CPU_BITS).il
ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) ifeq ($(call isTargetCpuBits, 64), true)
LIBMLIB_IMAGE_V_CFLAGS += -DMLIB_OS64BIT LIBMLIB_IMAGE_V_CFLAGS += -DMLIB_OS64BIT
endif endif
@ -127,11 +127,11 @@ LIBAWT_EXTRA_SRC := \
$(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \ $(TOPDIR)/src/$(MODULE)/$(OPENJDK_TARGET_OS_TYPE)/native/common/awt \
# #
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) ifeq ($(call And, $(call isTargetOs, solaris) $(call isTargetCpuArch, sparc)), true)
LIBAWT_EXTRA_SRC += $(TOPDIR)/src/$(MODULE)/share/native/common/awt/medialib LIBAWT_EXTRA_SRC += $(TOPDIR)/src/$(MODULE)/share/native/common/awt/medialib
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBAWT_EXTRA_SRC += \ LIBAWT_EXTRA_SRC += \
$(TOPDIR)/src/$(MODULE)/share/native/common/awt/utility \ $(TOPDIR)/src/$(MODULE)/share/native/common/awt/utility \
$(TOPDIR)/src/$(MODULE)/share/native/common/font \ $(TOPDIR)/src/$(MODULE)/share/native/common/font \
@ -140,22 +140,22 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
# #
endif endif
ifneq ($(filter $(OPENJDK_TARGET_OS), solaris linux macosx aix), ) ifeq ($(call isTargetOs, solaris linux macosx aix), true)
LIBAWT_EXFILES += awt_Font.c CUPSfuncs.c fontpath.c X11Color.c LIBAWT_EXFILES += awt_Font.c CUPSfuncs.c fontpath.c X11Color.c
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBAWT_EXFILES += initIDs.c awt/image/cvutils/img_colors.c LIBAWT_EXFILES += initIDs.c awt/image/cvutils/img_colors.c
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBAWT_EXFILES += \ LIBAWT_EXFILES += \
java2d/d3d/D3DShaderGen.c \ java2d/d3d/D3DShaderGen.c \
awt/image/cvutils/img_colors.c \ awt/image/cvutils/img_colors.c \
# #
endif endif
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), solaris-sparcv9) ifeq ($(call And, $(call isTargetOs, solaris) $(call isTargetCpu, sparcv9)), true)
LIBAWT_EXFILES += java2d/loops/MapAccelFunc.c LIBAWT_EXFILES += java2d/loops/MapAccelFunc.c
else else
LIBAWT_EXCLUDES += \ LIBAWT_EXCLUDES += \
@ -182,20 +182,20 @@ LIBAWT_EXTRA_HEADER_DIRS := \
LIBAWT_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES $(X_CFLAGS) LIBAWT_CFLAGS += -D__MEDIALIB_OLD_NAMES -D__USE_J2D_NAMES $(X_CFLAGS)
ifeq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU), solaris-sparcv9) ifeq ($(call And, $(call isTargetOs, solaris) $(call isTargetCpu, sparcv9)), true)
LIBAWT_CFLAGS += -xarch=sparcvis -DMLIB_ADD_SUFF \ LIBAWT_CFLAGS += -xarch=sparcvis -DMLIB_ADD_SUFF \
$(TOPDIR)/src/$(MODULE)/unix/native/libmlib_image/vis_$(OPENJDK_TARGET_CPU_BITS).il $(TOPDIR)/src/$(MODULE)/unix/native/libmlib_image/vis_$(OPENJDK_TARGET_CPU_BITS).il
LIBAWT_ASFLAGS = -P -xarch=v9a LIBAWT_ASFLAGS = -P -xarch=v9a
endif endif
ifneq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), false)
LIBAWT_CFLAGS += -DMLIB_NO_LIBSUNMATH LIBAWT_CFLAGS += -DMLIB_NO_LIBSUNMATH
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBAWT_CFLAGS += -EHsc -DUNICODE -D_UNICODE LIBAWT_CFLAGS += -EHsc -DUNICODE -D_UNICODE
ifeq ($(OPENJDK_TARGET_CPU_BITS), 64) ifeq ($(call isTargetCpuBits, 64), true)
LIBAWT_CFLAGS += -DMLIB_OS64BIT LIBAWT_CFLAGS += -DMLIB_OS64BIT
endif endif
@ -203,7 +203,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
LIBAWT_VERSIONINFO_RESOURCE := $(TOPDIR)/src/$(MODULE)/windows/native/libawt/windows/awt.rc LIBAWT_VERSIONINFO_RESOURCE := $(TOPDIR)/src/$(MODULE)/windows/native/libawt/windows/awt.rc
endif endif
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
# FIXME: This is probably not what we want to do, but keep it now for compatibility. # FIXME: This is probably not what we want to do, but keep it now for compatibility.
LIBAWT_CFLAGS += $(EXPORT_ALL_SYMBOLS) LIBAWT_CFLAGS += $(EXPORT_ALL_SYMBOLS)
endif endif
@ -263,7 +263,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBAWT, \
$(BUILD_LIBAWT): $(call FindLib, java.base, java) $(BUILD_LIBAWT): $(call FindLib, java.base, java)
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(BUILD_LIBAWT): $(BUILD_LIBMLIB_IMAGE) $(BUILD_LIBAWT): $(BUILD_LIBMLIB_IMAGE)
endif endif
@ -271,7 +271,7 @@ TARGETS += $(BUILD_LIBAWT)
################################################################################ ################################################################################
ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx), ) ifeq ($(call isTargetOs, windows macosx), false)
ifeq ($(ENABLE_HEADLESS_ONLY), false) ifeq ($(ENABLE_HEADLESS_ONLY), false)
LIBAWT_XAWT_EXTRA_SRC := \ LIBAWT_XAWT_EXTRA_SRC := \
@ -297,11 +297,11 @@ ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx), )
$(FONTCONFIG_CFLAGS) \ $(FONTCONFIG_CFLAGS) \
$(CUPS_CFLAGS) $(CUPS_CFLAGS)
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
LIBAWT_XAWT_CFLAGS += -DFUNCPROTO=15 LIBAWT_XAWT_CFLAGS += -DFUNCPROTO=15
endif endif
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
ifeq ($(DISABLE_XRENDER), true) ifeq ($(DISABLE_XRENDER), true)
LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true LIBAWT_XAWT_CFLAGS += -DDISABLE_XRENDER_BY_DEFAULT=true
endif endif
@ -309,7 +309,7 @@ ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx), )
LIBAWT_XAWT_LIBS := $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -ljvm LIBAWT_XAWT_LIBS := $(LIBM) -lawt -lXext -lX11 -lXrender $(LIBDL) -lXtst -lXi -ljava -ljvm
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
LIBAWT_XAWT_LIBS += -lpthread LIBAWT_XAWT_LIBS += -lpthread
endif endif
@ -443,7 +443,7 @@ TARGETS += $(BUILD_LIBJAVAJPEG)
################################################################################ ################################################################################
# Mac and Windows only use the native AWT lib, do not build libawt_headless # Mac and Windows only use the native AWT lib, do not build libawt_headless
ifeq ($(findstring $(OPENJDK_TARGET_OS), windows macosx),) ifeq ($(call isTargetOs, windows macosx), false)
LIBAWT_HEADLESS_EXTRA_SRC := \ LIBAWT_HEADLESS_EXTRA_SRC := \
common/font \ common/font \
@ -504,7 +504,7 @@ else
# For use by libfontmanager: # For use by libfontmanager:
LIBFREETYPE_CFLAGS := -I$(BUILD_LIBFREETYPE_HEADER_DIRS) LIBFREETYPE_CFLAGS := -I$(BUILD_LIBFREETYPE_HEADER_DIRS)
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBFREETYPE_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype/freetype.lib LIBFREETYPE_LIBS := $(SUPPORT_OUTPUTDIR)/native/$(MODULE)/libfreetype/freetype.lib
else else
LIBFREETYPE_LIBS := -lfreetype LIBFREETYPE_LIBS := -lfreetype
@ -534,20 +534,20 @@ endif
HARFBUZZ_CFLAGS := -DHAVE_OT -DHAVE_FALLBACK -DHAVE_UCDN -DHAVE_ROUND HARFBUZZ_CFLAGS := -DHAVE_OT -DHAVE_FALLBACK -DHAVE_UCDN -DHAVE_ROUND
ifneq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), false)
HARFBUZZ_CFLAGS += -DGETPAGESIZE -DHAVE_MPROTECT -DHAVE_PTHREAD \ HARFBUZZ_CFLAGS += -DGETPAGESIZE -DHAVE_MPROTECT -DHAVE_PTHREAD \
-DHAVE_SYSCONF -DHAVE_SYS_MMAN_H -DHAVE_UNISTD_H -DHAVE_SYSCONF -DHAVE_SYS_MMAN_H -DHAVE_UNISTD_H
endif endif
ifneq (, $(findstring $(OPENJDK_TARGET_OS), linux macosx)) ifeq ($(call isTargetOs, linux macosx), true)
HARFBUZZ_CFLAGS += -DHAVE_INTEL_ATOMIC_PRIMITIVES HARFBUZZ_CFLAGS += -DHAVE_INTEL_ATOMIC_PRIMITIVES
endif endif
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
HARFBUZZ_CFLAGS += -DHAVE_SOLARIS_ATOMIC_OPS HARFBUZZ_CFLAGS += -DHAVE_SOLARIS_ATOMIC_OPS
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
HARFBUZZ_CFLAGS += -DHAVE_CORETEXT HARFBUZZ_CFLAGS += -DHAVE_CORETEXT
endif endif
ifneq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), false)
LIBFONTMANAGER_EXCLUDE_FILES += harfbuzz/hb-coretext.cc LIBFONTMANAGER_EXCLUDE_FILES += harfbuzz/hb-coretext.cc
endif endif
# hb-ft.cc is not presently needed, and requires freetype 2.4.2 or later. # hb-ft.cc is not presently needed, and requires freetype 2.4.2 or later.
@ -572,11 +572,11 @@ BUILD_LIBFONTMANAGER_FONTLIB += $(LIBFREETYPE_LIBS)
LIBFONTMANAGER_OPTIMIZATION := HIGH LIBFONTMANAGER_OPTIMIZATION := HIGH
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \ LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
X11TextRenderer.c X11TextRenderer.c
LIBFONTMANAGER_OPTIMIZATION := HIGHEST LIBFONTMANAGER_OPTIMIZATION := HIGHEST
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \ LIBFONTMANAGER_EXCLUDE_FILES += X11FontScaler.c \
X11TextRenderer.c \ X11TextRenderer.c \
fontpath.c \ fontpath.c \
@ -640,7 +640,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBFONTMANAGER, \
$(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT) $(BUILD_LIBFONTMANAGER): $(BUILD_LIBAWT)
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(BUILD_LIBFONTMANAGER): $(call FindLib, $(MODULE), awt_lwawt) $(BUILD_LIBFONTMANAGER): $(call FindLib, $(MODULE), awt_lwawt)
endif endif
@ -652,7 +652,7 @@ TARGETS += $(BUILD_LIBFONTMANAGER)
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
LIBJAWT_CFLAGS := -EHsc -DUNICODE -D_UNICODE LIBJAWT_CFLAGS := -EHsc -DUNICODE -D_UNICODE
@ -667,7 +667,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
java.base:libjava \ java.base:libjava \
# #
ifeq ($(OPENJDK_TARGET_CPU), x86) ifeq ($(call isTargetCpu, x86), true)
KERNEL32_LIB := kernel32.lib KERNEL32_LIB := kernel32.lib
endif endif
@ -692,25 +692,25 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
TARGETS += $(COPY_JAWT_LIB) TARGETS += $(COPY_JAWT_LIB)
else # OPENJDK_TARGET_OS not windows else # not windows
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
# libjawt on macosx do not use the unix code # libjawt on macosx do not use the unix code
LIBJAWT_EXCLUDE_SRC_PATTERNS := unix LIBJAWT_EXCLUDE_SRC_PATTERNS := unix
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
JAWT_LIBS := -lawt_lwawt JAWT_LIBS := -lawt_lwawt
else else
JAWT_LIBS := JAWT_LIBS :=
ifneq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), false)
JAWT_LIBS += -lawt JAWT_LIBS += -lawt
endif endif
ifeq ($(ENABLE_HEADLESS_ONLY), false) ifeq ($(ENABLE_HEADLESS_ONLY), false)
JAWT_LIBS += -lawt_xawt JAWT_LIBS += -lawt_xawt
else else
JAWT_LIBS += -lawt_headless JAWT_LIBS += -lawt_headless
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
JAWT_CFLAGS += -DHEADLESS JAWT_CFLAGS += -DHEADLESS
endif endif
endif endif
@ -742,11 +742,11 @@ else # OPENJDK_TARGET_OS not windows
$(BUILD_LIBJAWT): $(call FindLib, $(MODULE), awt_headless) $(BUILD_LIBJAWT): $(call FindLib, $(MODULE), awt_headless)
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(BUILD_LIBJAWT): $(call FindLib, $(MODULE), awt_lwawt) $(BUILD_LIBJAWT): $(call FindLib, $(MODULE), awt_lwawt)
endif endif
endif # OPENJDK_TARGET_OS endif
TARGETS += $(BUILD_LIBJAWT) TARGETS += $(BUILD_LIBJAWT)
@ -784,20 +784,20 @@ ifeq ($(ENABLE_HEADLESS_ONLY), false)
LIBSPLASHSCREEN_EXTRA_SRC += java.base:libzip/zlib LIBSPLASHSCREEN_EXTRA_SRC += java.base:libzip/zlib
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
# libsplashscreen on macosx do not use the unix code # libsplashscreen on macosx do not use the unix code
LIBSPLASHSCREEN_EXCLUDE_SRC_PATTERNS := unix LIBSPLASHSCREEN_EXCLUDE_SRC_PATTERNS := unix
endif endif
LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0 LIBSPLASHSCREEN_CFLAGS += -DSPLASHSCREEN -DPNG_NO_MMX_CODE -DPNG_ARM_NEON_OPT=0
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
ifeq ($(OPENJDK_TARGET_CPU_ARCH), ppc) ifeq ($(call isTargetCpuArch, ppc), true)
LIBSPLASHSCREEN_CFLAGS += -DPNG_POWERPC_VSX_OPT=0 LIBSPLASHSCREEN_CFLAGS += -DPNG_POWERPC_VSX_OPT=0
endif endif
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX LIBSPLASHSCREEN_CFLAGS += -DWITH_MACOSX
BUILD_LIBSPLASHSCREEN_java_awt_SplashScreen.c_CFLAGS := -x objective-c -O0 BUILD_LIBSPLASHSCREEN_java_awt_SplashScreen.c_CFLAGS := -x objective-c -O0
@ -808,7 +808,7 @@ ifeq ($(ENABLE_HEADLESS_ONLY), false)
BUILD_LIBSPLASHSCREEN_splashscreen_png.c_CFLAGS := -x objective-c -O0 BUILD_LIBSPLASHSCREEN_splashscreen_png.c_CFLAGS := -x objective-c -O0
BUILD_LIBSPLASHSCREEN_splashscreen_sys.m_CFLAGS := -O0 BUILD_LIBSPLASHSCREEN_splashscreen_sys.m_CFLAGS := -O0
else ifeq ($(OPENJDK_TARGET_OS), windows) else ifeq ($(call isTargetOs, windows), true)
LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32 LIBSPLASHSCREEN_CFLAGS += -DWITH_WIN32
else else
LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS) LIBSPLASHSCREEN_CFLAGS += -DWITH_X11 $(X_CFLAGS)
@ -816,14 +816,14 @@ ifeq ($(ENABLE_HEADLESS_ONLY), false)
LIBSPLASHSCREEN_LIBS := LIBSPLASHSCREEN_LIBS :=
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBSPLASHSCREEN_LIBS += \ LIBSPLASHSCREEN_LIBS += \
$(LIBM) -lpthread -liconv -losxapp \ $(LIBM) -lpthread -liconv -losxapp \
-framework ApplicationServices \ -framework ApplicationServices \
-framework Foundation \ -framework Foundation \
-framework Cocoa \ -framework Cocoa \
-framework JavaNativeFoundation -framework JavaNativeFoundation
else ifeq ($(OPENJDK_TARGET_OS), windows) else ifeq ($(call isTargetOs, windows), true)
LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib $(WIN_JAVA_LIB) jvm.lib LIBSPLASHSCREEN_LIBS += kernel32.lib user32.lib gdi32.lib delayimp.lib $(WIN_JAVA_LIB) jvm.lib
else else
LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread -ldl LIBSPLASHSCREEN_LIBS += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread -ldl
@ -863,7 +863,7 @@ ifeq ($(ENABLE_HEADLESS_ONLY), false)
TARGETS += $(BUILD_LIBSPLASHSCREEN) TARGETS += $(BUILD_LIBSPLASHSCREEN)
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(BUILD_LIBSPLASHSCREEN): $(call FindLib, $(MODULE), osxapp) $(BUILD_LIBSPLASHSCREEN): $(call FindLib, $(MODULE), osxapp)
endif endif
@ -871,7 +871,7 @@ endif
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBAWT_LWAWT_EXTRA_SRC := \ LIBAWT_LWAWT_EXTRA_SRC := \
$(TOPDIR)/src/$(MODULE)/unix/native/common/awt \ $(TOPDIR)/src/$(MODULE)/unix/native/common/awt \
@ -941,7 +941,7 @@ endif
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBOSXUI, \ $(eval $(call SetupJdkLibrary, BUILD_LIBOSXUI, \
NAME := osxui, \ NAME := osxui, \

View File

@ -35,7 +35,7 @@ $(eval $(call IncludeCustomExtension, lib/CoreLibraries.gmk))
BUILD_LIBFDLIBM_OPTIMIZATION := NONE BUILD_LIBFDLIBM_OPTIMIZATION := NONE
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
BUILD_LIBFDLIBM_OPTIMIZATION := HIGH BUILD_LIBFDLIBM_OPTIMIZATION := HIGH
endif endif
@ -68,7 +68,7 @@ $(eval $(call SetupNativeCompilation, BUILD_LIBFDLIBM, \
########################################################################################## ##########################################################################################
LIBVERIFY_OPTIMIZATION := HIGH LIBVERIFY_OPTIMIZATION := HIGH
ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) ifeq ($(call isTargetOs, solaris linux), true)
ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true) ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true)
LIBVERIFY_OPTIMIZATION := LOW LIBVERIFY_OPTIMIZATION := LOW
endif endif
@ -92,7 +92,7 @@ TARGETS += $(BUILD_LIBVERIFY)
LIBJAVA_CFLAGS := -DARCHPROPNAME='"$(OPENJDK_TARGET_CPU_OSARCH)"' LIBJAVA_CFLAGS := -DARCHPROPNAME='"$(OPENJDK_TARGET_CPU_OSARCH)"'
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
BUILD_LIBJAVA_java_props_md.c_CFLAGS := -x objective-c BUILD_LIBJAVA_java_props_md.c_CFLAGS := -x objective-c
BUILD_LIBJAVA_java_props_macosx.c_CFLAGS := -x objective-c BUILD_LIBJAVA_java_props_macosx.c_CFLAGS := -x objective-c
endif endif
@ -181,11 +181,11 @@ TARGETS += $(BUILD_LIBJIMAGE)
########################################################################################## ##########################################################################################
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBJLI_EXCLUDE_FILES += java_md_solinux.c LIBJLI_EXCLUDE_FILES += java_md_solinux.c
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# Supply the name of the C runtime lib. # Supply the name of the C runtime lib.
LIBJLI_CFLAGS += -DMSVCR_DLL_NAME='"$(notdir $(MSVCR_DLL))"' LIBJLI_CFLAGS += -DMSVCR_DLL_NAME='"$(notdir $(MSVCR_DLL))"'
ifneq ($(MSVCP_DLL), ) ifneq ($(MSVCP_DLL), )
@ -233,7 +233,7 @@ TARGETS += $(BUILD_LIBJLI)
LIBJLI_SRC_DIRS := $(call FindSrcDirsForComponent, java.base, libjli) LIBJLI_SRC_DIRS := $(call FindSrcDirsForComponent, java.base, libjli)
ifeq ($(OPENJDK_TARGET_OS), aix) ifeq ($(call isTargetOs, aix), true)
# AIX also requires a static libjli because the compiler doesn't support '-rpath' # AIX also requires a static libjli because the compiler doesn't support '-rpath'
$(eval $(call SetupNativeCompilation, BUILD_LIBJLI_STATIC, \ $(eval $(call SetupNativeCompilation, BUILD_LIBJLI_STATIC, \
NAME := jli_static, \ NAME := jli_static, \

View File

@ -99,7 +99,7 @@ $(BUILD_LIBNIO): $(BUILD_LIBNET)
################################################################################ ################################################################################
# Create the macosx security library # Create the macosx security library
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
# JavaNativeFoundation framework not supported in static builds # JavaNativeFoundation framework not supported in static builds
ifneq ($(STATIC_BUILD), true) ifneq ($(STATIC_BUILD), true)
@ -130,7 +130,7 @@ endif
################################################################################ ################################################################################
# Create the jsig library # Create the jsig library
ifeq ($(OPENJDK_TARGET_OS_TYPE), unix) ifeq ($(call isTargetOsType, unix), true)
ifeq ($(STATIC_BUILD), false) ifeq ($(STATIC_BUILD), false)
$(eval $(call SetupJdkLibrary, BUILD_LIBJSIG, \ $(eval $(call SetupJdkLibrary, BUILD_LIBJSIG, \
NAME := jsig, \ NAME := jsig, \
@ -205,7 +205,7 @@ endif
################################################################################ ################################################################################
# Copy tzmappings file for Windows # Copy tzmappings file for Windows
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupCopyFiles, COPY_TZMAPPINGS, \ $(eval $(call SetupCopyFiles, COPY_TZMAPPINGS, \
FILES := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/windows/conf/tzmappings, \ FILES := $(SUPPORT_OUTPUTDIR)/gensrc/java.base/windows/conf/tzmappings, \
DEST := $(call FindLibDirForModule, $(MODULE)), \ DEST := $(call FindLibDirForModule, $(MODULE)), \

View File

@ -39,7 +39,7 @@ include Awt2dLibraries.gmk
################################################################################ ################################################################################
# Create the libjsound library # Create the libjsound library
ifneq ($(OPENJDK_TARGET_OS), aix) ifeq ($(call isTargetOs, aix), false)
LIBJSOUND_CFLAGS := \ LIBJSOUND_CFLAGS := \
$(ALSA_CFLAGS) \ $(ALSA_CFLAGS) \
@ -48,14 +48,14 @@ ifneq ($(OPENJDK_TARGET_OS), aix)
-DUSE_DAUDIO=TRUE \ -DUSE_DAUDIO=TRUE \
# #
ifneq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), false)
LIBJSOUND_CFLAGS += \ LIBJSOUND_CFLAGS += \
-DUSE_PLATFORM_MIDI_OUT=TRUE \ -DUSE_PLATFORM_MIDI_OUT=TRUE \
-DUSE_PLATFORM_MIDI_IN=TRUE \ -DUSE_PLATFORM_MIDI_IN=TRUE \
# #
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBJSOUND_TOOLCHAIN := TOOLCHAIN_LINK_CXX LIBJSOUND_TOOLCHAIN := TOOLCHAIN_LINK_CXX
endif endif
@ -87,7 +87,7 @@ endif
################################################################################ ################################################################################
# Create the macosx specific osxapp and osx libraries # Create the macosx specific osxapp and osx libraries
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBOSXAPP, \ $(eval $(call SetupJdkLibrary, BUILD_LIBOSXAPP, \
NAME := osxapp, \ NAME := osxapp, \
@ -142,4 +142,3 @@ ifeq ($(OPENJDK_TARGET_OS), macosx)
$(BUILD_LIBOSX): $(call FindLib, java.base, java) $(BUILD_LIBOSX): $(call FindLib, java.base, java)
endif endif

View File

@ -30,7 +30,7 @@ $(eval $(call IncludeCustomExtension, lib/Lib-java.instrument.gmk))
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# equivalent of strcasecmp is stricmp on Windows # equivalent of strcasecmp is stricmp on Windows
LIBINSTRUMENT_CFLAGS := -Dstrcasecmp=stricmp LIBINSTRUMENT_CFLAGS := -Dstrcasecmp=stricmp
WINDOWS_JLI_LIB := $(SUPPORT_OUTPUTDIR)/native/java.base/libjli/jli.lib WINDOWS_JLI_LIB := $(SUPPORT_OUTPUTDIR)/native/java.base/libjli/jli.lib
@ -62,7 +62,7 @@ $(eval $(call SetupJdkLibrary, BUILD_LIBINSTRUMENT, \
$(WINDOWS_JLI_LIB), \ $(WINDOWS_JLI_LIB), \
)) ))
ifeq ($(OPENJDK_TARGET_OS), aix) ifeq ($(call isTargetOs, aix), true)
$(BUILD_LIBINSTRUMENT): $(call FindStaticLib, java.base, jli_static) $(BUILD_LIBINSTRUMENT): $(call FindStaticLib, java.base, jli_static)
else else
$(BUILD_LIBINSTRUMENT): $(call FindLib, java.base, jli) $(BUILD_LIBINSTRUMENT): $(call FindLib, java.base, jli)

View File

@ -31,7 +31,7 @@ $(eval $(call IncludeCustomExtension, lib/Lib-java.management.gmk))
################################################################################ ################################################################################
LIBMANAGEMENT_OPTIMIZATION := HIGH LIBMANAGEMENT_OPTIMIZATION := HIGH
ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) ifeq ($(call isTargetOs, solaris linux), true)
ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true) ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true)
LIBMANAGEMENT_OPTIMIZATION := LOW LIBMANAGEMENT_OPTIMIZATION := LOW
endif endif
@ -57,4 +57,3 @@ TARGETS += $(BUILD_LIBMANAGEMENT)
# Include custom extension post hook # Include custom extension post hook
$(eval $(call IncludeCustomExtension, lib/Lib-java.management-post.gmk)) $(eval $(call IncludeCustomExtension, lib/Lib-java.management-post.gmk))

View File

@ -28,7 +28,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
# libprefs on macosx do not use the unix code # libprefs on macosx do not use the unix code
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
LIBPREFS_EXCLUDE_SRC_PATTERNS := unix LIBPREFS_EXCLUDE_SRC_PATTERNS := unix
endif endif

View File

@ -44,7 +44,7 @@ TARGETS += $(BUILD_LIBJ2GSS)
ifneq ($(BUILD_CRYPTO), false) ifneq ($(BUILD_CRYPTO), false)
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBW2K_LSA_AUTH, \ $(eval $(call SetupJdkLibrary, BUILD_LIBW2K_LSA_AUTH, \
NAME := w2k_lsa_auth, \ NAME := w2k_lsa_auth, \
OPTIMIZATION := LOW, \ OPTIMIZATION := LOW, \
@ -59,7 +59,7 @@ ifneq ($(BUILD_CRYPTO), false)
TARGETS += $(BUILD_LIBW2K_LSA_AUTH) TARGETS += $(BUILD_LIBW2K_LSA_AUTH)
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
# libosxkrb5 needs to call deprecated krb5 APIs so that java # libosxkrb5 needs to call deprecated krb5 APIs so that java
# can use the native credentials cache. # can use the native credentials cache.
$(eval $(call SetupJdkLibrary, BUILD_LIBOSXKRB5, \ $(eval $(call SetupJdkLibrary, BUILD_LIBOSXKRB5, \

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
ROOT_SRCDIR := $(TOPDIR)/src/jdk.accessibility/windows/native ROOT_SRCDIR := $(TOPDIR)/src/jdk.accessibility/windows/native
@ -100,7 +100,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
endef endef
ifeq ($(OPENJDK_TARGET_CPU_BITS), 32) ifeq ($(call isTargetCpuBits, 32), true)
$(eval $(call SetupAccessBridgeSysInfo)) $(eval $(call SetupAccessBridgeSysInfo))
$(eval $(call SetupJavaDLL,-32,32)) $(eval $(call SetupJavaDLL,-32,32))
$(eval $(call SetupJavaDLL,,LEGACY)) $(eval $(call SetupJavaDLL,,LEGACY))

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate # In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate
# a binary that is compatible with windows versions older than 7/2008R2. # a binary that is compatible with windows versions older than 7/2008R2.
# See MSDN documentation for GetProcessMemoryInfo for more information. # See MSDN documentation for GetProcessMemoryInfo for more information.

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBSUNMSCAPI, \ $(eval $(call SetupJdkLibrary, BUILD_LIBSUNMSCAPI, \
NAME := sunmscapi, \ NAME := sunmscapi, \

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBJ2UCRYPTO, \ $(eval $(call SetupJdkLibrary, BUILD_LIBJ2UCRYPTO, \
NAME := j2ucrypto, \ NAME := j2ucrypto, \

View File

@ -29,19 +29,19 @@ $(eval $(call IncludeCustomExtension, hotspot/lib/Lib-jdk.hotspot.agent.gmk))
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
SA_CFLAGS := -D_FILE_OFFSET_BITS=64 SA_CFLAGS := -D_FILE_OFFSET_BITS=64
else ifeq ($(OPENJDK_TARGET_OS), solaris) else ifeq ($(call isTargetOs, solaris), true)
SA_LDFLAGS := -mt SA_LDFLAGS := -mt
else ifeq ($(OPENJDK_TARGET_OS), macosx) else ifeq ($(call isTargetOs, macosx), true)
SA_CFLAGS := -Damd64 -D_GNU_SOURCE -mno-omit-leaf-frame-pointer \ SA_CFLAGS := -Damd64 -D_GNU_SOURCE -mno-omit-leaf-frame-pointer \
-mstack-alignment=16 -fPIC -mstack-alignment=16 -fPIC
LIBSA_EXTRA_SRC := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.hotspot.agent LIBSA_EXTRA_SRC := $(SUPPORT_OUTPUTDIR)/gensrc/jdk.hotspot.agent
else ifeq ($(OPENJDK_TARGET_OS), windows) else ifeq ($(call isTargetOs, windows), true)
SA_CFLAGS := -D_WINDOWS -D_DEBUG -D_CONSOLE -D_MBCS -EHsc SA_CFLAGS := -D_WINDOWS -D_DEBUG -D_CONSOLE -D_MBCS -EHsc
ifeq ($(OPENJDK_TARGET_CPU), x86_64) ifeq ($(call isTargetCpu, x86_64), true)
SA_CXXFLAGS := -DWIN64 SA_CXXFLAGS := -DWIN64
else else
# Only add /RTC1 flag for debug builds as it's # Only add /RTC1 flag for debug builds as it's

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBLE, \ $(eval $(call SetupJdkLibrary, BUILD_LIBLE, \
NAME := le, \ NAME := le, \
@ -39,6 +39,6 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
TARGETS += $(BUILD_LIBLE) TARGETS += $(BUILD_LIBLE)
endif # OPENJDK_TARGET_OS endif
################################################################################ ################################################################################

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBDT_SHMEM, \ $(eval $(call SetupJdkLibrary, BUILD_LIBDT_SHMEM, \
NAME := dt_shmem, \ NAME := dt_shmem, \
@ -42,6 +42,6 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
TARGETS += $(BUILD_LIBDT_SHMEM) TARGETS += $(BUILD_LIBDT_SHMEM)
endif # OPENJDK_TARGET_OS endif
################################################################################ ################################################################################

View File

@ -30,7 +30,7 @@ $(eval $(call IncludeCustomExtension, lib/Lib-jdk.management.gmk))
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
# In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate # In (at least) VS2013 and later, -DPSAPI_VERSION=1 is needed to generate
# a binary that is compatible with windows versions older than 7/2008R2. # a binary that is compatible with windows versions older than 7/2008R2.
# See MSDN documentation for GetProcessMemoryInfo for more information. # See MSDN documentation for GetProcessMemoryInfo for more information.
@ -38,7 +38,7 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
endif endif
LIBMANAGEMENT_EXT_OPTIMIZATION := HIGH LIBMANAGEMENT_EXT_OPTIMIZATION := HIGH
ifneq ($(findstring $(OPENJDK_TARGET_OS), solaris linux), ) ifeq ($(call isTargetOs, solaris linux), true)
ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true) ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true)
LIBMANAGEMENT_EXT_OPTIMIZATION := LOW LIBMANAGEMENT_EXT_OPTIMIZATION := LOW
endif endif
@ -65,4 +65,3 @@ TARGETS += $(BUILD_LIBMANAGEMENT_EXT)
# Include custom extension post hook # Include custom extension post hook
$(eval $(call IncludeCustomExtension, lib/Lib-jdk.management-post.gmk)) $(eval $(call IncludeCustomExtension, lib/Lib-jdk.management-post.gmk))

View File

@ -27,7 +27,7 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifneq ($(filter $(OPENJDK_TARGET_OS), solaris linux macosx), ) ifeq ($(call isTargetOs, solaris linux macosx), true)
$(eval $(call SetupJdkLibrary, BUILD_LIBEXTNET, \ $(eval $(call SetupJdkLibrary, BUILD_LIBEXTNET, \
NAME := extnet, \ NAME := extnet, \

View File

@ -27,9 +27,9 @@ include LibCommon.gmk
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS_TYPE), unix) ifeq ($(call isTargetOsType, unix), true)
ifeq ($(filter $(OPENJDK_TARGET_OS), macosx aix), ) ifeq ($(call isTargetOs, macosx aix), false)
$(eval $(call SetupJdkLibrary, BUILD_LIBSCTP, \ $(eval $(call SetupJdkLibrary, BUILD_LIBSCTP, \
NAME := sctp, \ NAME := sctp, \
OPTIMIZATION := LOW, \ OPTIMIZATION := LOW, \

View File

@ -61,7 +61,7 @@ TARGETS += $(BUILD_FAILURE_HANDLER)
################################################################################ ################################################################################
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
$(eval $(call SetupNativeCompilation, BUILD_LIBTIMEOUT_HANDLER, \ $(eval $(call SetupNativeCompilation, BUILD_LIBTIMEOUT_HANDLER, \
NAME := timeoutHandler, \ NAME := timeoutHandler, \
@ -99,7 +99,7 @@ IMAGES_TARGETS += $(COPY_FH)
# #
RUN_DIR := $(FH_SUPPORT)/test RUN_DIR := $(FH_SUPPORT)/test
# Add the dir of the dll to the path on windows # Add the dir of the dll to the path on windows
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
export PATH := $(PATH);$(FH_SUPPORT) export PATH := $(PATH);$(FH_SUPPORT)
endif endif

View File

@ -140,7 +140,7 @@ NSK_AOD_INCLUDES := \
-I$(VM_TESTBASE_DIR)/nsk/share/jni -I$(VM_TESTBASE_DIR)/nsk/share/jni
NO_FRAMEPOINTER_CFLAGS := NO_FRAMEPOINTER_CFLAGS :=
ifeq ($(OPENJDK_TARGET_OS),linux) ifeq ($(call isTargetOs, linux), true)
NO_FRAMEPOINTER_CFLAGS := -fomit-frame-pointer NO_FRAMEPOINTER_CFLAGS := -fomit-frame-pointer
endif endif
@ -849,11 +849,11 @@ BUILD_HOTSPOT_JTREG_LIBRARIES_CFLAGS_libVirtualMachine09agent00 := $(NSK_AOD_INC
################################################################################ ################################################################################
# Platform specific setup # Platform specific setup
ifneq ($(OPENJDK_TARGET_OS)-$(OPENJDK_TARGET_CPU_ARCH), solaris-sparc) ifeq ($(call And, $(call isTargetOs, solaris) $(call isTargetCpuArch, sparc)), false)
BUILD_HOTSPOT_JTREG_EXCLUDE += liboverflow.c exeThreadSignalMask.c BUILD_HOTSPOT_JTREG_EXCLUDE += liboverflow.c exeThreadSignalMask.c
endif endif
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rw := -z noexecstack BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rw := -z noexecstack
BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rwx := -z execstack BUILD_HOTSPOT_JTREG_LIBRARIES_LDFLAGS_libtest-rwx := -z execstack
BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libstepBreakPopReturn := -lpthread BUILD_HOTSPOT_JTREG_LIBRARIES_LIBS_libstepBreakPopReturn := -lpthread
@ -870,11 +870,11 @@ endif
BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exesigtest := -ljvm BUILD_HOTSPOT_JTREG_EXECUTABLES_LIBS_exesigtest := -ljvm
ifeq ($(OPENJDK_TARGET_OS), solaris) ifeq ($(call isTargetOs, solaris), true)
BUILD_HOTSPOT_JTREG_EXCLUDE += libterminatedThread.c BUILD_HOTSPOT_JTREG_EXCLUDE += libterminatedThread.c
endif endif
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
BUILD_HOTSPOT_JTREG_EXECUTABLES_CFLAGS_exeFPRegs := -MT BUILD_HOTSPOT_JTREG_EXECUTABLES_CFLAGS_exeFPRegs := -MT
BUILD_HOTSPOT_JTREG_EXCLUDE += exesigtest.c libterminatedThread.c BUILD_HOTSPOT_JTREG_EXCLUDE += exesigtest.c libterminatedThread.c

View File

@ -54,7 +54,7 @@ BUILD_JDK_JTREG_EXECUTABLES_CFLAGS_exeJliLaunchTest := \
-I$(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS)/native/libjli -I$(TOPDIR)/src/java.base/$(OPENJDK_TARGET_OS)/native/libjli
# Platform specific setup # Platform specific setup
ifeq ($(OPENJDK_TARGET_OS), windows) ifeq ($(call isTargetOs, windows), true)
BUILD_JDK_JTREG_EXCLUDE += libDirectIO.c libInheritedChannel.c BUILD_JDK_JTREG_EXCLUDE += libDirectIO.c libInheritedChannel.c
WIN_LIB_JAVA := $(SUPPORT_OUTPUTDIR)/native/java.base/libjava/java.lib WIN_LIB_JAVA := $(SUPPORT_OUTPUTDIR)/native/java.base/libjava/java.lib
@ -64,15 +64,15 @@ ifeq ($(OPENJDK_TARGET_OS), windows)
else else
BUILD_JDK_JTREG_LIBRARIES_LIBS_libstringPlatformChars := -ljava BUILD_JDK_JTREG_LIBRARIES_LIBS_libstringPlatformChars := -ljava
BUILD_JDK_JTREG_LIBRARIES_LIBS_libDirectIO := -ljava BUILD_JDK_JTREG_LIBRARIES_LIBS_libDirectIO := -ljava
ifeq ($(OPENJDK_TARGET_OS), linux) ifeq ($(call isTargetOs, linux), true)
BUILD_JDK_JTREG_LIBRARIES_LIBS_libInheritedChannel := -ljava BUILD_JDK_JTREG_LIBRARIES_LIBS_libInheritedChannel := -ljava
else ifeq ($(OPENJDK_TARGET_OS), solaris) else ifeq ($(call isTargetOs, solaris), true)
BUILD_JDK_JTREG_LIBRARIES_LIBS_libInheritedChannel := -ljava -lsocket -lnsl BUILD_JDK_JTREG_LIBRARIES_LIBS_libInheritedChannel := -ljava -lsocket -lnsl
endif endif
BUILD_JDK_JTREG_EXECUTABLES_LIBS_exeJliLaunchTest := -ljli BUILD_JDK_JTREG_EXECUTABLES_LIBS_exeJliLaunchTest := -ljli
endif endif
ifeq ($(OPENJDK_TARGET_OS), macosx) ifeq ($(call isTargetOs, macosx), true)
BUILD_JDK_JTREG_LIBRARIES_CFLAGS_libTestMainKeyWindow := -ObjC BUILD_JDK_JTREG_LIBRARIES_CFLAGS_libTestMainKeyWindow := -ObjC
BUILD_JDK_JTREG_LIBRARIES_LIBS_libTestMainKeyWindow := -framework JavaVM \ BUILD_JDK_JTREG_LIBRARIES_LIBS_libTestMainKeyWindow := -framework JavaVM \
-framework Cocoa -framework JavaNativeFoundation -framework Cocoa -framework JavaNativeFoundation

View File

@ -115,6 +115,28 @@ ifneq ($(call equals, $(EQUALS_VALUE2), $(EQUALS_EMPTY)), )
$(error The strings >$(EQUALS_VALUE2)< and >$(EQUALS_EMPTY)< are equal) $(error The strings >$(EQUALS_VALUE2)< and >$(EQUALS_EMPTY)< are equal)
endif endif
################################################################################
# Test boolean operators
$(eval $(call assert-equals, $(call And, true true true ), true))
$(eval $(call assert-equals, $(call And, true false true ), false))
$(eval $(call assert-equals, $(call And, false false false ), false))
$(eval $(call assert-equals, $(call And, true), true))
$(eval $(call assert-equals, $(call And, false), false))
$(eval $(call assert-equals, $(call And, ), true))
$(eval $(call assert-equals, $(call Or, true true true ), true))
$(eval $(call assert-equals, $(call Or, true false true ), true))
$(eval $(call assert-equals, $(call Or, false false false ), false))
$(eval $(call assert-equals, $(call Or, true), true))
$(eval $(call assert-equals, $(call Or, false), false))
$(eval $(call assert-equals, $(call Or, ), false))
# We cannot catch $(error) while testing, but you can enable this manually
# by uncommenting and watch make fails.
#$(eval $(call assert-equals, $(call And, non-boolean ), $(error ...)))
#$(eval $(call assert-equals, $(call Or, non-boolean ), $(error ...)))
################################################################################ ################################################################################
# Test remove-prefixes # Test remove-prefixes

View File

@ -37,6 +37,6 @@ endef
# On macosx, file system timestamps only have 1 second resultion so must add # On macosx, file system timestamps only have 1 second resultion so must add
# sleeps to properly test dependencies. # sleeps to properly test dependencies.
ifeq ($(OPENJDK_BUILD_OS), macosx) ifeq ($(call isBuildOs, macosx), true)
SLEEP_ON_MAC := sleep 1 SLEEP_ON_MAC := sleep 1
endif endif