[OpenJDK 2D-Dev] RFR(L): 8024854: Basic changes and files to build the class library on AIX

Phil Race philip.race at oracle.com
Tue Oct 15 22:48:46 UTC 2013

Hello Volker,

I just remembered & got back to these changes - my email inbox isn't a 
very good reminder system.

I am OK with everything I see in the client areas except as below :-

  /* Very basic start for AIX -  feel free to complete ..
  169  */

We should remove this comment. If that means first getting
any necessary completion from IBM folks, please ask them.
Given the lack of fontconfig on AIX as standard its probably
more important for AIX than any other OS so I suggest the latter.

   * insted it has to be installed from the "AIX Toolbox for Linux Applications"

insted -> instead


  #ifndef MAX
  #ifndef MIN

I found that re-definition warnings are seen at least on
64 bit linux. Maybe you should rename these too generically
named macros to  XSD_MAX and XSD_MIN.

> extern int dladdr(void *addr, Dl_info  *info); // use the HotSpot implementation from libjvm.so
Did you ever get an opinion on this from the libraries or hotspot teams ?


On 9/19/2013 7:28 AM, Volker Simonis wrote:
> Hi Phil,
> I'm open to any good ideas.
> The current solution is pragmatic, simple and it has no impact on
> existing platforms.
> The other possibility I see is to put the 'dladdr' implantation into
> its own library (something equivalent to "libjli") and link that
> library to "libawt". But I currently don't see any existing library I
> could put the implementation into.
> Notice that the change I propose already contains an extra
> implementation of 'dladdr' for AIX in
> "src/solaris/demo/jvmti/hprof/hprof_md.c" because "libhprof" is not
> linked against libjvm and we therefore can not use the 'extern'-trick
> there.
> Of course it would be nice if there would be a small library which
> contains 'dladdr' and which could be linked against both, "libawt" and
> "libhprof". But I think that would require bigger shared changes (with
> possible empty implementations on the current platforms).
> What do other think?
> Regards,
> Volker
> On Thu, Sep 19, 2013 at 3:53 PM, Phil Race <philip.race at oracle.com> wrote:
>> Hi,
>> w.r.t the one issue below : is the awt load library code the only place you
>> need/are doing this ? If someone else (hotspot, core-libs) already assented
>> to this
>> then I guess I could too but I'd like to hear for sure that hotspot and
>> core-libs
>> teams both agree to this approach and whether there is an alternative.
>> -phil.
>> On 9/19/13 4:29 AM, Volker Simonis wrote:
>> Hi Phil,
>> thank you for looking at the changes. Please find my answers inline:
>>> /* AIX does not provide the 'dladdr' function. But fortunately, we've
>>>    42  * already implemented it in the HotSpot, because we need it there as
>>>    43  * well (see hotspot/src/os/aix/vm/porting_aix.{hpp,cpp}).
>>> Whilst this is in "ifdef AIX" this reliance on an exported hotspot
>>> function sounds hacky. What actual requirement is there that the
>>> AIX class libraries be so tightly-coupled with that VM?
>>> There is no contract there.
>> You're right, there is no contract. It's just pragmatic solution and I think
>> it should always work because the libjvm will always be loaded at the point
>> in AWT where it is used. Another solution would be to re-implement the
>> functionality in the class library and I don't like code duplication either.
>>> -phil.

More information about the 2d-dev mailing list