This commit is contained in:
J. Duke 2017-07-05 21:38:49 +02:00
commit 577954bfa9
16 changed files with 176 additions and 45 deletions

View File

@ -358,3 +358,4 @@ f900d5afd9c83a0df8f36161c27c5e4c86a66f4c jdk-9+111
55b6d550828d1223b364e6ead4a56e56411c56df jdk-9+113
1d992540870ff33fe6cc550443388588df9b9e4f jdk-9+114
09617ce980b99d49abfd54dacfed353c47e2a115 jdk-9+115
6743a8e0cab7b5f6f4a0575f6664892f0ab740af jdk-9+116

View File

@ -397,6 +397,7 @@ AC_DEFUN_ONCE([BOOTJDK_SETUP_BOOT_JDK_ARGUMENTS],
ADD_JVM_ARG_IF_OK([-XX:+UseSerialGC],boot_jdk_jvmargs_small,[$JAVA])
ADD_JVM_ARG_IF_OK([-Xms32M],boot_jdk_jvmargs_small,[$JAVA])
ADD_JVM_ARG_IF_OK([-Xmx512M],boot_jdk_jvmargs_small,[$JAVA])
ADD_JVM_ARG_IF_OK([-XX:TieredStopAtLevel=1],boot_jdk_jvmargs_small,[$JAVA])
AC_MSG_RESULT([$boot_jdk_jvmargs_small])

View File

@ -31,7 +31,7 @@
export LEGACY_BUILD_DIR=@OPENJDK_TARGET_OS@-@OPENJDK_TARGET_CPU_LEGACY@
sexport OPENJDK_TARGET_OS="@OPENJDK_TARGET_OS@"
export OPENJDK_TARGET_OS="@OPENJDK_TARGET_OS@"
export OPENJDK_TARGET_CPU="@OPENJDK_TARGET_CPU@"
export OPENJDK_TARGET_CPU_LIBDIR="@OPENJDK_TARGET_CPU_LIBDIR@"
export DEBUG_LEVEL="@DEBUG_LEVEL@"

View File

@ -1224,9 +1224,9 @@ with_lcms
with_dxsdk
with_dxsdk_lib
with_dxsdk_include
enable_jtreg_failure_handler
enable_new_hotspot_build
enable_hotspot_test_in_build
enable_jtreg_failure_handler
with_num_cores
with_memory_size
with_jobs
@ -5070,7 +5070,7 @@ VS_SDK_PLATFORM_NAME_2013=
#CUSTOM_AUTOCONF_INCLUDE
# Do not change or remove the following line, it is needed for consistency checks:
DATE_WHEN_GENERATED=1460963400
DATE_WHEN_GENERATED=1462204427
###############################################################################
#
@ -15492,7 +15492,7 @@ $as_echo "$COMPILE_TYPE" >&6; }
HOTSPOT_TARGET_CPU_DEFINE=PPC32
elif test "x$OPENJDK_TARGET_CPU" = xs390; then
HOTSPOT_TARGET_CPU_DEFINE=S390
elif test "x$OPENJDK_TARGET_CPU" = ss390x; then
elif test "x$OPENJDK_TARGET_CPU" = xs390x; then
HOTSPOT_TARGET_CPU_DEFINE=S390
fi
@ -15648,7 +15648,7 @@ $as_echo "$COMPILE_TYPE" >&6; }
HOTSPOT_BUILD_CPU_DEFINE=PPC32
elif test "x$OPENJDK_BUILD_CPU" = xs390; then
HOTSPOT_BUILD_CPU_DEFINE=S390
elif test "x$OPENJDK_BUILD_CPU" = ss390x; then
elif test "x$OPENJDK_BUILD_CPU" = xs390x; then
HOTSPOT_BUILD_CPU_DEFINE=S390
fi
@ -64282,6 +64282,21 @@ $as_echo_n "checking flags for boot jdk java command for small workloads... " >&
fi
$ECHO "Check if jvm arg is ok: -XX:TieredStopAtLevel=1" >&5
$ECHO "Command: $JAVA -XX:TieredStopAtLevel=1 -version" >&5
OUTPUT=`$JAVA -XX:TieredStopAtLevel=1 -version 2>&1`
FOUND_WARN=`$ECHO "$OUTPUT" | grep -i warn`
FOUND_VERSION=`$ECHO $OUTPUT | grep " version \""`
if test "x$FOUND_VERSION" != x && test "x$FOUND_WARN" = x; then
boot_jdk_jvmargs_small="$boot_jdk_jvmargs_small -XX:TieredStopAtLevel=1"
JVM_ARG_OK=true
else
$ECHO "Arg failed:" >&5
$ECHO "$OUTPUT" >&5
JVM_ARG_OK=false
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $boot_jdk_jvmargs_small" >&5
$as_echo "$boot_jdk_jvmargs_small" >&6; }

