Fixes #70560.
authorKarl Trygve Kalleberg <karltk@gentoo.org>
Mon, 22 Nov 2004 00:22:20 +0000 (00:22 +0000)
committerKarl Trygve Kalleberg <karltk@gentoo.org>
Mon, 22 Nov 2004 00:22:20 +0000 (00:22 +0000)
dev-java/libgnome-java/ChangeLog [new file with mode: 0644]
dev-java/libgnome-java/Manifest [new file with mode: 0644]
dev-java/libgnome-java/files/digest-libgnome-java-2.8.2 [new file with mode: 0644]
dev-java/libgnome-java/files/libgnome-java-2.8.2_gentoo-PN-SLOT.patch [new file with mode: 0644]
dev-java/libgnome-java/libgnome-java-2.8.2.ebuild [new file with mode: 0644]
dev-java/libgnome-java/metadata.xml [new file with mode: 0644]

diff --git a/dev-java/libgnome-java/ChangeLog b/dev-java/libgnome-java/ChangeLog
new file mode 100644 (file)
index 0000000..f8050c4
--- /dev/null
@@ -0,0 +1,17 @@
+# ChangeLog for dev-java/libgtk-java
+# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/libgnome-java/ChangeLog,v 1.1 2004/11/22 00:22:20 karltk Exp $
+
+*libgnome-java-2.8.2 (22 Nov 2004)
+
+  22 Nov 2004; <karltk@gentoo.org> +metadata.xml,
+  +files/libgnome-java-2.8.2_gentoo-PN-SLOT.patch,
+  +libgnome-java-2.8.2.ebuild:
+  Initial import. Fixes #70560.
+
+  08 Nov 2004; Andrew Cowie <andrew@operationaldynamics.com>
+  New ebuild. What used to be java-gnome is now multiplexed into various modular
+  subcomponents. Upstream CVS was all re-arranged, and now there is a release
+  tarball for each piece. This ebuild is the Java binding around the core GNOME
+  libraries.
+
diff --git a/dev-java/libgnome-java/Manifest b/dev-java/libgnome-java/Manifest
new file mode 100644 (file)
index 0000000..1b4aa4f
--- /dev/null
@@ -0,0 +1,5 @@
+MD5 9c530d6f88d9e2d9ebeaa22a4298c072 libgnome-java-2.8.2.ebuild 3201
+MD5 956bd98d5a514ccbb6570c167b76f486 ChangeLog 730
+MD5 de0a216d1797f18db9dc83e5aedee360 metadata.xml 1002
+MD5 b5f8aad83ed35026438574e04a3122ac files/libgnome-java-2.8.2_gentoo-PN-SLOT.patch 1310
+MD5 a8a8cdd7ec44ae7402032003fe1bb7ab files/digest-libgnome-java-2.8.2 72
diff --git a/dev-java/libgnome-java/files/digest-libgnome-java-2.8.2 b/dev-java/libgnome-java/files/digest-libgnome-java-2.8.2
new file mode 100644 (file)
index 0000000..1f87316
--- /dev/null
@@ -0,0 +1 @@
+MD5 3fa03e9809f032540388b43dbf0cf582 libgnome-java-2.8.2.tar.bz2 126393
diff --git a/dev-java/libgnome-java/files/libgnome-java-2.8.2_gentoo-PN-SLOT.patch b/dev-java/libgnome-java/files/libgnome-java-2.8.2_gentoo-PN-SLOT.patch
new file mode 100644 (file)
index 0000000..8fcb361
--- /dev/null
@@ -0,0 +1,32 @@
+diff -Nuar libgnome-java-2.8.2-ORIG/configure.in libgnome-java-2.8.2-EDIT/configure.in
+--- libgnome-java-2.8.2-ORIG/configure.in      2004-11-01 23:11:40.000000000 +1100
++++ libgnome-java-2.8.2-EDIT/configure.in      2004-11-08 21:30:15.897947655 +1100
+@@ -21,13 +21,13 @@
+ version="2.8.2"
+ apiversion="2.8"
+ 
+-INSTALLED_CLASSPATH=\${prefix}/share/java/gnome${apiversion}-${version}.jar 
+-INSTALLED_JNI_DIR=\${prefix}/lib/jni/
++INSTALLED_CLASSPATH=\${prefix}/share/${PN}-${SLOT}/lib/gnome${apiversion}-${version}.jar 
++INSTALLED_JNI_DIR=\${prefix}/lib/
+ AC_SUBST(INSTALLED_CLASSPATH)
+ AC_SUBST(INSTALLED_JNI_DIR)
+ 
+ BUILDPLACE=`pwd`
+-INSTALLED_CLASSPATH_BUILDPLACE=$BUILDPLACE/lib//gnome${apiversion}-${version}.jar 
++INSTALLED_CLASSPATH_BUILDPLACE=$BUILDPLACE/lib/gnome${apiversion}-${version}.jar 
+ INSTALLED_JNI_DIR_BUILDPLACE=$BUILDPLACE/lib/
+ AC_SUBST(INSTALLED_CLASSPATH_BUILDPLACE)
+ AC_SUBST(INSTALLED_JNI_DIR_BUILDPLACE)
+diff -Nuar libgnome-java-2.8.2-ORIG/src/Makefile.in libgnome-java-2.8.2-EDIT/src/Makefile.in
+--- libgnome-java-2.8.2-ORIG/src/Makefile.in   2004-10-06 22:36:27.000000000 +1000
++++ libgnome-java-2.8.2-EDIT/src/Makefile.in   2004-11-08 21:26:58.241606791 +1100
+@@ -17,7 +17,7 @@
+ 
+ 
+ 
+-CLASSPATH = @GTKJAR@:@CLASSPATH@:java
++CLASSPATH = @GTKJAR@:java
+ NATIVEGTKJAR = @NATIVEGTKJAR@
+ 
+ OBJECTS:= \
diff --git a/dev-java/libgnome-java/libgnome-java-2.8.2.ebuild b/dev-java/libgnome-java/libgnome-java-2.8.2.ebuild
new file mode 100644 (file)
index 0000000..7959b0b
--- /dev/null
@@ -0,0 +1,104 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-java/libgnome-java/libgnome-java-2.8.2.ebuild,v 1.1 2004/11/22 00:22:20 karltk Exp $
+
+#
+# WARNING: Because java-gnome is a set of bindings to native GNOME libraries, 
+# it has, like any GNOME project, a massive autoconf setup, and unlike many 
+# other java libraries, it has its own [necessary] `make install` step.
+# As a result, this ebuild is VERY sensitive to the internal layout of the
+# upstream project. Because these issues are currently evolving upstream,
+# simply version bumping this ebuild is not likely to work but FAILURES WILL
+# BE VERY SUBTLE IF IT DOESN NOT WORK.
+# 
+
+inherit eutils gnome.org
+
+DESCRIPTION="Java bindings for the core GNOME libraries (allow GNOME/GTK applications to be written in Java)"
+HOMEPAGE="http://java-gnome.sourceforge.net/"
+RDEPEND=">=gnome-base/libgnome-2.8.0
+       >=gnome-base/libgnomeui-2.8.0
+       >=dev-java/libgtk-java-2.4.6
+       >=virtual/jre-1.2"
+
+#
+# Unfortunately we need to run autogen to do the variable substitutions, so 
+# regardless of whether or not there is an upstream ./configure [at time of
+# writing there isn't] we need to recreate it
+#
+
+DEPEND="${RDEPEND}
+               >=virtual/jdk-1.2
+               app-arch/zip
+               sys-devel/autoconf
+               sys-devel/automake"
+
+#
+# Critical that this match gtkapiversion
+#
+SLOT="2.8"
+LICENSE="LGPL-2.1"
+KEYWORDS="~x86 ~ppc"
+IUSE="gcj"
+
+src_unpack() {
+       unpack ${A}
+       cd ${S}
+       epatch ${FILESDIR}/libgnome-java-2.8.2_gentoo-PN-SLOT.patch
+}
+
+src_compile() {
+       local conf
+
+       use gcj || conf="${conf} --without-gcj-compile"
+
+       cd ${S}
+
+       #
+       # Ordinarily, moving things around post `make install` would do 
+       # the trick, but there are paths hard coded in .pc files and in the
+       # `make install` step itself that need to be influenced.
+       #
+
+       ./autogen.sh \
+               --host=${CHOST} \
+               --prefix=/usr \
+                       ${conf} || die "./configure failed"
+       make || die
+}
+
+src_install() {
+       # workaround Makefile bug not creating necessary parent directories
+       mkdir -p ${D}/usr/lib
+       mkdir -p ${D}/usr/share/java
+       mkdir -p ${D}/usr/lib/pkgconfig
+       mkdir -p ${D}/usr/share/doc/libgnome${SLOT}-java
+
+       make prefix=${D}/usr install || die
+
+       # actually, at time of writing, there were no DOCUMENTS, but leave it here...
+       mv ${D}/usr/share/doc/libgnome${SLOT}-java ${D}/usr/share/doc/${PF}
+
+       # the upstream install scatters things around a bit. The following cleans
+       # that up to make it policy compliant.
+
+       # I originally tried java-pkg_dojar here, but it has a few glitches 
+       # like not copying symlinks as symlinks which makes a mess.
+
+       dodir /usr/share/${PN}-${SLOT}/lib
+       mv ${D}/usr/share/java/*.jar ${D}/usr/share/${PN}-${SLOT}/lib
+       rm -rf ${D}/usr/share/java
+
+       mkdir ${D}/usr/share/${PN}-${SLOT}/src
+       cd ${S}/src/java
+       zip -r ${D}/usr/share/${PN}-${SLOT}/src/libgnome-java-${PV}.src.zip *
+
+       # again, with dojar misbehaving, better do to this manually for the 
+       # time being. Yes, this is bad hard coding, but what in this ebuild isn't?
+
+       echo "DESCRIPTION=${DESCRIPTION}" \
+               >  ${D}/usr/share/${PN}-${SLOT}/package.env
+
+       echo "CLASSPATH=/usr/share/${PN}-${SLOT}/lib/gnome${SLOT}.jar" \
+               >> ${D}/usr/share/${PN}-${SLOT}/package.env
+}
diff --git a/dev-java/libgnome-java/metadata.xml b/dev-java/libgnome-java/metadata.xml
new file mode 100644 (file)
index 0000000..1438ff2
--- /dev/null
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+       <herd>java</herd>
+       <maintainer>
+               <email>andrew@operationaldynamics.com</email>
+               <name>Andrew Cowie</name>
+       </maintainer>
+       <longdescription>
+               An elegant set of language bindings to allow you to write
+               native GNOME applications in Java. Works with both traditional
+               Java VMs and also with GCJ, allowing the creation of native
+               Linux executable binaries.
+
+               This library comes from the java-gnome project, which in turn
+               is part of the official suite of GNOME language bindings.
+
+               These are the Java bindings for the core GNOME libraries (which
+               therefore depends on a fairly complete and modern GNOME
+               installation). If you *do* have GNOME installed, then you
+               probably want to emerge java-gnome - a meta package which in
+               turn depends on the various GNOME libraries which comprise the
+               complete java-gnome language binding suite.
+       </longdescription>
+</pkgmetadata>