> 6 sep. 2018 kl. 00:00 skrev David Holmes <david.hol...@oracle.com>: > > Hi Magnus, > >> On 5/09/2018 10:11 PM, Magnus Ihse Bursie wrote: >> When I removed (mostly) all mapfiles for the JDK libraries, building of >> libjsig started failing on Solaris, and that part was backed out. >> Here's a new, and improved solution to remove the mapfile for libjsig, even >> on Solaris. >> Bug: https://bugs.openjdk.java.net/browse/JDK-8200609 >> WebRev: >> http://cr.openjdk.java.net/~ihse/JDK-8200609-remove-mapfile-for-libjsig/webrev.01 > > Why are the forward declarations Solaris-only when the actual function > definitions add JNIEXPORT unconditionally?
No other toolchain has a problem when the definition of the functions adds JNIEXPORT (i.e. adds a visibility attribute) to the initial declaration. It's certainly possible to do it for the other platforms, but it's not needed and I thought it didn't add anything to do it for all platforms. This way it's clear that the solstudio compiler is an anomaly. > > 37 * before including signal.h */ > 38 #include "sys/signal.h" > > Why do we need to include sys/signal.h rather than just (the existing) > signal.h? Since it includes the definition of the sigaction struct that is needed for the sigaction() prototype. (signal.h includes sys/signal.h for type definitions) /Magnus > > Thanks, > David > >> /Magnus