summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Simplifying ForceProcAddressGen and LocalProcAddressCallingConvention,Sven Gothel2008-07-064-3/+50
| | | | | | | | | | | | | 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
* Fixed Windows-specific problem with locally generated function pointer Kenneth Russel2008-07-068-15/+63
| | | | | | | | | | | | | | 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
* Fixed fine javadoc entries for aliased/unified GL functionsSven Gothel2008-07-052-15/+13
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@95 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added fine javadoc entries for aliased/unified GL functionsSven Gothel2008-07-054-13/+71
| | | | 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
* GL Unification 2nd round.Sven Gothel2008-07-049-150/+556
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* GL Unification 1st round.Sven Gothel2008-07-032-59/+384
| | | | | | | | | | | | | | | | | | 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 TODO: - Break down GL.java enumerations: GL + GL2ES (for future GL3) - Same for function calls .. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@90 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* OpenGL Composable Pipeline:Sven Gothel2008-06-216-11/+92
| | | | | | | | | | | | | | | | | | | | | | - 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
* Added debugging support via -Dgluegen.debug.ProcAddressHelper and Kenneth Russel2008-05-301-0/+44
| | | | | | | -Dgluegen.debug.ProcAddressHelper.prefix git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@82 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added Windows (CE) / ARM to the list of known OS/CPU combinationsKenneth Russel2008-05-301-0/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@81 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Bug fixes to mangling of JNI method names when arrays of compound Kenneth Russel2008-05-291-4/+12
| | | | | | | types are present, and to the new CMethodBindingEmitter.isUTF8Type() git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@80 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changed implementation of ArgumentIsString to work with wide-character Kenneth Russel2008-05-276-96/+185
| | | | | | | | | | | | | | 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
* Added support for passing outgoing arrays of compound types, including Kenneth Russel2008-05-269-53/+193
| | | | | | | | | | | 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
* Refactorings to support building JOGL and supporting libraries on Kenneth Russel2008-05-135-14/+395
| | | | | | | Java ME / CDC / FP git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@75 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed Issue 6: unqualified class names in generated java code Kenneth Russel2008-04-193-15/+15
| | | | | | | | | | Applied and expanded patch from user tck to fully qualify all references to New I/O classes in generated code. Tested by removing Import of java.nio.* from JOGL and JOAL; required modification of the custom Java code for those packages, but otherwise working well. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@73 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changes for 64-bit Mac OS X from dhale; unclear why things worked earlierKenneth Russel2008-02-232-0/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@72 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changed structure layout for 32-bit Windows to more closely match what Kenneth Russel2007-09-302-16/+19
| | | | | | | | the C compiler produces. More work is needed in this area. Synchronized StructLayout and CPU classes. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@69 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Synced loadLibraryInternal implementation with JNLPAppletLauncher's Kenneth Russel2007-07-211-1/+12
| | | | | | | recommended code git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@68 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Updated NativeLibLoader to work with JNLPAppletLauncherKenneth Russel2007-07-041-1/+19
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@67 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed bug in handling of package-private native methods called through Kenneth Russel2007-06-291-4/+10
| | | | | | | procedure addresses git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@65 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added linux / x86 (which is reported by IBM's JDK) as a supported Kenneth Russel2007-06-281-0/+1
| | | | | | | StructLayout platform git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@64 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed build problem with last checkin to make GlueGen runtime packageKenneth Russel2007-06-071-0/+1
| | | | | | | configurable git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@63 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added GlueGenRuntimePackage to allow people to rename and incorporate Kenneth Russel2007-06-044-3/+19
| | | | | | | 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
* More robust code for direct / indirect buffer checkingKenneth Russel2007-06-031-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@61 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Corrected mismatch in logic deciding const-ness of pointer-to-pointer Kenneth Russel2007-05-121-6/+1
| | | | | | | types uncovered by user Rogue git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@60 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* - Add a fix (from Ken Russel) for properly parsing negative constants in enumskrishna_gadepalli2007-03-053-3/+13
| | | | | | | | | by adding getAllChildrenText() - Fixed the lineDirective() method in PCPP.java to emit the correct format of the line directive git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@58 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Incorporated fixes from Krishna Gadepalli in handling of enumsKenneth Russel2007-02-271-4/+20
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@57 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed Issue 262: DRIHack problems with ATI and possibly other driversKenneth Russel2007-01-211-0/+27
| | | | | | | | | | | Added support to GlueGen's NativeLibrary class for relative library path names which do not require expansion; for example, "libGL.so.1". Changed the DRIHack to first attempt to open libGL.so.1 instead of "GL", which expanded to "libGL.so". For some reason, this causes ATI's drivers to be picked up properly. Tested with various JOGL demos. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@56 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixes for building with Visual Studio .NET 2003 (Service Pack 1)Kenneth Russel2007-01-031-2/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@55 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed latent problem with lookup of native libraries using ClassLoaderKenneth Russel2006-12-221-2/+16
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@54 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed typo in commentKenneth Russel2006-12-041-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@52 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Removed native code for DRIHack and replaced it with code using theKenneth Russel2006-11-241-0/+8
| | | | | | | | | | | | | | | | | | | | | GlueGen runtime library (specifically the NativeLibrary class). Updated the build.xml, in particular the dist targets, to no longer build or copy this native library. Updated the NativeLibrary class to allow specification of the full path to the library. Removed the GlueGen runtime classes from jogl.jar; these are now expected to reside in gluegen-rt.jar and it is expected that developers will have this on their CLASSPATH. Updated the dist target to include the gluegen-rt native library and jar file. Updated the JOGLAppletLauncher to download and unpack the gluegen-rt-natives jar as well as the jogl-natives jar. Updated the HowToBuild, user guide, and JOGLAppletLauncher documentation for this restructuring. Fixed bug in gluegen-cpptasks.xml in detection of Solaris/SPARCv9 and refactored targets further. Tested on Solaris/x86 so far; further testing and debugging of the nightly builds and applet launcher, and update of the JOGL applet test, to follow. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@51 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Updated glext.h to current one from khronos.org subversion repository Kenneth Russel2006-11-203-0/+23
| | | | | | | | | including OpenGL 2.1 entry points and definitions. Minor changes to GlueGen and PCPP to allow slightly more complicated #ifdef constructs and new Windows built-in types to parse. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@50 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed Issue 3: Support for backslash line-splitting by PCPP Kenneth Russel2006-10-142-1/+182
| | | | | | | | Added ConcatenatingReader class and used it internally in PCPP to stitch together lines ending in backslash/newline. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@49 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed Issue 2: Enable pushing bug in PCPP Kenneth Russel2006-09-261-1/+1
| | | | | | | Applied, tested and verified suggested fix by tedmunds git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@48 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Removed use of Class.getDeclaredFields() from ProcAddressHelper due to Kenneth Russel2006-09-031-2/+2
| | | | | | | security-related issues on Mac OS X git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@47 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed run-time breakage due to NativeLibrary usage in JOAL. AddedKenneth Russel2006-09-031-8/+19
| | | | | | | search of Frameworks directory for NativeLibrary on Mac OS X. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@44 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changed NativeLibrary.open() to accept boolean argument indicating Kenneth Russel2006-08-276-15/+91
| | | | | | | | | | | | | | | | | | 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
* Added NativeLibrary helper class to com.sun.gluegen.runtime package, Kenneth Russel2006-08-019-0/+842
| | | | | | | | | | | | | | | | | | | | | principally to generally solve the problem of downloading dependent libraries of GlueGen-generated native code, as in the case of JOAL and OpenAL reported recently by Shawn Kendall on JOAL forums. Autogenerated Java and native code associated with this new NativeLibrary helper class is currently checked in to the GlueGen workspace to make it easier to build across multiple platforms; it can be regenerated by running the generate.nativelibrary.sources Ant target in the GlueGen workspace. Building of the native code in the GlueGen workspace is currently disabled by default and can be enabled by specifying -Dbuild.native=1 on the ant command line. Use of the new NativeLibrary class in JOAL is currently disabled by default and can be enabled by specifying -Djoal.use.gluegen=1 to applications using JOAL. New functionality has been lightly tested with JOAL on Windows and appears to be working. More testing, including build and Java Web Start deployment testing, to follow on other platforms. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@37 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed problem with glue code generation for outgoing void** arguments Kenneth Russel2006-07-081-0/+4
| | | | | | | | pointed out by users Dj3hut1 and kicklee on JOGL forum in the context of glMultiDrawElements calls git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@35 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed and improved handling of Opaque directives for multiple pointer Kenneth Russel2006-05-283-18/+100
| | | | | | | | depths in particular to fix AGLPbuffer case supplied by Justin Couch. Tested with builds on Windows, Linux and Mac OS X and AGL test case. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@33 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Applied fix from user GKW on javagaming.org forums for building from Kenneth Russel2006-05-032-0/+2
| | | | | | | within NetBeans git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@32 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Incorporated NativeTaglet sources from cylab into gluegen source tree Kenneth Russel2006-04-271-0/+227
| | | | | | | | after receiving contributor agreement. Updated jogl's javadoc rules to point to NativeTaglet in gluegen.jar. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@31 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Issue number:Travis Bryson2006-04-252-0/+2
| | | | | | | | | | | | | | | | | | | Obtained from: Submitted by: Reviewed by: Add proper 64 bit Sparcv9 detection. These changes are necessary for 64 bit JOGL build on sparc solaris. Modified Files: make/gluegen-cpptasks.xml src/java/com/sun/gluegen/StructLayout.java src/java/com/sun/gluegen/runtime/CPU.java ---------------------------------------------------------------------- git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@30 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed Issue 212: Incorporate patch to add URL links to GL javadoc Kenneth Russel2006-04-177-5/+40
| | | | | | | | | | | | | Incorporated patch from user cylab on javagaming.org forums to generate @native tags in GL javadoc which are postprocessed using a taglet: http://www.javagaming.org/forums/index.php?topic=12629.0 Modified supplied patch to restrict the @native designation to only the function name, and to understand OpenGL data type-related suffixes (i.e., glVertex -> glVertex3f). git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@29 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added patch from user mabraham on javagaming.org forums for building Kenneth Russel2006-04-142-1/+3
| | | | | | | on Windows 64-bit git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@28 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added TypeInfo.toString() from Justin CouchKenneth Russel2006-04-131-0/+9
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@27 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Clarified CPU javadocKenneth Russel2006-04-131-2/+2
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@26 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Support for building on HP/UX from user metasim on JOGL forumKenneth Russel2006-04-132-2/+4
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@25 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Applied Unignore / IgnoreNot patch from Justin CouchKenneth Russel2006-03-251-1/+25
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@23 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added NativeSignatureEmitterKenneth Russel2006-03-063-0/+789
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@22 a78bb65f-1512-4460-ba86-f6dc96a7bf27