8221880: Better customization for Windows RC properties FileDescription and ProductName
Reviewed-by: erikj
--- a/make/autoconf/flags-other.m4 Mon Apr 08 09:31:39 2019 +0800
+++ b/make/autoconf/flags-other.m4 Mon Apr 08 06:56:37 2019 +0100
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2011, 2018, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2019, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -81,10 +81,10 @@
RC_FLAGS="$RC_FLAGS \
-D\"JDK_VERSION_STRING=\$(VERSION_STRING)\" \
-D\"JDK_COMPANY=\$(COMPANY_NAME)\" \
- -D\"JDK_COMPONENT=\$(PRODUCT_NAME) \$(JDK_RC_PLATFORM_NAME) binary\" \
+ -D\"JDK_COMPONENT=\$(JDK_RC_NAME) binary\" \
-D\"JDK_VER=\$(VERSION_NUMBER)\" \
-D\"JDK_COPYRIGHT=Copyright \xA9 $COPYRIGHT_YEAR\" \
- -D\"JDK_NAME=\$(PRODUCT_NAME) \$(JDK_RC_PLATFORM_NAME) \$(VERSION_FEATURE)\" \
+ -D\"JDK_NAME=\$(JDK_RC_NAME) \$(VERSION_FEATURE)\" \
-D\"JDK_FVER=\$(subst .,\$(COMMA),\$(VERSION_NUMBER_FOUR_POSITIONS))\""
JVM_RCFLAGS="$JVM_RCFLAGS \
--- a/make/autoconf/jdk-version.m4 Mon Apr 08 09:31:39 2019 +0800
+++ b/make/autoconf/jdk-version.m4 Mon Apr 08 06:56:37 2019 +0100
@@ -1,5 +1,5 @@
#
-# Copyright (c) 2015, 2018, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2015, 2019, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
@@ -69,6 +69,23 @@
AC_SUBST(MACOSX_BUNDLE_NAME_BASE)
AC_SUBST(MACOSX_BUNDLE_ID_BASE)
+ # Set the JDK RC name
+ AC_ARG_WITH(jdk-rc-name, [AS_HELP_STRING([--with-jdk-rc-name],
+ [Set JDK RC name. This is used for FileDescription and ProductName properties
+ of MS Windows binaries. @<:@not specified@:>@])])
+ if test "x$with_jdk_rc_name" = xyes; then
+ AC_MSG_ERROR([--with-jdk-rc-name must have a value])
+ elif [ ! [[ $with_jdk_rc_name =~ ^[[:print:]]*$ ]] ]; then
+ AC_MSG_ERROR([--with-jdk-rc-name contains non-printing characters: $with_jdk_rc_name])
+ elif test "x$with_jdk_rc_name" != x; then
+ # Set JDK_RC_NAME to a custom value if '--with-jdk-rc-name' was used and is not empty.
+ JDK_RC_NAME="$with_jdk_rc_name"
+ else
+ # Otherwise calculate from "version-numbers" included above.
+ JDK_RC_NAME="$PRODUCT_NAME $JDK_RC_PLATFORM_NAME"
+ fi
+ AC_SUBST(JDK_RC_NAME)
+
# The vendor name, if any
AC_ARG_WITH(vendor-name, [AS_HELP_STRING([--with-vendor-name],
[Set vendor name. Among others, used to set the 'java.vendor'
--- a/make/autoconf/spec.gmk.in Mon Apr 08 09:31:39 2019 +0800
+++ b/make/autoconf/spec.gmk.in Mon Apr 08 06:56:37 2019 +0100
@@ -156,6 +156,7 @@
PRODUCT_NAME:=@PRODUCT_NAME@
PRODUCT_SUFFIX:=@PRODUCT_SUFFIX@
JDK_RC_PLATFORM_NAME:=@JDK_RC_PLATFORM_NAME@
+JDK_RC_NAME:=@JDK_RC_NAME@
COMPANY_NAME:=@COMPANY_NAME@
HOTSPOT_VM_DISTRO:=@HOTSPOT_VM_DISTRO@
MACOSX_BUNDLE_NAME_BASE=@MACOSX_BUNDLE_NAME_BASE@