summaryrefslogtreecommitdiffstats
path: root/src/jogl/classes
diff options
context:
space:
mode:
authorXerxes Rånby <[email protected]>2019-12-02 22:55:27 +0100
committerXerxes Rånby <[email protected]>2019-12-02 22:55:27 +0100
commitd3f454a3d8d608f9efe90987af3f08db89ad6e25 (patch)
tree3ac26e8a72033da74ebb78a4f1ef4d228aeaa33c /src/jogl/classes
parent56045ef6f2b33509754fbff82affca94290ae6e0 (diff)
VC4: Broadcom uses libbrcmEGL.so, libbrcmGLESv2.so, libbrcmOpenVG.so and libbrcmWFC.so since 7 Jul 2016
Raspbian integration (two libGLES side-by-side) https://github.com/anholt/mesa/issues/24
Diffstat (limited to 'src/jogl/classes')
-rw-r--r--src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java16
-rw-r--r--src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java4
2 files changed, 17 insertions, 3 deletions
diff --git a/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java b/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java
index 1b433cc30..8226c83d0 100644
--- a/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/jogamp/opengl/egl/EGLDynamicLibraryBundleInfo.java
@@ -34,6 +34,8 @@ import java.util.List;
import jogamp.common.os.PlatformPropsImpl;
import jogamp.opengl.GLDynamicLibraryBundleInfo;
+import jogamp.nativewindow.BcmVCArtifacts;
+
import com.jogamp.common.os.AndroidVersion;
import com.jogamp.common.os.Platform;
import com.jogamp.opengl.egl.EGL;
@@ -97,8 +99,16 @@ public abstract class EGLDynamicLibraryBundleInfo extends GLDynamicLibraryBundle
protected final List<String> getEGLLibNamesList() {
final List<String> eglLibNames = new ArrayList<String>();
+ /**
+ * Prefer libbrcmEGL.so over libEGL.so.1 for proprietary
+ * Broadcom graphics when the VC4 DRM Xorg driver isn't present
+ */
+ final boolean bcm_vc_iv_quirk = BcmVCArtifacts.guessVCIVUsed(false);
+
// this is the default EGL lib name, according to the spec
- eglLibNames.add("libEGL.so.1");
+ if(!bcm_vc_iv_quirk) {
+ eglLibNames.add("libEGL.so.1");
+ }
// try these as well, if spec fails
eglLibNames.add("libEGL.so");
@@ -108,6 +118,10 @@ public abstract class EGLDynamicLibraryBundleInfo extends GLDynamicLibraryBundle
// where our tool does not add it.
eglLibNames.add("libEGL");
+ if(bcm_vc_iv_quirk) {
+ 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 866e57ad7..45424c7e8 100644
--- a/src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java
+++ b/src/jogl/classes/jogamp/opengl/egl/EGLES2DynamicLibraryBundleInfo.java
@@ -52,7 +52,7 @@ public final class EGLES2DynamicLibraryBundleInfo extends EGLDynamicLibraryBundl
final List<String> libsGL = new ArrayList<String>();
/**
- * Prefer libGLESv2.so over libGLESv2.so.2 for proprietary
+ * Prefer libbrcmGLESv2.so over libGLESv2.so.2 for proprietary
* Broadcom graphics when the VC4 DRM Xorg driver isn't present
*/
final boolean bcm_vc_iv_quirk = BcmVCArtifacts.guessVCIVUsed(false);
@@ -82,7 +82,7 @@ public final class EGLES2DynamicLibraryBundleInfo extends EGLDynamicLibraryBundl
libsGL.add("GLESv2");
if (bcm_vc_iv_quirk) {
- libsGL.add("libGLESv2.so.2");
+ libsGL.add("libbrcmGLESv2.so");
}
// ES2: Alternative names