Review request: 8002365: build-infra: Build-infra fails on solaris 11.1 on sparc
Erik Joelsson
erik.joelsson at oracle.com
Thu Nov 8 10:47:11 UTC 2012
On 2012-11-08 08:33, David Holmes wrote:
> On 8/11/2012 4:56 PM, David Holmes wrote:
>> On 8/11/2012 12:38 AM, Erik Joelsson wrote:
>>> This is essentially the patch from Vincent to make build-infra work on
>>> Solaris 11.1 with some minor adjustments to keep the new and old build
>>> equal.
>>>
>>> http://cr.openjdk.java.net/~erikj/8002365/webrev.01/
>>> <http://cr.openjdk.java.net/%7Eerikj/8002365/webrev.01/>
>>
>> FYI I did some digging on this. It looks like the old build always uses
>> -lc but the new build accidentally dropped that option. That wasn't
>> noticed because the compiler we are using (SS12u1) introduced a bug -
>> and that bug was to implicitly pass -lc when -G was used to create a
>> shared library. The bug is fixed in SS12u2 and so, as Vincent
>> discovered, the build failed until -lc was added back in.
>
> Except the build files already contain this in toolchain.m4
>
> LDFLAGS_JDKLIB_SUFFIX="-ljava -ljvm"
> if test "x$COMPILER_NAME" = xossc; then
> LDFLAGS_JDKLIB_SUFFIX="$LDFLAGS_JDKLIB_SUFFIX -lc"
> fi
>
> So what is going wrong? Is the COMPILER_NAME not being set correctly?
>
I dropped the usage of that variable for most libraries when working on
getting the build comparison as equal as possible. There were several
libraries that didn't need both libjava and libjvm and the order of the
-l options on the link line affects the resulting binaries, making
comparisons harder. (And we strive for as little difference as possible
before the switch). I think we can clean this up further after the
switch when binary equivalence is less of an issue.
/Erik
More information about the build-dev
mailing list