summaryrefslogtreecommitdiffstats
path: root/make/joal.cfg
diff options
context:
space:
mode:
authorkbr <[email protected]>2006-08-27 03:52:08 +0000
committerkbr <[email protected]>2006-08-27 03:52:08 +0000
commitab1d8906991beca3829f2a26ef1e12b0e3f5ee6b (patch)
treec8a70d2cd195a9db763e2a56860c85475459a152 /make/joal.cfg
parentbdf7b44a36265373606da7556d85dfb9c47dcfdd (diff)
Changed NativeLibrary.open() to accept boolean argument indicating
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:///home/mbien/NetBeansProjects/JOGAMP/joal-sync/git-svn/../svn-server-sync/joal/trunk@269 03bf7f67-59de-4072-a415-9a990d468a3f
Diffstat (limited to 'make/joal.cfg')
-rwxr-xr-xmake/joal.cfg21
1 files changed, 4 insertions, 17 deletions
diff --git a/make/joal.cfg b/make/joal.cfg
index 7e2d594..3bc9350 100755
--- a/make/joal.cfg
+++ b/make/joal.cfg
@@ -7,8 +7,6 @@ ImplPackage net.java.games.joal.impl
ImplJavaClass ALImpl
Extends AL ALConstants
-Implements ALImpl DynamicLookupHelper
-
EmitProcAddressTable true
ProcAddressTableClassName ALProcAddressTable
GetProcAddressTableExpr ALProcAddressLookup.getALProcAddressTable()
@@ -26,17 +24,13 @@ Ignore ^AL_.+
# operation in order to populate the ALProcAddressTable and
# ALCProcAddressTable. If / when it is fixed and we don't need
# compatibility with preexisting OpenAL 1.0 and 1.1 installations we
-# can enable the code below and delete the custom C code for
-# dynamicLookupFunction0.
+# can enable the code below, except presumably for the bootstrapping
+# routines alcOpenDevice, alcCreateContext, alcMakeContextCurrent, and
+# alGetProcAddress itself.
Ignore alGetProcAddress
# This routine is not exposed in the public API
# AccessControl alGetProcAddress PACKAGE_PRIVATE
-# And it's also statically linked for bootstrapping
-# (could also consider looking it up via dlsym to more fully allow
-# unloading of OpenAL, but that doesn't seem necessary and requires
-# more native code to load/unload libraries)
-# SkipProcAddressGen alGetProcAddress
# We also have to hack its return type for now because we can't make
# just that void* opaque
# Opaque long ALproc
@@ -60,12 +54,5 @@ CustomCCode #define __cdecl /* Trim non-standard keyword */
CustomCCode #endif
CustomCCode #include "efx.h"
-CustomJavaCode ALImpl /** Provides dlsym() capabilities because alGetProcAddress is
-CustomJavaCode ALImpl broken for core OpenAL routines at least up through OpenAL 1.1. */
-CustomJavaCode ALImpl public long dynamicLookupFunction(String functionName) {
-CustomJavaCode ALImpl return dynamicLookupFunction0(functionName);
-CustomJavaCode ALImpl }
-CustomJavaCode ALImpl private native long dynamicLookupFunction0(String functionName);
-
IncludeAs CustomCCode joal-common-CustomCCode.c
-IncludeAs CustomCCode joal-CustomCCode.c
+