author | erikj |
Mon, 29 Jan 2018 17:58:12 +0100 | |
changeset 48678 | bcce1fa183e7 |
parent 47507 | 5a270d2dfa5d |
child 49234 | 3375a8039fde |
permissions | -rw-r--r-- |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
1 |
# |
43046
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
2 |
# Copyright (c) 2011, 2017, Oracle and/or its affiliates. All rights reserved. |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
3 |
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
4 |
# |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
5 |
# This code is free software; you can redistribute it and/or modify it |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
6 |
# under the terms of the GNU General Public License version 2 only, as |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
7 |
# published by the Free Software Foundation. Oracle designates this |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
8 |
# particular file as subject to the "Classpath" exception as provided |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
9 |
# by Oracle in the LICENSE file that accompanied this code. |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
10 |
# |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
11 |
# This code is distributed in the hope that it will be useful, but WITHOUT |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
12 |
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
13 |
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
14 |
# version 2 for more details (a copy is included in the LICENSE file that |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
15 |
# accompanied this code). |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
16 |
# |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
17 |
# You should have received a copy of the GNU General Public License version |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
18 |
# 2 along with this work; if not, write to the Free Software Foundation, |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
19 |
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
20 |
# |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
21 |
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
22 |
# or visit www.oracle.com if you need additional information or have any |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
23 |
# questions. |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
24 |
# |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
25 |
|
13132 | 26 |
AC_DEFUN_ONCE([HELP_SETUP_DEPENDENCY_HELP], |
27 |
[ |
|
43046
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
28 |
AC_CHECK_PROGS(PKGHANDLER, apt-get yum brew port pkgutil pkgadd) |
13132 | 29 |
]) |
30 |
||
31 |
AC_DEFUN([HELP_MSG_MISSING_DEPENDENCY], |
|
32 |
[ |
|
20363 | 33 |
# Print a helpful message on how to acquire the necessary build dependency. |
32921
8e0250dfa145
8138761: Improved handling of libffi, and cleanup of libraries.m4
ihse
parents:
32809
diff
changeset
|
34 |
# $1 is the help tag: freetype, cups, alsa etc |
20363 | 35 |
MISSING_DEPENDENCY=$1 |
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
36 |
|
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
37 |
if test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.cygwin"; then |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
38 |
cygwin_help $MISSING_DEPENDENCY |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
39 |
elif test "x$OPENJDK_BUILD_OS_ENV" = "xwindows.msys"; then |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
40 |
msys_help $MISSING_DEPENDENCY |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
41 |
else |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
42 |
PKGHANDLER_COMMAND= |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
43 |
|
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
44 |
case $PKGHANDLER in |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
45 |
apt-get) |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
46 |
apt_help $MISSING_DEPENDENCY ;; |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
47 |
yum) |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
48 |
yum_help $MISSING_DEPENDENCY ;; |
43046
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
49 |
brew) |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
50 |
brew_help $MISSING_DEPENDENCY ;; |
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
51 |
port) |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
52 |
port_help $MISSING_DEPENDENCY ;; |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
53 |
pkgutil) |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
54 |
pkgutil_help $MISSING_DEPENDENCY ;; |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
55 |
pkgadd) |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
56 |
pkgadd_help $MISSING_DEPENDENCY ;; |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
57 |
esac |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
58 |
|
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
59 |
if test "x$PKGHANDLER_COMMAND" != x; then |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
60 |
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'." |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
61 |
fi |
20363 | 62 |
fi |
13132 | 63 |
]) |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
64 |
|
14111 | 65 |
cygwin_help() { |
20363 | 66 |
case $1 in |
14111 | 67 |
unzip) |
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
68 |
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P unzip )" |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
69 |
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'." |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
70 |
;; |
14111 | 71 |
zip) |
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
72 |
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P zip )" |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
73 |
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'." |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
74 |
;; |
14111 | 75 |
make) |
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
76 |
PKGHANDLER_COMMAND="( cd <location of cygwin setup.exe> && cmd /c setup -q -P make )" |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
77 |
HELP_MSG="You might be able to fix this by running '$PKGHANDLER_COMMAND'." |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
78 |
;; |
20654 | 79 |
freetype) |
26400
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
80 |
HELP_MSG=" |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
81 |
The freetype library can now be build during the configure process. |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
82 |
Download the freetype sources and unpack them into an arbitrary directory: |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
83 |
|
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
84 |
wget http://download.savannah.gnu.org/releases/freetype/freetype-2.5.3.tar.gz |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
85 |
tar -xzf freetype-2.5.3.tar.gz |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
86 |
|
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
87 |
Then run configure with '--with-freetype-src=<freetype_src>'. This will |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
88 |
automatically build the freetype library into '<freetype_src>/lib64' for 64-bit |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
89 |
builds or into '<freetype_src>/lib32' for 32-bit builds. |
4d6c6f2df610
8057538: Build the freetype library during configure on Windows
simonis
parents:
23424
diff
changeset
|
90 |
Afterwards you can always use '--with-freetype-include=<freetype_src>/include' |
34604 | 91 |
and '--with-freetype-lib=<freetype_src>/lib[32|64]' for other builds. |
92 |
||
93 |
Alternatively you can unpack the sources like this to use the default directory: |
|
94 |
||
95 |
tar --one-top-level=$HOME/freetype --strip-components=1 -xzf freetype-2.5.3.tar.gz" |
|
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
96 |
;; |
20363 | 97 |
esac |
14111 | 98 |
} |
99 |
||
20648
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
100 |
msys_help() { |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
101 |
PKGHANDLER_COMMAND="" |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
102 |
} |
d4ac4db6e70c
8001925: Add useful help messages if freetype is not found on Windows
ihse
parents:
20363
diff
changeset
|
103 |
|
13132 | 104 |
apt_help() { |
20363 | 105 |
case $1 in |
32809
a24b5324b595
8138627: Better help message in configure for reduced builds (target-bits=32)
ihse
parents:
30417
diff
changeset
|
106 |
reduced) |
a24b5324b595
8138627: Better help message in configure for reduced builds (target-bits=32)
ihse
parents:
30417
diff
changeset
|
107 |
PKGHANDLER_COMMAND="sudo apt-get install gcc-multilib g++-multilib" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
108 |
devkit) |
20363 | 109 |
PKGHANDLER_COMMAND="sudo apt-get install build-essential" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
110 |
openjdk) |
36296
428cc83bfc1e
8151685: Fix the version of required jdk in configure help text
erikj
parents:
35747
diff
changeset
|
111 |
PKGHANDLER_COMMAND="sudo apt-get install openjdk-8-jdk" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
112 |
alsa) |
20363 | 113 |
PKGHANDLER_COMMAND="sudo apt-get install libasound2-dev" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
114 |
cups) |
20363 | 115 |
PKGHANDLER_COMMAND="sudo apt-get install libcups2-dev" ;; |
47507
5a270d2dfa5d
8170681: Remove fontconfig header files from JDK source tree
prr
parents:
47253
diff
changeset
|
116 |
fontconfig) |
5a270d2dfa5d
8170681: Remove fontconfig header files from JDK source tree
prr
parents:
47253
diff
changeset
|
117 |
PKGHANDLER_COMMAND="sudo apt-get install libfontconfig1-dev" ;; |
20654 | 118 |
freetype) |
20363 | 119 |
PKGHANDLER_COMMAND="sudo apt-get install libfreetype6-dev" ;; |
32921
8e0250dfa145
8138761: Improved handling of libffi, and cleanup of libraries.m4
ihse
parents:
32809
diff
changeset
|
120 |
ffi) |
8e0250dfa145
8138761: Improved handling of libffi, and cleanup of libraries.m4
ihse
parents:
32809
diff
changeset
|
121 |
PKGHANDLER_COMMAND="sudo apt-get install libffi-dev" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
122 |
x11) |
42422
5455cb741977
8170530: bash configure output contains a typo in a suggested library name
stsmirno
parents:
37402
diff
changeset
|
123 |
PKGHANDLER_COMMAND="sudo apt-get install libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
124 |
ccache) |
20363 | 125 |
PKGHANDLER_COMMAND="sudo apt-get install ccache" ;; |
37402 | 126 |
dtrace) |
127 |
PKGHANDLER_COMMAND="sudo apt-get install systemtap-sdt-dev" ;; |
|
20363 | 128 |
esac |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
129 |
} |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
130 |
|
13132 | 131 |
yum_help() { |
20363 | 132 |
case $1 in |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
133 |
devkit) |
20363 | 134 |
PKGHANDLER_COMMAND="sudo yum groupinstall \"Development Tools\"" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
135 |
openjdk) |
36296
428cc83bfc1e
8151685: Fix the version of required jdk in configure help text
erikj
parents:
35747
diff
changeset
|
136 |
PKGHANDLER_COMMAND="sudo yum install java-1.8.0-openjdk-devel" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
137 |
alsa) |
20363 | 138 |
PKGHANDLER_COMMAND="sudo yum install alsa-lib-devel" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
139 |
cups) |
20363 | 140 |
PKGHANDLER_COMMAND="sudo yum install cups-devel" ;; |
47507
5a270d2dfa5d
8170681: Remove fontconfig header files from JDK source tree
prr
parents:
47253
diff
changeset
|
141 |
fontconfig) |
5a270d2dfa5d
8170681: Remove fontconfig header files from JDK source tree
prr
parents:
47253
diff
changeset
|
142 |
PKGHANDLER_COMMAND="sudo yum install fontconfig-devel" ;; |
20654 | 143 |
freetype) |
20363 | 144 |
PKGHANDLER_COMMAND="sudo yum install freetype-devel" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
145 |
x11) |
27330
5e83ad1a521a
8062661: Do not perform X11 checks in configure when X11 is not needed
ihse
parents:
26400
diff
changeset
|
146 |
PKGHANDLER_COMMAND="sudo yum install libXtst-devel libXt-devel libXrender-devel libXi-devel" ;; |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
147 |
ccache) |
20363 | 148 |
PKGHANDLER_COMMAND="sudo yum install ccache" ;; |
149 |
esac |
|
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
150 |
} |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
151 |
|
43046
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
152 |
brew_help() { |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
153 |
case $1 in |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
154 |
openjdk) |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
155 |
PKGHANDLER_COMMAND="brew cask install java" ;; |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
156 |
freetype) |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
157 |
PKGHANDLER_COMMAND="brew install freetype" ;; |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
158 |
ccache) |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
159 |
PKGHANDLER_COMMAND="brew install ccache" ;; |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
160 |
esac |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
161 |
} |
717ce6d4eaa1
8171409: Create a smoother configure experience on macosx
ihse
parents:
42532
diff
changeset
|
162 |
|
13132 | 163 |
port_help() { |
20363 | 164 |
PKGHANDLER_COMMAND="" |
13132 | 165 |
} |
166 |
||
167 |
pkgutil_help() { |
|
20363 | 168 |
PKGHANDLER_COMMAND="" |
13132 | 169 |
} |
170 |
||
171 |
pkgadd_help() { |
|
20363 | 172 |
PKGHANDLER_COMMAND="" |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
173 |
} |
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
174 |
|
22721
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
175 |
# This function will check if we're called from the "configure" wrapper while |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
176 |
# printing --help. If so, we will print out additional information that can |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
177 |
# only be extracted within the autoconf script, and then exit. This must be |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
178 |
# called at the very beginning in configure.ac. |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
179 |
AC_DEFUN_ONCE([HELP_PRINT_ADDITIONAL_HELP_AND_EXIT], |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
180 |
[ |
35747 | 181 |
if test "x$CONFIGURE_PRINT_ADDITIONAL_HELP" != x; then |
182 |
||
183 |
# Print available toolchains |
|
22721
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
184 |
$PRINTF "The following toolchains are available as arguments to --with-toolchain-type.\n" |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
185 |
$PRINTF "Which are valid to use depends on the build platform.\n" |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
186 |
for toolchain in $VALID_TOOLCHAINS_all; do |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
187 |
# Use indirect variable referencing |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
188 |
toolchain_var_name=TOOLCHAIN_DESCRIPTION_$toolchain |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
189 |
TOOLCHAIN_DESCRIPTION=${!toolchain_var_name} |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
190 |
$PRINTF " %-10s %s\n" $toolchain "$TOOLCHAIN_DESCRIPTION" |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
191 |
done |
37402 | 192 |
$PRINTF "\n" |
193 |
||
194 |
# Print available jvm features |
|
195 |
$PRINTF "The following JVM features are available as arguments to --with-jvm-features.\n" |
|
196 |
$PRINTF "Which are valid to use depends on the target platform.\n " |
|
197 |
$PRINTF "%s " $VALID_JVM_FEATURES |
|
198 |
$PRINTF "\n" |
|
22721
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
199 |
|
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
200 |
# And now exit directly |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
201 |
exit 0 |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
202 |
fi |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
203 |
]) |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
204 |
|
13132 | 205 |
AC_DEFUN_ONCE([HELP_PRINT_SUMMARY_AND_WARNINGS], |
206 |
[ |
|
20363 | 207 |
# Finally output some useful information to the user |
13132 | 208 |
|
20363 | 209 |
printf "\n" |
210 |
printf "====================================================\n" |
|
22717
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
211 |
if test "x$no_create" != "xyes"; then |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
212 |
if test "x$IS_RECONFIGURE" != "xyes"; then |
47253
92fd0e04e0e1
8187544: Replace BUILD_OUTPUT and OUTPUT_ROOT with OUTPUTDIR
ihse
parents:
47216
diff
changeset
|
213 |
printf "A new configuration has been successfully created in\n%s\n" "$OUTPUTDIR" |
22717
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
214 |
else |
47253
92fd0e04e0e1
8187544: Replace BUILD_OUTPUT and OUTPUT_ROOT with OUTPUTDIR
ihse
parents:
47216
diff
changeset
|
215 |
printf "The existing configuration has been successfully updated in\n%s\n" "$OUTPUTDIR" |
22717
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
216 |
fi |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
217 |
else |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
218 |
if test "x$IS_RECONFIGURE" != "xyes"; then |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
219 |
printf "A configuration has been successfully checked but not created\n" |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
220 |
else |
47253
92fd0e04e0e1
8187544: Replace BUILD_OUTPUT and OUTPUT_ROOT with OUTPUTDIR
ihse
parents:
47216
diff
changeset
|
221 |
printf "The existing configuration has been successfully checked in\n%s\n" "$OUTPUTDIR" |
22717
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
222 |
fi |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
223 |
fi |
20363 | 224 |
if test "x$CONFIGURE_COMMAND_LINE" != x; then |
225 |
printf "using configure arguments '$CONFIGURE_COMMAND_LINE'.\n" |
|
226 |
else |
|
227 |
printf "using default settings.\n" |
|
228 |
fi |
|
13132 | 229 |
|
20363 | 230 |
printf "\n" |
231 |
printf "Configuration summary:\n" |
|
232 |
printf "* Debug level: $DEBUG_LEVEL\n" |
|
23424
65039fb99fda
8037298: Export HotSpots 'optimized' (i.e. not-product) configuration in the top-level configure/makefile
simonis
parents:
22721
diff
changeset
|
233 |
printf "* HS debug level: $HOTSPOT_DEBUG_LEVEL\n" |
20363 | 234 |
printf "* JDK variant: $JDK_VARIANT\n" |
37402 | 235 |
printf "* JVM variants: $JVM_VARIANTS\n" |
20363 | 236 |
printf "* OpenJDK target: OS: $OPENJDK_TARGET_OS, CPU architecture: $OPENJDK_TARGET_CPU_ARCH, address length: $OPENJDK_TARGET_CPU_BITS\n" |
33926
3a19edba4808
8085822: JEP 223: New Version-String Scheme (initial integration)
ihse
parents:
30417
diff
changeset
|
237 |
printf "* Version string: $VERSION_STRING ($VERSION_SHORT)\n" |
14111 | 238 |
|
20363 | 239 |
printf "\n" |
240 |
printf "Tools summary:\n" |
|
241 |
if test "x$OPENJDK_BUILD_OS" = "xwindows"; then |
|
242 |
printf "* Environment: $WINDOWS_ENV_VENDOR version $WINDOWS_ENV_VERSION (root at $WINDOWS_ENV_ROOT_PATH)\n" |
|
243 |
fi |
|
244 |
printf "* Boot JDK: $BOOT_JDK_VERSION (at $BOOT_JDK)\n" |
|
48678 | 245 |
printf "* Toolchain: $TOOLCHAIN_TYPE ($TOOLCHAIN_DESCRIPTION)\n" |
22721
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
246 |
printf "* C Compiler: Version $CC_VERSION_NUMBER (at $CC)\n" |
63761da45392
8034788: Rewrite toolchain.m4 to support multiple toolchains per platform.
ihse
parents:
22717
diff
changeset
|
247 |
printf "* C++ Compiler: Version $CXX_VERSION_NUMBER (at $CXX)\n" |
12258
6ec26f6cc53e
7074397: Build infrastructure changes (makefile re-write)
ohair
parents:
diff
changeset
|
248 |
|
20363 | 249 |
printf "\n" |
250 |
printf "Build performance summary:\n" |
|
251 |
printf "* Cores to use: $JOBS\n" |
|
252 |
printf "* Memory limit: $MEMORY_SIZE MB\n" |
|
22474 | 253 |
if test "x$CCACHE_STATUS" != "x"; then |
254 |
printf "* ccache status: $CCACHE_STATUS\n" |
|
255 |
fi |
|
20363 | 256 |
printf "\n" |
13132 | 257 |
|
37402 | 258 |
if test "x$BUILDING_MULTIPLE_JVM_VARIANTS" = "xtrue"; then |
20363 | 259 |
printf "NOTE: You have requested to build more than one version of the JVM, which\n" |
260 |
printf "will result in longer build times.\n" |
|
261 |
printf "\n" |
|
262 |
fi |
|
13132 | 263 |
|
20363 | 264 |
if test "x$FOUND_ALT_VARIABLES" != "x"; then |
265 |
printf "WARNING: You have old-style ALT_ environment variables set.\n" |
|
266 |
printf "These are not respected, and will be ignored. It is recommended\n" |
|
267 |
printf "that you clean your environment. The following variables are set:\n" |
|
268 |
printf "$FOUND_ALT_VARIABLES\n" |
|
269 |
printf "\n" |
|
270 |
fi |
|
13132 | 271 |
|
20363 | 272 |
if test "x$OUTPUT_DIR_IS_LOCAL" != "xyes"; then |
273 |
printf "WARNING: Your build output directory is not on a local disk.\n" |
|
274 |
printf "This will severely degrade build performance!\n" |
|
275 |
printf "It is recommended that you create an output directory on a local disk,\n" |
|
276 |
printf "and run the configure script again from that directory.\n" |
|
277 |
printf "\n" |
|
278 |
fi |
|
13132 | 279 |
|
22717
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
280 |
if test "x$IS_RECONFIGURE" = "xyes" && test "x$no_create" != "xyes"; then |
20363 | 281 |
printf "WARNING: The result of this configuration has overridden an older\n" |
282 |
printf "configuration. You *should* run 'make clean' to make sure you get a\n" |
|
283 |
printf "proper build. Failure to do so might result in strange build problems.\n" |
|
284 |
printf "\n" |
|
285 |
fi |
|
22717
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
286 |
|
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
287 |
if test "x$IS_RECONFIGURE" != "xyes" && test "x$no_create" = "xyes"; then |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
288 |
printf "WARNING: The result of this configuration was not saved.\n" |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
289 |
printf "You should run without '--no-create | -n' to create the configuration.\n" |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
290 |
printf "\n" |
aa6f400923a9
8034979: Configuration help messages don't consider --no-create
mduigou
parents:
22474
diff
changeset
|
291 |
fi |
48678 | 292 |
|
293 |
if test "x$UNSUPPORTED_TOOLCHAIN_VERSION" = "xyes"; then |
|
294 |
printf "WARNING: The toolchain version used is known to have issues. Please\n" |
|
295 |
printf "consider using a supported version unless you know what you are doing.\n" |
|
296 |
printf "\n" |
|
297 |
fi |
|
13132 | 298 |
]) |
27587 | 299 |
|
300 |
AC_DEFUN_ONCE([HELP_REPEAT_WARNINGS], |
|
301 |
[ |
|
30417
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
302 |
# Locate config.log. |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
303 |
if test -e "$CONFIGURESUPPORT_OUTPUTDIR/config.log"; then |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
304 |
CONFIG_LOG_PATH="$CONFIGURESUPPORT_OUTPUTDIR" |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
305 |
elif test -e "./config.log"; then |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
306 |
CONFIG_LOG_PATH="." |
27587 | 307 |
fi |
308 |
||
30417
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
309 |
if test -e "$CONFIG_LOG_PATH/config.log"; then |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
310 |
$GREP '^configure:.*: WARNING:' "$CONFIG_LOG_PATH/config.log" > /dev/null 2>&1 |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
311 |
if test $? -eq 0; then |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
312 |
printf "The following warnings were produced. Repeated here for convenience:\n" |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
313 |
# We must quote sed expression (using []) to stop m4 from eating the []. |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
314 |
$GREP '^configure:.*: WARNING:' "$CONFIG_LOG_PATH/config.log" | $SED -e [ 's/^configure:[0-9]*: //' ] |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
315 |
printf "\n" |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
316 |
fi |
581a2762eef1
8079891: Store configure log in $BUILD/configure.log
ihse
parents:
28901
diff
changeset
|
317 |
fi |
27587 | 318 |
]) |