Thu, 29 May 2014 10:50:00 -0700
Merge
.hgtags | file | annotate | diff | comparison | revisions |
1.1 --- a/.hgtags Mon May 19 21:34:00 2014 -0700 1.2 +++ b/.hgtags Thu May 29 10:50:00 2014 -0700 1.3 @@ -245,12 +245,18 @@ 1.4 1e1f86d5d4e22c15a9bf9f1581acddb8c59abae2 jdk8-b121 1.5 347009c5881668b1e44f64d56d4a96cb20a183fa jdk8-b122 1.6 ff1478785e43718146ffbce97e007f39c3bcaa32 jdk8-b123 1.7 +c330fa67c4daffdc86527f1a24941aa5a3500098 jdk8u20-b00 1.8 790bbd46b2015e69ce301dae194c2b4141011f2d jdk8-b124 1.9 +78abb27c27d988a86e6c82b2cce03cdc04211127 jdk8u20-b01 1.10 790bbd46b2015e69ce301dae194c2b4141011f2d jdk8-b125 1.11 9ccce5bf1b0ea0d3f3fb871be069f305f9cea530 jdk8-b126 1.12 2e2ffb9e4b690c63b32142861177390e0f2c40e9 jdk8-b127 1.13 101e42de46869e6604fbf095e1666fbf07fcb93c jdk8-b128 1.14 1e5fe865491300cd0c63261ecf8d34e621e1345c jdk8-b129 1.15 +cc868070f1959b849c8c3b867771fbdb07b9ba05 jdk8u20-b02 1.16 +6a3d3b7feab4d4a8252c63b4ce7d0fab106cf2f7 jdk8u20-b03 1.17 +7e1b01df280fb065c5953c48f54ac9d619ecbf1c jdk8u20-b04 1.18 +69e0af208dad70fdef65a89ab2c4c468ed9e24b8 jdk8u20-b05 1.19 839546caab1285c7699a9c2aa1467f57c9ea7f30 jdk8-b130 1.20 0c38dfecab2ad9f9b5b5edf54b991602147cd040 jdk8-b131 1.21 2a8f4c022aa03e7916223f3291517dbcc38e07cd jdk8-b132 1.22 @@ -277,4 +283,21 @@ 1.23 fe460afb120e2312769454f4630cccd406ded3f6 jdk8u11-b07 1.24 81f3392f551c45578cabe29552c670b87170d325 jdk8u11-b08 1.25 390084098df7bffecd0eb2318facc6f0f9a46b70 jdk8u11-b09 1.26 +6d324f36e2448f486d0caa67f70e5a6cf5ac6c0d jdk8u11-b10 1.27 +ae6a3aec6aa29509a0fd5f53709889b99b1e27da jdk8u20-b06 1.28 +cc868070f1959b849c8c3b867771fbdb07b9ba05 jdk8u20-b02 1.29 +6a3d3b7feab4d4a8252c63b4ce7d0fab106cf2f7 jdk8u20-b03 1.30 +7e1b01df280fb065c5953c48f54ac9d619ecbf1c jdk8u20-b04 1.31 +69e0af208dad70fdef65a89ab2c4c468ed9e24b8 jdk8u20-b05 1.32 +ae6a3aec6aa29509a0fd5f53709889b99b1e27da jdk8u20-b06 1.33 +6403ef94cb0db32d9221a5e8f09f3664cd7744dc jdk8u20-b07 1.34 +b7750b6ee1578fd5b2b1f6758f905b332503d8ed jdk8u20-b08 1.35 +d420eae635c42be98b166e1ce9c64fc0a8825529 jdk8u20-b09 1.36 +cc4ca2ff0afcfb932da6fa4fffdd01f08e4ff71b jdk8u20-b10 1.37 +61291eee163ab5bbe0b38b37b77673bac9bf5310 jdk8u20-b11 1.38 +2feecdcd7b677f3baf9df6e8ea46f7e08c7e4411 jdk8u20-b12 1.39 +26764db977ecb590cdee637d27996a87cdd9507e jdk8u20-b13 1.40 +548afd2496385263874c0ce970158764166b1156 jdk8u20-b14 1.41 +12a1fd80b05aa9c5daab22ca5fab8e2c9c3df61c jdk8u20-b15 1.42 +4095a7a49a9ea95f4c59f936acf45ca1f87b8fff jdk8u20-b16 1.43 97c6d6a8e5bb3dfc24b9a32711aa0906ea110e23 jdk8u25-b00
2.1 --- a/common/autoconf/boot-jdk.m4 Mon May 19 21:34:00 2014 -0700 2.2 +++ b/common/autoconf/boot-jdk.m4 Thu May 29 10:50:00 2014 -0700 2.3 @@ -316,7 +316,7 @@ 2.4 2.5 # Minimum amount of heap memory. 2.6 ADD_JVM_ARG_IF_OK([-Xms64M],boot_jdk_jvmargs,[$JAVA]) 2.7 - if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then 2.8 + if test "x$OPENJDK_TARGET_OS" = "xmacosx" || test "x$OPENJDK_TARGET_CPU" = "xppc64" ; then 2.9 # Why does macosx need more heap? Its the huge JDK batch. 2.10 ADD_JVM_ARG_IF_OK([-Xmx1600M],boot_jdk_jvmargs,[$JAVA]) 2.11 else
3.1 --- a/common/autoconf/build-aux/config.guess Mon May 19 21:34:00 2014 -0700 3.2 +++ b/common/autoconf/build-aux/config.guess Thu May 29 10:50:00 2014 -0700 3.3 @@ -60,4 +60,30 @@ 3.4 esac 3.5 fi 3.6 3.7 +# Test and fix architecture string on AIX 3.8 +# On AIX 'config.guess' returns 'powerpc' as architecture but 'powerpc' is 3.9 +# implicitely handled as 32-bit architecture in 'platform.m4' so we check 3.10 +# for the kernel mode rewrite it to 'powerpc64' if we'Re running in 64-bit mode. 3.11 +# The check could also be done with `/usr/sbin/prtconf | grep "Kernel Type" | grep "64-bit"` 3.12 +echo $OUT | grep powerpc-ibm-aix > /dev/null 2> /dev/null 3.13 +if test $? = 0; then 3.14 + if [ -x /bin/getconf ] ; then 3.15 + KERNEL_BITMODE=`getconf KERNEL_BITMODE` 3.16 + if [ "$KERNEL_BITMODE" = "32" ]; then 3.17 + KERNEL_BITMODE="" 3.18 + fi 3.19 + fi 3.20 + OUT=powerpc$KERNEL_BITMODE`echo $OUT | sed -e 's/[^-]*//'` 3.21 +fi 3.22 + 3.23 +# Test and fix little endian PowerPC64. 3.24 +# TODO: should be handled by autoconf-config.guess. 3.25 +if [ "x$OUT" = x ]; then 3.26 + if [ `uname -m` = ppc64le ]; then 3.27 + if [ `uname -s` = Linux ]; then 3.28 + OUT=powerpc64le-unknown-linux-gnu 3.29 + fi 3.30 + fi 3.31 +fi 3.32 + 3.33 echo $OUT
4.1 --- a/common/autoconf/build-performance.m4 Mon May 19 21:34:00 2014 -0700 4.2 +++ b/common/autoconf/build-performance.m4 Thu May 29 10:50:00 2014 -0700 4.3 @@ -41,6 +41,9 @@ 4.4 # Looks like a MacOSX system 4.5 NUM_CORES=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Cores' | awk '{print [$]5}'` 4.6 FOUND_CORES=yes 4.7 + elif test "x$OPENJDK_BUILD_OS" = xaix ; then 4.8 + NUM_CORES=`/usr/sbin/prtconf | grep "^Number Of Processors" | awk '{ print [$]4 }'` 4.9 + FOUND_CORES=yes 4.10 elif test -n "$NUMBER_OF_PROCESSORS"; then 4.11 # On windows, look in the env 4.12 NUM_CORES=$NUMBER_OF_PROCESSORS 4.13 @@ -68,8 +71,8 @@ 4.14 MEMORY_SIZE=`expr $MEMORY_SIZE / 1024` 4.15 FOUND_MEM=yes 4.16 elif test -x /usr/sbin/prtconf; then 4.17 - # Looks like a Solaris system 4.18 - MEMORY_SIZE=`/usr/sbin/prtconf | grep "Memory size" | awk '{ print [$]3 }'` 4.19 + # Looks like a Solaris or AIX system 4.20 + MEMORY_SIZE=`/usr/sbin/prtconf | grep "^Memory [[Ss]]ize" | awk '{ print [$]3 }'` 4.21 FOUND_MEM=yes 4.22 elif test -x /usr/sbin/system_profiler; then 4.23 # Looks like a MacOSX system
5.1 --- a/common/autoconf/configure.ac Mon May 19 21:34:00 2014 -0700 5.2 +++ b/common/autoconf/configure.ac Thu May 29 10:50:00 2014 -0700 5.3 @@ -88,6 +88,7 @@ 5.4 5.5 # These are needed to be able to create a configuration name (and thus the output directory) 5.6 JDKOPT_SETUP_JDK_VARIANT 5.7 +JDKOPT_SETUP_JVM_INTERPRETER 5.8 JDKOPT_SETUP_JVM_VARIANTS 5.9 JDKOPT_SETUP_DEBUG_LEVEL 5.10
6.1 --- a/common/autoconf/generated-configure.sh Mon May 19 21:34:00 2014 -0700 6.2 +++ b/common/autoconf/generated-configure.sh Thu May 29 10:50:00 2014 -0700 6.3 @@ -665,6 +665,7 @@ 6.4 CFLAGS_DEBUG_SYMBOLS 6.5 ZIP_DEBUGINFO_FILES 6.6 ENABLE_DEBUG_SYMBOLS 6.7 +USING_BROKEN_SUSE_LD 6.8 COMPILER_SUPPORTS_TARGET_BITS_FLAG 6.9 ZERO_ARCHFLAG 6.10 LDFLAGS_CXX_JDK 6.11 @@ -749,6 +750,7 @@ 6.12 PROPER_COMPILER_CXX 6.13 POTENTIAL_CXX 6.14 TOOLS_DIR_CXX 6.15 +COMPILER_TARGET_BITS_FLAG 6.16 OBJEXT 6.17 EXEEXT 6.18 ac_ct_CC 6.19 @@ -851,6 +853,7 @@ 6.20 DEBUG_LEVEL 6.21 MACOSX_UNIVERSAL 6.22 INCLUDE_SA 6.23 +JVM_VARIANT_CORE 6.24 JVM_VARIANT_ZEROSHARK 6.25 JVM_VARIANT_ZERO 6.26 JVM_VARIANT_KERNEL 6.27 @@ -858,6 +861,7 @@ 6.28 JVM_VARIANT_CLIENT 6.29 JVM_VARIANT_SERVER 6.30 JVM_VARIANTS 6.31 +JVM_INTERPRETER 6.32 JDK_VARIANT 6.33 SET_OPENJDK 6.34 BUILD_LOG_WRAPPER 6.35 @@ -1003,6 +1007,7 @@ 6.36 with_devkit 6.37 enable_openjdk_only 6.38 with_jdk_variant 6.39 +with_jvm_interpreter 6.40 with_jvm_variants 6.41 enable_debug 6.42 with_debug_level 6.43 @@ -1747,8 +1752,10 @@ 6.44 --with-devkit use this directory as base for tools-dir and 6.45 sys-root (for cross-compiling) 6.46 --with-jdk-variant JDK variant to build (normal) [normal] 6.47 + --with-jvm-interpreter JVM interpreter to build (template, cpp) [template] 6.48 --with-jvm-variants JVM variants (separated by commas) to build (server, 6.49 - client, minimal1, kernel, zero, zeroshark) [server] 6.50 + client, minimal1, kernel, zero, zeroshark, core) 6.51 + [server] 6.52 --with-debug-level set the debug level (release, fastdebug, slowdebug) 6.53 [release] 6.54 --with-conf-name use this as the name of the configuration [generated 6.55 @@ -3485,8 +3492,6 @@ 6.56 If you put the resulting build in \"C:\Program Files\GnuWin32\", it will be found automatically." 6.57 fi 6.58 ;; 6.59 - * ) 6.60 - break ;; 6.61 esac 6.62 } 6.63 6.64 @@ -3512,8 +3517,6 @@ 6.65 PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev" ;; 6.66 ccache) 6.67 PKGHANDLER_COMMAND="sudo apt-get install ccache" ;; 6.68 - * ) 6.69 - break ;; 6.70 esac 6.71 } 6.72 6.73 @@ -3535,8 +3538,6 @@ 6.74 PKGHANDLER_COMMAND="sudo yum install libXtst-devel libXt-devel libXrender-devel" ;; 6.75 ccache) 6.76 PKGHANDLER_COMMAND="sudo yum install ccache" ;; 6.77 - * ) 6.78 - break ;; 6.79 esac 6.80 } 6.81 6.82 @@ -3586,6 +3587,8 @@ 6.83 6.84 6.85 6.86 + 6.87 + 6.88 ############################################################################### 6.89 # 6.90 # Should we build only OpenJDK even if closed sources are present? 6.91 @@ -3865,7 +3868,7 @@ 6.92 #CUSTOM_AUTOCONF_INCLUDE 6.93 6.94 # Do not change or remove the following line, it is needed for consistency checks: 6.95 -DATE_WHEN_GENERATED=1390334534 6.96 +DATE_WHEN_GENERATED=1397150809 6.97 6.98 ############################################################################### 6.99 # 6.100 @@ -6784,6 +6787,11 @@ 6.101 VAR_OS_API=winapi 6.102 VAR_OS_ENV=windows.msys 6.103 ;; 6.104 + *aix*) 6.105 + VAR_OS=aix 6.106 + VAR_OS_API=posix 6.107 + VAR_OS_ENV=aix 6.108 + ;; 6.109 *) 6.110 as_fn_error $? "unsupported operating system $build_os" "$LINENO" 5 6.111 ;; 6.112 @@ -6822,6 +6830,12 @@ 6.113 VAR_CPU_BITS=64 6.114 VAR_CPU_ENDIAN=big 6.115 ;; 6.116 + powerpc64le) 6.117 + VAR_CPU=ppc64 6.118 + VAR_CPU_ARCH=ppc 6.119 + VAR_CPU_BITS=64 6.120 + VAR_CPU_ENDIAN=little 6.121 + ;; 6.122 s390) 6.123 VAR_CPU=s390 6.124 VAR_CPU_ARCH=s390 6.125 @@ -6904,6 +6918,11 @@ 6.126 VAR_OS_API=winapi 6.127 VAR_OS_ENV=windows.msys 6.128 ;; 6.129 + *aix*) 6.130 + VAR_OS=aix 6.131 + VAR_OS_API=posix 6.132 + VAR_OS_ENV=aix 6.133 + ;; 6.134 *) 6.135 as_fn_error $? "unsupported operating system $host_os" "$LINENO" 5 6.136 ;; 6.137 @@ -6942,6 +6961,12 @@ 6.138 VAR_CPU_BITS=64 6.139 VAR_CPU_ENDIAN=big 6.140 ;; 6.141 + powerpc64le) 6.142 + VAR_CPU=ppc64 6.143 + VAR_CPU_ARCH=ppc 6.144 + VAR_CPU_BITS=64 6.145 + VAR_CPU_ENDIAN=little 6.146 + ;; 6.147 s390) 6.148 VAR_CPU=s390 6.149 VAR_CPU_ARCH=s390 6.150 @@ -7810,6 +7835,37 @@ 6.151 $as_echo "$JDK_VARIANT" >&6; } 6.152 6.153 6.154 +############################################################################### 6.155 +# 6.156 +# Check which interpreter of the JVM we want to build. 6.157 +# Currently we have: 6.158 +# template: Template interpreter (the default) 6.159 +# cpp : C++ interpreter 6.160 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which interpreter of the JVM to build" >&5 6.161 +$as_echo_n "checking which interpreter of the JVM to build... " >&6; } 6.162 + 6.163 +# Check whether --with-jvm-interpreter was given. 6.164 +if test "${with_jvm_interpreter+set}" = set; then : 6.165 + withval=$with_jvm_interpreter; 6.166 +fi 6.167 + 6.168 + 6.169 +if test "x$with_jvm_interpreter" = x; then 6.170 + with_jvm_interpreter="template" 6.171 +fi 6.172 + 6.173 +JVM_INTERPRETER="$with_jvm_interpreter" 6.174 + 6.175 +if test "x$JVM_INTERPRETER" != xtemplate && test "x$JVM_INTERPRETER" != xcpp; then 6.176 + as_fn_error $? "The available JVM interpreters are: template, cpp" "$LINENO" 5 6.177 +fi 6.178 + 6.179 + 6.180 + 6.181 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_jvm_interpreter" >&5 6.182 +$as_echo "$with_jvm_interpreter" >&6; } 6.183 + 6.184 + 6.185 6.186 ############################################################################### 6.187 # 6.188 @@ -7822,6 +7878,7 @@ 6.189 # ie normal interpreter and C1, only the serial GC, kernel jvmti etc 6.190 # zero: no machine code interpreter, no compiler 6.191 # zeroshark: zero interpreter and shark/llvm compiler backend 6.192 +# core: interpreter only, no compiler (only works on some platforms) 6.193 { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variants of the JVM to build" >&5 6.194 $as_echo_n "checking which variants of the JVM to build... " >&6; } 6.195 6.196 @@ -7836,10 +7893,10 @@ 6.197 fi 6.198 6.199 JVM_VARIANTS=",$with_jvm_variants," 6.200 - TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//'` 6.201 + TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//' -e 's/core,//'` 6.202 6.203 if test "x$TEST_VARIANTS" != "x,"; then 6.204 - as_fn_error $? "The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark" "$LINENO" 5 6.205 + as_fn_error $? "The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark, core" "$LINENO" 5 6.206 fi 6.207 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_jvm_variants" >&5 6.208 $as_echo "$with_jvm_variants" >&6; } 6.209 @@ -7850,6 +7907,7 @@ 6.210 JVM_VARIANT_KERNEL=`$ECHO "$JVM_VARIANTS" | $SED -e '/,kernel,/!s/.*/false/g' -e '/,kernel,/s/.*/true/g'` 6.211 JVM_VARIANT_ZERO=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zero,/!s/.*/false/g' -e '/,zero,/s/.*/true/g'` 6.212 JVM_VARIANT_ZEROSHARK=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zeroshark,/!s/.*/false/g' -e '/,zeroshark,/s/.*/true/g'` 6.213 + JVM_VARIANT_CORE=`$ECHO "$JVM_VARIANTS" | $SED -e '/,core,/!s/.*/false/g' -e '/,core,/s/.*/true/g'` 6.214 6.215 if test "x$JVM_VARIANT_CLIENT" = xtrue; then 6.216 if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then 6.217 @@ -7869,7 +7927,7 @@ 6.218 6.219 # Replace the commas with AND for use in the build directory name. 6.220 ANDED_JVM_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/^,//' -e 's/,$//' -e 's/,/AND/'` 6.221 - COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/'` 6.222 + COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/' -e 's/core,/1/'` 6.223 if test "x$COUNT_VARIANTS" != "x,1"; then 6.224 BUILDING_MULTIPLE_JVM_VARIANTS=yes 6.225 else 6.226 @@ -7884,6 +7942,7 @@ 6.227 6.228 6.229 6.230 + 6.231 INCLUDE_SA=true 6.232 if test "x$JVM_VARIANT_ZERO" = xtrue ; then 6.233 INCLUDE_SA=false 6.234 @@ -7891,6 +7950,9 @@ 6.235 if test "x$JVM_VARIANT_ZEROSHARK" = xtrue ; then 6.236 INCLUDE_SA=false 6.237 fi 6.238 + if test "x$VAR_CPU" = xppc64 ; then 6.239 + INCLUDE_SA=false 6.240 + fi 6.241 6.242 6.243 if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then 6.244 @@ -8006,6 +8068,10 @@ 6.245 HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}shark " 6.246 fi 6.247 6.248 + if test "x$JVM_VARIANT_CORE" = xtrue; then 6.249 + HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}core " 6.250 + fi 6.251 + 6.252 HOTSPOT_TARGET="$HOTSPOT_TARGET docs export_$HOTSPOT_EXPORT" 6.253 6.254 # On Macosx universal binaries are produced, but they only contain 6.255 @@ -15857,8 +15923,6 @@ 6.256 pkgutil_help $MISSING_DEPENDENCY ;; 6.257 pkgadd) 6.258 pkgadd_help $MISSING_DEPENDENCY ;; 6.259 - * ) 6.260 - break ;; 6.261 esac 6.262 6.263 if test "x$PKGHANDLER_COMMAND" != x; then 6.264 @@ -16037,7 +16101,7 @@ 6.265 JVM_ARG_OK=false 6.266 fi 6.267 6.268 - if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then 6.269 + if test "x$OPENJDK_TARGET_OS" = "xmacosx" || test "x$OPENJDK_TARGET_CPU" = "xppc64" ; then 6.270 # Why does macosx need more heap? Its the huge JDK batch. 6.271 6.272 $ECHO "Check if jvm arg is ok: -Xmx1600M" >&5 6.273 @@ -19109,6 +19173,9 @@ 6.274 COMPILER_CHECK_LIST="cl" 6.275 elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then 6.276 COMPILER_CHECK_LIST="cc gcc" 6.277 + elif test "x$OPENJDK_TARGET_OS" = "xaix"; then 6.278 + # Do not probe for cc on AIX. 6.279 + COMPILER_CHECK_LIST="xlc_r" 6.280 else 6.281 COMPILER_CHECK_LIST="gcc cc" 6.282 fi 6.283 @@ -19246,8 +19313,6 @@ 6.284 pkgutil_help $MISSING_DEPENDENCY ;; 6.285 pkgadd) 6.286 pkgadd_help $MISSING_DEPENDENCY ;; 6.287 - * ) 6.288 - break ;; 6.289 esac 6.290 6.291 if test "x$PKGHANDLER_COMMAND" != x; then 6.292 @@ -19523,9 +19588,12 @@ 6.293 $as_echo "$as_me: Rewriting CC to \"$new_complete\"" >&6;} 6.294 fi 6.295 6.296 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking resolved symbolic links for CC" >&5 6.297 + TEST_COMPILER="$CC" 6.298 + # Don't remove symbolic links on AIX because 'xlc_r' and 'xlC_r' may all be links 6.299 + # to 'xlc' but it is crucial that we invoke the compiler with the right name! 6.300 + if test "x$OPENJDK_BUILD_OS" != xaix; then 6.301 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking resolved symbolic links for CC" >&5 6.302 $as_echo_n "checking resolved symbolic links for CC... " >&6; } 6.303 - TEST_COMPILER="$CC" 6.304 6.305 if test "x$OPENJDK_BUILD_OS" != xwindows; then 6.306 # Follow a chain of symbolic links. Use readlink 6.307 @@ -19574,8 +19642,9 @@ 6.308 fi 6.309 fi 6.310 6.311 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_COMPILER" >&5 6.312 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_COMPILER" >&5 6.313 $as_echo "$TEST_COMPILER" >&6; } 6.314 + fi 6.315 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CC is disguised ccache" >&5 6.316 $as_echo_n "checking if CC is disguised ccache... " >&6; } 6.317 6.318 @@ -20039,6 +20108,15 @@ 6.319 COMPILER_VERSION=`$ECHO $COMPILER_VERSION_TEST | $SED -n "s/^.*[ ,\t]$COMPILER_NAME[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p"` 6.320 COMPILER_VENDOR="Sun Studio" 6.321 fi 6.322 + elif test "x$OPENJDK_TARGET_OS" = xaix; then 6.323 + COMPILER_VERSION_TEST=`$COMPILER -qversion 2>&1 | $TAIL -n 1` 6.324 + $ECHO $COMPILER_VERSION_TEST | $GREP "^Version: " > /dev/null 6.325 + if test $? -ne 0; then 6.326 + as_fn_error $? "Failed to detect the compiler version of $COMPILER ...." "$LINENO" 5 6.327 + else 6.328 + COMPILER_VERSION=`$ECHO $COMPILER_VERSION_TEST | $SED -n 's/Version: \(0-90-9\.0-90-9*\).*/\1/p'` 6.329 + COMPILER_VENDOR='IBM' 6.330 + fi 6.331 elif test "x$OPENJDK_TARGET_OS" = xwindows; then 6.332 # First line typically looks something like: 6.333 # Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86 6.334 @@ -20680,6 +20758,14 @@ 6.335 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu 6.336 6.337 6.338 + # Option used to tell the compiler whether to create 32- or 64-bit executables 6.339 + # Notice that CC contains the full compiler path at this point. 6.340 + case $CC in 6.341 + *xlc_r) COMPILER_TARGET_BITS_FLAG="-q";; 6.342 + *) COMPILER_TARGET_BITS_FLAG="-m";; 6.343 + esac 6.344 + 6.345 + 6.346 ### Locate C++ compiler (CXX) 6.347 6.348 if test "x$CXX" != x; then 6.349 @@ -20688,6 +20774,9 @@ 6.350 COMPILER_CHECK_LIST="cl" 6.351 elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then 6.352 COMPILER_CHECK_LIST="CC g++" 6.353 + elif test "x$OPENJDK_TARGET_OS" = "xaix"; then 6.354 + # Do not probe for CC on AIX . 6.355 + COMPILER_CHECK_LIST="xlC_r" 6.356 else 6.357 COMPILER_CHECK_LIST="g++ CC" 6.358 fi 6.359 @@ -20825,8 +20914,6 @@ 6.360 pkgutil_help $MISSING_DEPENDENCY ;; 6.361 pkgadd) 6.362 pkgadd_help $MISSING_DEPENDENCY ;; 6.363 - * ) 6.364 - break ;; 6.365 esac 6.366 6.367 if test "x$PKGHANDLER_COMMAND" != x; then 6.368 @@ -21102,9 +21189,12 @@ 6.369 $as_echo "$as_me: Rewriting CXX to \"$new_complete\"" >&6;} 6.370 fi 6.371 6.372 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking resolved symbolic links for CXX" >&5 6.373 + TEST_COMPILER="$CXX" 6.374 + # Don't remove symbolic links on AIX because 'xlc_r' and 'xlC_r' may all be links 6.375 + # to 'xlc' but it is crucial that we invoke the compiler with the right name! 6.376 + if test "x$OPENJDK_BUILD_OS" != xaix; then 6.377 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking resolved symbolic links for CXX" >&5 6.378 $as_echo_n "checking resolved symbolic links for CXX... " >&6; } 6.379 - TEST_COMPILER="$CXX" 6.380 6.381 if test "x$OPENJDK_BUILD_OS" != xwindows; then 6.382 # Follow a chain of symbolic links. Use readlink 6.383 @@ -21153,8 +21243,9 @@ 6.384 fi 6.385 fi 6.386 6.387 - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_COMPILER" >&5 6.388 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TEST_COMPILER" >&5 6.389 $as_echo "$TEST_COMPILER" >&6; } 6.390 + fi 6.391 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CXX is disguised ccache" >&5 6.392 $as_echo_n "checking if CXX is disguised ccache... " >&6; } 6.393 6.394 @@ -21618,6 +21709,15 @@ 6.395 COMPILER_VERSION=`$ECHO $COMPILER_VERSION_TEST | $SED -n "s/^.*[ ,\t]$COMPILER_NAME[ ,\t]\([1-9]\.[0-9][0-9]*\).*/\1/p"` 6.396 COMPILER_VENDOR="Sun Studio" 6.397 fi 6.398 + elif test "x$OPENJDK_TARGET_OS" = xaix; then 6.399 + COMPILER_VERSION_TEST=`$COMPILER -qversion 2>&1 | $TAIL -n 1` 6.400 + $ECHO $COMPILER_VERSION_TEST | $GREP "^Version: " > /dev/null 6.401 + if test $? -ne 0; then 6.402 + as_fn_error $? "Failed to detect the compiler version of $COMPILER ...." "$LINENO" 5 6.403 + else 6.404 + COMPILER_VERSION=`$ECHO $COMPILER_VERSION_TEST | $SED -n 's/Version: \(0-90-9\.0-90-9*\).*/\1/p'` 6.405 + COMPILER_VENDOR='IBM' 6.406 + fi 6.407 elif test "x$OPENJDK_TARGET_OS" = xwindows; then 6.408 # First line typically looks something like: 6.409 # Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86 6.410 @@ -22823,6 +22923,8 @@ 6.411 fi 6.412 if test "x$OPENJDK_TARGET_OS" = xmacosx; then 6.413 ARFLAGS="-r" 6.414 + elif test "x$OPENJDK_TARGET_OS" = xaix; then 6.415 + ARFLAGS="-X64" 6.416 else 6.417 ARFLAGS="" 6.418 fi 6.419 @@ -28798,16 +28900,17 @@ 6.420 # is made at runtime.) 6.421 # 6.422 6.423 - if test "x$OPENJDK_TARGET_OS" = xsolaris; then 6.424 - # Always specify -m flags on Solaris 6.425 + if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xaix; then 6.426 + # Always specify -m flag on Solaris 6.427 + # And -q on AIX because otherwise the compiler produces 32-bit objects by default 6.428 6.429 # When we add flags to the "official" CFLAGS etc, we need to 6.430 # keep track of these additions in ADDED_CFLAGS etc. These 6.431 # will later be checked to make sure only controlled additions 6.432 # have been made to CFLAGS etc. 6.433 - ADDED_CFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 6.434 - ADDED_CXXFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 6.435 - ADDED_LDFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 6.436 + ADDED_CFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.437 + ADDED_CXXFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.438 + ADDED_LDFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.439 6.440 CFLAGS="${CFLAGS}${ADDED_CFLAGS}" 6.441 CXXFLAGS="${CXXFLAGS}${ADDED_CXXFLAGS}" 6.442 @@ -28825,9 +28928,9 @@ 6.443 # keep track of these additions in ADDED_CFLAGS etc. These 6.444 # will later be checked to make sure only controlled additions 6.445 # have been made to CFLAGS etc. 6.446 - ADDED_CFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 6.447 - ADDED_CXXFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 6.448 - ADDED_LDFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 6.449 + ADDED_CFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.450 + ADDED_CXXFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.451 + ADDED_LDFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.452 6.453 CFLAGS="${CFLAGS}${ADDED_CFLAGS}" 6.454 CXXFLAGS="${CXXFLAGS}${ADDED_CXXFLAGS}" 6.455 @@ -28901,20 +29004,85 @@ 6.456 6.457 6.458 6.459 - if test "x$SIZEOF_INT_P" != "x$ac_cv_sizeof_int_p"; then 6.460 - # Workaround autoconf bug, see http://lists.gnu.org/archive/html/autoconf/2010-07/msg00004.html 6.461 - SIZEOF_INT_P="$ac_cv_sizeof_int_p" 6.462 - fi 6.463 - 6.464 - if test "x$SIZEOF_INT_P" = x; then 6.465 + # AC_CHECK_SIZEOF defines 'ac_cv_sizeof_int_p' to hold the number of bytes used by an 'int*' 6.466 + if test "x$ac_cv_sizeof_int_p" = x; then 6.467 # The test failed, lets stick to the assumed value. 6.468 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The number of bits in the target could not be determined, using $OPENJDK_TARGET_CPU_BITS." >&5 6.469 $as_echo "$as_me: WARNING: The number of bits in the target could not be determined, using $OPENJDK_TARGET_CPU_BITS." >&2;} 6.470 else 6.471 - TESTED_TARGET_CPU_BITS=`expr 8 \* $SIZEOF_INT_P` 6.472 + TESTED_TARGET_CPU_BITS=`expr 8 \* $ac_cv_sizeof_int_p` 6.473 6.474 if test "x$TESTED_TARGET_CPU_BITS" != "x$OPENJDK_TARGET_CPU_BITS"; then 6.475 - as_fn_error $? "The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)" "$LINENO" 5 6.476 + # This situation may happen on 64-bit platforms where the compiler by default only generates 32-bit objects 6.477 + # Let's try to implicitely set the compilers target architecture and retry the test 6.478 + { $as_echo "$as_me:${as_lineno-$LINENO}: The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)." >&5 6.479 +$as_echo "$as_me: The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)." >&6;} 6.480 + { $as_echo "$as_me:${as_lineno-$LINENO}: I'll retry after setting the platforms compiler target bits flag to ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" >&5 6.481 +$as_echo "$as_me: I'll retry after setting the platforms compiler target bits flag to ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" >&6;} 6.482 + 6.483 + # When we add flags to the "official" CFLAGS etc, we need to 6.484 + # keep track of these additions in ADDED_CFLAGS etc. These 6.485 + # will later be checked to make sure only controlled additions 6.486 + # have been made to CFLAGS etc. 6.487 + ADDED_CFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.488 + ADDED_CXXFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.489 + ADDED_LDFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.490 + 6.491 + CFLAGS="${CFLAGS}${ADDED_CFLAGS}" 6.492 + CXXFLAGS="${CXXFLAGS}${ADDED_CXXFLAGS}" 6.493 + LDFLAGS="${LDFLAGS}${ADDED_LDFLAGS}" 6.494 + 6.495 + CFLAGS_JDK="${CFLAGS_JDK}${ADDED_CFLAGS}" 6.496 + CXXFLAGS_JDK="${CXXFLAGS_JDK}${ADDED_CXXFLAGS}" 6.497 + LDFLAGS_JDK="${LDFLAGS_JDK}${ADDED_LDFLAGS}" 6.498 + 6.499 + 6.500 + # We have to unset 'ac_cv_sizeof_int_p' first, otherwise AC_CHECK_SIZEOF will use the previously cached value! 6.501 + unset ac_cv_sizeof_int_p 6.502 + # And we have to undef the definition of SIZEOF_INT_P in confdefs.h by the previous invocation of AC_CHECK_SIZEOF 6.503 + cat >>confdefs.h <<_ACEOF 6.504 +#undef SIZEOF_INT_P 6.505 +_ACEOF 6.506 + 6.507 + # The cast to long int works around a bug in the HP C Compiler 6.508 +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects 6.509 +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. 6.510 +# This bug is HP SR number 8606223364. 6.511 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int *" >&5 6.512 +$as_echo_n "checking size of int *... " >&6; } 6.513 +if ${ac_cv_sizeof_int_p+:} false; then : 6.514 + $as_echo_n "(cached) " >&6 6.515 +else 6.516 + if ac_fn_cxx_compute_int "$LINENO" "(long int) (sizeof (int *))" "ac_cv_sizeof_int_p" "$ac_includes_default"; then : 6.517 + 6.518 +else 6.519 + if test "$ac_cv_type_int_p" = yes; then 6.520 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 6.521 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 6.522 +as_fn_error 77 "cannot compute sizeof (int *) 6.523 +See \`config.log' for more details" "$LINENO" 5; } 6.524 + else 6.525 + ac_cv_sizeof_int_p=0 6.526 + fi 6.527 +fi 6.528 + 6.529 +fi 6.530 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int_p" >&5 6.531 +$as_echo "$ac_cv_sizeof_int_p" >&6; } 6.532 + 6.533 + 6.534 + 6.535 +cat >>confdefs.h <<_ACEOF 6.536 +#define SIZEOF_INT_P $ac_cv_sizeof_int_p 6.537 +_ACEOF 6.538 + 6.539 + 6.540 + 6.541 + TESTED_TARGET_CPU_BITS=`expr 8 \* $ac_cv_sizeof_int_p` 6.542 + 6.543 + if test "x$TESTED_TARGET_CPU_BITS" != "x$OPENJDK_TARGET_CPU_BITS"; then 6.544 + as_fn_error $? "The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)" "$LINENO" 5 6.545 + fi 6.546 fi 6.547 fi 6.548 6.549 @@ -29227,6 +29395,29 @@ 6.550 POST_STRIP_CMD="$STRIP -x" 6.551 POST_MCS_CMD="$MCS -d -a \"JDK $FULL_VERSION\"" 6.552 fi 6.553 + if test "x$OPENJDK_TARGET_OS" = xaix; then 6.554 + COMPILER_NAME=xlc 6.555 + PICFLAG="-qpic=large" 6.556 + LIBRARY_PREFIX=lib 6.557 + SHARED_LIBRARY='lib$1.so' 6.558 + STATIC_LIBRARY='lib$1.a' 6.559 + SHARED_LIBRARY_FLAGS="-qmkshrobj" 6.560 + SHARED_LIBRARY_SUFFIX='.so' 6.561 + STATIC_LIBRARY_SUFFIX='.a' 6.562 + OBJ_SUFFIX='.o' 6.563 + EXE_SUFFIX='' 6.564 + SET_SHARED_LIBRARY_NAME='' 6.565 + SET_SHARED_LIBRARY_MAPFILE='' 6.566 + C_FLAG_REORDER='' 6.567 + CXX_FLAG_REORDER='' 6.568 + SET_SHARED_LIBRARY_ORIGIN='' 6.569 + SET_EXECUTABLE_ORIGIN="" 6.570 + CFLAGS_JDK="" 6.571 + CXXFLAGS_JDK="" 6.572 + CFLAGS_JDKLIB_EXTRA='' 6.573 + POST_STRIP_CMD="$STRIP -X32_64" 6.574 + POST_MCS_CMD="" 6.575 + fi 6.576 if test "x$OPENJDK_TARGET_OS" = xwindows; then 6.577 # If it is not gcc, then assume it is the MS Visual Studio compiler 6.578 COMPILER_NAME=cl 6.579 @@ -29412,6 +29603,24 @@ 6.580 6.581 CFLAGS_DEBUG_SYMBOLS="-g -xs" 6.582 CXXFLAGS_DEBUG_SYMBOLS="-g0 -xs" 6.583 + ;; 6.584 + xlc ) 6.585 + C_FLAG_DEPS="-qmakedep=gcc -MF" 6.586 + CXX_FLAG_DEPS="-qmakedep=gcc -MF" 6.587 + C_O_FLAG_HIGHEST="-O3" 6.588 + C_O_FLAG_HI="-O3 -qstrict" 6.589 + C_O_FLAG_NORM="-O2" 6.590 + C_O_FLAG_NONE="" 6.591 + CXX_O_FLAG_HIGHEST="-O3" 6.592 + CXX_O_FLAG_HI="-O3 -qstrict" 6.593 + CXX_O_FLAG_NORM="-O2" 6.594 + CXX_O_FLAG_NONE="" 6.595 + CFLAGS_DEBUG_SYMBOLS="-g" 6.596 + CXXFLAGS_DEBUG_SYMBOLS="-g" 6.597 + LDFLAGS_JDK="${LDFLAGS_JDK} -q64 -brtl -bnolibpath -liconv -bexpall" 6.598 + CFLAGS_JDK="${CFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" 6.599 + CXXFLAGS_JDK="${CXXFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" 6.600 + ;; 6.601 esac 6.602 ;; 6.603 CL ) 6.604 @@ -29535,6 +29744,13 @@ 6.605 LDFLAGS_JDK="$LDFLAGS_JDK -z defs -xildoff -ztext" 6.606 LDFLAGS_CXX_JDK="$LDFLAGS_CXX_JDK -norunpath -xnolib" 6.607 ;; 6.608 + xlc ) 6.609 + CFLAGS_JDK="$CFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC" 6.610 + CXXFLAGS_JDK="$CXXFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC" 6.611 + 6.612 + LDFLAGS_JDK="$LDFLAGS_JDK" 6.613 + LDFLAGS_CXX_JDK="$LDFLAGS_CXX_JDK" 6.614 + ;; 6.615 cl ) 6.616 CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -Zi -MD -Zc:wchar_t- -W3 -wd4800 \ 6.617 -D_STATIC_CPPLIB -D_DISABLE_DEPRECATE_STATIC_CPPLIB -DWIN32_LEAN_AND_MEAN \ 6.618 @@ -29604,6 +29820,9 @@ 6.619 if test "x$OPENJDK_TARGET_OS" = xsolaris; then 6.620 CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DSOLARIS" 6.621 fi 6.622 + if test "x$OPENJDK_TARGET_OS" = xaix; then 6.623 + CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DAIX -DPPC64" 6.624 + fi 6.625 if test "x$OPENJDK_TARGET_OS" = xmacosx; then 6.626 CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DMACOSX -D_ALLBSD_SOURCE -D_DARWIN_UNLIMITED_SELECT" 6.627 # Setting these parameters makes it an error to link to macosx APIs that are 6.628 @@ -29736,10 +29955,10 @@ 6.629 # ZERO_ARCHFLAG tells the compiler which mode to build for 6.630 case "${OPENJDK_TARGET_CPU}" in 6.631 s390) 6.632 - ZERO_ARCHFLAG="-m31" 6.633 + ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}31" 6.634 ;; 6.635 *) 6.636 - ZERO_ARCHFLAG="-m${OPENJDK_TARGET_CPU_BITS}" 6.637 + ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.638 esac 6.639 6.640 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler supports \"$ZERO_ARCHFLAG\"" >&5 6.641 @@ -29808,15 +30027,15 @@ 6.642 6.643 6.644 6.645 - # Check that the compiler supports -mX flags 6.646 + # Check that the compiler supports -mX (or -qX on AIX) flags 6.647 # Set COMPILER_SUPPORTS_TARGET_BITS_FLAG to 'true' if it does 6.648 6.649 - { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler supports \"-m${OPENJDK_TARGET_CPU_BITS}\"" >&5 6.650 -$as_echo_n "checking if compiler supports \"-m${OPENJDK_TARGET_CPU_BITS}\"... " >&6; } 6.651 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler supports \"${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}\"" >&5 6.652 +$as_echo_n "checking if compiler supports \"${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}\"... " >&6; } 6.653 supports=yes 6.654 6.655 saved_cflags="$CFLAGS" 6.656 - CFLAGS="$CFLAGS -m${OPENJDK_TARGET_CPU_BITS}" 6.657 + CFLAGS="$CFLAGS ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.658 ac_ext=c 6.659 ac_cpp='$CPP $CPPFLAGS' 6.660 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 6.661 @@ -29842,7 +30061,7 @@ 6.662 CFLAGS="$saved_cflags" 6.663 6.664 saved_cxxflags="$CXXFLAGS" 6.665 - CXXFLAGS="$CXXFLAG -m${OPENJDK_TARGET_CPU_BITS}" 6.666 + CXXFLAGS="$CXXFLAG ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 6.667 ac_ext=cpp 6.668 ac_cpp='$CXXCPP $CPPFLAGS' 6.669 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' 6.670 @@ -29878,6 +30097,27 @@ 6.671 6.672 6.673 6.674 + # Check for broken SuSE 'ld' for which 'Only anonymous version tag is allowed in executable.' 6.675 + USING_BROKEN_SUSE_LD=no 6.676 + if test "x$OPENJDK_TARGET_OS" = xlinux && test "x$GCC" = xyes; then 6.677 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken SuSE 'ld' which only understands anonymous version tags in executables" >&5 6.678 +$as_echo_n "checking for broken SuSE 'ld' which only understands anonymous version tags in executables... " >&6; } 6.679 + echo "SUNWprivate_1.1 { local: *; };" > version-script.map 6.680 + echo "int main() { }" > main.c 6.681 + if $CXX -Xlinker -version-script=version-script.map main.c 2>&5 >&5; then 6.682 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 6.683 +$as_echo "no" >&6; } 6.684 + USING_BROKEN_SUSE_LD=no 6.685 + else 6.686 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 6.687 +$as_echo "yes" >&6; } 6.688 + USING_BROKEN_SUSE_LD=yes 6.689 + fi 6.690 + rm -rf version-script.map main.c 6.691 + fi 6.692 + 6.693 + 6.694 + 6.695 # Setup debug symbols (need objcopy from the toolchain for that) 6.696 6.697 # 6.698 @@ -30034,6 +30274,16 @@ 6.699 $as_echo "alsa pulse" >&6; } 6.700 fi 6.701 6.702 + if test "x$OPENJDK_TARGET_OS" = xaix; then 6.703 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking what is not needed on AIX?" >&5 6.704 +$as_echo_n "checking what is not needed on AIX?... " >&6; } 6.705 + ALSA_NOT_NEEDED=yes 6.706 + PULSE_NOT_NEEDED=yes 6.707 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: alsa pulse" >&5 6.708 +$as_echo "alsa pulse" >&6; } 6.709 + fi 6.710 + 6.711 + 6.712 if test "x$OPENJDK_TARGET_OS" = xwindows; then 6.713 { $as_echo "$as_me:${as_lineno-$LINENO}: checking what is not needed on Windows?" >&5 6.714 $as_echo_n "checking what is not needed on Windows?... " >&6; } 6.715 @@ -30844,8 +31094,6 @@ 6.716 pkgutil_help $MISSING_DEPENDENCY ;; 6.717 pkgadd) 6.718 pkgadd_help $MISSING_DEPENDENCY ;; 6.719 - * ) 6.720 - break ;; 6.721 esac 6.722 6.723 if test "x$PKGHANDLER_COMMAND" != x; then 6.724 @@ -30936,8 +31184,6 @@ 6.725 pkgutil_help $MISSING_DEPENDENCY ;; 6.726 pkgadd) 6.727 pkgadd_help $MISSING_DEPENDENCY ;; 6.728 - * ) 6.729 - break ;; 6.730 esac 6.731 6.732 if test "x$PKGHANDLER_COMMAND" != x; then 6.733 @@ -31198,8 +31444,6 @@ 6.734 pkgutil_help $MISSING_DEPENDENCY ;; 6.735 pkgadd) 6.736 pkgadd_help $MISSING_DEPENDENCY ;; 6.737 - * ) 6.738 - break ;; 6.739 esac 6.740 6.741 if test "x$PKGHANDLER_COMMAND" != x; then 6.742 @@ -33960,8 +34204,6 @@ 6.743 pkgutil_help $MISSING_DEPENDENCY ;; 6.744 pkgadd) 6.745 pkgadd_help $MISSING_DEPENDENCY ;; 6.746 - * ) 6.747 - break ;; 6.748 esac 6.749 6.750 if test "x$PKGHANDLER_COMMAND" != x; then 6.751 @@ -34297,8 +34539,6 @@ 6.752 pkgutil_help $MISSING_DEPENDENCY ;; 6.753 pkgadd) 6.754 pkgadd_help $MISSING_DEPENDENCY ;; 6.755 - * ) 6.756 - break ;; 6.757 esac 6.758 6.759 if test "x$PKGHANDLER_COMMAND" != x; then 6.760 @@ -34377,7 +34617,7 @@ 6.761 fi 6.762 6.763 if test "x${with_alsa}" != x; then 6.764 - ALSA_LIBS="-L${with_alsa}/lib -lalsa" 6.765 + ALSA_LIBS="-L${with_alsa}/lib -lasound" 6.766 ALSA_CFLAGS="-I${with_alsa}/include" 6.767 ALSA_FOUND=yes 6.768 fi 6.769 @@ -34386,7 +34626,7 @@ 6.770 ALSA_FOUND=yes 6.771 fi 6.772 if test "x${with_alsa_lib}" != x; then 6.773 - ALSA_LIBS="-L${with_alsa_lib} -lalsa" 6.774 + ALSA_LIBS="-L${with_alsa_lib} -lasound" 6.775 ALSA_FOUND=yes 6.776 fi 6.777 if test "x$ALSA_FOUND" = xno; then 6.778 @@ -34650,8 +34890,6 @@ 6.779 pkgutil_help $MISSING_DEPENDENCY ;; 6.780 pkgadd) 6.781 pkgadd_help $MISSING_DEPENDENCY ;; 6.782 - * ) 6.783 - break ;; 6.784 esac 6.785 6.786 if test "x$PKGHANDLER_COMMAND" != x; then 6.787 @@ -35454,6 +35692,9 @@ 6.788 # Looks like a MacOSX system 6.789 NUM_CORES=`/usr/sbin/system_profiler -detailLevel full SPHardwareDataType | grep 'Cores' | awk '{print $5}'` 6.790 FOUND_CORES=yes 6.791 + elif test "x$OPENJDK_BUILD_OS" = xaix ; then 6.792 + NUM_CORES=`/usr/sbin/prtconf | grep "^Number Of Processors" | awk '{ print $4 }'` 6.793 + FOUND_CORES=yes 6.794 elif test -n "$NUMBER_OF_PROCESSORS"; then 6.795 # On windows, look in the env 6.796 NUM_CORES=$NUMBER_OF_PROCESSORS 6.797 @@ -35498,8 +35739,8 @@ 6.798 MEMORY_SIZE=`expr $MEMORY_SIZE / 1024` 6.799 FOUND_MEM=yes 6.800 elif test -x /usr/sbin/prtconf; then 6.801 - # Looks like a Solaris system 6.802 - MEMORY_SIZE=`/usr/sbin/prtconf | grep "Memory size" | awk '{ print $3 }'` 6.803 + # Looks like a Solaris or AIX system 6.804 + MEMORY_SIZE=`/usr/sbin/prtconf | grep "^Memory [Ss]ize" | awk '{ print $3 }'` 6.805 FOUND_MEM=yes 6.806 elif test -x /usr/sbin/system_profiler; then 6.807 # Looks like a MacOSX system 6.808 @@ -37410,8 +37651,6 @@ 6.809 pkgutil_help $MISSING_DEPENDENCY ;; 6.810 pkgadd) 6.811 pkgadd_help $MISSING_DEPENDENCY ;; 6.812 - * ) 6.813 - break ;; 6.814 esac 6.815 6.816 if test "x$PKGHANDLER_COMMAND" != x; then
7.1 --- a/common/autoconf/help.m4 Mon May 19 21:34:00 2014 -0700 7.2 +++ b/common/autoconf/help.m4 Thu May 29 10:50:00 2014 -0700 7.3 @@ -52,8 +52,6 @@ 7.4 pkgutil_help $MISSING_DEPENDENCY ;; 7.5 pkgadd) 7.6 pkgadd_help $MISSING_DEPENDENCY ;; 7.7 - * ) 7.8 - break ;; 7.9 esac 7.10 7.11 if test "x$PKGHANDLER_COMMAND" != x; then 7.12 @@ -92,8 +90,6 @@ 7.13 If you put the resulting build in \"C:\Program Files\GnuWin32\", it will be found automatically." 7.14 fi 7.15 ;; 7.16 - * ) 7.17 - break ;; 7.18 esac 7.19 } 7.20 7.21 @@ -119,8 +115,6 @@ 7.22 PKGHANDLER_COMMAND="sudo apt-get install libX11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev" ;; 7.23 ccache) 7.24 PKGHANDLER_COMMAND="sudo apt-get install ccache" ;; 7.25 - * ) 7.26 - break ;; 7.27 esac 7.28 } 7.29 7.30 @@ -142,8 +136,6 @@ 7.31 PKGHANDLER_COMMAND="sudo yum install libXtst-devel libXt-devel libXrender-devel" ;; 7.32 ccache) 7.33 PKGHANDLER_COMMAND="sudo yum install ccache" ;; 7.34 - * ) 7.35 - break ;; 7.36 esac 7.37 } 7.38
8.1 --- a/common/autoconf/hotspot-spec.gmk.in Mon May 19 21:34:00 2014 -0700 8.2 +++ b/common/autoconf/hotspot-spec.gmk.in Thu May 29 10:50:00 2014 -0700 8.3 @@ -91,6 +91,11 @@ 8.4 ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR) 8.5 ALT_EXPORT_PATH=$(HOTSPOT_DIST) 8.6 8.7 +JVM_INTERPRETER:=@JVM_INTERPRETER@ 8.8 +ifeq ($(JVM_INTERPRETER), cpp) 8.9 + CC_INTERP=true 8.10 +endif 8.11 + 8.12 HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@ @STATIC_CXX_SETTING@ 8.13 # This is used from the libjvm build for C/C++ code. 8.14 HOTSPOT_BUILD_JOBS:=$(JOBS)
9.1 --- a/common/autoconf/jdk-options.m4 Mon May 19 21:34:00 2014 -0700 9.2 +++ b/common/autoconf/jdk-options.m4 Thu May 29 10:50:00 2014 -0700 9.3 @@ -51,6 +51,33 @@ 9.4 AC_MSG_RESULT([$JDK_VARIANT]) 9.5 ]) 9.6 9.7 +AC_DEFUN_ONCE([JDKOPT_SETUP_JVM_INTERPRETER], 9.8 +[ 9.9 +############################################################################### 9.10 +# 9.11 +# Check which interpreter of the JVM we want to build. 9.12 +# Currently we have: 9.13 +# template: Template interpreter (the default) 9.14 +# cpp : C++ interpreter 9.15 +AC_MSG_CHECKING([which interpreter of the JVM to build]) 9.16 +AC_ARG_WITH([jvm-interpreter], [AS_HELP_STRING([--with-jvm-interpreter], 9.17 + [JVM interpreter to build (template, cpp) @<:@template@:>@])]) 9.18 + 9.19 +if test "x$with_jvm_interpreter" = x; then 9.20 + with_jvm_interpreter="template" 9.21 +fi 9.22 + 9.23 +JVM_INTERPRETER="$with_jvm_interpreter" 9.24 + 9.25 +if test "x$JVM_INTERPRETER" != xtemplate && test "x$JVM_INTERPRETER" != xcpp; then 9.26 + AC_MSG_ERROR([The available JVM interpreters are: template, cpp]) 9.27 +fi 9.28 + 9.29 +AC_SUBST(JVM_INTERPRETER) 9.30 + 9.31 +AC_MSG_RESULT([$with_jvm_interpreter]) 9.32 +]) 9.33 + 9.34 AC_DEFUN_ONCE([JDKOPT_SETUP_JVM_VARIANTS], 9.35 [ 9.36 9.37 @@ -65,19 +92,20 @@ 9.38 # ie normal interpreter and C1, only the serial GC, kernel jvmti etc 9.39 # zero: no machine code interpreter, no compiler 9.40 # zeroshark: zero interpreter and shark/llvm compiler backend 9.41 +# core: interpreter only, no compiler (only works on some platforms) 9.42 AC_MSG_CHECKING([which variants of the JVM to build]) 9.43 AC_ARG_WITH([jvm-variants], [AS_HELP_STRING([--with-jvm-variants], 9.44 - [JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark) @<:@server@:>@])]) 9.45 + [JVM variants (separated by commas) to build (server, client, minimal1, kernel, zero, zeroshark, core) @<:@server@:>@])]) 9.46 9.47 if test "x$with_jvm_variants" = x; then 9.48 with_jvm_variants="server" 9.49 fi 9.50 9.51 JVM_VARIANTS=",$with_jvm_variants," 9.52 - TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//'` 9.53 + TEST_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,//' -e 's/client,//' -e 's/minimal1,//' -e 's/kernel,//' -e 's/zero,//' -e 's/zeroshark,//' -e 's/core,//'` 9.54 9.55 if test "x$TEST_VARIANTS" != "x,"; then 9.56 - AC_MSG_ERROR([The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark]) 9.57 + AC_MSG_ERROR([The available JVM variants are: server, client, minimal1, kernel, zero, zeroshark, core]) 9.58 fi 9.59 AC_MSG_RESULT([$with_jvm_variants]) 9.60 9.61 @@ -87,6 +115,7 @@ 9.62 JVM_VARIANT_KERNEL=`$ECHO "$JVM_VARIANTS" | $SED -e '/,kernel,/!s/.*/false/g' -e '/,kernel,/s/.*/true/g'` 9.63 JVM_VARIANT_ZERO=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zero,/!s/.*/false/g' -e '/,zero,/s/.*/true/g'` 9.64 JVM_VARIANT_ZEROSHARK=`$ECHO "$JVM_VARIANTS" | $SED -e '/,zeroshark,/!s/.*/false/g' -e '/,zeroshark,/s/.*/true/g'` 9.65 + JVM_VARIANT_CORE=`$ECHO "$JVM_VARIANTS" | $SED -e '/,core,/!s/.*/false/g' -e '/,core,/s/.*/true/g'` 9.66 9.67 if test "x$JVM_VARIANT_CLIENT" = xtrue; then 9.68 if test "x$OPENJDK_TARGET_CPU_BITS" = x64; then 9.69 @@ -106,7 +135,7 @@ 9.70 9.71 # Replace the commas with AND for use in the build directory name. 9.72 ANDED_JVM_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/^,//' -e 's/,$//' -e 's/,/AND/'` 9.73 - COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/'` 9.74 + COUNT_VARIANTS=`$ECHO "$JVM_VARIANTS" | $SED -e 's/server,/1/' -e 's/client,/1/' -e 's/minimal1,/1/' -e 's/kernel,/1/' -e 's/zero,/1/' -e 's/zeroshark,/1/' -e 's/core,/1/'` 9.75 if test "x$COUNT_VARIANTS" != "x,1"; then 9.76 BUILDING_MULTIPLE_JVM_VARIANTS=yes 9.77 else 9.78 @@ -120,6 +149,7 @@ 9.79 AC_SUBST(JVM_VARIANT_KERNEL) 9.80 AC_SUBST(JVM_VARIANT_ZERO) 9.81 AC_SUBST(JVM_VARIANT_ZEROSHARK) 9.82 + AC_SUBST(JVM_VARIANT_CORE) 9.83 9.84 INCLUDE_SA=true 9.85 if test "x$JVM_VARIANT_ZERO" = xtrue ; then 9.86 @@ -128,6 +158,9 @@ 9.87 if test "x$JVM_VARIANT_ZEROSHARK" = xtrue ; then 9.88 INCLUDE_SA=false 9.89 fi 9.90 + if test "x$VAR_CPU" = xppc64 ; then 9.91 + INCLUDE_SA=false 9.92 + fi 9.93 AC_SUBST(INCLUDE_SA) 9.94 9.95 if test "x$OPENJDK_TARGET_OS" = "xmacosx"; then 9.96 @@ -236,6 +269,10 @@ 9.97 HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}shark " 9.98 fi 9.99 9.100 + if test "x$JVM_VARIANT_CORE" = xtrue; then 9.101 + HOTSPOT_TARGET="$HOTSPOT_TARGET${HOTSPOT_DEBUG_LEVEL}core " 9.102 + fi 9.103 + 9.104 HOTSPOT_TARGET="$HOTSPOT_TARGET docs export_$HOTSPOT_EXPORT" 9.105 9.106 # On Macosx universal binaries are produced, but they only contain
10.1 --- a/common/autoconf/libraries.m4 Mon May 19 21:34:00 2014 -0700 10.2 +++ b/common/autoconf/libraries.m4 Thu May 29 10:50:00 2014 -0700 10.3 @@ -43,6 +43,14 @@ 10.4 AC_MSG_RESULT([alsa pulse]) 10.5 fi 10.6 10.7 + if test "x$OPENJDK_TARGET_OS" = xaix; then 10.8 + AC_MSG_CHECKING([what is not needed on AIX?]) 10.9 + ALSA_NOT_NEEDED=yes 10.10 + PULSE_NOT_NEEDED=yes 10.11 + AC_MSG_RESULT([alsa pulse]) 10.12 + fi 10.13 + 10.14 + 10.15 if test "x$OPENJDK_TARGET_OS" = xwindows; then 10.16 AC_MSG_CHECKING([what is not needed on Windows?]) 10.17 CUPS_NOT_NEEDED=yes 10.18 @@ -554,7 +562,7 @@ 10.19 fi 10.20 10.21 if test "x${with_alsa}" != x; then 10.22 - ALSA_LIBS="-L${with_alsa}/lib -lalsa" 10.23 + ALSA_LIBS="-L${with_alsa}/lib -lasound" 10.24 ALSA_CFLAGS="-I${with_alsa}/include" 10.25 ALSA_FOUND=yes 10.26 fi 10.27 @@ -563,7 +571,7 @@ 10.28 ALSA_FOUND=yes 10.29 fi 10.30 if test "x${with_alsa_lib}" != x; then 10.31 - ALSA_LIBS="-L${with_alsa_lib} -lalsa" 10.32 + ALSA_LIBS="-L${with_alsa_lib} -lasound" 10.33 ALSA_FOUND=yes 10.34 fi 10.35 if test "x$ALSA_FOUND" = xno; then
11.1 --- a/common/autoconf/platform.m4 Mon May 19 21:34:00 2014 -0700 11.2 +++ b/common/autoconf/platform.m4 Thu May 29 10:50:00 2014 -0700 11.3 @@ -60,6 +60,12 @@ 11.4 VAR_CPU_BITS=64 11.5 VAR_CPU_ENDIAN=big 11.6 ;; 11.7 + powerpc64le) 11.8 + VAR_CPU=ppc64 11.9 + VAR_CPU_ARCH=ppc 11.10 + VAR_CPU_BITS=64 11.11 + VAR_CPU_ENDIAN=little 11.12 + ;; 11.13 s390) 11.14 VAR_CPU=s390 11.15 VAR_CPU_ARCH=s390 11.16 @@ -126,6 +132,11 @@ 11.17 VAR_OS_API=winapi 11.18 VAR_OS_ENV=windows.msys 11.19 ;; 11.20 + *aix*) 11.21 + VAR_OS=aix 11.22 + VAR_OS_API=posix 11.23 + VAR_OS_ENV=aix 11.24 + ;; 11.25 *) 11.26 AC_MSG_ERROR([unsupported operating system $1]) 11.27 ;; 11.28 @@ -432,9 +443,9 @@ 11.29 # keep track of these additions in ADDED_CFLAGS etc. These 11.30 # will later be checked to make sure only controlled additions 11.31 # have been made to CFLAGS etc. 11.32 - ADDED_CFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 11.33 - ADDED_CXXFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 11.34 - ADDED_LDFLAGS=" -m${OPENJDK_TARGET_CPU_BITS}" 11.35 + ADDED_CFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 11.36 + ADDED_CXXFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 11.37 + ADDED_LDFLAGS=" ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 11.38 11.39 CFLAGS="${CFLAGS}${ADDED_CFLAGS}" 11.40 CXXFLAGS="${CXXFLAGS}${ADDED_CXXFLAGS}" 11.41 @@ -454,8 +465,9 @@ 11.42 # is made at runtime.) 11.43 # 11.44 11.45 - if test "x$OPENJDK_TARGET_OS" = xsolaris; then 11.46 - # Always specify -m flags on Solaris 11.47 + if test "x$OPENJDK_TARGET_OS" = xsolaris || test "x$OPENJDK_TARGET_OS" = xaix; then 11.48 + # Always specify -m flag on Solaris 11.49 + # And -q on AIX because otherwise the compiler produces 32-bit objects by default 11.50 PLATFORM_SET_COMPILER_TARGET_BITS_FLAGS 11.51 elif test "x$COMPILE_TYPE" = xreduced; then 11.52 if test "x$OPENJDK_TARGET_OS" != xwindows; then 11.53 @@ -477,19 +489,34 @@ 11.54 11.55 AC_CHECK_SIZEOF([int *], [1111]) 11.56 11.57 - if test "x$SIZEOF_INT_P" != "x$ac_cv_sizeof_int_p"; then 11.58 - # Workaround autoconf bug, see http://lists.gnu.org/archive/html/autoconf/2010-07/msg00004.html 11.59 - SIZEOF_INT_P="$ac_cv_sizeof_int_p" 11.60 - fi 11.61 - 11.62 - if test "x$SIZEOF_INT_P" = x; then 11.63 + # AC_CHECK_SIZEOF defines 'ac_cv_sizeof_int_p' to hold the number of bytes used by an 'int*' 11.64 + if test "x$ac_cv_sizeof_int_p" = x; then 11.65 # The test failed, lets stick to the assumed value. 11.66 AC_MSG_WARN([The number of bits in the target could not be determined, using $OPENJDK_TARGET_CPU_BITS.]) 11.67 else 11.68 - TESTED_TARGET_CPU_BITS=`expr 8 \* $SIZEOF_INT_P` 11.69 + TESTED_TARGET_CPU_BITS=`expr 8 \* $ac_cv_sizeof_int_p` 11.70 11.71 if test "x$TESTED_TARGET_CPU_BITS" != "x$OPENJDK_TARGET_CPU_BITS"; then 11.72 - AC_MSG_ERROR([The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)]) 11.73 + # This situation may happen on 64-bit platforms where the compiler by default only generates 32-bit objects 11.74 + # Let's try to implicitely set the compilers target architecture and retry the test 11.75 + AC_MSG_NOTICE([The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS).]) 11.76 + AC_MSG_NOTICE([I'll retry after setting the platforms compiler target bits flag to ${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}]) 11.77 + PLATFORM_SET_COMPILER_TARGET_BITS_FLAGS 11.78 + 11.79 + # We have to unset 'ac_cv_sizeof_int_p' first, otherwise AC_CHECK_SIZEOF will use the previously cached value! 11.80 + unset ac_cv_sizeof_int_p 11.81 + # And we have to undef the definition of SIZEOF_INT_P in confdefs.h by the previous invocation of AC_CHECK_SIZEOF 11.82 + cat >>confdefs.h <<_ACEOF 11.83 +#undef SIZEOF_INT_P 11.84 +_ACEOF 11.85 + 11.86 + AC_CHECK_SIZEOF([int *], [1111]) 11.87 + 11.88 + TESTED_TARGET_CPU_BITS=`expr 8 \* $ac_cv_sizeof_int_p` 11.89 + 11.90 + if test "x$TESTED_TARGET_CPU_BITS" != "x$OPENJDK_TARGET_CPU_BITS"; then 11.91 + AC_MSG_ERROR([The tested number of bits in the target ($TESTED_TARGET_CPU_BITS) differs from the number of bits expected to be found in the target ($OPENJDK_TARGET_CPU_BITS)]) 11.92 + fi 11.93 fi 11.94 fi 11.95
12.1 --- a/common/autoconf/spec.gmk.in Mon May 19 21:34:00 2014 -0700 12.2 +++ b/common/autoconf/spec.gmk.in Thu May 29 10:50:00 2014 -0700 12.3 @@ -208,6 +208,7 @@ 12.4 JVM_VARIANT_KERNEL:=@JVM_VARIANT_KERNEL@ 12.5 JVM_VARIANT_ZERO:=@JVM_VARIANT_ZERO@ 12.6 JVM_VARIANT_ZEROSHARK:=@JVM_VARIANT_ZEROSHARK@ 12.7 +JVM_VARIANT_CORE:=@JVM_VARIANT_CORE@ 12.8 12.9 # Universal binaries on macosx 12.10 MACOSX_UNIVERSAL=@MACOSX_UNIVERSAL@ 12.11 @@ -297,6 +298,8 @@ 12.12 COMPILER_TYPE:=@COMPILER_TYPE@ 12.13 COMPILER_NAME:=@COMPILER_NAME@ 12.14 12.15 +# Option used to tell the compiler whether to create 32- or 64-bit executables 12.16 +COMPILER_TARGET_BITS_FLAG:=@COMPILER_TARGET_BITS_FLAG@ 12.17 COMPILER_SUPPORTS_TARGET_BITS_FLAG=@COMPILER_SUPPORTS_TARGET_BITS_FLAG@ 12.18 12.19 CC_OUT_OPTION:=@CC_OUT_OPTION@ 12.20 @@ -340,6 +343,11 @@ 12.21 # The linker can be gcc or ld on posix systems, or link.exe on windows systems. 12.22 LD:=@FIXPATH@ @LD@ 12.23 12.24 +# The linker on older SuSE distros (e.g. on SLES 10) complains with: 12.25 +# "Invalid version tag `SUNWprivate_1.1'. Only anonymous version tag is allowed in executable." 12.26 +# if feeded with a version script which contains named tags. 12.27 +USING_BROKEN_SUSE_LD:=@USING_BROKEN_SUSE_LD@ 12.28 + 12.29 # LDFLAGS used to link the jdk native libraries (C-code) 12.30 LDFLAGS_JDKLIB:=@LDFLAGS_JDKLIB@ 12.31 LDFLAGS_JDKLIB_SUFFIX:=@LDFLAGS_JDKLIB_SUFFIX@
13.1 --- a/common/autoconf/toolchain.m4 Mon May 19 21:34:00 2014 -0700 13.2 +++ b/common/autoconf/toolchain.m4 Thu May 29 10:50:00 2014 -0700 13.3 @@ -44,6 +44,15 @@ 13.4 COMPILER_VERSION=`$ECHO $COMPILER_VERSION_TEST | $SED -n "s/^.*@<:@ ,\t@:>@$COMPILER_NAME@<:@ ,\t@:>@\(@<:@1-9@:>@\.@<:@0-9@:>@@<:@0-9@:>@*\).*/\1/p"` 13.5 COMPILER_VENDOR="Sun Studio" 13.6 fi 13.7 + elif test "x$OPENJDK_TARGET_OS" = xaix; then 13.8 + COMPILER_VERSION_TEST=`$COMPILER -qversion 2>&1 | $TAIL -n 1` 13.9 + $ECHO $COMPILER_VERSION_TEST | $GREP "^Version: " > /dev/null 13.10 + if test $? -ne 0; then 13.11 + AC_MSG_ERROR([Failed to detect the compiler version of $COMPILER ....]) 13.12 + else 13.13 + COMPILER_VERSION=`$ECHO $COMPILER_VERSION_TEST | $SED -n 's/Version: \([0-9][0-9]\.[0-9][0-9]*\).*/\1/p'` 13.14 + COMPILER_VENDOR='IBM' 13.15 + fi 13.16 elif test "x$OPENJDK_TARGET_OS" = xwindows; then 13.17 # First line typically looks something like: 13.18 # Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86 13.19 @@ -137,10 +146,14 @@ 13.20 AC_MSG_ERROR([Could not find a $COMPILER_NAME compiler. $HELP_MSG]) 13.21 fi 13.22 BASIC_FIXUP_EXECUTABLE($1) 13.23 - AC_MSG_CHECKING([resolved symbolic links for $1]) 13.24 TEST_COMPILER="[$]$1" 13.25 - BASIC_REMOVE_SYMBOLIC_LINKS(TEST_COMPILER) 13.26 - AC_MSG_RESULT([$TEST_COMPILER]) 13.27 + # Don't remove symbolic links on AIX because 'xlc_r' and 'xlC_r' may all be links 13.28 + # to 'xlc' but it is crucial that we invoke the compiler with the right name! 13.29 + if test "x$OPENJDK_BUILD_OS" != xaix; then 13.30 + AC_MSG_CHECKING([resolved symbolic links for $1]) 13.31 + BASIC_REMOVE_SYMBOLIC_LINKS(TEST_COMPILER) 13.32 + AC_MSG_RESULT([$TEST_COMPILER]) 13.33 + fi 13.34 AC_MSG_CHECKING([if $1 is disguised ccache]) 13.35 13.36 COMPILER_BASENAME=`$BASENAME "$TEST_COMPILER"` 13.37 @@ -254,6 +267,9 @@ 13.38 COMPILER_CHECK_LIST="cl" 13.39 elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then 13.40 COMPILER_CHECK_LIST="cc gcc" 13.41 + elif test "x$OPENJDK_TARGET_OS" = "xaix"; then 13.42 + # Do not probe for cc on AIX. 13.43 + COMPILER_CHECK_LIST="xlc_r" 13.44 else 13.45 COMPILER_CHECK_LIST="gcc cc" 13.46 fi 13.47 @@ -262,6 +278,14 @@ 13.48 # Now that we have resolved CC ourself, let autoconf have its go at it 13.49 AC_PROG_CC([$CC]) 13.50 13.51 + # Option used to tell the compiler whether to create 32- or 64-bit executables 13.52 + # Notice that CC contains the full compiler path at this point. 13.53 + case $CC in 13.54 + *xlc_r) COMPILER_TARGET_BITS_FLAG="-q";; 13.55 + *) COMPILER_TARGET_BITS_FLAG="-m";; 13.56 + esac 13.57 + AC_SUBST(COMPILER_TARGET_BITS_FLAG) 13.58 + 13.59 ### Locate C++ compiler (CXX) 13.60 13.61 if test "x$CXX" != x; then 13.62 @@ -270,6 +294,9 @@ 13.63 COMPILER_CHECK_LIST="cl" 13.64 elif test "x$OPENJDK_TARGET_OS" = "xsolaris"; then 13.65 COMPILER_CHECK_LIST="CC g++" 13.66 + elif test "x$OPENJDK_TARGET_OS" = "xaix"; then 13.67 + # Do not probe for CC on AIX . 13.68 + COMPILER_CHECK_LIST="xlC_r" 13.69 else 13.70 COMPILER_CHECK_LIST="g++ CC" 13.71 fi 13.72 @@ -311,6 +338,8 @@ 13.73 fi 13.74 if test "x$OPENJDK_TARGET_OS" = xmacosx; then 13.75 ARFLAGS="-r" 13.76 + elif test "x$OPENJDK_TARGET_OS" = xaix; then 13.77 + ARFLAGS="-X64" 13.78 else 13.79 ARFLAGS="" 13.80 fi 13.81 @@ -554,6 +583,29 @@ 13.82 POST_STRIP_CMD="$STRIP -x" 13.83 POST_MCS_CMD="$MCS -d -a \"JDK $FULL_VERSION\"" 13.84 fi 13.85 + if test "x$OPENJDK_TARGET_OS" = xaix; then 13.86 + COMPILER_NAME=xlc 13.87 + PICFLAG="-qpic=large" 13.88 + LIBRARY_PREFIX=lib 13.89 + SHARED_LIBRARY='lib[$]1.so' 13.90 + STATIC_LIBRARY='lib[$]1.a' 13.91 + SHARED_LIBRARY_FLAGS="-qmkshrobj" 13.92 + SHARED_LIBRARY_SUFFIX='.so' 13.93 + STATIC_LIBRARY_SUFFIX='.a' 13.94 + OBJ_SUFFIX='.o' 13.95 + EXE_SUFFIX='' 13.96 + SET_SHARED_LIBRARY_NAME='' 13.97 + SET_SHARED_LIBRARY_MAPFILE='' 13.98 + C_FLAG_REORDER='' 13.99 + CXX_FLAG_REORDER='' 13.100 + SET_SHARED_LIBRARY_ORIGIN='' 13.101 + SET_EXECUTABLE_ORIGIN="" 13.102 + CFLAGS_JDK="" 13.103 + CXXFLAGS_JDK="" 13.104 + CFLAGS_JDKLIB_EXTRA='' 13.105 + POST_STRIP_CMD="$STRIP -X32_64" 13.106 + POST_MCS_CMD="" 13.107 + fi 13.108 if test "x$OPENJDK_TARGET_OS" = xwindows; then 13.109 # If it is not gcc, then assume it is the MS Visual Studio compiler 13.110 COMPILER_NAME=cl 13.111 @@ -730,6 +782,24 @@ 13.112 13.113 CFLAGS_DEBUG_SYMBOLS="-g -xs" 13.114 CXXFLAGS_DEBUG_SYMBOLS="-g0 -xs" 13.115 + ;; 13.116 + xlc ) 13.117 + C_FLAG_DEPS="-qmakedep=gcc -MF" 13.118 + CXX_FLAG_DEPS="-qmakedep=gcc -MF" 13.119 + C_O_FLAG_HIGHEST="-O3" 13.120 + C_O_FLAG_HI="-O3 -qstrict" 13.121 + C_O_FLAG_NORM="-O2" 13.122 + C_O_FLAG_NONE="" 13.123 + CXX_O_FLAG_HIGHEST="-O3" 13.124 + CXX_O_FLAG_HI="-O3 -qstrict" 13.125 + CXX_O_FLAG_NORM="-O2" 13.126 + CXX_O_FLAG_NONE="" 13.127 + CFLAGS_DEBUG_SYMBOLS="-g" 13.128 + CXXFLAGS_DEBUG_SYMBOLS="-g" 13.129 + LDFLAGS_JDK="${LDFLAGS_JDK} -q64 -brtl -bnolibpath -liconv -bexpall" 13.130 + CFLAGS_JDK="${CFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" 13.131 + CXXFLAGS_JDK="${CXXFLAGS_JDK} -qchars=signed -q64 -qfullpath -qsaveopt" 13.132 + ;; 13.133 esac 13.134 ;; 13.135 CL ) 13.136 @@ -840,6 +910,13 @@ 13.137 LDFLAGS_JDK="$LDFLAGS_JDK -z defs -xildoff -ztext" 13.138 LDFLAGS_CXX_JDK="$LDFLAGS_CXX_JDK -norunpath -xnolib" 13.139 ;; 13.140 + xlc ) 13.141 + CFLAGS_JDK="$CFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC" 13.142 + CXXFLAGS_JDK="$CXXFLAGS_JDK -D_GNU_SOURCE -D_REENTRANT -D_LARGEFILE64_SOURCE -DSTDC" 13.143 + 13.144 + LDFLAGS_JDK="$LDFLAGS_JDK" 13.145 + LDFLAGS_CXX_JDK="$LDFLAGS_CXX_JDK" 13.146 + ;; 13.147 cl ) 13.148 CCXXFLAGS_JDK="$CCXXFLAGS $CCXXFLAGS_JDK -Zi -MD -Zc:wchar_t- -W3 -wd4800 \ 13.149 -D_STATIC_CPPLIB -D_DISABLE_DEPRECATE_STATIC_CPPLIB -DWIN32_LEAN_AND_MEAN \ 13.150 @@ -909,6 +986,9 @@ 13.151 if test "x$OPENJDK_TARGET_OS" = xsolaris; then 13.152 CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DSOLARIS" 13.153 fi 13.154 + if test "x$OPENJDK_TARGET_OS" = xaix; then 13.155 + CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DAIX -DPPC64" 13.156 + fi 13.157 if test "x$OPENJDK_TARGET_OS" = xmacosx; then 13.158 CCXXFLAGS_JDK="$CCXXFLAGS_JDK -DMACOSX -D_ALLBSD_SOURCE -D_DARWIN_UNLIMITED_SELECT" 13.159 # Setting these parameters makes it an error to link to macosx APIs that are 13.160 @@ -1076,20 +1156,38 @@ 13.161 # ZERO_ARCHFLAG tells the compiler which mode to build for 13.162 case "${OPENJDK_TARGET_CPU}" in 13.163 s390) 13.164 - ZERO_ARCHFLAG="-m31" 13.165 + ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}31" 13.166 ;; 13.167 *) 13.168 - ZERO_ARCHFLAG="-m${OPENJDK_TARGET_CPU_BITS}" 13.169 + ZERO_ARCHFLAG="${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}" 13.170 esac 13.171 TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([$ZERO_ARCHFLAG], [], [ZERO_ARCHFLAG=""]) 13.172 AC_SUBST(ZERO_ARCHFLAG) 13.173 13.174 - # Check that the compiler supports -mX flags 13.175 + # Check that the compiler supports -mX (or -qX on AIX) flags 13.176 # Set COMPILER_SUPPORTS_TARGET_BITS_FLAG to 'true' if it does 13.177 - TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([-m${OPENJDK_TARGET_CPU_BITS}], 13.178 + TOOLCHAIN_COMPILER_CHECK_ARGUMENTS([${COMPILER_TARGET_BITS_FLAG}${OPENJDK_TARGET_CPU_BITS}], 13.179 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=true], 13.180 [COMPILER_SUPPORTS_TARGET_BITS_FLAG=false]) 13.181 AC_SUBST(COMPILER_SUPPORTS_TARGET_BITS_FLAG) 13.182 + 13.183 + 13.184 + # Check for broken SuSE 'ld' for which 'Only anonymous version tag is allowed in executable.' 13.185 + USING_BROKEN_SUSE_LD=no 13.186 + if test "x$OPENJDK_TARGET_OS" = xlinux && test "x$GCC" = xyes; then 13.187 + AC_MSG_CHECKING([for broken SuSE 'ld' which only understands anonymous version tags in executables]) 13.188 + echo "SUNWprivate_1.1 { local: *; };" > version-script.map 13.189 + echo "int main() { }" > main.c 13.190 + if $CXX -Xlinker -version-script=version-script.map main.c 2>&AS_MESSAGE_LOG_FD >&AS_MESSAGE_LOG_FD; then 13.191 + AC_MSG_RESULT(no) 13.192 + USING_BROKEN_SUSE_LD=no 13.193 + else 13.194 + AC_MSG_RESULT(yes) 13.195 + USING_BROKEN_SUSE_LD=yes 13.196 + fi 13.197 + rm -rf version-script.map main.c 13.198 + fi 13.199 + AC_SUBST(USING_BROKEN_SUSE_LD) 13.200 ]) 13.201 13.202 # Setup the JTREG paths
14.1 --- a/make/Javadoc.gmk Mon May 19 21:34:00 2014 -0700 14.2 +++ b/make/Javadoc.gmk Thu May 29 10:50:00 2014 -0700 14.3 @@ -72,6 +72,7 @@ 14.4 TREEAPI_FIRST_COPYRIGHT_YEAR = 2005 14.5 JNLP_FIRST_COPYRIGHT_YEAR = 1998 14.6 PLUGIN2_FIRST_COPYRIGHT_YEAR = 2007 14.7 +JDKNET_FIRST_COPYRIGHT_YEAR = 2014 14.8 14.9 # Oracle name 14.10 FULL_COMPANY_NAME = Oracle and/or its affiliates 14.11 @@ -102,10 +103,7 @@ 14.12 DOCSDIR_URL = {@docroot}/$(GET2DOCSDIR) 14.13 14.14 # Url to copyright html file 14.15 -COPYRIGHT_URL-7 = $(DOCSDIR_URL)/legal/cpyr.html 14.16 -# This isn't added in old build yet. 14.17 -#COPYRIGHT_URL-8 = $(DOCSDIR_URL)/legal/cpyr.html 14.18 -COPYRIGHT_URL = $(COPYRIGHT_URL-$(JDK_MINOR_VERSION)) 14.19 +COPYRIGHT_URL = $(DOCSDIR_URL)/legal/cpyr.html 14.20 14.21 # Url to bug filing site 14.22 BUG_SUBMIT_URL = http://bugreport.sun.com/bugreport/ 14.23 @@ -1147,6 +1145,57 @@ 14.24 14.25 ############################################################# 14.26 # 14.27 +# jdk.net docs 14.28 +# 14.29 + 14.30 +ALL_OTHER_TARGETS += jdknetdocs 14.31 + 14.32 +JDKNET_DOCDIR := $(JRE_API_DOCSDIR)/net/socketoptions/spec 14.33 +JDKNET2COREAPI := ../../../$(JDKJRE2COREAPI) 14.34 +JDKNET_DOCTITLE := jdk.net API 14.35 +JDKNET_WINDOWTITLE := jdk.net API 14.36 +JDKNET_HEADER := <strong>jdk.net API</strong> 14.37 +JDKNET_BOTTOM := $(call CommonBottom,$(JDKNET_FIRST_COPYRIGHT_YEAR)) 14.38 +JDKNET_PKGS := jdk.net 14.39 + 14.40 +JDKNET_INDEX_HTML = $(JDKNET_DOCDIR)/index.html 14.41 +JDKNET_OPTIONS_FILE = $(DOCSTMPDIR)/jdknet.options 14.42 +JDKNET_PACKAGES_FILE = $(DOCSTMPDIR)/jdknet.packages 14.43 + 14.44 +jdknetdocs: $(JDKNET_INDEX_HTML) 14.45 + 14.46 +# Set relative location to core api document root 14.47 +$(JDKNET_INDEX_HTML): GET2DOCSDIR=$(JDKNET2COREAPI)/.. 14.48 + 14.49 +# Run javadoc if the index file is out of date or missing 14.50 +$(JDKNET_INDEX_HTML): $(JDKNET_OPTIONS_FILE) $(JDKNET_PACKAGES_FILE) coredocs 14.51 + $(prep-javadoc) 14.52 + $(call JavadocSummary,$(JDKNET_OPTIONS_FILE),$(JDKNET_PACKAGES_FILE)) 14.53 + $(JAVADOC_CMD) -d $(@D) \ 14.54 + @$(JDKNET_OPTIONS_FILE) @$(JDKNET_PACKAGES_FILE) 14.55 + 14.56 +# Create file with javadoc options in it 14.57 +$(JDKNET_OPTIONS_FILE): 14.58 + $(prep-target) 14.59 + @($(call OptionOnly,$(COMMON_JAVADOCFLAGS)) ; \ 14.60 + $(call OptionOnly,-Xdoclint:none) ; \ 14.61 + $(call OptionPair,-sourcepath,$(RELEASEDOCS_SOURCEPATH)) ; \ 14.62 + $(call OptionPair,-encoding,ascii) ; \ 14.63 + $(call OptionOnly,-nodeprecatedlist) ; \ 14.64 + $(call OptionPair,-doctitle,$(JDKNET_DOCTITLE)) ; \ 14.65 + $(call OptionPair,-windowtitle,$(JDKNET_WINDOWTITLE) $(DRAFT_WINTITLE)); \ 14.66 + $(call OptionPair,-header,$(JDKNET_HEADER)$(DRAFT_HEADER)); \ 14.67 + $(call OptionPair,-bottom,$(JDKNET_BOTTOM)$(DRAFT_BOTTOM)); \ 14.68 + $(call OptionTrip,-linkoffline,$(JDKNET2COREAPI),$(COREAPI_DOCSDIR)/); \ 14.69 + ) >> $@ 14.70 + 14.71 +# Create a file with the package names in it 14.72 +$(JDKNET_PACKAGES_FILE): $(DIRECTORY_CACHE) $(call PackageDependencies,$(JDKNET_PKGS)) 14.73 + $(prep-target) 14.74 + $(call PackageFilter,$(JDKNET_PKGS)) 14.75 + 14.76 +############################################################# 14.77 +# 14.78 # Get a cache of all the directories 14.79 14.80 $(DIRECTORY_CACHE): $(ALL_EXISTING_SOURCE_DIRS)
15.1 --- a/make/common/JavaCompilation.gmk Mon May 19 21:34:00 2014 -0700 15.2 +++ b/make/common/JavaCompilation.gmk Thu May 29 10:50:00 2014 -0700 15.3 @@ -163,11 +163,12 @@ 15.4 15.5 # The capture contents macro finds all files (matching the patterns, typically 15.6 # .class and .prp) that are newer than the jar-file, ie the new content to be put into the jar. 15.7 + # NOTICE: please leave the parentheses space separated otherwise the AIX build will break! 15.8 $1_CAPTURE_CONTENTS=$$(foreach src,$$($1_SRCS), \ 15.9 - (($(FIND) $$(src) -type f -a \( $$($1_FIND_PATTERNS) \) -a -newer $$@ $$($1_GREP_INCLUDES) \ 15.10 + ( ( $(FIND) $$(src) -type f -a \( $$($1_FIND_PATTERNS) \) -a -newer $$@ $$($1_GREP_INCLUDES) \ 15.11 $$($1_GREP_EXCLUDES) | $(SED) 's|$$(src)/||g' && \ 15.12 - $(ECHO) $$(subst $$(src)/,,$$($1_EXTRA_FILES))) > \ 15.13 - $$(src)/_the.$$($1_JARNAME)_contents) $$(NEWLINE)) 15.14 + $(ECHO) $$(subst $$(src)/,,$$($1_EXTRA_FILES) ) ) > \ 15.15 + $$(src)/_the.$$($1_JARNAME)_contents) $$(NEWLINE) ) 15.16 # The capture metainf macro finds all files below the META-INF directory that are newer than the jar-file. 15.17 ifeq (,$$($1_SKIP_METAINF)) 15.18 $1_CAPTURE_METAINF =$$(foreach src,$$($1_SRCS),($(FIND) $$(src)/META-INF -type f -a -newer $$@ 2> /dev/null | $(SED) 's|$$(src)/||g' >> $$(src)/_the.$$($1_JARNAME)_contents ) $$(NEWLINE)) 15.19 @@ -176,19 +177,20 @@ 15.20 # tells us what to remove from the jar-file. 15.21 $1_CAPTURE_DELETES=$$(foreach src,$$($1_SRCS),($(FIND) $$(src) -name _the.package.deleted -newer $$@ -exec $(SED) 's|$$(src)||g' \{\} >> $$($1_DELETES_FILE) \;) $$(NEWLINE)) 15.22 # The update contents macro updates the jar file with the previously capture contents. 15.23 - # xargs is used to trim the whitespace from the contents file, to see if it is empty. 15.24 + # Use 'wc -w' to see if the contents file is empty. 15.25 $1_UPDATE_CONTENTS=$$(foreach src,$$($1_SRCS), \ 15.26 (cd $$(src) && \ 15.27 - if [ -n "`$(CAT) _the.$$($1_JARNAME)_contents | $(XARGS)`" ]; then \ 15.28 + if [ "`$(WC) -w _the.$$($1_JARNAME)_contents | $(AWK) '{ print $$$$1 }'`" -gt "0" ]; then \ 15.29 $(ECHO) " updating" `$(WC) -l _the.$$($1_JARNAME)_contents | $(AWK) '{ print $$$$1 }'` files && \ 15.30 $(JAR) $$($1_JAR_UPDATE_OPTIONS) $$@ @_the.$$($1_JARNAME)_contents; \ 15.31 fi) $$(NEWLINE)) 15.32 # The s-variants of the above macros are used when the jar is created from scratch. 15.33 + # NOTICE: please leave the parentheses space separated otherwise the AIX build will break! 15.34 $1_SCAPTURE_CONTENTS=$$(foreach src,$$($1_SRCS), \ 15.35 - (($(FIND) $$(src) -type f -a \( $$($1_FIND_PATTERNS) \) $$($1_GREP_INCLUDES) \ 15.36 + ( ( $(FIND) $$(src) -type f -a \( $$($1_FIND_PATTERNS) \) $$($1_GREP_INCLUDES) \ 15.37 $$($1_GREP_EXCLUDES) | $(SED) 's|$$(src)/||g' && \ 15.38 - $$(subst $$(src)/,,$(ECHO) $$($1_EXTRA_FILES))) > \ 15.39 - $$(src)/_the.$$($1_JARNAME)_contents) $$(NEWLINE)) 15.40 + $$(subst $$(src)/,,$(ECHO) $$($1_EXTRA_FILES) ) ) > \ 15.41 + $$(src)/_the.$$($1_JARNAME)_contents) $$(NEWLINE) ) 15.42 15.43 ifeq (,$$($1_SKIP_METAINF)) 15.44 $1_SCAPTURE_METAINF=$$(foreach src,$$($1_SRCS), \ 15.45 @@ -527,16 +529,16 @@ 15.46 # When building in batch, put headers in a temp dir to filter out those that actually 15.47 # changed before copying them to the real header dir. 15.48 ifneq (,$$($1_HEADERS)) 15.49 - $1_HEADERS_ARG := -h $$($1_HEADERS).tmp 15.50 + $1_HEADERS_ARG := -h $$($1_HEADERS).$1.tmp 15.51 15.52 $$($1_HEADERS)/_the.$1_headers: $$($1_BIN)/_the.$1_batch 15.53 $(MKDIR) -p $$(@D) 15.54 - for f in `ls $$($1_HEADERS).tmp`; do \ 15.55 - if [ ! -f "$$($1_HEADERS)/$$$$f" ] || [ "`$(DIFF) $$($1_HEADERS)/$$$$f $$($1_HEADERS).tmp/$$$$f`" != "" ]; then \ 15.56 - $(CP) -f $$($1_HEADERS).tmp/$$$$f $$($1_HEADERS)/$$$$f; \ 15.57 + for f in `ls $$($1_HEADERS).$1.tmp`; do \ 15.58 + if [ ! -f "$$($1_HEADERS)/$$$$f" ] || [ "`$(DIFF) $$($1_HEADERS)/$$$$f $$($1_HEADERS).$1.tmp/$$$$f`" != "" ]; then \ 15.59 + $(CP) -f $$($1_HEADERS).$1.tmp/$$$$f $$($1_HEADERS)/$$$$f; \ 15.60 fi; \ 15.61 done 15.62 - $(RM) -r $$($1_HEADERS).tmp 15.63 + $(RM) -r $$($1_HEADERS).$1.tmp 15.64 $(TOUCH) $$@ 15.65 15.66 $1 += $$($1_HEADERS)/_the.$1_headers
16.1 --- a/make/common/NON_CORE_PKGS.gmk Mon May 19 21:34:00 2014 -0700 16.2 +++ b/make/common/NON_CORE_PKGS.gmk Thu May 29 10:50:00 2014 -0700 16.3 @@ -94,7 +94,8 @@ 16.4 com.apple.eio 16.5 endif 16.6 16.7 -JDK_PKGS = jdk 16.8 +JDK_PKGS = jdk \ 16.9 + jdk.net 16.10 16.11 # non-core packages in rt.jar 16.12 NON_CORE_PKGS = $(DOMAPI_PKGS) \
17.1 --- a/make/common/NativeCompilation.gmk Mon May 19 21:34:00 2014 -0700 17.2 +++ b/make/common/NativeCompilation.gmk Thu May 29 10:50:00 2014 -0700 17.3 @@ -501,7 +501,7 @@ 17.4 # Generating a static library, ie object file archive. 17.5 $$($1_TARGET) : $$($1_EXPECTED_OBJS) $$($1_RES) 17.6 $$(call ARCHIVING_MSG,$$($1_LIBRARY)) 17.7 - $(AR) $$($1_AR_FLAGS) $(AR_OUT_OPTION)$$($1_TARGET) $$($1_EXPECTED_OBJS) \ 17.8 + $(AR) $$($1_ARFLAGS) $(AR_OUT_OPTION)$$($1_TARGET) $$($1_EXPECTED_OBJS) \ 17.9 $$($1_RES) $$($1_LDFLAGS_SUFFIX) $$($1_EXTRA_LDFLAGS_SUFFIX) 17.10 endif 17.11