RFR: JDK-8198859 Use elfedit to silence linker warnings on solaris
Erik Joelsson
erik.joelsson at oracle.com
Thu Mar 1 22:17:15 UTC 2018
Hello Magnus,
This is a nice fix!
I would prefer if the shell expression wasn't executed on every re-make.
In this case it can easily be fixed by changing := to =. There is only
one use of DTRACE_ELFEDIT_COMMANDS so it will only be evaluated once,
and since it's in a recipe line, it will only get evaluated if that
recipe is run. For better styling, perhaps it should be renamed with
camel humps to make it more apparent that it's a macro.
Stylewise, I would also argue that the indentation on 149 should be 4
spaces. One could say foreach qualifies as a logic indent, but I would
say this is a broken up one liner. If foreach had started on a new line,
then 2 space would have been ok, and in that case I would also have
liked the closing brace on a new line.
/Erik
On 2018-03-01 02:01, Magnus Ihse Bursie wrote:
> Solaris builds have always produced a lot of warnings when linking,
> like this:
>
> ld: fatal: symbol '__JvmOffsets' has differing types:
> (file
> /export/home/magnusi/hg/sandbox-cflags/build/solaris-sparcv9/hotspot/variant-server/libjvm/objs/JvmOffsets.o
> type=OBJT; file
> /export/home/magnusi/hg/sandbox-cflags/build/solaris-sparcv9/hotspot/variant-server/libjvm/objs/dtrace_jhelper.o
> type=FUNC);
>
> This is due to an unresolved bug in dtrace. This bug has been reported
> on the dtrace team in 2014, but no solution have been coming forth.
> :-( However, I just discovered that we can actually use elfedit to fix
> the type of the fields that the linker is complaining about on
> $(DTRACE_JHELPER_OBJ).
>
> That will make the linker quiet.
>
> Bug: https://bugs.openjdk.java.net/browse/JDK-8198859
> WebRev:
> http://cr.openjdk.java.net/~ihse/JDK-8198859-dtrace-warnings-workaround/webrev.01
>
> /Magnus
>
More information about the build-dev
mailing list