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

Re: Packaging a library, with JNI and javadocs



Appropriate timing for me.  I was planning on packaging portions of OCF,
which will include some JNI libraries.

On Thu, 2002-09-12 at 09:12, Ben Burton wrote:

> > Well. It is mostly because to help the build daemons. Many java packages
> > (especially in the contrib section) depend on non-packaged stuff to build
> > the package. So arch independent -java packages are really nice.
> 
> I'm not sure I see how this helps the build daemons.  If something depends on 
> non-packaged stuff at build time, the build daemons can't build it anyway 
> since they won't have the build dependencies available to them.  If something 
> doesn't depend on non-packaged stuff at build time then the build daemons 
> should be fine regardless of architecture.

I'm in favor of using the -java for JNI + supporting java classes. 
After all, it's still a Java library - it's just architecture
dependant.  Instead of using -jni, I vote the package be built
architecture dependant.  eg.  as opposed to _all.deb it's a _i386.deb.

> > I have now taken a _quick_ look at it. Would it be possible to use the
> > .c stuff (arch dependent) stuff outside of java?
> 
> Not really.  The C library contains java-specific wrappers.  In fact, all 
> that's really in the libreadline-java C library is java-specific wrappers to 
> the usual libedit routines.
> 
> > Can the java classes be used without the .c (arch dependent) stuff?
> 
> No.  They will not function without the C library (the JVM will throw an 
> exception if the C library is not available).

They cannot be used but can be built.

> > I know I'm in favour of splitting things but I also know that all people
> > are not. :)
> 
> I do believe in this instance that neither the java classes nor the C library 
> make sense without the other.

In my particular case, the java source and the JNI source come from two
upstreams.  I was planning to separate the debian packages like so:

- arch-dependant JNI libraries go into libocf-pcsc and similar,
recommending (or depending on - I'll accept suggestions)
libocf-pcsc-java (or similar).

- arch-independant java classes will go into libocf-pcsc-java and
similar, depending on libocf-pcsc.

If the Java and JNI sources come from the same upstream, I think it
still makes sense to keep the packages together, just making an
architecture dependant package.  Or you can go my route and separate
them.  IMHO, using -jni seems redundant.

Either way though, I'll follow common convention or Policy where
possible.

-joe
-- 
     Innovation Software Group, LLC - http://www.innovationsw.com/
                Business Automation Specialists
                 UNIX, Linux and Java Training



Reply to: