[Bug 380446] Re: New upstream version (4.0.12)

Andrew Cowie andrew at operationaldynamics.com
Tue Aug 25 00:33:49 UTC 2009


> Split the binary package into two separate packages for java and jni
files

Hm. That sounds strange, but I only see one .deb and that's right.

Just to be clear, though, to avoid potential future misunderstandings:

The Java (.jar) and C (.so) parts of java-gnome are 100% tightly
coupled. They are not API / ABI compatible between different releases,
and there is no public API on the JNI side. So seeing "separate binary
packages" sounds dangerously like someone is wanting to create two
independent binary products from one source tree, though I only see one
.deb which seems correct.

++

The loading of native code by Java programs being frought with
difficulty and a very common source of nightmare for developers and
users. We went to significant (and quite innovative) lengths to engineer
this problem out entirely.

> Remove the hard coded version of jni .so file.

I'm not sure what that meant. I suspect it just meant cleaning up
previous packaging work.

When I looked, however, I found something called
01_change_jni_library_location.diff You do not need that patch at all.
Instead, just use the confgure line:

./configure prefix=/usr jardir=/usr/share/java libdir=/usr/lib/jni
jdk=/usr/lib/jvm/default-java

(based on reading http://launchpadlibrarian.net/30728086
/buildlog_ubuntu-karmic-amd64.java-gnome_4.0.12-1_FULLYBUILT.txt.gz and
https://launchpadlibrarian.net/30722782/java-gnome_4.0.12-1.diff.gz)
where the libdir option gets you what you were trying to do with the
patch. It is, however, *critical* that you use configure to tell the
build system about where the .jar and .so are to end up, because that
information is propegated elsewhere.

Incidentally, Debian, Gentoo and Fedora's requirements have been catered
for since the beginning. If you do need something that usptream doesn't
do, then upstream will change to accomodate it because it is important
to us that the experience using a package and the experience building
from source be the same. That's why libdir= and jardir= overrides are
offered to packagers.

++

Oh, from the build log:

> # We don't install this one
> rm -f debian/tmp/usr/lib/libgtkjava-4.0.so

We don't create that file [not since, oh, mid java-gnome 4.0.7? March
2008 at the latest] so no need to remove it :)

++

I appreciate all the hard work of the people packaging java-gnome for
Ubuntu and Debian. I've met Manu and Guillaume before, of course, but
it'd be nice to get to know the others. You're welcome to join us on IRC
or via mailing lists. Cheers.

AfC

-- 
New upstream version (4.0.12)
https://bugs.launchpad.net/bugs/380446
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs at lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs




More information about the universe-bugs mailing list