aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--config/common.mk13
1 files changed, 11 insertions, 2 deletions
diff --git a/config/common.mk b/config/common.mk
index 8d7d841d..a30824ac 100644
--- a/config/common.mk
+++ b/config/common.mk
@@ -243,8 +243,17 @@ else
BOARD_EGL_CFG := vendor/replicant/prebuilt/softwaregl/configs/egl.cfg
PRODUCT_PROPERTY_OVERRIDES += ro.softwaregl=1
-# use Android's software renderer by default
-PRODUCT_PROPERTY_OVERRIDES += ro.libagl=1
+
+# This sets the default OpenGL implementation:
+# - with ro.libagl=1, libagl is always used
+# - with ro.libagl=0, LLVMpipe is used by default but it's possible to override
+# that and use libagl for specific binaries by creating empty configuration
+# files in /system/etc/libGLES_android/ with the binary paths paths.
+# For instance to make SurfaceFlinger use libagl you can run this command:
+# # touch /system/etc/libGLES_android/system/bin/surfaceflinger
+# When launching that binary, the EGL loader will then check if that file
+# exists to decide on which OpenGL implementation to use.
+PRODUCT_PROPERTY_OVERRIDES += ro.libagl=0
PRODUCT_PACKAGE_OVERLAYS += vendor/replicant/overlay/softwaregl
endif