[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RFS: jffi-1.2.7 and jenkins-1.565.3-4



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


Reply to: