Define JNIEXPORT as visibility default with GCC?

David DeHaven david.dehaven at oracle.com
Fri Feb 15 16:18:16 UTC 2013


> a) I don't know what's going on behind the scenes, but if this sounds like a good idea to folks, can we open a bug and get the process otherwise rolling?
> 
> b) Martin, where did the 4.2 restriction come from?  Both Apple's site and the gcc wiki say that visibility support arrived in 4.0:
> 
> http://gcc.gnu.org/wiki/Visibility
> https://developer.apple.com/library/mac/#documentation/DeveloperTools/Conceptual/CppRuntimeEnv/Articles/SymbolVisibility.html

I've been poking at http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7181710 in my spare time (I've not a lot of these days). That issue is, IMHO, an even more glaring issue for what should be obvious reasons. The best solution seems to be to create a new set of headers for export in jdk/src/macosx/javavm/export since the implementation is very system dependent. I could roll this change as part of that as well as clean up some of the #if flow control that would no longer have any effect. I have that mostly done, but I need more time for testing the header and doing JPRT runs to be sure I haven't broken other platforms in the process.

That leaves the solaris headers and a separate issue would have to be filed to fix hotspot.

-DrD-




More information about the core-libs-dev mailing list