Looks good!
/Erik
On 2018-04-03 06:11, Magnus Ihse Bursie wrote:
There's an unwanted a.out in the top directory when building with
Solaris.
This one was actually a bit tricky to hunt down. It is created by ld
when extracting the version information, but only when the output of
ld is piped to head. I'm guessing this has something to do with how
Solaris handles pipes; perhaps head closes the pipe "forcefully" after
it has recieved it's single line, causing ld to not being able to
clean up the temporary a.out that it has created. The patch below
solves the issue, at any rate.
Bug: https://bugs.openjdk.java.net/browse/JDK-8200267
Patch inline:
diff --git a/make/autoconf/toolchain.m4 b/make/autoconf/toolchain.m4
--- a/make/autoconf/toolchain.m4
+++ b/make/autoconf/toolchain.m4
@@ -597,8 +597,9 @@
# solstudio cc requires us to have an existing file to pass as
argument,
# but it need not be a syntactically correct C file, so just use
- # ourself. :)
- LINKER_VERSION_STRING=`$LD -Wl,-V $TOPDIR/configure 2>&1 | $HEAD
-n 1 | $SED -e 's/ld: //'`
+ # ourself. :) The intermediate 'cat' is needed to stop ld from
leaving
+ # a lingering a.out (!).
+ LINKER_VERSION_STRING=`$LD -Wl,-V $TOPDIR/configure 2>&1 | $CAT |
$HEAD -n 1 | $SED -e 's/ld: //'`
# Extract version number
[ LINKER_VERSION_NUMBER=`$ECHO $LINKER_VERSION_STRING | \
$SED -e 's/.*
\([0-9][0-9]*\.[0-9][0-9]*\)-\([0-9][0-9]*\.[0-9][0-9]*\)/\1.\2/'` ]
/Magnus