From 5c1262520dff4599251a5c4a6d7a196ec06d6f72 Mon Sep 17 00:00:00 2001 From: Magnus Ihse Bursie Date: Fri, 15 Jun 2018 15:07:45 +0200 Subject: [PATCH] 8200867: Remove references to "jdk 9" in build system Reviewed-by: redestad, tbell, erikj --- doc/building.html | 12 ++++++------ doc/building.md | 23 ++++++++++++----------- make/autoconf/configure.ac | 2 +- 3 files changed, 19 insertions(+), 18 deletions(-) diff --git a/doc/building.html b/doc/building.html index 3c982e9d4ca..9c1dc0453b0 100644 --- a/doc/building.html +++ b/doc/building.html @@ -158,7 +158,7 @@

Operating System Requirements

The mainline OpenJDK project supports Linux, Solaris, macOS, AIX and Windows. Support for other operating system, e.g. BSD, exists in separate "port" projects.

In general, OpenJDK can be built on a wide range of versions of these operating systems, but the further you deviate from what is tested on a daily basis, the more likely you are to run into problems.

-

This table lists the OS versions used by Oracle when building JDK 9. Such information is always subject to change, but this table is up to date at the time of writing.

+

This table lists the OS versions used by Oracle when building OpenJDK. Such information is always subject to change, but this table is up to date at the time of writing.

@@ -190,7 +190,7 @@

Windows

Windows XP is not a supported platform, but all newer Windows should be able to build OpenJDK.

On Windows, it is important that you pay attention to the instructions in the Special Considerations.

-

Windows is the only non-POSIX OS supported by OpenJDK, and as such, requires some extra care. A POSIX support layer is required to build on Windows. For OpenJDK 9, the only supported such layer is Cygwin. (Msys is no longer supported due to a too old bash; msys2 and the new Windows Subsystem for Linux (WSL) would likely be possible to support in a future version but that would require a community effort to implement.)

+

Windows is the only non-POSIX OS supported by OpenJDK, and as such, requires some extra care. A POSIX support layer is required to build on Windows. Currently, the only supported such layer is Cygwin. (Msys is no longer supported due to a too old bash; msys2 and the new Windows Subsystem for Linux (WSL) would likely be possible to support in a future version but that would require a community effort to implement.)

Internally in the build system, all paths are represented as Unix-style paths, e.g. /cygdrive/c/hg/jdk9/Makefile rather than C:\hg\jdk9\Makefile. This rule also applies to input to the build system, e.g. in arguments to configure. So, use --with-msvcr-dll=/cygdrive/c/msvcr100.dll rather than --with-msvcr-dll=c:\msvcr100.dll. For details on this conversion, see the section on Fixpath.

Cygwin

A functioning Cygwin environment is thus required for building OpenJDK on Windows. If you have a 64-bit OS, we strongly recommend using the 64-bit version of Cygwin.

@@ -265,7 +265,7 @@ - + @@ -282,8 +282,8 @@
Linuxgcc 4.9.2gcc 7.3.0
macOS

gcc

-

The minimum accepted version of gcc is 4.7. Older versions will generate a warning by configure and are unlikely to work.

-

OpenJDK 9 includes patches that should allow gcc 6 to compile, but this should be considered experimental.

+

The minimum accepted version of gcc is 4.8. Older versions will generate a warning by configure and are unlikely to work.

+

OpenJDK is currently known to be able to compile with at least version 7.4 of gcc.

In general, any version between these two should be usable.

clang

The minimum accepted version of clang is 3.2. Older versions will not be accepted by configure.

@@ -788,7 +788,7 @@ sudo mv /tmp/configure /usr/local/bin

The default behavior for make is to create consistent and correct output, at the expense of build speed, if necessary.

If you are prepared to take some risk of an incorrect build, and know enough of the system to understand how things build and interact, you can speed up the build process considerably by instructing make to only build a portion of the product.

Building Individual Modules

-

The safe way to use fine-grained make targets is to use the module specific make targets. All source code in JDK 9 is organized so it belongs to a module, e.g. java.base or jdk.jdwp.agent. You can build only a specific module, by giving it as make target: make jdk.jdwp.agent. If the specified module depends on other modules (e.g. java.base), those modules will be built first.

