diff options
author | Xerxes Rånby <[email protected]> | 2019-12-04 00:11:40 +0100 |
---|---|---|
committer | Xerxes Rånby <[email protected]> | 2019-12-04 00:11:40 +0100 |
commit | 164db661e2688bfbc53fec3357fc6885b14ab893 (patch) | |
tree | 8d38d1c7d1eef9f71f0bbec2b2336e74eddbb890 /src/jogl/classes | |
parent | d3f454a3d8d608f9efe90987af3f08db89ad6e25 (diff) |
VC4: Only load Broadcom EGL driver when guessVCIVUsed
Broadcom VC IV can be used from
both console and from inside X11
When used from inside X11
rendering is done on an DispmanX overlay surface
while keeping an X11 nativewindow under as input.
When Broadcom VC IV is guessed
only the Broadcom DispmanX EGL driver is loaded.
Therefore standard TYPE_X11 EGL can not be used.
Diffstat (limited to 'src/jogl/classes')
-rw-r--r-- | src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java | 20 | ||||
-rw-r--r-- | src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java | 56 |
2 files changed, 36 insertions, 40 deletions
diff --git a/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java b/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java index 8226c83d0..8d993abc4 100644 --- a/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java +++ b/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java @@ -105,22 +105,20 @@ public abstract class EGLDynamicLibraryBundleInfo extends GLDynamicLibraryBundle */ final boolean bcm_vc_iv_quirk = BcmVCArtifacts.guessVCIVUsed(false); - // this is the default EGL lib name, according to the spec if(!bcm_vc_iv_quirk) { + // this is the default EGL lib name, according to the spec eglLibNames.add("libEGL.so.1"); - } - - // try these as well, if spec fails - eglLibNames.add("libEGL.so"); - eglLibNames.add("EGL"); - // for windows distributions using the 'unlike' lib prefix, - // where our tool does not add it. - eglLibNames.add("libEGL"); + // try these as well, if spec fails + eglLibNames.add("libEGL.so"); + eglLibNames.add("EGL"); - if(bcm_vc_iv_quirk) { + // for windows distributions using the 'unlike' lib prefix, + // where our tool does not add it. + eglLibNames.add("libEGL"); + } else { eglLibNames.add("libbrcmEGL.so"); - } + } return eglLibNames; } diff --git a/src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java b/src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java index 45424c7e8..401b3b6e9 100644 --- a/src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java +++ b/src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java @@ -57,43 +57,41 @@ public final class EGLES2DynamicLibraryBundleInfo extends EGLDynamicLibraryBundl */ final boolean bcm_vc_iv_quirk = BcmVCArtifacts.guessVCIVUsed(false); - // ES3: This is the default lib name, according to the spec - libsGL.add("libGLESv3.so.3"); + if (bcm_vc_iv_quirk) { + libsGL.add("libbrcmGLESv2.so"); + } else { + // ES3: This is the default lib name, according to the spec + libsGL.add("libGLESv3.so.3"); - // ES3: Try these as well, if spec fails - libsGL.add("libGLESv3.so"); - libsGL.add("GLESv3"); + // ES3: Try these as well, if spec fails + libsGL.add("libGLESv3.so"); + libsGL.add("GLESv3"); - // ES3: Alternative names - libsGL.add("GLES30"); + // ES3: Alternative names + libsGL.add("GLES30"); - // ES3: For windows distributions using the 'unlike' lib prefix - // where our tool does not add it. - libsGL.add("libGLESv3"); - libsGL.add("libGLES30"); + // ES3: For windows distributions using the 'unlike' lib prefix + // where our tool does not add it. + libsGL.add("libGLESv3"); + libsGL.add("libGLES30"); - // ES2: This is the default lib name, according to the spec - if (!bcm_vc_iv_quirk) { + // ES2: This is the default lib name, according to the spec libsGL.add("libGLESv2.so.2"); - } - - // ES2: Try these as well, if spec fails - libsGL.add("libGLESv2.so"); - libsGL.add("GLESv2"); - if (bcm_vc_iv_quirk) { - libsGL.add("libbrcmGLESv2.so"); - } + // ES2: Try these as well, if spec fails + libsGL.add("libGLESv2.so"); + libsGL.add("GLESv2"); - // ES2: Alternative names - libsGL.add("GLES20"); - libsGL.add("GLESv2_CM"); + // ES2: Alternative names + libsGL.add("GLES20"); + libsGL.add("GLESv2_CM"); - // ES2: For windows distributions using the 'unlike' lib prefix - // where our tool does not add it. - libsGL.add("libGLESv2"); - libsGL.add("libGLESv2_CM"); - libsGL.add("libGLES20"); + // ES2: For windows distributions using the 'unlike' lib prefix + // where our tool does not add it. + libsGL.add("libGLESv2"); + libsGL.add("libGLESv2_CM"); + libsGL.add("libGLES20"); + } libsList.add(libsGL); } |