[Mesa-dev] [PATCH 11/14] automake: rework the EGL build

Matt Turner mattst88 at gmail.com
Tue Jul 14 08:19:11 PDT 2015


On Tue, Jul 14, 2015 at 8:02 AM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> Simplify things by merging the two makefiles. This way we can combine
> the duplicated HAVE_PLATFORM_ checks, and build the library without
> having a separate static library.
>
> Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
> ---
>  configure.ac                     |   3 +-
>  src/Makefile.am                  |   8 +--
>  src/egl/Makefile.am              | 120 +++++++++++++++++++++++++++++++++++++++
>  src/egl/Makefile.sources         |  34 +++++++++++
>  src/egl/drivers/dri2/Makefile.am |  67 ----------------------
>  src/egl/main/Makefile.am         |  95 -------------------------------
>  6 files changed, 156 insertions(+), 171 deletions(-)
>  create mode 100644 src/egl/Makefile.am
>  create mode 100644 src/egl/Makefile.sources
>  delete mode 100644 src/egl/drivers/dri2/Makefile.am
>  delete mode 100644 src/egl/main/Makefile.am
>
> diff --git a/configure.ac b/configure.ac
> index bdfd134..d07988d 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -2315,8 +2315,7 @@ CXXFLAGS="$CXXFLAGS $USER_CXXFLAGS"
>  dnl Substitute the config
>  AC_CONFIG_FILES([Makefile
>                 src/Makefile
> -               src/egl/drivers/dri2/Makefile
> -               src/egl/main/Makefile
> +               src/egl/Makefile
>                 src/egl/main/egl.pc
>                 src/egl/wayland/wayland-drm/Makefile
>                 src/egl/wayland/wayland-egl/Makefile
> diff --git a/src/Makefile.am b/src/Makefile.am
> index 90bf947..0d49bcd 100644
> --- a/src/Makefile.am
> +++ b/src/Makefile.am
> @@ -35,16 +35,12 @@ if HAVE_EGL_PLATFORM_WAYLAND
>  SUBDIRS += egl/wayland/wayland-egl egl/wayland/wayland-drm
>  endif
>
> -if HAVE_EGL_DRIVER_DRI2
> -SUBDIRS += egl/drivers/dri2
> -endif
> -
>  if HAVE_GBM
>  SUBDIRS += gbm
>  endif
>
>  if HAVE_EGL
> -SUBDIRS += egl/main
> +SUBDIRS += egl
>  endif
>
>  if HAVE_GALLIUM
> @@ -52,8 +48,6 @@ SUBDIRS += gallium
>  endif
>
>  EXTRA_DIST = \
> -       egl/drivers/haiku \
> -       egl/docs \
>         getopt hgl SConscript
>
>  AM_CFLAGS = $(VISIBILITY_CFLAGS)
> diff --git a/src/egl/Makefile.am b/src/egl/Makefile.am
> new file mode 100644
> index 0000000..e6862d2
> --- /dev/null
> +++ b/src/egl/Makefile.am
> @@ -0,0 +1,120 @@
> +# 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.
> +
> +include Makefile.sources
> +
> +AM_CFLAGS = \
> +       -I$(top_srcdir)/include \
> +       -I$(top_srcdir)/src/egl/main \
> +       -I$(top_srcdir)/src/gbm/main \
> +       $(DEFINES) \
> +       $(VISIBILITY_CFLAGS) \
> +       $(LIBDRM_CFLAGS) \
> +       $(EGL_CFLAGS) \
> +       -D_EGL_NATIVE_PLATFORM=$(EGL_NATIVE_PLATFORM)
> +
> +lib_LTLIBRARIES = libEGL.la
> +
> +libEGL_la_SOURCES = \
> +       ${LIBEGL_C_FILES}

I think you probably just want $(LIBEGL_C_FILES) instead of ${...}

> +
> +libEGL_la_LIBADD = \
> +       $(EGL_LIB_DEPS)
> +libEGL_la_LDFLAGS = \
> +       -no-undefined \
> +       -version-number 1:0 \
> +       $(BSYMBOLIC) \
> +       $(GC_SECTIONS) \
> +       $(LD_NO_UNDEFINED)
> +
> +dri2_backend_FILES =
> +
> +if HAVE_EGL_PLATFORM_X11
> +AM_CFLAGS += -DHAVE_X11_PLATFORM
> +AM_CFLAGS += $(XCB_DRI2_CFLAGS)
> +libEGL_la_LIBADD += $(XCB_DRI2_LIBS)
> +dri2_backend_FILES += drivers/dri2/platform_x11.c
> +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 += $(top_builddir)/src/egl/wayland/wayland-drm/libwayland-drm.la
> +dri2_backend_FILES += drivers/dri2/platform_wayland.c
> +endif
> +
> +if HAVE_EGL_PLATFORM_DRM
> +AM_CFLAGS += -DHAVE_DRM_PLATFORM
> +libEGL_la_LIBADD += $(top_builddir)/src/gbm/libgbm.la
> +dri2_backend_FILES += drivers/dri2/platform_drm.c
> +endif
> +
> +if HAVE_EGL_PLATFORM_SURFACELESS
> +AM_CFLAGS += -DHAVE_SURFACELESS_PhLATFORM

Capitalization is wrong.

> +dri2_backend_FILES += drivers/dri2/platform_surfaceless.c
> +endif


More information about the mesa-dev mailing list