[fedora-java] /usr/share/java and JNI libraries
Thomas Fitzsimmons
fitzsim at redhat.com
Mon Mar 26 19:21:17 UTC 2007
David Walluck wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Patrice Dumas wrote:
>> On Mon, Mar 26, 2007 at 10:33:26AM -0700, Anthony Green wrote:
>>> I believe most end up in %{_libdir}.
>> Aren't jni files dlopened? If it is the case they should not be
>> in %{_libdir}, but in a subdirectory.
>>
>> Are there packaging guidelines for java where such issues are
>> explained?
>
> Actually, I think you are right, but traditionally they have been but in
> %{_libdir}, and *jars* which depend on libraries have gone in %{_jnidir}
> = %{_libdir}/jni, per the JPackage 1.5 spec.
>
> Is it also a problem having jars (non-binaries) inside %{_libdir}? Then
> maybe %{_jnidir} should be %{_datadir}/jni then?
>
> I would tend to think that Debian is more correct here:
>
> Libraries: %{_libdir}/jni
> Jars that dlopen() these libraries: {_libdir}/java
>
> So, JPackage is sort of backwards from Debian, but I am not sure if that
> jar directory makes sense.
I would like to implement this in Fedora, but jpackage-utils is not
mulitlib-aware. Given that jpackage-utils installs directories in /usr/lib, it
would make sense to make it architecture-specific. Currently, we use the
simpler approach of hard-coding _libdir to /usr/lib64 in the spec files of
64-bit JDKs and appending .%{_arch} to their JAVA_HOME directories. I haven't
done much research into making jpackage-utils multilib (i.e., checked how Debian
and Gentoo handle this), but at some point we should probably go back and design
jpackage-utils/multilib interaction more thoroughly.
Tom
More information about the java-devel
mailing list