CMake 'JNI' macro question . . .
Andreas, I would like to request your assistance on the following 'CMake' issue requested by Adam: * https://fedorahosted.org/pki/ticket/9 Basically, on Fedora 16 and later, the default location of Java Native Interface (JNI) jar files was changed to reside under '/usr/lib/java' for 32-bit platforms, and '/usr/lib64/java' for 64-bit platforms. Per the TRAC ticket, I made a change in the spec files to handle this via the 'jpackage-utils' RPM. However, I do not know if 'CMake' can change the 'JAVA_LIB_INSTALL_DIR' macro located in the 'pki/cmake/Modules/DefineInstallationPaths.cmake' file to rely on the '%{_jnidir}' macro of 'jpackage-utils' stored in the '/etc/rpm/macros.jpackage', or if there is a different way of handling this where the following logic comes into play: * '/usr/lib/java' on RHEL 6 and earlier (32-bit AND 64-bit platforms) * '/usr/lib/java' on Fedora 15 and earlier (32-bit AND 64-bit platforms) * '/usr/lib/java' on Fedora 16 and later (32-bit platforms) * '/usr/lib/java' on Fedora 16 and later (using a 32-bit JVM on 64-bit platforms) o I am fairly confident that this case may actually REQUIRE a compiler override, as it does not look as if 'jpackage-utils' computes its '%{_jnidir}' macro based upon the 'JVM' architecture being utilized, but rather the '%{_libdir}' macro based upon the operating system architecture located in the appropriate '/usr/lib/rpm/platform/<platform>/macros' file * '/usr/lib64/java' on Fedora 16 and later (64-bit platforms) Your assistance on this matter is greatly appreciated. Eventually, do you think that we may want the appropriate logic added to the '/etc/rpm/macros.cmake' file? Thanks, -- Matt
Cross posting to Java devel as there might be a an answer from the Java/Fedora side of the house On 11/29/2011 09:53 PM, Matthew Harmsen wrote:
Andreas,
I would like to request your assistance on the following 'CMake' issue requested by Adam:
* https://fedorahosted.org/pki/ticket/9
Basically, on Fedora 16 and later, the default location of Java Native Interface (JNI) jar files was changed to reside under '/usr/lib/java' for 32-bit platforms, and '/usr/lib64/java' for 64-bit platforms.
Per the TRAC ticket, I made a change in the spec files to handle this via the 'jpackage-utils' RPM. However, I do not know if 'CMake' can change the 'JAVA_LIB_INSTALL_DIR' macro located in the 'pki/cmake/Modules/DefineInstallationPaths.cmake' file to rely on the '%{_jnidir}' macro of 'jpackage-utils' stored in the '/etc/rpm/macros.jpackage', or if there is a different way of handling this where the following logic comes into play:
* '/usr/lib/java' on RHEL 6 and earlier (32-bit AND 64-bit platforms) * '/usr/lib/java' on Fedora 15 and earlier (32-bit AND 64-bit platforms) * '/usr/lib/java' on Fedora 16 and later (32-bit platforms) * '/usr/lib/java' on Fedora 16 and later (using a 32-bit JVM on 64-bit platforms) o I am fairly confident that this case may actually REQUIRE a compiler override, as it does not look as if 'jpackage-utils' computes its '%{_jnidir}' macro based upon the 'JVM' architecture being utilized, but rather the '%{_libdir}' macro based upon the operating system architecture located in the appropriate '/usr/lib/rpm/platform/<platform>/macros' file * '/usr/lib64/java' on Fedora 16 and later (64-bit platforms)
Your assistance on this matter is greatly appreciated.
Eventually, do you think that we may want the appropriate logic added to the '/etc/rpm/macros.cmake' file?
Thanks, -- Matt
_______________________________________________ Pki-devel mailing list Pki-devel@redhat.com https://www.redhat.com/mailman/listinfo/pki-devel
Cross posting to the Java Devel list On 11/29/2011 09:53 PM, Matthew Harmsen wrote:
Andreas,
I would like to request your assistance on the following 'CMake' issue requested by Adam:
* https://fedorahosted.org/pki/ticket/9
Basically, on Fedora 16 and later, the default location of Java Native Interface (JNI) jar files was changed to reside under '/usr/lib/java' for 32-bit platforms, and '/usr/lib64/java' for 64-bit platforms.
Per the TRAC ticket, I made a change in the spec files to handle this via the 'jpackage-utils' RPM. However, I do not know if 'CMake' can change the 'JAVA_LIB_INSTALL_DIR' macro located in the 'pki/cmake/Modules/DefineInstallationPaths.cmake' file to rely on the '%{_jnidir}' macro of 'jpackage-utils' stored in the '/etc/rpm/macros.jpackage', or if there is a different way of handling this where the following logic comes into play:
* '/usr/lib/java' on RHEL 6 and earlier (32-bit AND 64-bit platforms) * '/usr/lib/java' on Fedora 15 and earlier (32-bit AND 64-bit platforms) * '/usr/lib/java' on Fedora 16 and later (32-bit platforms) * '/usr/lib/java' on Fedora 16 and later (using a 32-bit JVM on 64-bit platforms) o I am fairly confident that this case may actually REQUIRE a compiler override, as it does not look as if 'jpackage-utils' computes its '%{_jnidir}' macro based upon the 'JVM' architecture being utilized, but rather the '%{_libdir}' macro based upon the operating system architecture located in the appropriate '/usr/lib/rpm/platform/<platform>/macros' file * '/usr/lib64/java' on Fedora 16 and later (64-bit platforms)
Your assistance on this matter is greatly appreciated.
Eventually, do you think that we may want the appropriate logic added to the '/etc/rpm/macros.cmake' file?
Thanks, -- Matt
_______________________________________________ Pki-devel mailing list Pki-devel@redhat.com https://www.redhat.com/mailman/listinfo/pki-devel
* Adam Young <ayoung@redhat.com> [2011-11-30 10:53]:
Cross posting to the Java Devel list On 11/29/2011 09:53 PM, Matthew Harmsen wrote:
Andreas, I would like to request your assistance on the following 'CMake' issue requested by Adam: * [1]https://fedorahosted.org/pki/ticket/9
The jnidir macro is statically set to ../lib/: %_jnidir %{_prefix}/lib/java This is unlikely to change in the near future. Please see this bug for more info: https://bugzilla.redhat.com/show_bug.cgi?id=665576 The top comments (2,3,4,...) would be of interest. Cheers, Deepak
* Deepak Bhole <dbhole@redhat.com> [2011-12-05 11:31]:
* Adam Young <ayoung@redhat.com> [2011-11-30 10:53]:
Cross posting to the Java Devel list On 11/29/2011 09:53 PM, Matthew Harmsen wrote:
Andreas, I would like to request your assistance on the following 'CMake' issue requested by Adam: * [1]https://fedorahosted.org/pki/ticket/9
The jnidir macro is statically set to ../lib/: %_jnidir %{_prefix}/lib/java
This is unlikely to change in the near future. Please see this bug for more info: https://bugzilla.redhat.com/show_bug.cgi?id=665576
The top comments (2,3,4,...) would be of interest.
Doh. Stano just informed me that this has been changed on F16 afterall (my system is F15): https://bugzilla.redhat.com/show_bug.cgi?id=665576#c38 Sorry for the confusion. Deepak
On 12/05/11 08:31, Deepak Bhole wrote:
* Adam Young<ayoung@redhat.com> [2011-11-30 10:53]:
Cross posting to the Java Devel list On 11/29/2011 09:53 PM, Matthew Harmsen wrote:
Andreas, I would like to request your assistance on the following 'CMake' issue requested by Adam: * [1]https://fedorahosted.org/pki/ticket/9
The jnidir macro is statically set to ../lib/: %_jnidir %{_prefix}/lib/java Deepak,
This was true in Fedora 15 and earlier as well as RHEL 6 and earlier. However, see https://bugzilla.redhat.com/show_bug.cgi?id=665576#c38, in which Stanislav Ochotnicky changed the definition of '%_jnidir' on 7/4/2011 to: * %_jnidir is now %_libdir/java This change appears to have been applied to Fedora 16 and later. -- Matt
This is unlikely to change in the near future. Please see this bug for more info: https://bugzilla.redhat.com/show_bug.cgi?id=665576
The top comments (2,3,4,...) would be of interest.
Cheers, Deepak
_______________________________________________ Pki-devel mailing list Pki-devel@redhat.com https://www.redhat.com/mailman/listinfo/pki-devel
participants (3)
-
Adam Young -
Deepak Bhole -
Matthew Harmsen