Skip to content

Commit

Permalink
8296758: [BACKOUT] Revert 8296115
Browse files Browse the repository at this point in the history
Reviewed-by: ihse
  • Loading branch information
TheShermanTanker authored and magicus committed Nov 11, 2022
1 parent 7f587e5 commit f0b648b
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 36 deletions.
3 changes: 0 additions & 3 deletions doc/building.html
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,6 @@ <h1 class="title">Building the JDK</h1>
<li><a href="#apple-xcode">Apple Xcode</a></li>
<li><a href="#microsoft-visual-studio">Microsoft Visual Studio</a></li>
<li><a href="#ibm-xl-cc">IBM XL C/C++</a></li>
<li><a href="#support-for-checking-standards-conforming-code">Support for checking standards conforming code</a></li>
</ul></li>
<li><a href="#boot-jdk-requirements">Boot JDK Requirements</a><ul>
<li><a href="#getting-jdk-binaries">Getting JDK binaries</a></li>
Expand Down Expand Up @@ -310,8 +309,6 @@ <h3 id="microsoft-visual-studio">Microsoft Visual Studio</h3>
<p>If you have Visual Studio installed but <code>configure</code> fails to detect it, it may be because of <a href="#spaces-in-path">spaces in path</a>.</p>
<h3 id="ibm-xl-cc">IBM XL C/C++</h3>
<p>Please consult the AIX section of the <a href="https://wiki.openjdk.org/display/Build/Supported+Build+Platforms">Supported Build Platforms</a> OpenJDK Build Wiki page for details about which versions of XLC are supported.</p>
<h3 id="support-for-checking-standards-conforming-code">Support for checking standards conforming code</h3>
<p>The make system has a strict mode that enforces conforming code based on the standard that is used by the build, which can be useful to ensure that native code behaves strictly according to said standard. This option can by enabled by passing <code>--enable-conforming-compilation</code> during configure, but is off by default. If you just want to compile a working JDK it is not recommended that you set this flag, as it is mainly meant to aid developers that are working with native code.</p>
<h2 id="boot-jdk-requirements">Boot JDK Requirements</h2>
<p>Paradoxically, building the JDK requires a pre-existing JDK. This is called the &quot;boot JDK&quot;. The boot JDK does not, however, have to be a JDK built directly from the source code available in the OpenJDK Community. If you are porting the JDK to a new platform, chances are that there already exists another JDK for that platform that is usable as boot JDK.</p>
<p>The rule of thumb is that the boot JDK for building JDK major version <em>N</em> should be a JDK of major version <em>N-1</em>, so for building JDK 9 a JDK 8 would be suitable as boot JDK. However, the JDK should be able to &quot;build itself&quot;, so an up-to-date build of the current JDK source is an acceptable alternative. If you are following the <em>N-1</em> rule, make sure you've got the latest update version, since JDK 8 GA might not be able to build JDK 9 on all platforms.</p>
Expand Down
9 changes: 0 additions & 9 deletions doc/building.md
Original file line number Diff line number Diff line change
Expand Up @@ -403,15 +403,6 @@ Please consult the AIX section of the [Supported Build Platforms](
https://wiki.openjdk.org/display/Build/Supported+Build+Platforms) OpenJDK
Build Wiki page for details about which versions of XLC are supported.

### Support for checking standards conforming code

The make system has a strict mode that enforces conforming code based on the
standard that is used by the build, which can be useful to ensure that native code
behaves strictly according to said standard. This option can by enabled by passing
`--enable-conforming-compilation` during configure, but is off by default.
If you just want to compile a working JDK it is not recommended that you set this
flag, as it is mainly meant to aid developers that are working with native code.


## Boot JDK Requirements

Expand Down
16 changes: 0 additions & 16 deletions make/autoconf/flags-cflags.m4
Original file line number Diff line number Diff line change
Expand Up @@ -500,13 +500,6 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
# no-strict-aliasing everywhere!)
TOOLCHAIN_CFLAGS_JDK_CONLY="-fno-strict-aliasing"
if test "x$ENABLE_CONFORMING_COMPILATION" = xtrue; then
# -Werror=pedantic is not equivalent to -pedantic-errors on gcc, if code that
# conforms is desired both have to be set
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -pedantic-errors -Werror=pedantic"
TOOLCHAIN_CFLAGS_JDK="$TOOLCHAIN_CFLAGS_JDK -pedantic-errors -Werror=pedantic"
fi
elif test "x$TOOLCHAIN_TYPE" = xclang; then
# Restrict the debug information created by Clang to avoid
# too big object files and speed the build up a little bit
Expand All @@ -530,11 +523,6 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
TOOLCHAIN_CFLAGS_JDK_CONLY="-fno-strict-aliasing" # technically NOT for CXX
fi
if test "x$ENABLE_CONFORMING_COMPILATION" = xtrue; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -pedantic-errors"
TOOLCHAIN_CFLAGS_JDK="$TOOLCHAIN_CFLAGS_JDK -pedantic-errors"
fi
elif test "x$TOOLCHAIN_TYPE" = xxlc; then
# Suggested additions: -qsrcmsg to get improved error reporting
# set -qtbtable=full for a better traceback table/better stacks in hs_err when xlc16 is used
Expand All @@ -544,10 +532,6 @@ AC_DEFUN([FLAGS_SETUP_CFLAGS_HELPER],
elif test "x$TOOLCHAIN_TYPE" = xmicrosoft; then
TOOLCHAIN_CFLAGS_JVM="-nologo -MD -Zc:preprocessor -Zc:strictStrings -MP"
TOOLCHAIN_CFLAGS_JDK="-nologo -MD -Zc:preprocessor -Zc:strictStrings -Zc:wchar_t-"
if test "x$ENABLE_CONFORMING_COMPILATION" = xtrue; then
TOOLCHAIN_CFLAGS_JVM="$TOOLCHAIN_CFLAGS_JVM -permissive-"
TOOLCHAIN_CFLAGS_JDK="$TOOLCHAIN_CFLAGS_JDK -permissive-"
fi
fi
# CFLAGS C language level for JDK sources (hotspot only uses C++)
Expand Down
8 changes: 0 additions & 8 deletions make/autoconf/jdk-options.m4
Original file line number Diff line number Diff line change
Expand Up @@ -102,14 +102,6 @@ AC_DEFUN_ONCE([JDKOPT_SETUP_JDK_OPTIONS],
CHECKING_MSG: [if we should build headless-only (no GUI)])
AC_SUBST(ENABLE_HEADLESS_ONLY)
# Should the compiler only accept code that strictly conforms to the standard used by
# the build?
UTIL_ARG_ENABLE(NAME: conforming-compilation, DEFAULT: false,
RESULT: ENABLE_CONFORMING_COMPILATION,
DESC: [enforce conforming code during compilation],
CHECKING_MSG: [if compiler should enforce conforming code (conforming-compilation)])
AC_SUBST(ENABLE_CONFORMING_COMPILATION)
# should we linktime gc unused code sections in the JDK build ?
if test "x$OPENJDK_TARGET_OS" = "xlinux" && test "x$OPENJDK_TARGET_CPU" = xs390x; then
LINKTIME_GC_DEFAULT=true
Expand Down

0 comments on commit f0b648b

Please sign in to comment.