+

The safe way to use fine-grained make targets is to use the module specific make targets. All source code in OpenJDK is organized so it belongs to a module, e.g. java.base or jdk.jdwp.agent. You can build only a specific module, by giving it as make target: make jdk.jdwp.agent. If the specified module depends on other modules (e.g. java.base), those modules will be built first.

You can also specify a set of modules, just as you can always specify a set of make targets: make jdk.crypto.cryptoki jdk.crypto.ec jdk.crypto.mscapi jdk.crypto.ucrypto

Building Individual Module Phases

The build process for each module is divided into separate phases. Not all modules need all phases. Which are needed depends on what kind of source code and other artifact the module consists of. The phases are:

diff --git a/doc/building.md b/doc/building.md index 8b9b81391c7..a93d5af8e2b 100644 --- a/doc/building.md +++ b/doc/building.md @@ -135,7 +135,7 @@ In general, OpenJDK can be built on a wide range of versions of these operating systems, but the further you deviate from what is tested on a daily basis, the more likely you are to run into problems. -This table lists the OS versions used by Oracle when building JDK 9. Such +This table lists the OS versions used by Oracle when building OpenJDK. Such information is always subject to change, but this table is up to date at the time of writing. @@ -164,8 +164,8 @@ On Windows, it is important that you pay attention to the instructions in the [Special Considerations](#special-considerations). Windows is the only non-POSIX OS supported by OpenJDK, and as such, requires -some extra care. A POSIX support layer is required to build on Windows. For -OpenJDK 9, the only supported such layer is Cygwin. (Msys is no longer +some extra care. A POSIX support layer is required to build on Windows. +Currently, the only supported such layer is Cygwin. (Msys is no longer supported due to a too old bash; msys2 and the new Windows Subsystem for Linux (WSL) would likely be possible to support in a future version but that would require a community effort to implement.) @@ -291,18 +291,18 @@ issues. Operating system Toolchain version ------------------ ------------------------------------------------------- - Linux gcc 4.9.2 + Linux gcc 7.3.0 macOS Apple Xcode 6.3 (using clang 6.1.0) Solaris Oracle Solaris Studio 12.4 (with compiler version 5.13) Windows Microsoft Visual Studio 2013 update 4 ### gcc -The minimum accepted version of gcc is 4.7. Older versions will generate a warning +The minimum accepted version of gcc is 4.8. Older versions will generate a warning by `configure` and are unlikely to work. -OpenJDK 9 includes patches that should allow gcc 6 to compile, but this should -be considered experimental. +OpenJDK is currently known to be able to compile with at least version 7.4 of +gcc. In general, any version between these two should be usable. @@ -1460,10 +1460,11 @@ product. #### Building Individual Modules The safe way to use fine-grained make targets is to use the module specific -make targets. All source code in JDK 9 is organized so it belongs to a module, -e.g. `java.base` or `jdk.jdwp.agent`. You can build only a specific module, by -giving it as make target: `make jdk.jdwp.agent`. If the specified module -depends on other modules (e.g. `java.base`), those modules will be built first. +make targets. All source code in OpenJDK is organized so it belongs to a +module, e.g. `java.base` or `jdk.jdwp.agent`. You can build only a specific +module, by giving it as make target: `make jdk.jdwp.agent`. If the specified +module depends on other modules (e.g. `java.base`), those modules will be built +first. You can also specify a set of modules, just as you can always specify a set of make targets: `make jdk.crypto.cryptoki jdk.crypto.ec jdk.crypto.mscapi diff --git a/make/autoconf/configure.ac b/make/autoconf/configure.ac index 936af504e86..7fa1e99cc3b 100644 --- a/make/autoconf/configure.ac +++ b/make/autoconf/configure.ac @@ -31,7 +31,7 @@ SRC# AC_PREREQ([2.69]) -AC_INIT(OpenJDK, jdk9, build-dev@openjdk.java.net,,http://openjdk.java.net) +AC_INIT(OpenJDK, openjdk, build-dev@openjdk.java.net,,http://openjdk.java.net) AC_CONFIG_AUX_DIR([$TOPDIR/make/autoconf/build-aux]) m4_include([build-aux/pkg.m4])