From 7bed3ab03afc02d54cc2c763a0450af79a6d8b67 Mon Sep 17 00:00:00 2001 From: kevinw Date: Mon, 19 Nov 2018 14:52:55 -0800 Subject: [PATCH] 8199552: Update to build scripts Reviewed-by: jwilhelm --- common/autoconf/flags.m4 | 18 ++++++++++++++++++ common/autoconf/generated-configure.sh | 20 +++++++++++++++++++- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/common/autoconf/flags.m4 b/common/autoconf/flags.m4 index c586b7f..eae2707 100644 --- a/common/autoconf/flags.m4 +++ b/common/autoconf/flags.m4 @@ -381,6 +381,20 @@ AC_DEFUN_ONCE([FLAGS_SETUP_COMPILER_FLAGS_FOR_JDK], CFLAGS_JDK="${CFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" CXXFLAGS_JDK="${CXXFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" elif test "x$TOOLCHAIN_TYPE" = xgcc; then + case $OPENJDK_TARGET_CPU_ARCH in + x86 ) + LEGACY_EXTRA_CFLAGS="$LEGACY_EXTRA_CFLAGS -fstack-protector" + LEGACY_EXTRA_CXXFLAGS="$LEGACY_EXTRA_CXXFLAGS -fstack-protector" + ;; + x86_64 ) + LEGACY_EXTRA_CFLAGS="$LEGACY_EXTRA_CFLAGS -fstack-protector" + LEGACY_EXTRA_CXXFLAGS="$LEGACY_EXTRA_CXXFLAGS -fstack-protector" + ;; + esac + if test "x$OPENJDK_TARGET_OS" != xmacosx; then + LDFLAGS_JDK="$LDFLAGS_JDK -Wl,-z,relro" + LEGACY_EXTRA_LDFLAGS="$LEGACY_EXTRA_LDFLAGS -Wl,-z,relro" + fi $2CXXSTD_CXXFLAG="-std=gnu++98" FLAGS_CXX_COMPILER_CHECK_ARGUMENTS([[$]$2CXXSTD_CXXFLAG -Werror], [], [$2CXXSTD_CXXFLAG=""]) @@ -443,6 +457,10 @@ AC_DEFUN_ONCE([FLAGS_SETUP_COMPILER_FLAGS_FOR_JDK], ppc ) # on ppc we don't prevent gcc to omit frame pointer nor strict-aliasing ;; + x86 ) + CCXXFLAGS_JDK="$CCXXFLAGS_JDK -fno-omit-frame-pointer -fstack-protector" + CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing -fstack-protector" + ;; * ) CCXXFLAGS_JDK="$CCXXFLAGS_JDK -fno-omit-frame-pointer" CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing" diff --git a/common/autoconf/generated-configure.sh b/common/autoconf/generated-configure.sh index 81ab6c3..4e94001 100644 --- a/common/autoconf/generated-configure.sh +++ b/common/autoconf/generated-configure.sh @@ -4336,7 +4336,7 @@ VS_SDK_PLATFORM_NAME_2017= #CUSTOM_AUTOCONF_INCLUDE # Do not change or remove the following line, it is needed for consistency checks: -DATE_WHEN_GENERATED=1536764960 +DATE_WHEN_GENERATED=1542667963 ############################################################################### # @@ -41309,6 +41309,20 @@ $as_echo "$ac_cv_c_bigendian" >&6; } CFLAGS_JDK="${CFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" CXXFLAGS_JDK="${CXXFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" elif test "x$TOOLCHAIN_TYPE" = xgcc; then + case $OPENJDK_TARGET_CPU_ARCH in + x86 ) + LEGACY_EXTRA_CFLAGS="$LEGACY_EXTRA_CFLAGS -fstack-protector" + LEGACY_EXTRA_CXXFLAGS="$LEGACY_EXTRA_CXXFLAGS -fstack-protector" + ;; + x86_64 ) + LEGACY_EXTRA_CFLAGS="$LEGACY_EXTRA_CFLAGS -fstack-protector" + LEGACY_EXTRA_CXXFLAGS="$LEGACY_EXTRA_CXXFLAGS -fstack-protector" + ;; + esac + if test "x$OPENJDK_TARGET_OS" != xmacosx; then + LDFLAGS_JDK="$LDFLAGS_JDK -Wl,-z,relro" + LEGACY_EXTRA_LDFLAGS="$LEGACY_EXTRA_LDFLAGS -Wl,-z,relro" + fi CXXSTD_CXXFLAG="-std=gnu++98" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the C++ compiler supports \"$CXXSTD_CXXFLAG -Werror\"" >&5 @@ -41423,6 +41437,10 @@ fi ppc ) # on ppc we don't prevent gcc to omit frame pointer nor strict-aliasing ;; + x86 ) + CCXXFLAGS_JDK="$CCXXFLAGS_JDK -fno-omit-frame-pointer -fstack-protector" + CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing -fstack-protector" + ;; * ) CCXXFLAGS_JDK="$CCXXFLAGS_JDK -fno-omit-frame-pointer" CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing" -- GitLab