From 8424e2460ac57eb33d5345842b0bf71a2b3f1ef9 Mon Sep 17 00:00:00 2001 From: Stewart X Addison Date: Fri, 7 Jan 2022 12:07:02 +0000 Subject: [PATCH 1/2] Select GCC10 instead of GCC7 by default for JDK18+ non-J9 Signed-off-by: Stewart X Addison --- .../platform-specific-configurations/linux.sh | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/build-farm/platform-specific-configurations/linux.sh b/build-farm/platform-specific-configurations/linux.sh index d99954548..8790d7ef5 100755 --- a/build-farm/platform-specific-configurations/linux.sh +++ b/build-farm/platform-specific-configurations/linux.sh @@ -181,16 +181,31 @@ if [ $executedJavaVersion -ne 0 ]; then fi if [ "${VARIANT}" == "${BUILD_VARIANT_DRAGONWELL}" ] && [ "$JAVA_FEATURE_VERSION" -eq 11 ] && [ -r /usr/local/gcc9/ ] && [ "${ARCHITECTURE}" == "aarch64" ]; then + # GCC9 rather than 10 requested by Alibaba for now + # Ref https://github.com/adoptium/temurin-build/issues/2250#issuecomment-732958466 export PATH=/usr/local/gcc9/bin:$PATH export CC=/usr/local/gcc9/bin/gcc-9.3 export CXX=/usr/local/gcc9/bin/g++-9.3 + # Enable GCC 10 for Java 18+ for repeatable builds, but not for our supported releases + # Ref https://github.com/adoptium/temurin-build/issues/2787 +elif [ "$JAVA_FEATURE_VERSION" -gt 17 ] && [ "${VARIANT}" != "${BUILD_VARIANT_OPENJ9}" ]; then + if [ -r /usr/local/gcc10/bin/gcc-10.3 ]; then + export PATH=/usr/local/gcc10/bin:$PATH + [ -r /usr/local/gcc10/bin/gcc-10.3 ] && export CC=/usr/local/gcc10/bin/gcc-10.3 + [ -r /usr/local/gcc10/bin/g++-10.3 ] && export CXX=/usr/local/gcc10/bin/g++-10.3 + export LD_LIBRARY_PATH=/usr/local/gcc10/lib64:/usr/local/gcc10/lib + elif [ -r /usr/bin/gcc-10 ]; then + [ -r /usr/bin/gcc-10 ] && export CC=/usr/bin/gcc-10 + [ -r /usr/bin/g++-10 ] && export CXX=/usr/bin/g++-10 + fi +# Continue to use GCC 7 if present for JDK<=17 elif [ -r /usr/local/gcc/bin/gcc-7.5 ]; then export PATH=/usr/local/gcc/bin:$PATH - [ -r /usr/local/gcc/bin/gcc-7.5 ] && export CC=/usr/local/gcc/bin/gcc-7.5 + [ -r /usr/local/gcc/bin/gcc-7.5 ] && export CC=/usr/local/gcc/bin/gcc-7.5 [ -r /usr/local/gcc/bin/g++-7.5 ] && export CXX=/usr/local/gcc/bin/g++-7.5 export LD_LIBRARY_PATH=/usr/local/gcc/lib64:/usr/local/gcc/lib elif [ -r /usr/bin/gcc-7 ]; then - [ -r /usr/bin/gcc-7 ] && export CC=/usr/bin/gcc-7 + [ -r /usr/bin/gcc-7 ] && export CC=/usr/bin/gcc-7 [ -r /usr/bin/g++-7 ] && export CXX=/usr/bin/g++-7 fi From 525adf208f63e4d5cf9739e6aa817afa516fd635 Mon Sep 17 00:00:00 2001 From: Stewart X Addison Date: Wed, 12 Jan 2022 14:40:06 +0000 Subject: [PATCH 2/2] Adjust logic to fallback from GCC 10 to 7 instead of 4.8 Signed-off-by: Stewart X Addison --- .../platform-specific-configurations/linux.sh | 20 +++++++++---------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/build-farm/platform-specific-configurations/linux.sh b/build-farm/platform-specific-configurations/linux.sh index 8790d7ef5..9b6f7028d 100755 --- a/build-farm/platform-specific-configurations/linux.sh +++ b/build-farm/platform-specific-configurations/linux.sh @@ -188,17 +188,15 @@ if [ "${VARIANT}" == "${BUILD_VARIANT_DRAGONWELL}" ] && [ "$JAVA_FEATURE_VERSION export CXX=/usr/local/gcc9/bin/g++-9.3 # Enable GCC 10 for Java 18+ for repeatable builds, but not for our supported releases # Ref https://github.com/adoptium/temurin-build/issues/2787 -elif [ "$JAVA_FEATURE_VERSION" -gt 17 ] && [ "${VARIANT}" != "${BUILD_VARIANT_OPENJ9}" ]; then - if [ -r /usr/local/gcc10/bin/gcc-10.3 ]; then - export PATH=/usr/local/gcc10/bin:$PATH - [ -r /usr/local/gcc10/bin/gcc-10.3 ] && export CC=/usr/local/gcc10/bin/gcc-10.3 - [ -r /usr/local/gcc10/bin/g++-10.3 ] && export CXX=/usr/local/gcc10/bin/g++-10.3 - export LD_LIBRARY_PATH=/usr/local/gcc10/lib64:/usr/local/gcc10/lib - elif [ -r /usr/bin/gcc-10 ]; then - [ -r /usr/bin/gcc-10 ] && export CC=/usr/bin/gcc-10 - [ -r /usr/bin/g++-10 ] && export CXX=/usr/bin/g++-10 - fi -# Continue to use GCC 7 if present for JDK<=17 +elif [ "$JAVA_FEATURE_VERSION" -gt 17 ] && [ "${VARIANT}" != "${BUILD_VARIANT_OPENJ9}" ] && [ -r /usr/local/gcc10/bin/gcc-10.3 ]; then + export PATH=/usr/local/gcc10/bin:$PATH + [ -r /usr/local/gcc10/bin/gcc-10.3 ] && export CC=/usr/local/gcc10/bin/gcc-10.3 + [ -r /usr/local/gcc10/bin/g++-10.3 ] && export CXX=/usr/local/gcc10/bin/g++-10.3 + export LD_LIBRARY_PATH=/usr/local/gcc10/lib64:/usr/local/gcc10/lib +elif [ "$JAVA_FEATURE_VERSION" -gt 17 ] && [ "${VARIANT}" != "${BUILD_VARIANT_OPENJ9}" ] && [ -r /usr/bin/gcc-10 ]; then + [ -r /usr/bin/gcc-10 ] && export CC=/usr/bin/gcc-10 + [ -r /usr/bin/g++-10 ] && export CXX=/usr/bin/g++-10 +# Continue to use GCC 7 if present for JDK<=17 and where 10 does not exist elif [ -r /usr/local/gcc/bin/gcc-7.5 ]; then export PATH=/usr/local/gcc/bin:$PATH [ -r /usr/local/gcc/bin/gcc-7.5 ] && export CC=/usr/local/gcc/bin/gcc-7.5