GlueGen is a tool which automatically generates the Java and JNI code necessary to call C libraries. It reads as input ANSI C header files and separate configuration files which provide control over many aspects of the glue code generation. GlueGen uses a complete ANSI C parser and an internal representation (IR) capable of representing all C types to represent the APIs for which it generates interfaces. GlueGen is currently used to generate the JOGL interface to the OpenGL 3D graphics API and the JOAL interface to the OpenAL audio library. An initial ebuild for this is available in the migrated-java-experimental-overlay
Works here for x86 too.
(In reply to comment #0) > GlueGen is a tool which automatically generates the Java and JNI code necessary > to call C libraries. It reads as input ANSI C header files and separate > configuration files which provide control over many aspects of the glue code > generation. GlueGen uses a complete ANSI C parser and an internal > representation (IR) capable of representing all C types to represent the APIs > for which it generates interfaces. > > > GlueGen is currently used to generate the JOGL interface to the OpenGL 3D > graphics API and the JOAL interface to the OpenAL audio library. > > An initial ebuild for this is available in the > migrated-java-experimental-overlay > x86_64 works fine
The following thread chronicles my attempt to get Java OpenGL Acceleration working in a Java Applet called Runescape: http://forums.gentoo.org/viewtopic-t-827856-highlight-.html After installing dev-java/gluegen and this dev-java/jogl from the java-overlay overlay and making some additions to Java's runtime parameters via the Java Control Panel, I was able to enable hardware acceleration. The specific parameters were: -classpath "/usr/share/jogl/lib/jogl.jar:/usr/share/gluegen/lib/gluegen-rt.jar" -Djava.library.path="/usr/lib/gluegen/:/usr/lib/jogl/" After doing this, my system works perfectly with this ebuild emerged. I suggest that a minor changes be made to this ebuild such that it will add itself to the default class path and java library path for all users on a system upon installation and remove itself upon uninstallation. This is assuming that there are hooks for doing that in the jdk. If there are no such hooks, then the ebuild should be modified to append a warning with instructions to manually modify the Java Control Panel's runtime parameters field to append the appropriate jar file and directory to the class and library paths respectively.
Created attachment 262387 [details] This is a revision bump. The gluegen package in Gentoo goes by date, but gluegen has its own version numbering scheme. The bundled version of gluegen is 1.0b6 to my knowledge. The java-overlay should probably be modified to use the upstream version numbering for the dev-java/gluegen package. Anyway, a critical security vulnerability was discovered in JOGL 1.1.1 roughly two years ago. JOGL 1.1.1a was released to deal with the security vulnerability, but that version number made it into Gentoo. It depends a newer version of gluegen than JOGL 1.1.1, so it is necessary to do a revision bump on gluegen in order to update JOGL to 1.1.1a. The version of gluegen used in JOGL 1.1.1a appears to be 1.0b6. Ignoring the upstream version numbering, it is possible to produce a new tarball for the needed revision bump from the JOGL 1.1.1a tarball. If you obtain the jogl-1.1.1a.ebuild from #143019 and install it in a local overlay, you can run the following commands as root to generate the tarball: ebuild $(equery which =dev-java/jogl-1.1.1a) unpack cd /var/tmp/portage/dev-java/jogl-1.1.1a/work/ mv gluegen/ gluegen-20090618 tar -cjf /usr/portage/distfiles/gluegen-20090618.tar.bz2 gluegen-20090618/ chown portage /usr/portage/distfiles/gluegen-20090618.tar.bz2
Created attachment 281323 [details] new version dump gluegen moved to git ... this is the v2.0-rc2 tagged version
Created attachment 410030 [details] gluegen-2.3.1.ebuild version bump 2.3.1 added jsr305 and jcpp dependencies
Hi Karsten Thanks for your contribution. I'm running into two errors with this ebuild: 1) 50 epatch "${FILESDIR}"/${PV}-*.patch ^^ this is indicating that some patches are applied during the src_prepare phase. Could you please attach them? 2) during the generate.java ant task execution, I got the following error: generate.java: [antlr] ANTLR Parser Generator Version 2.7.7 (20150518) 1989-2005 [javac] Compiling 102 source files to /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build/classes [javac] Since fork is false, ignoring memoryMaximumSize setting. [javac] Note: /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/src/java/com/jogamp/common/nio/AbstractBuffer.java us es unchecked or unsafe operations. [javac] Note: Recompile with -Xlint:unchecked for details. [copy] Copying 1 file to /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build/classes [javac] Compiling 115 source files to /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build/classes [javac] Since fork is false, ignoring memoryMaximumSize setting. [javac] Note: /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/src/java/com/jogamp/gluegen/ant/GlueGenTask.java uses or overrides a deprecated API. [javac] Note: Recompile with -Xlint:deprecation for details. [javac] Note: Some input files use unchecked or unsafe operations. [javac] Note: Recompile with -Xlint:unchecked for details. [copy] Copying 1 file to /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build [jar] Building jar: /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build/gluegen.jar [copy] Copying 1 file to /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build [copy] Copying 1 file to /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build [jar] Building jar: /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/build/gluegen-rt.jar BUILD FAILED /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/make/build.xml:762: The following error occurred while executing this l ine: /var/tmp/portage/dev-java/gluegen-2.3.1/work/gluegen-2.3.1/make/build.xml:713: Warning: Could not find file /var/tmp/portage/dev-j ava/gluegen-2.3.1/work/gluegen-2.3.1/make/lib/antlr.jar to copy. Thanks for your help!
Created attachment 410534 [details, diff] 2.2.4-dont-copy-jars.patch pardon me, files are the patches from science overlay
Created attachment 410536 [details, diff] 2.2.4-dont-strip.patch
Created attachment 410538 [details, diff] 2.2.4-dont-test-archive.patch
Created attachment 516284 [details] gluegen-2.3.2.ebuild
Created attachment 516286 [details, diff] gluegen-2.3.2-dont-copy-jars.patch
Created attachment 516288 [details, diff] gluegen-2.3.2-dont-strip.patch
Created attachment 516290 [details, diff] gluegen-2.3.2-dont-test-archive.patch
Created attachment 516292 [details, diff] gluegen-2.3.2-no-static-libstdc++.patch