View File

@ -435,7 +435,7 @@ AC_DEFUN([PLATFORM_SETUP_LEGACY_VARS_HELPER],
HOTSPOT_$1_CPU_DEFINE=PPC32
elif test "x$OPENJDK_$1_CPU" = xs390; then
HOTSPOT_$1_CPU_DEFINE=S390
elif test "x$OPENJDK_$1_CPU" = ss390x; then
elif test "x$OPENJDK_$1_CPU" = xs390x; then
HOTSPOT_$1_CPU_DEFINE=S390
fi
AC_SUBST(HOTSPOT_$1_CPU_DEFINE)

View File

@ -212,14 +212,17 @@ var getJibProfiles = function (input) {
* @returns Common values
*/
var getJibProfilesCommon = function (input) {
var common = {
dependencies: ["boot_jdk", "gnumake", "jtreg"],
configure_args: ["--with-default-make-target=all", "--enable-jtreg-failure-handler"],
configure_args_32bit: ["--with-target-bits=32", "--with-jvm-variants=client,server"],
configure_args_debug: ["--enable-debug"],
configure_args_slowdebug: ["--with-debug-level=slowdebug"],
organization: "jpg.infra.builddeps"
};
var common = {};
common.dependencies = ["boot_jdk", "gnumake", "jtreg"],
common.default_make_targets = ["product-images", "test-image"],
common.default_make_targets_debug = common.default_make_targets;
common.default_make_targets_slowdebug = common.default_make_targets;
common.configure_args = ["--enable-jtreg-failure-handler"],
common.configure_args_32bit = ["--with-target-bits=32", "--with-jvm-variants=client,server"],
common.configure_args_debug = ["--enable-debug"],
common.configure_args_slowdebug = ["--with-debug-level=slowdebug"],
common.organization = "jpg.infra.builddeps"
return common;
};
@ -242,7 +245,7 @@ var getJibProfilesProfiles = function (input, common) {
target_cpu: "x64",
dependencies: concat(common.dependencies, "devkit"),
configure_args: concat(common.configure_args, "--with-zlib=system"),
make_args: common.make_args
default_make_targets: concat(common.default_make_targets, "docs-image")
},
"linux-x86": {
@ -252,7 +255,7 @@ var getJibProfilesProfiles = function (input, common) {
dependencies: concat(common.dependencies, "devkit"),
configure_args: concat(common.configure_args, common.configure_args_32bit,
"--with-zlib=system"),
make_args: common.make_args
default_make_targets: common.default_make_targets
},
"macosx-x64": {
@ -260,7 +263,7 @@ var getJibProfilesProfiles = function (input, common) {
target_cpu: "x64",
dependencies: concat(common.dependencies, "devkit"),
configure_args: concat(common.configure_args, "--with-zlib=system"),
make_args: common.make_args
default_make_targets: common.default_make_targets
},
"solaris-x64": {
@ -268,7 +271,7 @@ var getJibProfilesProfiles = function (input, common) {
target_cpu: "x64",
dependencies: concat(common.dependencies, "devkit", "cups"),
configure_args: concat(common.configure_args, "--with-zlib=system"),
make_args: common.make_args
default_make_targets: common.default_make_targets
},
"solaris-sparcv9": {
@ -276,15 +279,15 @@ var getJibProfilesProfiles = function (input, common) {
target_cpu: "sparcv9",
dependencies: concat(common.dependencies, "devkit", "cups"),
configure_args: concat(common.configure_args, "--with-zlib=system"),
make_args: common.make_args
default_make_targets: common.default_make_targets
},
"windows-x64": {
target_os: "windows",
target_cpu: "x64",
dependencies: concat(common.dependencies, "devkit", "freetype"),
configure_args: common.configure_args,
make_args: common.make_args
configure_args: concat(common.configure_args),
default_make_targets: common.default_make_targets
},
"windows-x86": {
@ -293,7 +296,7 @@ var getJibProfilesProfiles = function (input, common) {
build_cpu: "x64",
dependencies: concat(common.dependencies, "devkit", "freetype"),
configure_args: concat(common.configure_args, common.configure_args_32bit),
make_args: common.make_args
default_make_targets: common.default_make_targets
}
};
profiles = concatObjects(profiles, mainProfiles);
@ -306,14 +309,15 @@ var getJibProfilesProfiles = function (input, common) {
// implementation builds.
var openOnlyProfiles = generateOpenOnlyProfiles(common, mainProfiles);
// The open only profiles on linux are used for reference builds and should
// produce the compact profile images by default.
// produce the compact profile images by default. This adds "profiles" as an
// extra default target.
var openOnlyProfilesExtra = {
"linux-x64-open": {
configure_args: ["--with-default-make-target=all profiles"],
default_make_targets: "profiles"
},
"linux-x86-open": {
configure_args: ["--with-default-make-target=all profiles"],
default_make_targets: "profiles"
}
};
var openOnlyProfiles = concatObjects(openOnlyProfiles, openOnlyProfilesExtra);
@ -336,6 +340,7 @@ var getJibProfilesProfiles = function (input, common) {
// Generate the missing platform attributes
profiles = generatePlatformAttributes(profiles);
profiles = generateDefaultMakeTargetsConfigureArg(common, profiles);
return profiles;
};
@ -469,6 +474,8 @@ var generateDebugProfiles = function (common, profiles) {
var debugProfile = profile + "-debug";
newProfiles[debugProfile] = clone(profiles[profile]);
newProfiles[debugProfile].debug_level = "fastdebug";
newProfiles[debugProfile].default_make_targets
= common.default_make_targets_debug;
newProfiles[debugProfile].labels
= concat(newProfiles[debugProfile].labels || [], "debug"),
newProfiles[debugProfile].configure_args
@ -492,6 +499,8 @@ var generateSlowdebugProfiles = function (common, profiles) {
var debugProfile = profile + "-slowdebug";
newProfiles[debugProfile] = clone(profiles[profile]);
newProfiles[debugProfile].debug_level = "slowdebug";
newProfiles[debugProfile].default_make_targets
= common.default_make_targets_slowdebug;
newProfiles[debugProfile].labels
= concat(newProfiles[debugProfile].labels || [], "slowdebug"),
newProfiles[debugProfile].configure_args
@ -523,6 +532,39 @@ var generateOpenOnlyProfiles = function (common, profiles) {
return newProfiles;
};
/**
* The default_make_targets attribute on a profile is not a real Jib attribute.
* This function rewrites that attribute into the corresponding configure arg.
* Calling this function multiple times on the same profiles object is safe.
*
* @param common Common values
* @param profiles Profiles map to rewrite profiles for
* @returns {{}} New map of profiles with the make targets converted
*/
var generateDefaultMakeTargetsConfigureArg = function (common, profiles) {
var ret = concatObjects(profiles, {});
for (var profile in ret) {
if (ret[profile]["default_make_targets"] != null) {
var targetsString = concat(ret[profile].default_make_targets).join(" ");
// Iterate over all configure args and see if --with-default-make-target
// is already there and change it, otherwise add it.
var found = false;
for (var arg in ret[profile].configure_args) {
if (arg.startsWith("--with-default-make-target")) {
found = true;
arg.replace(/=.*/, "=" + targetsString);
}
}
if (!found) {
ret[profile].configure_args = concat(
ret[profile].configure_args,
"--with-default-make-target=" + targetsString);
}
}
}
return ret;
}
/**
* Deep clones an object tree.
*

View File

@ -518,3 +518,4 @@ c558850fac5750d8ca98a45180121980f57cdd28 jdk-9+111
c569f8d89269fb6205b90f727581eb8cc04132f9 jdk-9+113
b64432bae5271735fd53300b2005b713e98ef411 jdk-9+114
88dd08d7be0fe7fb9f1914b1628f0aae9bf56e25 jdk-9+115
61a214186dae6811dd989e9165e42f7dbf02acde jdk-9+116

View File

@ -99,7 +99,7 @@ java.datatransfer_COPY := flavormap.properties
################################################################################
java.desktop_ADD_JAVAC_FLAGS := -Xdoclint:all/protected,-reference \
'-Xdoclint/package:java.*,javax.*' -Xlint:-deprecation
'-Xdoclint/package:java.*,javax.*'
java.desktop_COPY := .gif .png .wav .txt .xml .css .pf
java.desktop_CLEAN := iio-plugin.properties cursors.properties

View File

@ -82,7 +82,7 @@ $(IMAGES_OUTPUTDIR)/jmods/$(MODULE).jmod: $(DEPS)
--os-version $(REQUIRED_OS_VERSION) \
--modulepath $(IMAGES_OUTPUTDIR)/jmods\
--hash-dependencies '.*' \
--exclude '**_the.*' \
--exclude '**{_the.*,*.diz,*.debuginfo,*.dSYM/**,*.pdb,*.map}' \
$(JMOD_FLAGS) $(SUPPORT_OUTPUTDIR)/jmods/$(notdir $@)
$(MV) $(SUPPORT_OUTPUTDIR)/jmods/$(notdir $@) $@

View File

@ -78,21 +78,30 @@ ifneq ($(MOD_FILES), )
# let space represent new lines in the variable as $(shell) normalizes all
# whitespace.
$(foreach f, $(MOD_FILES), \
$(eval MOD_FILE_CONTENTS += $(shell $(GREP) -v ".\*" $f | $(TR) ' ' '/')))
$(eval MOD_FILE_CONTENTS += $(shell $(GREP) -v -e ".\*" -e "//" $f | $(TR) ' ' '/')))
# Separate the modifications into qualified exports and the rest
MODS_QUALIFIED_EXPORTS := $(call containing, /to/, $(MOD_FILE_CONTENTS))
MODS_REST := $(filter-out $(MODS_QUALIFIED_EXPORTS), $(MOD_FILE_CONTENTS))
# Filter the contents for modules that are actually being built
MODULES_FILTER := $(addprefix %/, $(addsuffix ;, $(ALL_MODULES)))
MODULES_FILTER += provides%
MODIFICATIONS := $(filter $(MODULES_FILTER), $(MOD_FILE_CONTENTS))
MODIFICATIONS := $(filter $(MODULES_FILTER), $(MODS_QUALIFIED_EXPORTS)) \
$(MODS_REST)
# Convert the modification lines into arguments for the modification tool.
# Filter out modifications for non existing to-modules.
$(foreach line, $(MODIFICATIONS), \
$(eval split_line := $(subst /,$(SPACE),$(line))) \
$(eval command := $(word 1, $(split_line))) \
$(eval package := $(word 2, $(split_line))) \
$(eval package := $(patsubst %;,%,$(word 2, $(split_line)))) \
$(eval to_module := $(patsubst %;,%,$(word 4, $(split_line)))) \
$(eval ARGS += -$(command) $(package)/$(to_module)))
$(if $(to_module), \
$(eval ARGS += -$(command) $(package)/$(to_module)) \
, \
$(eval ARGS += -$(command) $(package)) \
) \
)
ifneq ($(ARGS), )
$(SUPPORT_OUTPUTDIR)/gensrc/$(MODULE)/module-info.java: \

View File

@ -422,6 +422,55 @@ ifeq ($(GCOV_ENABLED), true)
endif
################################################################################
# Debug symbols
# Since debug symbols are not included in the jmod files, they need to be copied
# in manually after generating the images.
ALL_JDK_MODULES := $(JDK_MODULES)
ALL_JRE_MODULES := $(sort $(JRE_MODULES), $(foreach m, $(JRE_MODULES), \
$(call FindTransitiveDepsForModule, $m)))
ifeq ($(OPENJDK_TARGET_OS), windows)
LIBS_TARGET_SUBDIR := bin
else
LIBS_TARGET_SUBDIR := lib
endif
DEBUGINFO_SUFFIXES := .diz .debuginfo .pdb .map
# Param 1 - dir to find debuginfo files in
FindDebuginfoFiles = \
$(wildcard $(addprefix $1/*, $(DEBUGINFO_SUFFIXES)) \
$(addprefix $1/*/*, $(DEBUGINFO_SUFFIXES)) \
$(addprefix $1/*/*/*, $(DEBUGINFO_SUFFIXES)))
# On Macosx, if debug symbols have not been zipped, find all files inside *.dSYM
# dirs.
ifeq ($(OPENJDK_TARGET_OS)-$(ZIP_EXTERNAL_DEBUG_SYMBOLS), macosx-false)
$(eval $(call FillCacheFind, \
$(SUPPORT_OUTPUTDIR)/modules_cmds $(SUPPORT_OUTPUTDIR)/modules_libs/))
FindDebuginfoFiles = \
$(if $(wildcard $1), $(call containing, .dSYM/, $(call CacheFind, $1)))
endif
# Param 1 - either JDK or JRE
SetupCopyDebuginfo = \
$(foreach m, $(ALL_$1_MODULES), \
$(eval $(call SetupCopyFiles, COPY_$1_LIBS_DEBUGINFO_$m, \
SRC := $(SUPPORT_OUTPUTDIR)/modules_libs/$m, \
DEST := $($1_IMAGE_DIR)/$(LIBS_TARGET_SUBDIR), \
FILES := $(call FindDebuginfoFiles, \
$(SUPPORT_OUTPUTDIR)/modules_libs/$m), \
)) \
$(eval $1_TARGETS += $$(COPY_$1_LIBS_DEBUGINFO_$m)) \
)
# No space before argument to avoid having to put $(strip ) everywhere in
# implementation above.
$(call SetupCopyDebuginfo,JDK)
$(call SetupCopyDebuginfo,JRE)
################################################################################
# Include custom post hook here to make it possible to augment the target lists

View File

@ -268,8 +268,13 @@ else # HAS_SPEC=true
##############################################################################
MAIN_TARGETS := $(SEQUENTIAL_TARGETS) $(PARALLEL_TARGETS) $(COMPARE_BUILD_MAKE)
# If building the default target, add what they are to the description.
DESCRIPTION_TARGETS := $(strip $(MAIN_TARGETS))
ifeq ($(DESCRIPTION_TARGETS), default)
DESCRIPTION_TARGETS += ($(DEFAULT_MAKE_TARGET))
endif
TARGET_DESCRIPTION := target$(if $(word 2, $(MAIN_TARGETS)),s) \
'$(strip $(MAIN_TARGETS))' in configuration '$(CONF_NAME)'
'$(strip $(DESCRIPTION_TARGETS))' in configuration '$(CONF_NAME)'
# MAKEOVERRIDES is automatically set and propagated by Make to sub-Make calls.
# We need to clear it of the init-specific variables. The user-specified

View File

@ -1580,7 +1580,7 @@ JDKNET_OPTIONS_FILE = $(DOCSTMPDIR)/jdknet.options
JDKNET_PACKAGES_FILE = $(DOCSTMPDIR)/jdknet.packages
# The modules required to be documented
JDKNET_MODULES = java.base
JDKNET_MODULES = jdk.net
jdknetdocs: $(JDKNET_INDEX_HTML)

View File

@ -108,8 +108,8 @@ SRC_JDK_MACOSX_BUNDLE_DIR := $(JDK_MACOSX_BUNDLE_DIR)
SRC_JRE_MACOSX_BUNDLE_DIR := $(JRE_MACOSX_BUNDLE_DIR)
# Bundle up the images
JPRT_TARGET ?= all
ifeq ($(JPRT_TARGET), all)
JPRT_TARGET ?= default
ifeq ($(JPRT_TARGET), default)
bundles: $(JPRT_TARGET)
@$(call TargetEnter)
$(MKDIR) -p $(BUILD_OUTPUT)/bundles

View File

@ -340,10 +340,10 @@ docs-javadoc:
docs-jvmtidoc:
+($(CD) $(SRC_ROOT)/make && $(MAKE) $(MAKE_ARGS) -f Javadoc.gmk jvmtidocs)
zip-docs: docs-javadoc docs-jvmtidoc
zip-docs:
+($(CD) $(SRC_ROOT)/make && $(MAKE) $(MAKE_ARGS) -f Javadoc.gmk zip-docs)
ALL_TARGETS += docs-javadoc docs-jvmtidoc
ALL_TARGETS += docs-javadoc docs-jvmtidoc zip-docs
################################################################################
# Cross compilation support
@ -602,6 +602,8 @@ else
docs-jvmtidoc: hotspot
zip-docs: docs-javadoc docs-jvmtidoc
test: jimages test-image
create-buildjdk-copy: jdk.jlink-java java.base-gendata
@ -703,7 +705,7 @@ ifeq ($(OPENJDK_TARGET_OS), macosx)
endif
# This target builds the documentation image
docs-image: zip-docs
docs-image: docs-javadoc docs-jvmtidoc
# This target builds the test image
test-image: prepare-test-image test-image-hotspot-jtreg-native \
@ -727,7 +729,7 @@ images: product-images
docs: docs-image
all: all-images
ALL_TARGETS += default jdk images docs all zip-docs
ALL_TARGETS += default jdk images docs all
################################################################################
################################################################################
@ -829,6 +831,10 @@ create-main-targets-include:
################################################################################
# workaround issue when building open targets when closed jib-profiles.js is used
installer: product-images test-image
.PHONY: $(ALL_TARGETS)
FRC: # Force target

View File

@ -63,6 +63,7 @@ BOOT_MODULES += \
java.xml.crypto \
jdk.httpserver \
jdk.management \
jdk.net \
jdk.sctp \
jdk.security.auth \
jdk.security.jgss \
@ -185,7 +186,8 @@ FindAllModules = \
$(call GetModuleNameFromModuleInfo, $(MODULE_INFOS))))
FindImportedModules = \
$(if $(IMPORT_MODULES_CLASSES), $(notdir $(wildcard $(IMPORT_MODULES_CLASSES)/*)))
$(filter-out $(MODULES_FILTER), \
$(if $(IMPORT_MODULES_CLASSES), $(notdir $(wildcard $(IMPORT_MODULES_CLASSES)/*))))
# Find all source dirs for a particular module
# $1 - Module to find source dirs for