[OpenJDK 2D-Dev] Remove including of link.h to improve portability

Jonathan Lu luchsh at linux.vnet.ibm.com
Wed Mar 21 02:25:57 UTC 2012


Thanks a lot, Phil and Igor.

Regards!

- Jonathan

2012/3/21 Igor Nekrestyanov <igor.nekrestyanov at oracle.com>

> Looks fine to me.
>
> -igor
>
>
> On 3/20/12 3:30 PM, Phil Race wrote:
>
>> I'm (still) OK with this .. one other reviewer please somebody.
>>
>> -phil.
>>
>> On 3/20/2012 1:37 AM, Jonathan Lu wrote:
>>
>>> Hello, could anyone please help to take a look at this splitted patch?
>>>
>>> Thanks!
>>>
>>> -Jonathan
>>>
>>> 2012/3/13 Jonathan Lu <luchsh at linux.vnet.ibm.com <mailto:
>>> luchsh at linux.vnet.ibm.**com <luchsh at linux.vnet.ibm.com>>>
>>>
>>>    Hi Phil,
>>>
>>>    Thanks a lot for the review and testing, I've splited the patch
>>>    into two parts, one for 2D repository and another for TL. Here's
>>>    the patch for 2D repository:
>>>
>>>    http://cr.openjdk.java.net/~**luchsh/7152519/<http://cr.openjdk.java.net/%7Eluchsh/7152519/>
>>> <http://cr.openjdk.java.net/%**7Eluchsh/7152519/<http://cr.openjdk.java.net/%7Eluchsh/7152519/>
>>> >
>>>
>>>    So could anybody please help to do another review?
>>>
>>>    Thanks a lot!
>>>
>>>    - Jonathan
>>>
>>>
>>>    On 03/13/2012 02:22 AM, Phil Race wrote:
>>>
>>>        I added two of those includes myself I believe and I doubt I
>>>        did it unless needed
>>>        and others apparently found it necessary too. So we need to be
>>>        sure this is OK.
>>>        However at least one of those I added dates back to Solaris 8
>>>        being the build platform
>>>        so maybe its no longer needed.
>>>
>>>        I ran the patch through our internal jprt build system on all
>>>        platforms which
>>>        for Solaris uses a recent Solaris 10 update and it built fine.
>>>        I didn't notice
>>>        any new warnings on the files I know anything about.
>>>
>>> > 7152519
>>>        It was incorrectly submitted as awt, I moved it to 2D.
>>>
>>>        But I think you should split this into 2 patches.
>>>        The above bug can be used for all the 2D ones and push to 2d.
>>>
>>>        The other one for the nio and security patches can go to the
>>>        "tl" repo.
>>>
>>>        -phil.
>>>
>>>
>>>
>>>
>>>        On 3/11/2012 8:29 PM, Jonathan Lu wrote:
>>>
>>>            Bug 7152519 has been created for this patch.
>>>
>>>            - Jonathan
>>>
>>>            On 03/09/2012 07:49 PM, Jonathan Lu wrote:
>>>
>>>                Hello 2d-dev,
>>>
>>>                I find that link.h is included in several place of
>>>                OpenJDK code, mostly together with dlfcn.h, but this
>>>                caused portability problem in my testing on some Unix
>>>                platforms, such as AIX.
>>>                So far as I see OpenJDK only makes use of basic
>>>                POSIX.1-2001 compatible dynamic library manipulation
>>>                functions, such as dlopen, dlclose, dlsym, dlerr
>>>                functions, no other extensions found, so is link.h
>>>                still neccessary for current implementation? because
>>>                link.h is not found in the c-POSIX standard headers
>>>                (http://en.wikipedia.org/wiki/**C_POSIX_library<http://en.wikipedia.org/wiki/C_POSIX_library>)
>>> and I
>>>                think this removal will be an enhancement for
>>>                portability, does that make sense?
>>>
>>>                Here's the proposed patch, since most parts of it are
>>>                from Java2d so I post it here for discussion.
>>>                http://cr.openjdk.java.net/~**luchsh/remove_link_h/<http://cr.openjdk.java.net/%7Eluchsh/remove_link_h/>
>>> <http://cr.openjdk.java.net/%**7Eluchsh/remove_link_h/<http://cr.openjdk.java.net/%7Eluchsh/remove_link_h/>
>>> >
>>> <http://cr.openjdk.java.net/%**7Eluchsh/remove_link_h/<http://cr.openjdk.java.net/%7Eluchsh/remove_link_h/>
>>> >
>>>
>>>                And one more question, in
>>>                src/solaris/native/sun/java2d/**x11/XRBackendNative.c I
>>>                found following comments
>>>                 #ifdef __solaris__
>>>                 /* Solaris 10 will not have these symbols at runtime */
>>>                 #include <link.h>
>>>
>>>                And in src/solaris/native/sun/awt/**fontpath.c,
>>>                 #include <dlfcn.h>
>>>                 #ifndef __linux__ /* i.e. is solaris */
>>>                 #include <link.h>
>>>                 #endif
>>>
>>>                I've built successfully on Ubuntu 11.10 32bit and
>>>                OpenSolaris Express 2010.11 x86, the patch seems to be
>>>                OK, but does anybody know the situation on Solaris
>>>                (e.g. Solaris 10) of this problem?
>>>                I assume it will also comply with POSIX.1-2001
>>>                standard, and provide all the required functions in
>>>                dlfcn.h, right?
>>>
>>>                Cheers!
>>>                - Jonathan
>>>
>>>
>>>
>>>
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/2d-dev/attachments/20120321/fd56e72e/attachment.html>


More information about the 2d-dev mailing list