diff options
author | Eric Anholt <[email protected]> | 2012-02-05 10:46:13 +0100 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2012-02-29 11:52:40 -0800 |
commit | 88612029f6ce9d2717220a0ef31bfe71a8c85529 (patch) | |
tree | d86254fa4af549ab8850c39d07b929ea6cb82fd2 /src | |
parent | 28d92eff73a0821e7a73b04d3f50e715850dc5e9 (diff) |
egl/main: Convert to automake.
The drivers/ walk-through-subdirs makefile is converted as well so I
didn't need to keep EGL_DRIVERS_DIRS along with the per-driver
HAVE_EGL_DRIVER_WHATEVER.
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/egl/drivers/.gitignore | 2 | ||||
-rw-r--r-- | src/egl/drivers/Makefile | 31 | ||||
-rw-r--r-- | src/egl/drivers/Makefile.am | 30 | ||||
-rw-r--r-- | src/egl/drivers/Makefile.template | 2 | ||||
-rw-r--r-- | src/egl/main/.gitignore | 5 | ||||
-rw-r--r-- | src/egl/main/Makefile | 183 | ||||
-rw-r--r-- | src/egl/main/Makefile.am | 138 | ||||
-rw-r--r-- | src/egl/main/egl.pc.in | 16 | ||||
-rw-r--r-- | src/egl/main/egllog.c | 2 |
9 files changed, 185 insertions, 224 deletions
diff --git a/src/egl/drivers/.gitignore b/src/egl/drivers/.gitignore new file mode 100644 index 00000000000..282522db034 --- /dev/null +++ b/src/egl/drivers/.gitignore @@ -0,0 +1,2 @@ +Makefile +Makefile.in diff --git a/src/egl/drivers/Makefile b/src/egl/drivers/Makefile deleted file mode 100644 index dde4ee22551..00000000000 --- a/src/egl/drivers/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -# src/egl/drivers/Makefile - -TOP = ../../.. -include $(TOP)/configs/current - -SUBDIRS = $(EGL_DRIVERS_DIRS) - - -default: subdirs - - -subdirs: - @for dir in $(SUBDIRS) ; do \ - if [ -d $$dir ] ; then \ - (cd $$dir ; $(MAKE)) || exit 1 ; \ - fi \ - done - -install: - @ for dir in $(SUBDIRS) ; do \ - if [ -d $$dir ] ; then \ - (cd $$dir ; $(MAKE) install) || exit 1 ; \ - fi \ - done - -clean: - @for dir in $(SUBDIRS) ; do \ - if [ -d $$dir ] ; then \ - (cd $$dir ; $(MAKE) clean) ; \ - fi \ - done diff --git a/src/egl/drivers/Makefile.am b/src/egl/drivers/Makefile.am new file mode 100644 index 00000000000..99d5b80045f --- /dev/null +++ b/src/egl/drivers/Makefile.am @@ -0,0 +1,30 @@ +# Copyright © 2012 Intel Corporation +# +# Permission is hereby granted, free of charge, to any person obtaining a +# copy of this software and associated documentation files (the "Software"), +# to deal in the Software without restriction, including without limitation +# the rights to use, copy, modify, merge, publish, distribute, sublicense, +# and/or sell copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice (including the next +# paragraph) shall be included in all copies or substantial portions of the +# Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +SUBDIRS = + +if HAVE_EGL_DRIVER_GLX +SUBDIRS += glx +endif + +if HAVE_EGL_DRIVER_DRI2 +SUBDIRS += dri2 +endif diff --git a/src/egl/drivers/Makefile.template b/src/egl/drivers/Makefile.template index e96f9975540..894ec4a028e 100644 --- a/src/egl/drivers/Makefile.template +++ b/src/egl/drivers/Makefile.template @@ -13,7 +13,7 @@ EGL_OBJECTS = $(EGL_SOURCES:.c=.o) -default: depend lib$(EGL_DRIVER).a +all: depend lib$(EGL_DRIVER).a lib$(EGL_DRIVER).a: $(EGL_OBJECTS) Makefile $(TOP)/src/egl/drivers/Makefile.template @$(MKLIB) -o $(EGL_DRIVER) -static $(EGL_OBJECTS) diff --git a/src/egl/main/.gitignore b/src/egl/main/.gitignore new file mode 100644 index 00000000000..4d0c7d524f7 --- /dev/null +++ b/src/egl/main/.gitignore @@ -0,0 +1,5 @@ +.deps +.libs +Makefile +Makefile.in +libEGL.la diff --git a/src/egl/main/Makefile b/src/egl/main/Makefile deleted file mode 100644 index 91d761731fc..00000000000 --- a/src/egl/main/Makefile +++ /dev/null @@ -1,183 +0,0 @@ -# src/egl/main/Makefile - -TOP = ../../.. -include $(TOP)/configs/current - - -EGL_MAJOR = 1 -EGL_MINOR = 0 - -INCLUDE_DIRS = -I$(TOP)/include - -HEADERS = \ - eglcompiler.h \ - eglconfig.h \ - eglcontext.h \ - eglcurrent.h \ - egldefines.h \ - egldisplay.h \ - egldriver.h \ - eglglobals.h \ - eglimage.h \ - egllog.h \ - eglmisc.h \ - eglmode.h \ - eglmutex.h \ - eglscreen.h \ - eglstring.h \ - eglsurface.h \ - eglsync.h - -SOURCES = \ - eglapi.c \ - eglarray.c \ - eglconfig.c \ - eglcontext.c \ - eglcurrent.c \ - egldisplay.c \ - egldriver.c \ - eglfallbacks.c \ - eglglobals.c \ - eglimage.c \ - egllog.c \ - eglmisc.c \ - eglmode.c \ - eglscreen.c \ - eglstring.c \ - eglsurface.c \ - eglsync.c - -OBJECTS = $(SOURCES:.c=.o) - - -# use dl*() to load drivers -LOCAL_CFLAGS = -D_EGL_OS_UNIX=1 -LOCAL_LIBS = - -# egl_dri2 and egl_glx are built-ins -ifeq ($(filter dri2, $(EGL_DRIVERS_DIRS)),dri2) -LOCAL_CFLAGS += -D_EGL_BUILT_IN_DRIVER_DRI2 -LOCAL_LIBS += $(TOP)/src/egl/drivers/dri2/libegl_dri2.a -ifneq ($(findstring x11, $(EGL_PLATFORMS)),) -EGL_LIB_DEPS += $(XCB_DRI2_LIBS) -endif -EGL_LIB_DEPS += $(LIBUDEV_LIBS) $(DLOPEN_LIBS) $(LIBDRM_LIB) -endif -ifeq ($(filter glx, $(EGL_DRIVERS_DIRS)),glx) -LOCAL_CFLAGS += -D_EGL_BUILT_IN_DRIVER_GLX -LOCAL_LIBS += $(TOP)/src/egl/drivers/glx/libegl_glx.a -EGL_LIB_DEPS += $(X11_LIBS) $(DLOPEN_LIBS) -endif - -# libs/cflags for display type autodetection -ifneq ($(findstring wayland, $(EGL_PLATFORMS)),) -LOCAL_LIBS += $(TOP)/src/egl/wayland/wayland-drm/.libs/libwayland-drm.a -EGL_LIB_DEPS += $(WAYLAND_LIBS) -INCLUDE_DIRS += $(WAYLAND_CFLAGS) -endif -ifneq ($(findstring drm, $(EGL_PLATFORMS)),) -EGL_LIB_DEPS += -lgbm -INCLUDE_DIRS += -I$(TOP)/src/gbm/main -endif - -# translate --with-egl-platforms to _EGLPlatformType -EGL_NATIVE_PLATFORM=_EGL_INVALID_PLATFORM -ifeq ($(firstword $(EGL_PLATFORMS)),x11) -EGL_NATIVE_PLATFORM=_EGL_PLATFORM_X11 -endif -ifeq ($(firstword $(EGL_PLATFORMS)),wayland) -EGL_NATIVE_PLATFORM=_EGL_PLATFORM_WAYLAND -endif -ifeq ($(firstword $(EGL_PLATFORMS)),drm) -EGL_NATIVE_PLATFORM=_EGL_PLATFORM_DRM -endif -ifeq ($(firstword $(EGL_PLATFORMS)),fbdev) -EGL_NATIVE_PLATFORM=_EGL_PLATFORM_FBDEV -endif -ifeq ($(firstword $(EGL_PLATFORMS)),null) -EGL_NATIVE_PLATFORM=_EGL_PLATFORM_NULL -endif - -ifneq ($(findstring x11, $(EGL_PLATFORMS)),) -LOCAL_CFLAGS += -DHAVE_X11_PLATFORM -endif -ifneq ($(findstring wayland, $(EGL_PLATFORMS)),) -LOCAL_CFLAGS += -DHAVE_WAYLAND_PLATFORM -endif -ifneq ($(findstring drm, $(EGL_PLATFORMS)),) -LOCAL_CFLAGS += -DHAVE_DRM_PLATFORM -endif -ifneq ($(findstring fbdev, $(EGL_PLATFORMS)),) -LOCAL_CFLAGS += -DHAVE_FBDEV_PLATFORM -endif -ifneq ($(findstring null, $(EGL_PLATFORMS)),) -LOCAL_CFLAGS += -DHAVE_NULL_PLATFORM -endif - -LOCAL_CFLAGS += \ - -D_EGL_NATIVE_PLATFORM=$(EGL_NATIVE_PLATFORM) \ - -D_EGL_DRIVER_SEARCH_DIR=\"$(EGL_DRIVER_INSTALL_DIR)\" - -.c.o: - $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $(LOCAL_CFLAGS) $< -o $@ - - - -default: depend library - - -# EGL Library -library: $(TOP)/$(LIB_DIR)/$(EGL_LIB_NAME) - -$(TOP)/$(LIB_DIR)/$(EGL_LIB_NAME): $(OBJECTS) $(LOCAL_LIBS) - $(MKLIB) -o $(EGL_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \ - -major $(EGL_MAJOR) -minor $(EGL_MINOR) \ - -install $(TOP)/$(LIB_DIR) $(MKLIB_OPTIONS) \ - -L$(TOP)/$(LIB_DIR) $(EGL_LIB_DEPS) \ - $(OBJECTS) $(LOCAL_LIBS) - -install-headers: - $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/KHR - $(INSTALL) -m 644 $(TOP)/include/KHR/*.h \ - $(DESTDIR)$(INSTALL_INC_DIR)/KHR - $(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/EGL - $(INSTALL) -m 644 $(TOP)/include/EGL/*.h \ - $(DESTDIR)$(INSTALL_INC_DIR)/EGL - -PKG_CONFIG_DIR = $(INSTALL_LIB_DIR)/pkgconfig - -gl_pcedit = sed \ - -e 's,@INSTALL_DIR@,$(INSTALL_DIR),' \ - -e 's,@INSTALL_LIB_DIR@,$(INSTALL_LIB_DIR),' \ - -e 's,@INSTALL_INC_DIR@,$(INSTALL_INC_DIR),' \ - -e 's,@VERSION@,$(MESA_MAJOR).$(MESA_MINOR).$(MESA_TINY),' \ - -e 's,@EGL_PC_REQ_PRIV@,$(EGL_PC_REQ_PRIV),' \ - -e 's,@EGL_PC_LIB_PRIV@,$(EGL_PC_LIB_PRIV),' \ - -e 's,@EGL_PC_CFLAGS@,$(EGL_PC_CFLAGS),' \ - -e 's,@EGL_LIB@,$(EGL_LIB),' - -egl.pc: egl.pc.in - $(gl_pcedit) $< > $@ - -install: default install-headers egl.pc - $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR) - $(MINSTALL) $(TOP)/$(LIB_DIR)/$(EGL_LIB_GLOB) \ - $(DESTDIR)$(INSTALL_LIB_DIR) - $(INSTALL) -d $(DESTDIR)$(PKG_CONFIG_DIR) - $(INSTALL) -m 644 egl.pc $(DESTDIR)$(PKG_CONFIG_DIR) - -clean: - -rm -f *.o - -rm -f depend depend.bak - - -depend: $(SOURCES) $(HEADERS) - @ echo "running $(MKDEP)" - @ rm -f depend - @ touch depend - $(MKDEP) $(MKDEP_OPTIONS) $(DEFINES) $(INCLUDE_DIRS) \ - $(SOURCES) $(HEADERS) > /dev/null 2>/dev/null - - --include depend -# DO NOT DELETE diff --git a/src/egl/main/Makefile.am b/src/egl/main/Makefile.am new file mode 100644 index 00000000000..cbf517837c8 --- /dev/null +++ b/src/egl/main/Makefile.am @@ -0,0 +1,138 @@ +# Copyright © 2012 Intel Corporation +# +# Permission is hereby granted, free of charge, to any person obtaining a +# copy of this software and associated documentation files (the "Software"), +# to deal in the Software without restriction, including without limitation +# the rights to use, copy, modify, merge, publish, distribute, sublicense, +# and/or sell copies of the Software, and to permit persons to whom the +# Software is furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice (including the next +# paragraph) shall be included in all copies or substantial portions of the +# Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS +# IN THE SOFTWARE. + +GLAPI_LIB = ../mapi/glapi/libglapi.a + +if HAVE_XF86VIDMODE +EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE +endif + +AM_CFLAGS = \ + -I$(top_srcdir)/include \ + -I$(top_srcdir)/src/gbm/main \ + $(DEFINES) \ + $(EGL_CFLAGS) \ + -D_EGL_NATIVE_PLATFORM=$(EGL_NATIVE_PLATFORM) \ + -D_EGL_DRIVER_SEARCH_DIR=\"$(EGL_DRIVER_INSTALL_DIR)\" \ + -D_EGL_OS_UNIX=1 + +lib_LTLIBRARIES = libEGL.la + +libEGL_la_SOURCES = \ + eglapi.c \ + eglarray.c \ + eglconfig.c \ + eglcontext.c \ + eglcurrent.c \ + egldisplay.c \ + egldriver.c \ + eglfallbacks.c \ + eglglobals.c \ + eglimage.c \ + egllog.c \ + eglmisc.c \ + eglmode.c \ + eglscreen.c \ + eglstring.c \ + eglsurface.c \ + eglsync.c \ + eglcompiler.h \ + eglconfig.h \ + eglcontext.h \ + eglcurrent.h \ + egldefines.h \ + egldisplay.h \ + egldriver.h \ + eglglobals.h \ + eglimage.h \ + egllog.h \ + eglmisc.h \ + eglmode.h \ + eglmutex.h \ + eglscreen.h \ + eglstring.h \ + eglsurface.h \ + eglsync.h + +libEGL_la_LIBADD = \ + $(EGL_LIB_DEPS) +libEGL_la_LDFLAGS = -version-number 1:0 + +if HAVE_EGL_PLATFORM_X11 +AM_CFLAGS += -DHAVE_X11_PLATFORM +AM_CFLAGS += $(XCB_DRI2_CFLAGS) +libEGL_la_LIBADD += $(XCB_DRI2_LIBS) +endif + +if HAVE_EGL_PLATFORM_WAYLAND +AM_CFLAGS += -DHAVE_WAYLAND_PLATFORM +AM_CFLAGS += $(WAYLAND_CFLAGS) +libEGL_la_LIBADD += $(WAYLAND_LIBS) +libEGL_la_LIBADD += $(LIBDRM_LIBS) +libEGL_la_LIBADD += ../wayland/wayland-drm/libwayland-drm.la +endif + +if HAVE_EGL_PLATFORM_DRM +AM_CFLAGS += -DHAVE_DRM_PLATFORM +libEGL_la_LIBADD += ../../gbm/libgbm.la +libEGL_la_LIBADD += ../../gbm/libgbm.la +endif + +if HAVE_EGL_PLATFORM_FBDEV +AM_CFLAGS += -DHAVE_FBDEV_PLATFORM +endif + +if HAVE_EGL_PLATFORM_NULL +AM_CFLAGS += -DHAVE_NULL_PLATFORM +endif + +if HAVE_EGL_DRIVER_GLX +AM_CFLAGS += -D_EGL_BUILT_IN_DRIVER_GLX +libEGL_la_LIBADD += ../drivers/glx/libegl_glx.a +libEGL_la_LIBADD += $(X11_LIBS) $(DLOPEN_LIBS) +endif + +if HAVE_EGL_DRIVER_DRI2 +AM_CFLAGS += -D_EGL_BUILT_IN_DRIVER_DRI2 +AM_CFLAGS += -DHAVE_XCB_DRI2 +libEGL_la_LIBADD += ../drivers/dri2/libegl_dri2.a +libEGL_la_LIBADD += $(LIBUDEV_LIBS) $(DLOPEN_LIBS) $(LIBDRM_LIBS) +endif + +# Provide compatibility with scripts for the old Mesa build system for +# a while by putting a link to the driver into /lib of the build tree. +all-local: libEGL.la + $(MKDIR_P) $(top_builddir)/$(LIB_DIR); + ln -f .libs/libEGL.so.1.0.0 $(top_builddir)/$(LIB_DIR)/libEGL.so.1 + +pkgconfigdir = $(libdir)/pkgconfig + +pkgconfig_DATA = egl.pc + +khrdir = $(includedir)/KHR +khr_HEADERS = $(top_srcdir)/include/KHR/khrplatform.h + +egldir = $(includedir)/EGL +egl_HEADERS = \ + $(top_srcdir)/include/EGL/eglext.h \ + $(top_srcdir)/include/EGL/egl.h \ + $(top_srcdir)/include/EGL/eglmesaext.h \ + $(top_srcdir)/include/EGL/eglplatform.h diff --git a/src/egl/main/egl.pc.in b/src/egl/main/egl.pc.in index 2855a4980a0..fd6904bd81a 100644 --- a/src/egl/main/egl.pc.in +++ b/src/egl/main/egl.pc.in @@ -1,12 +1,12 @@ -prefix=@INSTALL_DIR@ +prefix=@prefix@ exec_prefix=${prefix} -libdir=@INSTALL_LIB_DIR@ -includedir=@INSTALL_INC_DIR@ +libdir=@libdir@ +includedir=@includedir@ Name: egl Description: Mesa EGL library -Requires.private: @EGL_PC_REQ_PRIV@ -Version: @VERSION@ -Libs: -L${libdir} -l@EGL_LIB@ -Libs.private: @EGL_PC_LIB_PRIV@ -Cflags: -I${includedir} @EGL_PC_CFLAGS@ +Requires.private: @GL_PC_REQ_PRIV@ +Version: @PACKAGE_VERSION@ +Libs: -L${libdir} -lEGL +Libs.private: @GL_PC_LIB_PRIV@ +Cflags: -I${includedir} @GL_PC_CFLAGS@ diff --git a/src/egl/main/egllog.c b/src/egl/main/egllog.c index 43eed64c299..38a896b2c5d 100644 --- a/src/egl/main/egllog.c +++ b/src/egl/main/egllog.c @@ -38,7 +38,7 @@ #include <stdarg.h> #include <stdio.h> #include <stdlib.h> -#include <string.h> +#include <strings.h> #include "egllog.h" #include "eglstring.h" |