1.1 --- a/common/autoconf/flags.m4 Fri Nov 30 12:04:19 2018 +0000 1.2 +++ b/common/autoconf/flags.m4 Wed Dec 05 11:26:37 2018 +0000 1.3 @@ -388,6 +388,20 @@ 1.4 CFLAGS_JDK="${CFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" 1.5 CXXFLAGS_JDK="${CXXFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" 1.6 elif test "x$TOOLCHAIN_TYPE" = xgcc; then 1.7 + case $OPENJDK_TARGET_CPU_ARCH in 1.8 + x86 ) 1.9 + LEGACY_EXTRA_CFLAGS="$LEGACY_EXTRA_CFLAGS -fstack-protector" 1.10 + LEGACY_EXTRA_CXXFLAGS="$LEGACY_EXTRA_CXXFLAGS -fstack-protector" 1.11 + ;; 1.12 + x86_64 ) 1.13 + LEGACY_EXTRA_CFLAGS="$LEGACY_EXTRA_CFLAGS -fstack-protector" 1.14 + LEGACY_EXTRA_CXXFLAGS="$LEGACY_EXTRA_CXXFLAGS -fstack-protector" 1.15 + ;; 1.16 + esac 1.17 + if test "x$OPENJDK_TARGET_OS" != xmacosx; then 1.18 + LDFLAGS_JDK="$LDFLAGS_JDK -Wl,-z,relro" 1.19 + LEGACY_EXTRA_LDFLAGS="$LEGACY_EXTRA_LDFLAGS -Wl,-z,relro" 1.20 + fi 1.21 $2CXXSTD_CXXFLAG="-std=gnu++98" 1.22 FLAGS_CXX_COMPILER_CHECK_ARGUMENTS([[$]$2CXXSTD_CXXFLAG -Werror], 1.23 [], [$2CXXSTD_CXXFLAG=""]) 1.24 @@ -450,6 +464,10 @@ 1.25 ppc ) 1.26 # on ppc we don't prevent gcc to omit frame pointer nor strict-aliasing 1.27 ;; 1.28 + x86 ) 1.29 + CCXXFLAGS_JDK="$CCXXFLAGS_JDK -fno-omit-frame-pointer -fstack-protector" 1.30 + CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing -fstack-protector" 1.31 + ;; 1.32 * ) 1.33 CCXXFLAGS_JDK="$CCXXFLAGS_JDK -fno-omit-frame-pointer" 1.34 CFLAGS_JDK="${CFLAGS_JDK} -fno-strict-aliasing"