From da39d5d3b46c55f88a2f051368e09284732fd440 Mon Sep 17 00:00:00 2001
From: Chia-I Wu
Date: Thu, 17 Jun 2010 16:07:46 +0800
Subject: [PATCH] egl: s/EGL_DISPLAY/EGL_PLATFORM/.
A platform is already used to mean a window system in EGL. No need to
use a different term.
---
configs/autoconf.in | 2 +-
configs/default | 4 +--
configure.ac | 34 ++++++++++++++-----------
docs/egl.html | 32 +++++++++++------------
src/egl/main/Makefile | 6 ++---
src/egl/main/egldriver.c | 19 ++++++++------
src/gallium/state_trackers/egl/Makefile | 6 ++---
src/gallium/targets/Makefile.egl | 18 ++++++-------
8 files changed, 64 insertions(+), 57 deletions(-)
diff --git a/configs/autoconf.in b/configs/autoconf.in
index 3428e3a2944..417138b2a1f 100644
--- a/configs/autoconf.in
+++ b/configs/autoconf.in
@@ -97,7 +97,7 @@ GALLIUM_DRIVERS = $(foreach DIR,$(GALLIUM_DRIVERS_DIRS),$(TOP)/src/gallium/drive
# Driver specific build vars
DRI_DIRS = @DRI_DIRS@
-EGL_DISPLAYS = @EGL_DISPLAYS@
+EGL_PLATFORMS = @EGL_PLATFORMS@
EGL_CLIENT_APIS = @EGL_CLIENT_APIS@
# Dependencies
diff --git a/configs/default b/configs/default
index 9241e807977..3d9744409ae 100644
--- a/configs/default
+++ b/configs/default
@@ -110,8 +110,8 @@ GALLIUM_WINSYS_DIRS = sw sw/xlib
GALLIUM_TARGET_DIRS = libgl-xlib
GALLIUM_STATE_TRACKERS_DIRS = glx vega
-# native displays EGL should support
-EGL_DISPLAYS = x11
+# native platforms EGL should support
+EGL_PLATFORMS = x11
EGL_CLIENT_APIS = $(GL_LIB)
# Library dependencies
diff --git a/configure.ac b/configure.ac
index 7089a87075f..21123eccccb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1301,18 +1301,22 @@ if test "x$HAVE_ST_XORG" = xyes; then
HAVE_XEXTPROTO_71="no")
fi
+AC_ARG_WITH([egl-platforms],
+ [AS_HELP_STRING([--with-egl-platforms@<:@=DIRS...@:>@],
+ [comma delimited native platforms libEGL supports, e.g.
+ "x11,kms" @<:@default=auto@:>@])],
+ [with_egl_platforms="$withval"],
+ [with_egl_platforms=yes])
AC_ARG_WITH([egl-displays],
[AS_HELP_STRING([--with-egl-displays@<:@=DIRS...@:>@],
- [comma delimited native displays libEGL supports, e.g.
- "x11,kms" @<:@default=auto@:>@])],
- [with_egl_displays="$withval"],
- [with_egl_displays=yes])
+ [DEPRECATED. Use --with-egl-platforms instead])],
+ [with_egl_platforms="$withval"])
-EGL_DISPLAYS=""
-case "$with_egl_displays" in
+EGL_PLATFORMS=""
+case "$with_egl_platforms" in
yes)
if test "x$enable_egl" = xyes && test "x$mesa_driver" != xosmesa; then
- EGL_DISPLAYS="x11"
+ EGL_PLATFORMS="x11"
fi
;;
*)
@@ -1320,18 +1324,18 @@ yes)
AC_MSG_ERROR([cannot build egl state tracker without EGL library])
fi
# verify the requested driver directories exist
- egl_displays=`IFS=', '; echo $with_egl_displays`
- for dpy in $egl_displays; do
- test -d "$srcdir/src/gallium/state_trackers/egl/$dpy" || \
- AC_MSG_ERROR([EGL display '$dpy' does't exist])
- if test "$dpy" = "fbdev"; then
+ egl_platforms=`IFS=', '; echo $with_egl_platforms`
+ for plat in $egl_platforms; do
+ test -d "$srcdir/src/gallium/state_trackers/egl/$plat" || \
+ AC_MSG_ERROR([EGL platform '$plat' does't exist])
+ if test "$plat" = "fbdev"; then
GALLIUM_WINSYS_DIRS="$GALLIUM_WINSYS_DIRS sw/fbdev"
fi
done
- EGL_DISPLAYS="$egl_displays"
+ EGL_PLATFORMS="$egl_platforms"
;;
esac
-AC_SUBST([EGL_DISPLAYS])
+AC_SUBST([EGL_PLATFORMS])
AC_ARG_WITH([egl-driver-dir],
[AS_HELP_STRING([--with-egl-driver-dir=DIR],
@@ -1579,7 +1583,7 @@ echo " Shared libs: $enable_shared"
echo " Static libs: $enable_static"
if test "$enable_egl" = yes; then
echo " EGL: $EGL_DRIVERS_DIRS"
- echo " EGL displays: $EGL_DISPLAYS"
+ echo " EGL platforms: $EGL_PLATFORMS"
else
echo " EGL: no"
fi
diff --git a/docs/egl.html b/docs/egl.html
index 559bd990469..b2198e931d0 100644
--- a/docs/egl.html
+++ b/docs/egl.html
@@ -69,17 +69,17 @@ drivers will be installed to ${libdir}/egl
.
---with-egl-displays
+--with-egl-platforms
-List the window system(s) to support. It is by default x11
,
-which supports the X Window System. Its argument is a comma separated string
-like, for example, --with-egl-displays=x11,kms
. Because an EGL
-driver decides which window system to support, this example will enable two
-(sets of) EGL drivers. One supports the X window system and the other supports
-bare KMS (kernel modesetting).
+List the native platform window system(s) to support. It is by default
+x11
, which supports the X Window System. Its argument is a comma
+separated string like, for example, --with-egl-platforms=x11,kms
.
+Because an EGL driver decides which window system to support, this example will
+enable two (sets of) EGL drivers. One supports the X window system and the
+other supports bare KMS (kernel modesetting).
-The available displays are x11
, kms
,
-fbdev
, and gdi
. The gdi
display can
+
The available platforms are x11
, kms
,
+fbdev
, and gdi
. The gdi
platform can
only be built with SCons.
@@ -151,14 +151,14 @@ specific driver. This variable is ignored for setuid/setgid binaries.
-EGL_DISPLAY
+EGL_PLATFORM
When EGL_DRIVER
is not set, the main library loads all
-EGL drivers that support a certain window system. EGL_DISPLAY
can
-be used to specify the window system and the valid values are, for example,
+EGL drivers that support a certain window system. EGL_PLATFORM
+can be used to specify the window system and the valid values are, for example,
x11
or kms
. When the variable is not set, the main
library defaults the value to the first window system listed in
---with-egl-displays
at configuration time.
+--with-egl-platforms
at configuration time.
@@ -195,9 +195,9 @@ drivers are
egl_<dpy>_vmwgfx
-<dpy>
is given by --with-egl-displays
at
+
<dpy>
is given by --with-egl-platforms
at
configuration time. There is usually one EGL driver for each combination of
-the displays listed and the pipe drivers enabled. When the display is pure
+the platforms listed and the pipe drivers enabled. When the platform is pure
software or pure hardware, non-working combinations will not be built.
Classic EGL drivers, on the other hand, support only a subset of the
@@ -322,7 +322,7 @@ should as well lock the display before using it.
- Pass the conformance tests
-- Better automatic driver selection:
EGL_DISPLAY
loads all
+ - Better automatic driver selection:
EGL_PLATFORM
loads all
drivers and might eat too much memory.
diff --git a/src/egl/main/Makefile b/src/egl/main/Makefile
index 0af964d8741..d9e9e4fcd6d 100644
--- a/src/egl/main/Makefile
+++ b/src/egl/main/Makefile
@@ -7,7 +7,7 @@ include $(TOP)/configs/current
EGL_MAJOR = 1
EGL_MINOR = 0
-INCLUDE_DIRS = -I$(TOP)/include $(X11_CFLAGS)
+INCLUDE_DIRS = -I$(TOP)/include
HEADERS = \
eglcompiler.h \
@@ -51,10 +51,10 @@ OBJECTS = $(SOURCES:.c=.o)
# use dl*() to load drivers
LOCAL_CFLAGS = -D_EGL_OS_UNIX=1
-EGL_DEFAULT_DISPLAY = $(word 1, $(EGL_DISPLAYS))
+EGL_DEFAULT_PLATFORM = $(firstword $(EGL_PLATFORMS))
LOCAL_CFLAGS += \
- -D_EGL_DEFAULT_DISPLAY=\"$(EGL_DEFAULT_DISPLAY)\" \
+ -D_EGL_DEFAULT_PLATFORM=\"$(EGL_DEFAULT_PLATFORM)\" \
-D_EGL_DRIVER_SEARCH_DIR=\"$(EGL_DRIVER_INSTALL_DIR)\"
.c.o:
diff --git a/src/egl/main/egldriver.c b/src/egl/main/egldriver.c
index ce5f0f22f05..f56214472e9 100644
--- a/src/egl/main/egldriver.c
+++ b/src/egl/main/egldriver.c
@@ -464,24 +464,27 @@ _eglPreloadUserDriver(void)
/**
- * Preload display drivers.
+ * Preload platform drivers.
*
- * Display drivers are a set of drivers that support a certain display system.
- * The display system may be specified by EGL_DISPLAY.
+ * Platform drivers are a set of drivers that support a certain window system.
+ * The window system may be specified by EGL_PLATFORM.
*
* FIXME This makes libEGL a memory hog if an user driver is not specified and
- * there are many display drivers.
+ * there are many platform drivers.
*/
static EGLBoolean
-_eglPreloadDisplayDrivers(void)
+_eglPreloadPlatformDrivers(void)
{
const char *dpy;
char prefix[32];
int ret;
- dpy = getenv("EGL_DISPLAY");
+ dpy = getenv("EGL_PLATFORM");
+ /* try deprecated env variable */
if (!dpy || !dpy[0])
- dpy = _EGL_DEFAULT_DISPLAY;
+ dpy = getenv("EGL_DISPLAY");
+ if (!dpy || !dpy[0])
+ dpy = _EGL_DEFAULT_PLATFORM;
if (!dpy || !dpy[0])
return EGL_FALSE;
@@ -515,7 +518,7 @@ _eglPreloadDrivers(void)
}
loaded = (_eglPreloadUserDriver() ||
- _eglPreloadDisplayDrivers());
+ _eglPreloadPlatformDrivers());
_eglUnlockMutex(_eglGlobal.Mutex);
diff --git a/src/gallium/state_trackers/egl/Makefile b/src/gallium/state_trackers/egl/Makefile
index a11dbf5395c..fec178ffb30 100644
--- a/src/gallium/state_trackers/egl/Makefile
+++ b/src/gallium/state_trackers/egl/Makefile
@@ -42,9 +42,9 @@ ALL_OBJECTS = $(common_OBJECTS) $(x11_OBJECTS) $(kms_OBJECTS) $(fbdev_OBJECTS)
##### TARGETS #####
-EGL_DISPLAYS_MODS = $(foreach dpy, $(EGL_DISPLAYS), libegl$(dpy).a)
+EGL_PLATFORMS_MODS = $(foreach plat, $(EGL_PLATFORMS), libegl$(plat).a)
-default: depend $(EGL_DISPLAYS_MODS)
+default: depend $(EGL_PLATFORMS_MODS)
libeglx11.a: $(x11_OBJECTS) $(common_OBJECTS) Makefile
@@ -63,7 +63,7 @@ depend:
clean:
rm -f $(ALL_OBJECTS)
- rm -f $(EGL_DISPLAYS_MODS)
+ rm -f $(EGL_PLATFORMS_MODS)
rm -f depend depend.bak
# Dummy target
diff --git a/src/gallium/targets/Makefile.egl b/src/gallium/targets/Makefile.egl
index bde5d3ce293..315856014b7 100644
--- a/src/gallium/targets/Makefile.egl
+++ b/src/gallium/targets/Makefile.egl
@@ -63,18 +63,18 @@ INCLUDES = \
##### TARGETS #####
ifeq ($(EGL_DRIVER_NAME),swrast)
-EGL_DISPLAYS := $(filter-out kms, $(EGL_DISPLAYS))
+EGL_PLATFORMS := $(filter-out kms, $(EGL_PLATFORMS))
else
-EGL_DISPLAYS := $(filter-out fbdev, $(EGL_DISPLAYS))
+EGL_PLATFORMS := $(filter-out fbdev, $(EGL_PLATFORMS))
endif
-EGL_DISPLAY_DRIVERS = $(foreach dpy, $(EGL_DISPLAYS), egl_$(dpy)_$(EGL_DRIVER_NAME).so)
+EGL_PLATFORM_DRIVERS = $(foreach plat, $(EGL_PLATFORMS), egl_$(plat)_$(EGL_DRIVER_NAME).so)
-EGL_DISPLAY_LIBS = $(foreach drv, $(EGL_DISPLAY_DRIVERS), $(TOP)/$(LIB_DIR)/egl/$(drv))
+EGL_PLATFORM_LIBS = $(foreach drv, $(EGL_PLATFORM_DRIVERS), $(TOP)/$(LIB_DIR)/egl/$(drv))
-default: $(EGL_DISPLAY_LIBS)
+default: $(EGL_PLATFORM_LIBS)
-$(EGL_DISPLAY_LIBS): $(TOP)/$(LIB_DIR)/egl/%.so: %.so
+$(EGL_PLATFORM_LIBS): $(TOP)/$(LIB_DIR)/egl/%.so: %.so
@$(INSTALL) -d $(TOP)/$(LIB_DIR)/egl
$(INSTALL) $< $(TOP)/$(LIB_DIR)/egl
@@ -97,11 +97,11 @@ egl_fbdev_$(EGL_DRIVER_NAME).so: $(EGL_DRIVER_OBJECTS) $(fbdev_ST) $(EGL_DRIVER_
clean:
-rm -f $(EGL_DRIVER_OBJECTS)
- -rm -f $(EGL_DISPLAY_DRIVERS)
+ -rm -f $(EGL_PLATFORM_DRIVERS)
-install: $(EGL_DISPLAY_LIBS)
+install: $(EGL_PLATFORM_LIBS)
$(INSTALL) -d $(DESTDIR)$(EGL_DRIVER_INSTALL_DIR)
- for lib in $(EGL_DISPLAY_LIBS); do \
+ for lib in $(EGL_PLATFORM_LIBS); do \
$(MINSTALL) -m 755 "$$lib" $(DESTDIR)$(EGL_DRIVER_INSTALL_DIR); \
done
--
2.30.2