| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@102 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
All enums and functions within the specified interface (or abstract class),
will not be emitted in the resulting interface.
This simplifies the GL profile config's a lot, as well reducing the footprint.
- Adding JavaParser 'com.sun.gluegen.jgram.JavaParser',
which collects enums and functions.
- New config feature 'UnsupportedExceptionType <exception name>',
which complements the 'RuntimeExceptionType <exception name>' feature.
UnsupportedExceptionType's are thrown in case a function is not available.
- Fix: BuildComposablePipeline
- Method names are now unique by:
- name, return type, modifiers and arguments
- Cleanup:
- mv: com.sun.gluegen.runtime.opengl.GLUnifiedName -> com.sun.gluegen.opengl.GLUnifiedName
- contains only the compile time portion of the former
- add: com.sun.gluegen.opengl.runtime.GLExtensionNames
- contains the extension name handling
- bulletproof GL function and GL enum recognition.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@101 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
while adding the generic function name '__ALL__'.
This action applies to all generated functions then,
hence it lowers the maintenance of the gluegen cfg files.
Example:
ForceProcAddressGen __ALL__
LocalProcAddressCallingConvention __ALL__ GL_APIENTRY
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@97 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
typedefs where the calling convention was not specified. Provided new
LocalProcAddressCallingConvention directive to allow developer to
specify the calling convention on a per-function basis; used this in
gl-es1.cfg and gl-es2.cfg. Changed GLEmitter to force the calling
convention of the locally typedefed function pointers for OpenGL
function name unification to GL_APIENTRY, compatible with OpenGL ES 1
and OpenGL ES 2. Changed generated native glue code to #define
GL_APIENTRY appropriately on the desktop. Refactored custom C code.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@96 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
| |
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@94 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Terminology:
ARB Extensions: "GL2", "ARB", "OES", "OML"
Vendor Extensions: "EXT", "NV", "ATI", "SGI", "SGIS", "SGIX", "HP", "IBM", "WIN"
Pass-1 Unify ARB extensions with the same value
Pass-2 Unify vendor extensions,
if exist as an ARB extension with the same value.
Pass-3 Emit
Done:
- Unification of GL enumerates
- Unification of GL functions
- dynamic extension lookup
- ..
TODO:
- Break down GL.java: GL + GL2ES1ES2 (for future GL3, etc)
- Add a GL2 small implementation, to only support the GL2ES2 subset,
'GL2SubES2' ..
+++
- Fixed X11 build breakage of 'jawt' linkage.
- Fixed NEWT native code mouse- and keyevent id's,
missed sync while moving them from the bitfield notation.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@93 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Using GL.getContext() interface directly
- Adding javax.media.opengl.* to imports
ProcAddressEmitter, ProcAddressTable
- Generated class implements gluegen runtime's ProcAddressTable,
to allow generic access to 'getAddressFor(String functionName)'
JavaConfiguration, JavaEmitter
- NEW: ParentClass <ThisClass> <ParentClass>,
to allow the implementing classes to extend a user spec one
- NEW: AccessControl type 'PUBLIC_ABSTRACT",
to allow a generated impl. class to be abstract.
JavaType.getDescriptor()
- Throw a meaningfull exception in case of an unknown type,
ie a used type/struct, which could not be generated.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@84 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
null-terminated strings on Windows. Changed Windows dynamic linker to
use LoadLibraryW which is the only variant available on Windows CE.
Changed GetProcAddress to explicitly named GetProcAddressA; this is
implicitly the only variant available on Windows XP. Tested by
compiling gluegen-rt.dll for both Windows XP and Windows CE. Also
brought dynlink-unix-CustomJavaCode.java in line with modifications
that were apparently hand made to the UnixDynamicLinkerImpl and
MacOSXDynamicLinkerImpl classes.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@79 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
| |
non-const arrays of compound types and the associated copies back to
Java, in support of constructs like eglChooseConfig. Generated code
has been compiled but not yet tested. Refactorings to allow generated
glue code using StructAccessors to work on Java ME / CDC / FP +
JSR-239 NIO, as well as Java SE. Bug fix to ForceProcAddressGen.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@77 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
| |
procedure addresses
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@65 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
| |
those helper classes into their apps
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@62 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
whether to search the system path first; perhaps useful if
applications ship only a backup version of native libraries associated
with a particular Java binding. In the case of JOAL we plan to ship a
recent OpenAL implementation so we will not need to search the system
path first. Changed ForceProcAddressGen directive to force
call-through-function-pointer semantics for the targeted function.
Changed JOAL to not link directly against the OpenAL library at all,
but instead to look up all entry points using the GlueGen
NativeLibrary class (instead of the custom dlsym code, now removed) in
particular to solve DSO versioning problems on Linux. Updated EAX
binding to work with dynamically loading OpenAL. Tested on Windows so
far; more testing needed on Linux in Java Web Start scenarios.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@42 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
|
|
|
| |
subclassing
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@21 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
|
|
| |
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@14 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|
|
Restructured JOGL and JOAL build processes to separately invoke
GlueGen's main build.xml before using it to generate their code.
Refactored OS/CPU detection code into gluegen-cpptasks.xml build file
in GlueGen workspace, which is now imported by both the JOGL and JOAL
build processes. Unfortunately it seems to be somewhat difficult to
completely factor out the C compiler configuration into the GlueGen
workspace so this has been left for a later date. Added missed
ALProcAddressLookup file to JOAL workspace. Updated JOGL and JOAL
build documentation. More documentation for the GlueGen workspace is
forthcoming.
git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@3 a78bb65f-1512-4460-ba86-f6dc96a7bf27
|