diff --git a/make/Images.gmk b/make/Images.gmk index 6c859fce7a5..3f2b34bc9c6 100644 --- a/make/Images.gmk +++ b/make/Images.gmk @@ -97,6 +97,10 @@ ifeq ($(JLINK_PRODUCE_LINKABLE_RUNTIME), true) JLINK_JDK_EXTRA_OPTS += --generate-linkable-runtime endif +ifneq ($(JLINK_USER_EXTRA_FLAGS), ) + JLINK_JDK_EXTRA_OPTS += $(JLINK_USER_EXTRA_FLAGS) +endif + $(eval $(call SetupExecute, jlink_jdk, \ WARN := Creating jdk image, \ DEPS := $(JDK_JMODS) $(BASE_RELEASE_FILE) \ diff --git a/make/autoconf/jdk-options.m4 b/make/autoconf/jdk-options.m4 index f8ce5392df9..7c14c60095e 100644 --- a/make/autoconf/jdk-options.m4 +++ b/make/autoconf/jdk-options.m4 @@ -620,6 +620,18 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JLINK_OPTIONS], DEFAULT_DESC: [enabled by default unless --enable-linkable-runtime is set], CHECKING_MSG: [if packaged modules are kept]) AC_SUBST(JLINK_KEEP_PACKAGED_MODULES) + + ################################################################################ + # + # Extra jlink options to be (optionally) passed to the JDK build + # + UTIL_ARG_WITH(NAME: extra-jlink-flags, TYPE: string, + DEFAULT: [], + DESC: [extra flags to be passed to jlink during the build], + OPTIONAL: true) + + JLINK_USER_EXTRA_FLAGS="$EXTRA_JLINK_FLAGS" + AC_SUBST(JLINK_USER_EXTRA_FLAGS) ]) ################################################################################ diff --git a/make/autoconf/spec.gmk.template b/make/autoconf/spec.gmk.template index 92ee1c93287..a30936d7d45 100644 --- a/make/autoconf/spec.gmk.template +++ b/make/autoconf/spec.gmk.template @@ -712,6 +712,7 @@ NEW_JAVADOC = $(INTERIM_LANGTOOLS_ARGS) $(JAVADOC_MAIN_CLASS) JMOD_COMPRESS := @JMOD_COMPRESS@ JLINK_KEEP_PACKAGED_MODULES := @JLINK_KEEP_PACKAGED_MODULES@ JLINK_PRODUCE_LINKABLE_RUNTIME := @JLINK_PRODUCE_LINKABLE_RUNTIME@ +JLINK_USER_EXTRA_FLAGS := @JLINK_USER_EXTRA_FLAGS@ RCFLAGS := @RCFLAGS@