From 6e9315c3141ceb325e79f10459f4379dfdedf93e Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Thu, 31 Jan 2013 17:04:36 +0100 Subject: JOAL GlueGen: Force ProcAddress for all / ALExt*: Remove duplicates (AL) in interface _and_ implementation - Using GlueGen enhancement of commit e58643727cc36d6dc27cec9e02934c26de7621ee --- make/joal-alc.cfg | 10 +++++++++- make/joal-alext-constants.cfg | 8 ++++---- make/joal-alext.cfg | 17 +++++++++++++---- make/joal.cfg | 8 ++++++++ 4 files changed, 34 insertions(+), 9 deletions(-) diff --git a/make/joal-alc.cfg b/make/joal-alc.cfg index c319078..bd5a1d1 100755 --- a/make/joal-alc.cfg +++ b/make/joal-alc.cfg @@ -13,6 +13,15 @@ ProcAddressTableClassName ALCProcAddressTable GetProcAddressTableExpr alcProcAddressTable ProcAddressNameExpr LP $UPPERCASE({0}) +# Force all of the methods to be emitted using dynamic linking so we +# don't need to link against any emulation library on the desktop or +# depend on the presence of an import library for a particular device +ForceProcAddressGen __ALL__ + +# Also force the calling conventions of the locally generated function +# pointer typedefs for these routines to ALC_APIENTRY +LocalProcAddressCallingConvention __ALL__ ALC_APIENTRY + Import java.io.UnsupportedEncodingException Import java.util.* Import com.jogamp.openal.* @@ -26,7 +35,6 @@ Ignore ^ALC_.+ # implement alcGetString(NULL, ALC_DEVICE_SPECIFIER) in another method ReturnsString alcGetString ManuallyImplement alcGetString -ForceProcAddressGen alcGetString # Note that we don't declare this as "ReturnsString" because we're # going to wrap it in another method diff --git a/make/joal-alext-constants.cfg b/make/joal-alext-constants.cfg index 2d6e03c..4cd8cf0 100644 --- a/make/joal-alext-constants.cfg +++ b/make/joal-alext-constants.cfg @@ -4,10 +4,10 @@ Include joal-common.cfg Style InterfaceOnly JavaClass ALExtConstants -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/AL.java -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALConstants.java -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALC.java -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALCConstants.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/AL.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALConstants.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALC.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALCConstants.java # Factor out the OpenAL constants into their own interface #IgnoreNot ^ALC_.+ diff --git a/make/joal-alext.cfg b/make/joal-alext.cfg index 96c0322..d57b9a3 100644 --- a/make/joal-alext.cfg +++ b/make/joal-alext.cfg @@ -8,16 +8,25 @@ ImplJavaClass ALExtAbstractImpl AccessControl ALExtAbstractImpl PUBLIC_ABSTRACT Extends ALExt ALExtConstants -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/AL.java -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALConstants.java -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALC.java -ExtendedInterfaceSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALCConstants.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/AL.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALConstants.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALC.java +ExtendedIntfAndImplSymbolsIgnore ../build-temp/gensrc/classes/com/jogamp/openal/ALCConstants.java EmitProcAddressTable true ProcAddressTableClassName ALExtProcAddressTable GetProcAddressTableExpr alExtProcAddressTable ProcAddressNameExpr LP $UPPERCASE({0}) +# Force all of the methods to be emitted using dynamic linking so we +# don't need to link against any emulation library on the desktop or +# depend on the presence of an import library for a particular device +ForceProcAddressGen __ALL__ + +# Also force the calling conventions of the locally generated function +# pointer typedefs for these routines to AL_APIENTRY +LocalProcAddressCallingConvention __ALL__ AL_APIENTRY + Import java.io.UnsupportedEncodingException Import java.util.* Import com.jogamp.openal.* diff --git a/make/joal.cfg b/make/joal.cfg index 6b1bd32..661b84e 100755 --- a/make/joal.cfg +++ b/make/joal.cfg @@ -12,6 +12,14 @@ ProcAddressTableClassName ALProcAddressTable GetProcAddressTableExpr alProcAddressTable ProcAddressNameExpr LP $UPPERCASE({0}) +# Force all of the methods to be emitted using dynamic linking so we +# don't need to link against any emulation library on the desktop or +# depend on the presence of an import library for a particular device +ForceProcAddressGen __ALL__ + +# Also force the calling conventions of the locally generated function +# pointer typedefs for these routines to AL_APIENTRY +LocalProcAddressCallingConvention __ALL__ AL_APIENTRY Import com.jogamp.openal.* Import jogamp.openal.* -- cgit v1.2.3