diff options
author | Sven Gothel <[email protected]> | 2009-05-29 01:47:02 +0000 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2009-05-29 01:47:02 +0000 |
commit | 4c32ea23370336b99eba4c1ebd1f07c409219a15 (patch) | |
tree | 7d97e763a81f86650c2085eeeaeaf04ffaddf6bd /make/build-jogl.xml | |
parent | a7b402128a2cd00c099acde944f793455d8856a5 (diff) |
JOGL
Added OpenGL 3.0 and 3.1 support
3.0 as part of GL2 (extensions only)
3.1 forward compatible as GL3,
ie doesn't contain the GL2 fixed function stuff etc
Added code to retrieve a 3.0/3.1 context: X11/GLX and Windows/WGL
TODO: MacOSX !!
Updated GL and GLX extensions
Fixing auto GLProfile selection, determine if GL2ES[1] uses GL2 or ES
Usage of the unified GraphicsConfiguration of NativeWindow
for all platforms. Sure, the broken OS (Win32/MacOSX) have
a update mechanism for theit queried Capabilities after drawable creation.
Adding X11/GLX GLXFBConfig usage and fixing it's attribute mapping
Fixing GLX/X11 FBConfig/XVisual query function's memory leak,
using a manual implementation, which copies the data and calls XFree.
Added WGL extension WGL_ARB_create_context
Tested: Linux x86 and x86_64 GL2, ES2 and ES1
Note: Nvidia driver couldn't make the succesfully created 3.1
context current.
TODO: Verify Windows and MacOSX !!
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/branches/JOGL_2_SANDBOX@1919 232f8b59-042b-4e1e-8c03-345bb8c30851
Diffstat (limited to 'make/build-jogl.xml')
-rw-r--r-- | make/build-jogl.xml | 53 |
1 files changed, 40 insertions, 13 deletions
diff --git a/make/build-jogl.xml b/make/build-jogl.xml index c2da1cc73..1bafa44fb 100644 --- a/make/build-jogl.xml +++ b/make/build-jogl.xml @@ -55,12 +55,14 @@ This will set -> setup.noAWT -> setup.nogl2 + -> setup.nogl3 - Internal settings, may not be necessary to set them manually, since all JAR archives are orthogonal. setup.noes1 setup.noes2 setup.nogl2 + setup.nogl3 setup.noAWT setup.noutil - no com.sun.opengl.util.* setup.noX11WindowsMacOsX, which implies: @@ -97,6 +99,9 @@ </and> </condition> + <condition property="setup.nogl3"> + <isset property="setup.cdcfp"/> + </condition> <condition property="setup.nogl2"> <isset property="setup.cdcfp"/> </condition> @@ -117,6 +122,7 @@ <echo message="setup.noes1: ${setup.noes1}" /> <echo message="setup.noes2: ${setup.noes2}" /> <echo message="setup.nogl2: ${setup.nogl2}" /> + <echo message="setup.nogl3: ${setup.nogl3}" /> <condition property="setup.noX11WindowsMacOsX"> <and> @@ -174,17 +180,20 @@ <property name="java.part.gl2es12.dbg" value="javax/media/opengl/TraceGL2ES12.*, javax/media/opengl/DebugGL2ES12.*"/> + <property name="java.part.gl3" + value="com/sun/opengl/impl/**/gl3/**"/> + <property name="java.part.gl2.x11" - value="com/sun/opengl/impl/**/gl2/**, com/sun/opengl/impl/x11/glx/*"/> + value="com/sun/opengl/impl/**/gl2/**, ${java.part.gl3}, com/sun/opengl/impl/x11/glx/*"/> <property name="java.part.gl2.win" - value="com/sun/opengl/impl/**/gl2/**, com/sun/opengl/impl/windows/wgl/*"/> + value="com/sun/opengl/impl/**/gl2/**, ${java.part.gl3}, com/sun/opengl/impl/windows/wgl/*"/> <property name="java.part.gl2.osx" - value="com/sun/opengl/impl/**/gl2/**, com/sun/opengl/impl/macosx/cgl/*"/> + value="com/sun/opengl/impl/**/gl2/**, ${java.part.gl3}, com/sun/opengl/impl/macosx/cgl/*"/> <property name="java.part.gl2.dbg" - value="javax/media/opengl/TraceGL2.*, javax/media/opengl/DebugGL2.*"/> + value="javax/media/opengl/TraceGL2.*, javax/media/opengl/DebugGL2.*, javax/media/opengl/TraceGL3.*, javax/media/opengl/DebugGL3.*,"/> <property name="java.part.es1" value="javax/media/opengl/**/es1/**, com/sun/opengl/**/es1/**"/> @@ -229,6 +238,11 @@ </and> </condition> + <condition property="java.excludes.gl3" + value="${java.part.gl3}"> + <isset property="setup.nogl3"/> + </condition> + <condition property="java.excludes.gl2" value="${java.part.gl2es12.x11}, ${java.part.gl2es12.win}, ${java.part.gl2es12.osx}, ${java.part.gl2es12.dbg}, ${java.part.gl2.x11}, ${java.part.gl2.win}, ${java.part.gl2.osx}, ${java.part.gl2.dbg}, ${java.part.util.gl2}, ${java.part.glugl2}"> <isset property="setup.nogl2"/> @@ -280,7 +294,7 @@ <property name="java.excludes.fixme" value="com/sun/opengl/impl/gl2/fixme/** com/sun/javafx/audio/windows/waveout/TestSpatialization.java" /> - <property name="java.excludes.all" value="${java.excludes.fixme} ${java.excludes.egl}, ${java.excludes.gl2}, ${java.excludes.es1}, ${java.excludes.es2}, ${java.excludes.awt}, ${java.excludes.glugl2}, ${java.excludes.util}, ${java.excludes.x11}, ${java.excludes.win}, ${java.excludes.macosx}, ${java.excludes.cdcfp}" /> + <property name="java.excludes.all" value="${java.excludes.fixme} ${java.excludes.egl}, ${java.excludes.gl2}, ${java.excludes.gl3}, ${java.excludes.es1}, ${java.excludes.es2}, ${java.excludes.awt}, ${java.excludes.glugl2}, ${java.excludes.util}, ${java.excludes.x11}, ${java.excludes.win}, ${java.excludes.macosx}, ${java.excludes.cdcfp}" /> <echo message="java.excludes.all: ${java.excludes.all}" /> @@ -656,7 +670,7 @@ <target name="java.generate.gl2"> <echo message="Generating GL2 interface and implementation" /> <antcall target="java.generate.copy2temp" inheritRefs="true" /> - <gluegen src="${stub.includes.opengl}/gl.c" + <gluegen src="${stub.includes.opengl}/gl2.c" outputRootDir="../${rootrel.build.jogl}" config="${config}/gl-gl2.cfg" includeRefid="stub.includes.fileset.all.gl2" @@ -665,10 +679,22 @@ </gluegen> </target> + <target name="java.generate.gl3"> + <echo message="Generating GL3 interface and implementation" /> + <antcall target="java.generate.copy2temp" inheritRefs="true" /> + <gluegen src="${stub.includes.opengl}/gl3.c" + outputRootDir="../${rootrel.build.jogl}" + config="${config}/gl-gl3.cfg" + includeRefid="stub.includes.fileset.all.gl2" + emitter="com.sun.gluegen.opengl.GLEmitter"> + <classpath refid="gluegen.classpath" /> + </gluegen> + </target> + <target name="java.generate.gl2es12"> <echo message="Generating GL2ES12 interface and implementation" /> <antcall target="java.generate.copy2temp" inheritRefs="true" /> - <gluegen src="${stub.includes.opengl}/gl.c" + <gluegen src="${stub.includes.opengl}/gl2.c" outputRootDir="../${rootrel.build.jogl}" config="${config}/gl-gl2es12.cfg" includeRefid="stub.includes.fileset.all.gl2" @@ -701,7 +727,7 @@ </gluegen> </target> - <target name="java.generate.gl.all" depends="java.generate.gl_if, java.generate.gl2_es1_if, java.generate.gl2_es2_if, java.generate.gl2, java.generate.gl2es12, java.generate.gles1, java.generate.gles2"/> + <target name="java.generate.gl.all" depends="java.generate.gl_if, java.generate.gl2_es1_if, java.generate.gl2_es2_if, java.generate.gl2, java.generate.gl3, java.generate.gl2es12, java.generate.gles1, java.generate.gles2"/> <!-- target name="java.generate.gl.nsig" if="gluegen.nsig"> <echo message="Generating GL interface and implementation" /> @@ -849,8 +875,8 @@ <target name="java.generate.gl.platforms" > <dirset id="stub.includes.fileset.platform" dir="." includes="${stub.includes.dir}/${window.os.system}/** ${stub.includes.dir}/${window.es.system}/** ${stub.includes.dir}/common/** ${stub.includes.dir}/opengl/**" /> - <antcall target="java.generate.platform.glext" inheritRefs="true" /> <antcall target="java.generate.window.system.os" inheritRefs="true" /> + <antcall target="java.generate.platform.glext" inheritRefs="true" /> </target> <!-- @@ -1397,6 +1423,7 @@ <include name="${rootrel.src.c.openmax}/com_sun_openmax_OMXInstance.c" if="useOpenMAX"/> <include name="${rootrel.generated.c.jogl}/gl2/GL2Impl_JNI.c"/> + <include name="${rootrel.generated.c.jogl}/gl3/GL3Impl_JNI.c"/> <!--include name="${rootrel.generated.c.jogl}/GLU_JNI.c"/ EMPTY --> <include name="${rootrel.generated.c.jogl}/gl2/GLUgl2_JNI.c"/> <include name="${rootrel.generated.c.jogl}/X11/GLX*.c" if="isX11"/> @@ -1649,17 +1676,17 @@ </jar> <jar manifest="tempversion" destfile="${jogl.gl2.x11.jar}"> <fileset dir="${classes}" - includes="${java.part.gl2.x11}, ${java.part.openmax}" + includes="${java.part.gl2.x11}, ${java.part.gl3}, ${java.part.openmax}" excludes="${java.part.gl2.dbg}, ${java.part.glugl2}"/> </jar> <jar manifest="tempversion" destfile="${jogl.gl2.win.jar}"> <fileset dir="${classes}" - includes="${java.part.gl2.win}, ${java.part.openmax}" + includes="${java.part.gl2.win}, $${java.part.gl3}, {java.part.openmax}" excludes="${java.part.gl2.dbg}, ${java.part.glugl2}"/> </jar> <jar manifest="tempversion" destfile="${jogl.gl2.osx.jar}"> <fileset dir="${classes}" - includes="${java.part.gl2.osx}, ${java.part.openmax}" + includes="${java.part.gl2.osx}, $${java.part.gl3}, {java.part.openmax}" excludes="${java.part.gl2.dbg}, ${java.part.glugl2}"/> </jar> <jar manifest="tempversion" destfile="${jogl.gl2.dbg.jar}"> @@ -1689,7 +1716,7 @@ <jar manifest="tempversion" destfile="${jogl.util.jar}"> <fileset dir="${classes}" includes="${java.part.util}, ${java.part.util.glsl}" - excludes="${java.part.util.awt}, ${java.part.util.gl2}, ${java.part.util.fixedfuncemu}"/> + excludes="${java.part.util.awt}, ${java.part.util.gl2}, ${java.part.gl3}, ${java.part.util.fixedfuncemu}"/> </jar> <jar manifest="tempversion" destfile="${jogl.util.gl2.jar}"> <fileset dir="${classes}" |