# Driver specific build vars
DRI_DIRS = @DRI_DIRS@
-EGL_DISPLAYS = @EGL_DISPLAYS@
+EGL_PLATFORMS = @EGL_PLATFORMS@
EGL_CLIENT_APIS = @EGL_CLIENT_APIS@
# Dependencies
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
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
;;
*)
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],
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
</li>
-<li><code>--with-egl-displays</code>
+<li><code>--with-egl-platforms</code>
-<p>List the window system(s) to support. It is by default <code>x11</code>,
-which supports the X Window System. Its argument is a comma separated string
-like, for example, <code>--with-egl-displays=x11,kms</code>. 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).</p>
+<p>List the native platform window system(s) to support. It is by default
+<code>x11</code>, which supports the X Window System. Its argument is a comma
+separated string like, for example, <code>--with-egl-platforms=x11,kms</code>.
+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).</p>
-<p>The available displays are <code>x11</code>, <code>kms</code>,
-<code>fbdev</code>, and <code>gdi</code>. The <code>gdi</code> display can
+<p>The available platforms are <code>x11</code>, <code>kms</code>,
+<code>fbdev</code>, and <code>gdi</code>. The <code>gdi</code> platform can
only be built with SCons.</p>
</li>
</li>
-<li><code>EGL_DISPLAY</code>
+<li><code>EGL_PLATFORM</code>
<p>When <code>EGL_DRIVER</code> is not set, the main library loads <em>all</em>
-EGL drivers that support a certain window system. <code>EGL_DISPLAY</code> can
-be used to specify the window system and the valid values are, for example,
+EGL drivers that support a certain window system. <code>EGL_PLATFORM</code>
+can be used to specify the window system and the valid values are, for example,
<code>x11</code> or <code>kms</code>. When the variable is not set, the main
library defaults the value to the first window system listed in
-<code>--with-egl-displays</code> at configuration time.
+<code>--with-egl-platforms</code> at configuration time.
</li>
<li><code>egl_<dpy>_vmwgfx</code></li>
</ul>
-<p><code><dpy></code> is given by <code>--with-egl-displays</code> at
+<p><code><dpy></code> is given by <code>--with-egl-platforms</code> 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.</p>
<p>Classic EGL drivers, on the other hand, support only a subset of the
<ul>
<li>Pass the conformance tests</li>
-<li>Better automatic driver selection: <code>EGL_DISPLAY</code> loads all
+<li>Better automatic driver selection: <code>EGL_PLATFORM</code> loads all
drivers and might eat too much memory.</li>
</ul>
EGL_MAJOR = 1
EGL_MINOR = 0
-INCLUDE_DIRS = -I$(TOP)/include $(X11_CFLAGS)
+INCLUDE_DIRS = -I$(TOP)/include
HEADERS = \
eglcompiler.h \
# 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:
/**
- * 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;
}
loaded = (_eglPreloadUserDriver() ||
- _eglPreloadDisplayDrivers());
+ _eglPreloadPlatformDrivers());
_eglUnlockMutex(_eglGlobal.Mutex);
##### 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
clean:
rm -f $(ALL_OBJECTS)
- rm -f $(EGL_DISPLAYS_MODS)
+ rm -f $(EGL_PLATFORMS_MODS)
rm -f depend depend.bak
# Dummy target
##### 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
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