author | dholmes |
Mon, 26 Mar 2018 00:33:01 -0400 | |
changeset 49418 | 5bfe30bb50a2 |
parent 48608 | 1dab70e20292 |
child 51184 | 1edc62f9ba3a |
permissions | -rw-r--r-- |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
1 |
# |
48327 | 2 |
# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved. |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
3 |
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
4 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
5 |
# This code is free software; you can redistribute it and/or modify it |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
6 |
# under the terms of the GNU General Public License version 2 only, as |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
7 |
# published by the Free Software Foundation. Oracle designates this |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
8 |
# particular file as subject to the "Classpath" exception as provided |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
9 |
# by Oracle in the LICENSE file that accompanied this code. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
10 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
11 |
# This code is distributed in the hope that it will be useful, but WITHOUT |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
12 |
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
13 |
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
14 |
# version 2 for more details (a copy is included in the LICENSE file that |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
15 |
# accompanied this code). |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
16 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
17 |
# You should have received a copy of the GNU General Public License version |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
18 |
# 2 along with this work; if not, write to the Free Software Foundation, |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
19 |
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
20 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
21 |
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
22 |
# or visit www.oracle.com if you need additional information or have any |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
23 |
# questions. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
24 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
25 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
26 |
############################################################################### |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
27 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
28 |
# Setup version numbers |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
29 |
# |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
30 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
31 |
# Verify that a given string represents a valid version number, and assign it |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
32 |
# to a variable. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
33 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
34 |
# Argument 1: the variable to assign to |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
35 |
# Argument 2: the value given by the user |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
36 |
AC_DEFUN([JDKVER_CHECK_AND_SET_NUMBER], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
37 |
[ |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
38 |
# Additional [] needed to keep m4 from mangling shell constructs. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
39 |
if [ ! [[ "$2" =~ ^0*([1-9][0-9]*)|(0)$ ]] ] ; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
40 |
AC_MSG_ERROR(["$2" is not a valid numerical value for $1]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
41 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
42 |
# Extract the version number without leading zeros. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
43 |
cleaned_value=${BASH_REMATCH[[1]]} |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
44 |
if test "x$cleaned_value" = x; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
45 |
# Special case for zero |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
46 |
cleaned_value=${BASH_REMATCH[[2]]} |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
47 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
48 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
49 |
if test $cleaned_value -gt 255; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
50 |
AC_MSG_ERROR([$1 is given as $2. This is greater than 255 which is not allowed.]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
51 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
52 |
if test "x$cleaned_value" != "x$2"; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
53 |
AC_MSG_WARN([Value for $1 has been sanitized from '$2' to '$cleaned_value']) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
54 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
55 |
$1=$cleaned_value |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
56 |
]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
57 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
58 |
AC_DEFUN_ONCE([JDKVER_SETUP_JDK_VERSION_NUMBERS], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
59 |
[ |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
60 |
# Warn user that old version arguments are deprecated. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
61 |
BASIC_DEPRECATED_ARG_WITH([milestone]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
62 |
BASIC_DEPRECATED_ARG_WITH([update-version]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
63 |
BASIC_DEPRECATED_ARG_WITH([user-release-suffix]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
64 |
BASIC_DEPRECATED_ARG_WITH([build-number]) |
48327 | 65 |
BASIC_DEPRECATED_ARG_WITH([version-major]) |
66 |
BASIC_DEPRECATED_ARG_WITH([version-minor]) |
|
67 |
BASIC_DEPRECATED_ARG_WITH([version-security]) |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
68 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
69 |
# Source the version numbers file |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
70 |
. $AUTOCONF_DIR/version-numbers |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
71 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
72 |
# Some non-version number information is set in that file |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
73 |
AC_SUBST(LAUNCHER_NAME) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
74 |
AC_SUBST(PRODUCT_NAME) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
75 |
AC_SUBST(PRODUCT_SUFFIX) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
76 |
AC_SUBST(JDK_RC_PLATFORM_NAME) |
37402 | 77 |
AC_SUBST(HOTSPOT_VM_DISTRO) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
78 |
AC_SUBST(MACOSX_BUNDLE_NAME_BASE) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
79 |
AC_SUBST(MACOSX_BUNDLE_ID_BASE) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
80 |
|
48378
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
81 |
# The vendor name, if any |
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
82 |
AC_ARG_WITH(vendor-name, [AS_HELP_STRING([--with-vendor-name], |
48598
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
83 |
[Set vendor name. Among others, used to set the 'java.vendor' |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
84 |
and 'java.vm.vendor' system properties. @<:@not specified@:>@])]) |
48378
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
85 |
if test "x$with_vendor_name" = xyes; then |
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
86 |
AC_MSG_ERROR([--with-vendor-name must have a value]) |
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
87 |
elif [ ! [[ $with_vendor_name =~ ^[[:print:]]*$ ]] ]; then |
48598
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
88 |
AC_MSG_ERROR([--with-vendor-name contains non-printing characters: $with_vendor_name]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
89 |
elif test "x$with_vendor_name" != x; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
90 |
# Only set COMPANY_NAME if '--with-vendor-name' was used and is not empty. |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
91 |
# Otherwise we will use the value from "version-numbers" included above. |
48378
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
92 |
COMPANY_NAME="$with_vendor_name" |
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
93 |
fi |
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
94 |
AC_SUBST(COMPANY_NAME) |
e8e8db4f8194
8193764: Cannot set COMPANY_NAME when configuring a build
mr
parents:
48327
diff
changeset
|
95 |
|
48598
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
96 |
# The vendor URL, if any |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
97 |
AC_ARG_WITH(vendor-url, [AS_HELP_STRING([--with-vendor-url], |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
98 |
[Set the 'java.vendor.url' system property @<:@not specified@:>@])]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
99 |
if test "x$with_vendor_url" = xyes; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
100 |
AC_MSG_ERROR([--with-vendor-url must have a value]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
101 |
elif [ ! [[ $with_vendor_url =~ ^[[:print:]]*$ ]] ]; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
102 |
AC_MSG_ERROR([--with-vendor-url contains non-printing characters: $with_vendor_url]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
103 |
else |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
104 |
VENDOR_URL="$with_vendor_url" |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
105 |
fi |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
106 |
AC_SUBST(VENDOR_URL) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
107 |
|
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
108 |
# The vendor bug URL, if any |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
109 |
AC_ARG_WITH(vendor-bug-url, [AS_HELP_STRING([--with-vendor-bug-url], |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
110 |
[Set the 'java.vendor.url.bug' system property @<:@not specified@:>@])]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
111 |
if test "x$with_vendor_bug_url" = xyes; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
112 |
AC_MSG_ERROR([--with-vendor-bug-url must have a value]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
113 |
elif [ ! [[ $with_vendor_bug_url =~ ^[[:print:]]*$ ]] ]; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
114 |
AC_MSG_ERROR([--with-vendor-bug-url contains non-printing characters: $with_vendor_bug_url]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
115 |
else |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
116 |
VENDOR_URL_BUG="$with_vendor_bug_url" |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
117 |
fi |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
118 |
AC_SUBST(VENDOR_URL_BUG) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
119 |
|
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
120 |
# The vendor VM bug URL, if any |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
121 |
AC_ARG_WITH(vendor-vm-bug-url, [AS_HELP_STRING([--with-vendor-vm-bug-url], |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
122 |
[Sets the bug URL which will be displayed when the VM crashes @<:@not specified@:>@])]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
123 |
if test "x$with_vendor_vm_bug_url" = xyes; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
124 |
AC_MSG_ERROR([--with-vendor-vm-bug-url must have a value]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
125 |
elif [ ! [[ $with_vendor_vm_bug_url =~ ^[[:print:]]*$ ]] ]; then |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
126 |
AC_MSG_ERROR([--with-vendor-vm-bug-url contains non-printing characters: $with_vendor_vm_bug_url]) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
127 |
else |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
128 |
VENDOR_URL_VM_BUG="$with_vendor_vm_bug_url" |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
129 |
fi |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
130 |
AC_SUBST(VENDOR_URL_VM_BUG) |
c7eea4b541d1
8189761: COMPANY_NAME, IMPLEMENTOR, BUNDLE_VENDOR, VENDOR, but no configure flag
simonis
parents:
48378
diff
changeset
|
131 |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
132 |
# Override version from arguments |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
133 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
134 |
# If --with-version-string is set, process it first. It is possible to |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
135 |
# override parts with more specific flags, since these are processed later. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
136 |
AC_ARG_WITH(version-string, [AS_HELP_STRING([--with-version-string], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
137 |
[Set version string @<:@calculated@:>@])]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
138 |
if test "x$with_version_string" = xyes; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
139 |
AC_MSG_ERROR([--with-version-string must have a value]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
140 |
elif test "x$with_version_string" != x; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
141 |
# Additional [] needed to keep m4 from mangling shell constructs. |
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
142 |
if [ [[ $with_version_string =~ ^([0-9]+)(\.([0-9]+))?(\.([0-9]+))?(\.([0-9]+))?(-([a-zA-Z]+))?((\+)([0-9]+)?(-([-a-zA-Z0-9.]+))?)?$ ]] ]; then |
48327 | 143 |
VERSION_FEATURE=${BASH_REMATCH[[1]]} |
144 |
VERSION_INTERIM=${BASH_REMATCH[[3]]} |
|
145 |
VERSION_UPDATE=${BASH_REMATCH[[5]]} |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
146 |
VERSION_PATCH=${BASH_REMATCH[[7]]} |
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
147 |
VERSION_PRE=${BASH_REMATCH[[9]]} |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
148 |
version_plus_separator=${BASH_REMATCH[[11]]} |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
149 |
VERSION_BUILD=${BASH_REMATCH[[12]]} |
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
150 |
VERSION_OPT=${BASH_REMATCH[[14]]} |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
151 |
# Unspecified numerical fields are interpreted as 0. |
48327 | 152 |
if test "x$VERSION_INTERIM" = x; then |
153 |
VERSION_INTERIM=0 |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
154 |
fi |
48327 | 155 |
if test "x$VERSION_UPDATE" = x; then |
156 |
VERSION_UPDATE=0 |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
157 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
158 |
if test "x$VERSION_PATCH" = x; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
159 |
VERSION_PATCH=0 |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
160 |
fi |
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
161 |
if test "x$version_plus_separator" != x \ |
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
162 |
&& test "x$VERSION_BUILD$VERSION_OPT" = x; then |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
163 |
AC_MSG_ERROR([Version string contains + but both 'BUILD' and 'OPT' are missing]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
164 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
165 |
# Stop the version part process from setting default values. |
42300
218374d35efd
8039103: "explicitly" is misspelled as "explicitely" in configure scripts
ihse
parents:
41458
diff
changeset
|
166 |
# We still allow them to explicitly override though. |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
167 |
NO_DEFAULT_VERSION_PARTS=true |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
168 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
169 |
AC_MSG_ERROR([--with-version-string fails to parse as a valid version string: $with_version_string]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
170 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
171 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
172 |
|
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
173 |
AC_ARG_WITH(version-pre, [AS_HELP_STRING([--with-version-pre], |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
174 |
[Set the base part of the version 'PRE' field (pre-release identifier) @<:@'internal'@:>@])], |
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
175 |
[with_version_pre_present=true], [with_version_pre_present=false]) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
176 |
|
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
177 |
if test "x$with_version_pre_present" = xtrue; then |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
178 |
if test "x$with_version_pre" = xyes; then |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
179 |
AC_MSG_ERROR([--with-version-pre must have a value]) |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
180 |
elif test "x$with_version_pre" = xno; then |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
181 |
# Interpret --without-* as empty string instead of the literal "no" |
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
182 |
VERSION_PRE= |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
183 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
184 |
# Only [a-zA-Z] is allowed in the VERSION_PRE. Outer [ ] to quote m4. |
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
185 |
[ VERSION_PRE=`$ECHO "$with_version_pre" | $TR -c -d '[a-z][A-Z]'` ] |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
186 |
if test "x$VERSION_PRE" != "x$with_version_pre"; then |
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
187 |
AC_MSG_WARN([--with-version-pre value has been sanitized from '$with_version_pre' to '$VERSION_PRE']) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
188 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
189 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
190 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
191 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
192 |
# Default is to use "internal" as pre |
33928
d2c9fee88260
8087328: Move debuglevel info in version string from PRE to OPT
erikj
parents:
33926
diff
changeset
|
193 |
VERSION_PRE="internal" |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
194 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
195 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
196 |
|
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
197 |
AC_ARG_WITH(version-opt, [AS_HELP_STRING([--with-version-opt], |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
198 |
[Set version 'OPT' field (build metadata) @<:@<timestamp>.<user>.<dirname>@:>@])], |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
199 |
[with_version_opt_present=true], [with_version_opt_present=false]) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
200 |
|
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
201 |
if test "x$with_version_opt_present" = xtrue; then |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
202 |
if test "x$with_version_opt" = xyes; then |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
203 |
AC_MSG_ERROR([--with-version-opt must have a value]) |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
204 |
elif test "x$with_version_opt" = xno; then |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
205 |
# Interpret --without-* as empty string instead of the literal "no" |
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
206 |
VERSION_OPT= |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
207 |
else |
33948
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
208 |
# Only [-.a-zA-Z0-9] is allowed in the VERSION_OPT. Outer [ ] to quote m4. |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
209 |
[ VERSION_OPT=`$ECHO "$with_version_opt" | $TR -c -d '[a-z][A-Z][0-9].-'` ] |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
210 |
if test "x$VERSION_OPT" != "x$with_version_opt"; then |
9dedf718fe33
8139951: Do not store debug level in OPT part of Verona string
ihse
parents:
33929
diff
changeset
|
211 |
AC_MSG_WARN([--with-version-opt value has been sanitized from '$with_version_opt' to '$VERSION_OPT']) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
212 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
213 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
214 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
215 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
42423
bc717b8b1123
8170632: Stop modifying VERSION_OPT for adhoc builds on reconfigure
ihse
parents:
42300
diff
changeset
|
216 |
# Default is to calculate a string like this 'adhoc.<username>.<base dir name>' |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
217 |
# Outer [ ] to quote m4. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
218 |
[ basedirname=`$BASENAME "$TOPDIR" | $TR -d -c '[a-z][A-Z][0-9].-'` ] |
42423
bc717b8b1123
8170632: Stop modifying VERSION_OPT for adhoc builds on reconfigure
ihse
parents:
42300
diff
changeset
|
219 |
VERSION_OPT="adhoc.$USERNAME.$basedirname" |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
220 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
221 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
222 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
223 |
AC_ARG_WITH(version-build, [AS_HELP_STRING([--with-version-build], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
224 |
[Set version 'BUILD' field (build number) @<:@not specified@:>@])], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
225 |
[with_version_build_present=true], [with_version_build_present=false]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
226 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
227 |
if test "x$with_version_build_present" = xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
228 |
if test "x$with_version_build" = xyes; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
229 |
AC_MSG_ERROR([--with-version-build must have a value]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
230 |
elif test "x$with_version_build" = xno; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
231 |
# Interpret --without-* as empty string instead of the literal "no" |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
232 |
VERSION_BUILD= |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
233 |
elif test "x$with_version_build" = x; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
234 |
VERSION_BUILD= |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
235 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
236 |
JDKVER_CHECK_AND_SET_NUMBER(VERSION_BUILD, $with_version_build) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
237 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
238 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
239 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
240 |
# Default is to not have a build number. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
241 |
VERSION_BUILD="" |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
242 |
# FIXME: Until all code can cope with an empty VERSION_BUILD, set it to 0. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
243 |
VERSION_BUILD=0 |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
244 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
245 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
246 |
|
48327 | 247 |
AC_ARG_WITH(version-feature, [AS_HELP_STRING([--with-version-feature], |
248 |
[Set version 'FEATURE' field (first number) @<:@current source value@:>@])], |
|
249 |
[with_version_feature_present=true], [with_version_feature_present=false]) |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
250 |
|
48327 | 251 |
if test "x$with_version_feature_present" = xtrue; then |
252 |
if test "x$with_version_feature" = xyes; then |
|
253 |
AC_MSG_ERROR([--with-version-feature must have a value]) |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
254 |
else |
48327 | 255 |
JDKVER_CHECK_AND_SET_NUMBER(VERSION_FEATURE, $with_version_feature) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
256 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
257 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
258 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
259 |
# Default is to get value from version-numbers |
48327 | 260 |
VERSION_FEATURE="$DEFAULT_VERSION_FEATURE" |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
261 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
262 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
263 |
|
48327 | 264 |
AC_ARG_WITH(version-interim, [AS_HELP_STRING([--with-version-interim], |
265 |
[Set version 'INTERIM' field (second number) @<:@current source value@:>@])], |
|
266 |
[with_version_interim_present=true], [with_version_interim_present=false]) |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
267 |
|
48327 | 268 |
if test "x$with_version_interim_present" = xtrue; then |
269 |
if test "x$with_version_interim" = xyes; then |
|
270 |
AC_MSG_ERROR([--with-version-interim must have a value]) |
|
271 |
elif test "x$with_version_interim" = xno; then |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
272 |
# Interpret --without-* as empty string (i.e. 0) instead of the literal "no" |
48327 | 273 |
VERSION_INTERIM=0 |
274 |
elif test "x$with_version_interim" = x; then |
|
275 |
VERSION_INTERIM=0 |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
276 |
else |
48327 | 277 |
JDKVER_CHECK_AND_SET_NUMBER(VERSION_INTERIM, $with_version_interim) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
278 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
279 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
280 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
281 |
# Default is 0, if unspecified |
48327 | 282 |
VERSION_INTERIM=$DEFAULT_VERSION_INTERIM |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
283 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
284 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
285 |
|
48327 | 286 |
AC_ARG_WITH(version-update, [AS_HELP_STRING([--with-version-update], |
287 |
[Set version 'UPDATE' field (third number) @<:@current source value@:>@])], |
|
288 |
[with_version_update_present=true], [with_version_update_present=false]) |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
289 |
|
48327 | 290 |
if test "x$with_version_update_present" = xtrue; then |
291 |
if test "x$with_version_update" = xyes; then |
|
292 |
AC_MSG_ERROR([--with-version-update must have a value]) |
|
293 |
elif test "x$with_version_update" = xno; then |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
294 |
# Interpret --without-* as empty string (i.e. 0) instead of the literal "no" |
48327 | 295 |
VERSION_UPDATE=0 |
296 |
elif test "x$with_version_update" = x; then |
|
297 |
VERSION_UPDATE=0 |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
298 |
else |
48327 | 299 |
JDKVER_CHECK_AND_SET_NUMBER(VERSION_UPDATE, $with_version_update) |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
300 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
301 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
302 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
303 |
# Default is 0, if unspecified |
48327 | 304 |
VERSION_UPDATE=$DEFAULT_VERSION_UPDATE |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
305 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
306 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
307 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
308 |
AC_ARG_WITH(version-patch, [AS_HELP_STRING([--with-version-patch], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
309 |
[Set version 'PATCH' field (fourth number) @<:@not specified@:>@])], |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
310 |
[with_version_patch_present=true], [with_version_patch_present=false]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
311 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
312 |
if test "x$with_version_patch_present" = xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
313 |
if test "x$with_version_patch" = xyes; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
314 |
AC_MSG_ERROR([--with-version-patch must have a value]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
315 |
elif test "x$with_version_patch" = xno; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
316 |
# Interpret --without-* as empty string (i.e. 0) instead of the literal "no" |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
317 |
VERSION_PATCH=0 |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
318 |
elif test "x$with_version_patch" = x; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
319 |
VERSION_PATCH=0 |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
320 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
321 |
JDKVER_CHECK_AND_SET_NUMBER(VERSION_PATCH, $with_version_patch) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
322 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
323 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
324 |
if test "x$NO_DEFAULT_VERSION_PARTS" != xtrue; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
325 |
# Default is 0, if unspecified |
42848
27ad8b2418f7
8170741: Enable uploading of built artifacts through Jib
erikj
parents:
42423
diff
changeset
|
326 |
VERSION_PATCH=$DEFAULT_VERSION_PATCH |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
327 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
328 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
329 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
330 |
# Calculate derived version properties |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
331 |
|
33929 | 332 |
# Set VERSION_IS_GA based on if VERSION_PRE has a value |
333 |
if test "x$VERSION_PRE" = x; then |
|
334 |
VERSION_IS_GA=true |
|
335 |
else |
|
336 |
VERSION_IS_GA=false |
|
337 |
fi |
|
338 |
||
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
339 |
# VERSION_NUMBER but always with exactly 4 positions, with 0 for empty positions. |
48327 | 340 |
VERSION_NUMBER_FOUR_POSITIONS=$VERSION_FEATURE.$VERSION_INTERIM.$VERSION_UPDATE.$VERSION_PATCH |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
341 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
342 |
stripped_version_number=$VERSION_NUMBER_FOUR_POSITIONS |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
343 |
# Strip trailing zeroes from stripped_version_number |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
344 |
for i in 1 2 3 ; do stripped_version_number=${stripped_version_number%.0} ; done |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
345 |
VERSION_NUMBER=$stripped_version_number |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
346 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
347 |
# The complete version string, with additional build information |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
348 |
if test "x$VERSION_BUILD$VERSION_OPT" = x; then |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
349 |
VERSION_STRING=$VERSION_NUMBER${VERSION_PRE:+-$VERSION_PRE} |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
350 |
else |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
351 |
# If either build or opt is set, we need a + separator |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
352 |
VERSION_STRING=$VERSION_NUMBER${VERSION_PRE:+-$VERSION_PRE}+$VERSION_BUILD${VERSION_OPT:+-$VERSION_OPT} |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
353 |
fi |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
354 |
|
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
355 |
# The short version string, just VERSION_NUMBER and PRE, if present. |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
356 |
VERSION_SHORT=$VERSION_NUMBER${VERSION_PRE:+-$VERSION_PRE} |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
357 |
|
48327 | 358 |
# The version date |
359 |
AC_ARG_WITH(version-date, [AS_HELP_STRING([--with-version-date], |
|
360 |
[Set version date @<:@current source value@:>@])]) |
|
361 |
if test "x$with_version_date" = xyes; then |
|
362 |
AC_MSG_ERROR([--with-version-date must have a value]) |
|
363 |
elif test "x$with_version_date" != x; then |
|
364 |
if [ ! [[ $with_version_date =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]] ]; then |
|
365 |
AC_MSG_ERROR(["$with_version_date" is not a valid version date]) |
|
366 |
else |
|
367 |
VERSION_DATE="$with_version_date" |
|
368 |
fi |
|
369 |
else |
|
370 |
VERSION_DATE="$DEFAULT_VERSION_DATE" |
|
371 |
fi |
|
372 |
||
373 |
# The vendor version string, if any |
|
374 |
AC_ARG_WITH(vendor-version-string, [AS_HELP_STRING([--with-vendor-version-string], |
|
375 |
[Set vendor version string @<:@not specified@:>@])]) |
|
376 |
if test "x$with_vendor_version_string" = xyes; then |
|
377 |
AC_MSG_ERROR([--with-vendor-version-string must have a value]) |
|
378 |
elif [ ! [[ $with_vendor_version_string =~ ^[[:graph:]]*$ ]] ]; then |
|
379 |
AC_MSG_ERROR([--with--vendor-version-string contains non-graphical characters: $with_vendor_version_string]) |
|
380 |
else |
|
381 |
VENDOR_VERSION_STRING="$with_vendor_version_string" |
|
382 |
fi |
|
383 |
||
48355 | 384 |
# We could define --with flags for these, if really needed |
385 |
VERSION_CLASSFILE_MAJOR="$DEFAULT_VERSION_CLASSFILE_MAJOR" |
|
386 |
VERSION_CLASSFILE_MINOR="$DEFAULT_VERSION_CLASSFILE_MINOR" |
|
387 |
||
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
388 |
AC_MSG_CHECKING([for version string]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
389 |
AC_MSG_RESULT([$VERSION_STRING]) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
390 |
|
48327 | 391 |
AC_SUBST(VERSION_FEATURE) |
392 |
AC_SUBST(VERSION_INTERIM) |
|
393 |
AC_SUBST(VERSION_UPDATE) |
|
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
394 |
AC_SUBST(VERSION_PATCH) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
395 |
AC_SUBST(VERSION_PRE) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
396 |
AC_SUBST(VERSION_BUILD) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
397 |
AC_SUBST(VERSION_OPT) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
398 |
AC_SUBST(VERSION_NUMBER) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
399 |
AC_SUBST(VERSION_NUMBER_FOUR_POSITIONS) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
400 |
AC_SUBST(VERSION_STRING) |
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
401 |
AC_SUBST(VERSION_SHORT) |
33929 | 402 |
AC_SUBST(VERSION_IS_GA) |
48327 | 403 |
AC_SUBST(VERSION_DATE) |
404 |
AC_SUBST(VENDOR_VERSION_STRING) |
|
48355 | 405 |
AC_SUBST(VERSION_CLASSFILE_MAJOR) |
406 |
AC_SUBST(VERSION_CLASSFILE_MINOR) |
|
407 |
||
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
diff
changeset
|
408 |
]) |