On 04/04/2015 04:46 AM, Matthias Klose wrote: > On 04/04/2015 05:22 AM, tony mancill wrote: >> Hi Tim, >> >> the jffi update looks pretty good, lots of great work, but I have a >> question about the -jni package. The current packaging creates a >> libjffi-jni binary package that installs an arch:any file under /usj. >> That's going to break on multi-arch systems because it won't be possible >> to co-install libjffi-jni:amd64 and libjffi-jni:i386, etc. on the same >> system. The following is the output of debc for libjffi-jni: >> >>> libjffi-jni_1.2.7-1_amd64.deb >>> ----------------------------- >>> new debian package, version 2.0. >>> size 34522 bytes: control archive=741 bytes. >>> 668 bytes, 17 lines control >>> 215 bytes, 3 lines md5sums >>> Package: libjffi-jni >>> Source: jffi >>> Version: 1.2.7-1 >>> Architecture: amd64 >>> Maintainer: Debian Java Maintainers <pkg-java-maintainers@lists.alioth.debian.org> >>> Installed-Size: 66 >>> Recommends: libjffi-java >>> Section: java >>> Priority: optional >>> Homepage: http://github.com/wmeissner/jffi >>> Description: Java Foreign Function Interface (JNI library) >>> JFFI is a wrapper for libffi, the foreign function interface library. A foreign >>> function interface is the popular name for the interface that allows code >>> written in one language to call code written in another language. >>> Java-based codings helper classes for Joni and JRuby >>> . >>> This package ships the Java native interface library. >>> drwxr-xr-x root/root 0 2015-04-02 21:41 ./ >>> drwxr-xr-x root/root 0 2015-04-02 21:41 ./usr/ >>> drwxr-xr-x root/root 0 2015-04-02 21:41 ./usr/share/ >>> drwxr-xr-x root/root 0 2015-04-02 21:41 ./usr/share/java/ >>> -rw-r--r-- root/root 30195 2015-04-02 21:41 ./usr/share/java/jffi-native.jar >>> drwxr-xr-x root/root 0 2015-04-02 21:41 ./usr/share/doc/ >>> drwxr-xr-x root/root 0 2015-04-02 21:41 ./usr/share/doc/libjffi-jni/ >>> -rw-r--r-- root/root 7057 2015-04-02 20:56 ./usr/share/doc/libjffi-jni/copyright >>> -rw-r--r-- root/root 1413 2015-04-02 20:56 ./usr/share/doc/libjffi-jni/changelog.Debian.gz >> >> So, I'm not sure about shipping this file in /usj. Java Policy [0] says >> that the jni artifacts should be shipped under /usr/lib/jni/, but those >> are typically .so files. And the previous version of the package ships >> the -native.jar in /usr/lib/jffi/ (also not in a multi-arch folder). So >> it's not fundamentally different from what the package does now. I'm >> going to upload it to experimental to get the ball rolling, and then we >> can discuss further. > > but shipping native code in /usr/share is a policy violation. Hi Matthias, Ah yes, I knew something was bothering me about /usr/share but wasn't making the obvious connection. Thank you for the gentle application of the clue bat. The fact that 1.0.2-11 had shipped a JAR in /usr/lib/jni/ had me confused, but as Emmanuel pointed out, this needs to be multi-arch aware. Tim, do you have a (simple?) run-time test I can use to validate the package after moving the contents of the -native.jar to /usr/lib/jni/ ? Thank you, tony
Attachment:
signature.asc
Description: OpenPGP digital signature