aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-java/jogl/ChangeLog11
-rw-r--r--dev-java/jogl/Manifest1
-rw-r--r--dev-java/jogl/files/1.1.0/fix-solaris-compiler.patch41
-rw-r--r--dev-java/jogl/files/1.1.0/uncouple-gluegen.patch32
-rw-r--r--dev-java/jogl/jogl-1.1.1.ebuild76
-rw-r--r--dev-java/jogl/metadata.xml13
6 files changed, 174 insertions, 0 deletions
diff --git a/dev-java/jogl/ChangeLog b/dev-java/jogl/ChangeLog
new file mode 100644
index 000000000..6c7c72057
--- /dev/null
+++ b/dev-java/jogl/ChangeLog
@@ -0,0 +1,11 @@
+# ChangeLog for dev-java/jogl
+# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
+# $Header: $
+
+*jogl-1.1.1 (14 May 2012)
+
+ 14 May 2012; Sébastien Fabbro <bicatali@gentoo.org>
+ +files/1.1.0/fix-solaris-compiler.patch, +files/1.1.0/uncouple-gluegen.patch,
+ +jogl-1.1.1.ebuild, +metadata.xml:
+ import from the java overlay
+
diff --git a/dev-java/jogl/Manifest b/dev-java/jogl/Manifest
new file mode 100644
index 000000000..0e609d9c3
--- /dev/null
+++ b/dev-java/jogl/Manifest
@@ -0,0 +1 @@
+DIST jogl-1.1.1-src.zip 3638019 RMD160 d7689175fb18ec50bb5a76ce6020ceb029c00203 SHA1 40059f355ea9a022c06657f18d610e3141e28d07 SHA256 dbd34718f15e6f45deb2d96bc328c3d54aa2f3a2160a4593997506c837d859a0
diff --git a/dev-java/jogl/files/1.1.0/fix-solaris-compiler.patch b/dev-java/jogl/files/1.1.0/fix-solaris-compiler.patch
new file mode 100644
index 000000000..6d77bc3fe
--- /dev/null
+++ b/dev-java/jogl/files/1.1.0/fix-solaris-compiler.patch
@@ -0,0 +1,41 @@
+diff -Naur gluegen.orig/make/gluegen-cpptasks.xml gluegen/make/gluegen-cpptasks.xml
+--- gluegen.orig/make/gluegen-cpptasks.xml 2007-03-14 23:09:20.000000000 +1300
++++ gluegen/make/gluegen-cpptasks.xml 2007-03-14 23:09:40.000000000 +1300
+@@ -397,16 +397,16 @@
+ <compilerarg value="-fPIC"/>
+ </compiler>
+
+- <compiler id="compiler.cfg.solaris" name="suncc">
++ <compiler id="compiler.cfg.solaris" name="gcc">
+ </compiler>
+
+- <compiler id="compiler.cfg.solaris.sparcv9" name="suncc">
++ <compiler id="compiler.cfg.solaris.sparcv9" name="gcc">
+ <compilerarg value="-fast" />
+ <compilerarg value="-xchip=ultra" />
+ <compilerarg value="-xarch=v9a" />
+ </compiler>
+
+- <compiler id="compiler.cfg.solaris.amd64" name="suncc">
++ <compiler id="compiler.cfg.solaris.amd64" name="gcc">
+ <compilerarg value="-fast" />
+ <compilerarg value="-xchip=opteron" />
+ <compilerarg value="-xarch=amd64" />
+@@ -492,14 +492,14 @@
+ <linker id="linker.cfg.linux.amd64" name="gcc">
+ </linker>
+
+- <linker id="linker.cfg.solaris" name="suncc">
++ <linker id="linker.cfg.solaris" name="gcc">
+ </linker>
+
+- <linker id="linker.cfg.solaris.sparcv9" name="suncc">
++ <linker id="linker.cfg.solaris.sparcv9" name="gcc">
+ <linkerarg value="-xarch=v9a" />
+ </linker>
+
+- <linker id="linker.cfg.solaris.amd64" name="suncc">
++ <linker id="linker.cfg.solaris.amd64" name="gcc">
+ <linkerarg value="-xarch=amd64" />
+ </linker>
+
diff --git a/dev-java/jogl/files/1.1.0/uncouple-gluegen.patch b/dev-java/jogl/files/1.1.0/uncouple-gluegen.patch
new file mode 100644
index 000000000..a508c610f
--- /dev/null
+++ b/dev-java/jogl/files/1.1.0/uncouple-gluegen.patch
@@ -0,0 +1,32 @@
+diff -Naur jogl.orig/make/build.xml jogl/make/build.xml
+--- jogl.orig/make/build.xml 2007-02-13 17:45:16.000000000 +1300
++++ jogl/make/build.xml 2007-03-14 22:55:50.000000000 +1300
+@@ -127,7 +127,18 @@
+ <property name="gluegen.build.xml" value="${gluegen.make.dir}/build.xml" />
+ <property name="gluegen.jar" value="../../gluegen/build/gluegen.jar" />
+ <property name="gluegen-rt.jar" value="../../gluegen/build/gluegen-rt.jar" />
+-
++ <!-- This property is used to skip building gluegen if the jar files
++ - are already available on the system and have been overridden
++ - by the user. The purpose is to allow linux distro's to uncouple
++ - gluegen from jogl.
++ -->
++ <condition property="gluegen.prebuilt" >
++ <and>
++ <available file="${gluegen.jar}" />
++ <available file="${gluegen-rt.jar}" />
++ </and>
++ </condition>
++
+ <!-- Names of directories relative to the project root.
+ Some of these are used in FileMappers later for dependence information
+ and need exact string matching, which is why they use file.separator
+@@ -479,7 +490,7 @@
+ <!--
+ - Build GlueGen
+ -->
+- <target name="build.gluegen" depends="init">
++ <target name="build.gluegen" depends="init" unless="gluegen.prebuilt">
+ <!-- Run the GlueGen build to ensure that the GlueGen ANT task
+ - has been built. -->
+ <!-- FIXME: remove passing down of antlr.jar when gluegen.properties is on all
diff --git a/dev-java/jogl/jogl-1.1.1.ebuild b/dev-java/jogl/jogl-1.1.1.ebuild
new file mode 100644
index 000000000..48daa8987
--- /dev/null
+++ b/dev-java/jogl/jogl-1.1.1.ebuild
@@ -0,0 +1,76 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+WANT_ANT_TASKS="ant-antlr"
+JAVA_PKG_IUSE="cg source doc"
+EAPI="2"
+
+inherit java-pkg-2 java-ant-2
+
+DESCRIPTION="Java(TM) Binding fot the OpenGL(TM) API"
+HOMEPAGE="https://jogl.dev.java.net"
+SRC_URI="http://download.java.net/media/${PN}/builds/archive/jsr-231-1.1.1/${P}-src.zip"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+COMMON_DEPEND="dev-java/ant-core
+ >=dev-java/cpptasks-1.0_beta4-r2
+ =dev-java/gluegen-20080421
+ cg? ( media-gfx/nvidia-cg-toolkit )
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXxf86vm"
+
+DEPEND=">=virtual/jdk-1.4
+ app-arch/unzip
+ ${COMMON_DEPEND}"
+
+RDEPEND=">=virtual/jre-1.4
+ ${COMMON_DEPEND}"
+IUSE=""
+
+S="${WORKDIR}/${PN}"
+
+java_prepare() {
+ epatch "${FILESDIR}/1.1.0/uncouple-gluegen.patch"
+ cd "${S}/make"
+ mv build.xml build.xml.bak
+
+ sed 's_/usr/X11R6_/usr_g' build.xml.bak > build.xml
+ sed -i -e 's/suncc/gcc/g' build.xml ../../gluegen/make/gluegen-cpptasks.xml
+
+ rm -R "${S}/build/gensrc/classes/javax"
+
+ cd "${WORKDIR}/gluegen/make/lib"
+ rm -v *.jar || die
+ java-pkg_jar-from cpptasks
+}
+
+src_compile() {
+ cd make/
+ local antflags="-Dgluegen.prebuild=true"
+ antflags="${antflags} -Dantlr.jar=$(java-pkg_getjars --build-only antlr)"
+ local gcp="$(java-pkg_getjars ant-core):$(java-config --tools)"
+
+ local gluegen="-Dgluegen.jar=$(java-pkg_getjar gluegen gluegen.jar)"
+ local gluegenrt="-Dgluegen-rt.jar=$(java-pkg_getjar gluegen gluegen-rt.jar)"
+
+ use cg && antflags="${antflags} -Djogl.cg=1 -Dx11.cg.lib=/usr/lib"
+ # -Dbuild.sysclasspath=ignore fails with missing ant dependencies.
+
+ export ANT_OPTS="-Xmx1g"
+ eant \
+ -Dgentoo.classpath="${gcp}" \
+ ${antflags} "${gluegen}" "${gluegenrt}" \
+ all $(use_doc)
+}
+
+src_install() {
+ use source && java-pkg_dosrc src/classes/*
+ java-pkg_doso build/obj/*.so
+ java-pkg_dojar build/*.jar
+ use doc && java-pkg_dojavadoc javadoc_public
+}
diff --git a/dev-java/jogl/metadata.xml b/dev-java/jogl/metadata.xml
new file mode 100644
index 000000000..39ce37492
--- /dev/null
+++ b/dev-java/jogl/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>java</herd>
+<longdescription lang="en">
+JOGL provides Java with a Binding for the OpenGL® API (JSR-231), and is designed
+to provide hardware-supported 3D graphics to applications written in Java.
+</longdescription>
+<use>
+ <flag name="cg">Enable NVidia Cg binding.</flag>
+</use>
+</pkgmetadata>
+