Remove including of link.h to improve portability

Jonathan Lu chuanshenglu at gmail.com
Sun Mar 11 20:29:59 PDT 2012


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) 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/>
>
> 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/nio-dev/attachments/20120312/c72b0805/attachment.html 


More information about the nio-dev mailing list