egl: hide entrypoints that shouldn't be exported when using glvnd
[mesa.git] / src / egl / Makefile.am
index 98d0420ec4db64d9bf3f44f2cdd0b1a86d3a430a..349779feb4e05e499d4902612928cd093c7cc522 100644 (file)
@@ -50,6 +50,7 @@ libEGL_common_la_LIBADD = \
        $(EGL_LIB_DEPS)
 
 dri2_backend_FILES =
+dri2_backend_GENERATED_FILES =
 dri3_backend_FILES =
 
 if HAVE_PLATFORM_X11
@@ -70,24 +71,28 @@ WL_DMABUF_XML = $(WAYLAND_PROTOCOLS_DATADIR)/unstable/linux-dmabuf/linux-dmabuf-
 
 drivers/dri2/linux-dmabuf-unstable-v1-protocol.c: $(WL_DMABUF_XML)
        $(MKDIR_GEN)
-       $(AM_V_GEN)$(WAYLAND_SCANNER) code < $< > $@
+       $(AM_V_GEN)$(WAYLAND_SCANNER) $(SCANNER_ARG) $< $@
 
 drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h: $(WL_DMABUF_XML)
        $(MKDIR_GEN)
-       $(AM_V_GEN)$(WAYLAND_SCANNER) client-header < $< > $@
+       $(AM_V_GEN)$(WAYLAND_SCANNER) client-header $< $@
 
 if HAVE_PLATFORM_WAYLAND
 drivers/dri2/linux-dmabuf-unstable-v1-protocol.lo: drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h
 drivers/dri2/egl_dri2.lo: drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h
+drivers/dri2/platform_wayland.lo: drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h
 
 AM_CFLAGS += $(WAYLAND_CLIENT_CFLAGS)
 libEGL_common_la_LIBADD += $(WAYLAND_CLIENT_LIBS)
 libEGL_common_la_LIBADD += $(LIBDRM_LIBS)
+AM_CFLAGS += $(WAYLAND_EGL_CFLAGS)
+libEGL_common_la_LIBADD += $(WAYLAND_EGL_LIBS)
 AM_CFLAGS += $(WAYLAND_SERVER_CFLAGS)
 libEGL_common_la_LIBADD += $(top_builddir)/src/egl/wayland/wayland-drm/libwayland-drm.la
 libEGL_common_la_LIBADD += $(WAYLAND_SERVER_LIBS)
 dri2_backend_FILES += \
-       drivers/dri2/platform_wayland.c \
+       drivers/dri2/platform_wayland.c
+dri2_backend_GENERATED_FILES += \
        drivers/dri2/linux-dmabuf-unstable-v1-protocol.c \
        drivers/dri2/linux-dmabuf-unstable-v1-client-protocol.h
 endif
@@ -112,11 +117,11 @@ AM_CFLAGS += \
        -I$(top_builddir)/src/egl/drivers/dri2 \
        -I$(top_srcdir)/src/egl/drivers/dri2 \
        -I$(top_srcdir)/src/gbm/backends/dri \
-       -I$(top_srcdir)/src/egl/wayland/wayland-egl \
        -I$(top_builddir)/src/egl/wayland/wayland-drm \
-       -I$(top_srcdir)/src/egl/wayland/wayland-drm \
-       -DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_SEARCH_DIR)\" \
-       -D_EGL_BUILT_IN_DRIVER_DRI2
+       -I$(top_srcdir)/src/egl/wayland/wayland-drm
+
+nodist_libEGL_common_la_SOURCES = \
+       $(dri2_backend_GENERATED_FILES)
 
 libEGL_common_la_SOURCES += \
        $(dri2_backend_core_FILES) \
@@ -130,25 +135,34 @@ libEGL_common_la_LIBADD += \
        $(LIBDRM_LIBS) \
        $(CLOCK_LIB)
 
-GLVND_GEN_DEPS = generate/gen_egl_dispatch.py \
-       generate/egl.xml generate/eglFunctionList.py generate/genCommon.py \
+# dummy rule to keep dist happy
+$(top_scrdir)/src/mapi/new/genCommon.py:
+
+GLVND_GEN_EGL_DEPS = \
+       generate/gen_egl_dispatch.py \
+       generate/eglFunctionList.py \
+       generate/egl.xml \
        generate/egl_other.xml
 
-PYTHON_GEN = $(AM_V_GEN)$(PYTHON2) $(PYTHON_FLAGS)
+GLVND_GEN_DEPS = $(top_scrdir)/src/mapi/new/genCommon.py \
+       $(GLVND_GEN_EGL_DEPS)
+
+PYTHON_GEN = $(AM_V_GEN)$(PYTHON) $(PYTHON_FLAGS)
 g_egldispatchstubs.c: $(GLVND_GEN_DEPS)
        $(PYTHON_GEN) $(top_srcdir)/src/egl/generate/gen_egl_dispatch.py source \
-               $(top_srcdir)/src/egl/generate/eglFunctionList.py \
                $(top_srcdir)/src/egl/generate/egl.xml \
                $(top_srcdir)/src/egl/generate/egl_other.xml > $@
 
 g_egldispatchstubs.h: $(GLVND_GEN_DEPS)
        $(PYTHON_GEN) $(top_srcdir)/src/egl/generate/gen_egl_dispatch.py header \
-               $(top_srcdir)/src/egl/generate/eglFunctionList.py \
                $(top_srcdir)/src/egl/generate/egl.xml \
                $(top_srcdir)/src/egl/generate/egl_other.xml > $@
 
 BUILT_SOURCES += g_egldispatchstubs.c g_egldispatchstubs.h
-CLEANFILES = $(BUILT_SOURCES)
+
+CLEANFILES = \
+       $(BUILT_SOURCES) \
+       $(dri2_backend_GENERATED_FILES)
 
 if USE_LIBGLVND
 AM_CFLAGS += \
@@ -176,12 +190,12 @@ libEGL_mesa_la_LDFLAGS = \
 
 else # USE_LIBGLVND
 
-lib_LTLIBRARIES = libEGL.la
-libEGL_la_SOURCES =
-libEGL_la_LIBADD = \
+lib_LTLIBRARIES = libEGL@EGL_LIB_SUFFIX@.la
+libEGL@EGL_LIB_SUFFIX@_la_SOURCES =
+libEGL@EGL_LIB_SUFFIX@_la_LIBADD = \
        libEGL_common.la \
        $(top_builddir)/src/mapi/shared-glapi/libglapi.la
-libEGL_la_LDFLAGS = \
+libEGL@EGL_LIB_SUFFIX@_la_LDFLAGS = \
        -no-undefined \
        -version-number 1:0 \
        $(BSYMBOLIC) \
@@ -192,6 +206,7 @@ endif # USE_LIBGLVND
 
 include $(top_srcdir)/install-lib-links.mk
 
+# TODO: When building with glvnd, glvnd itself should be providing egl.pc and the headers
 pkgconfigdir = $(libdir)/pkgconfig
 
 pkgconfig_DATA = main/egl.pc
@@ -218,5 +233,6 @@ EXTRA_DIST = \
        drivers/haiku \
        main/egl.def \
        main/README.txt \
-       $(GLVND_GEN_DEPS) \
-       main/50_mesa.json
+       $(GLVND_GEN_EGL_DEPS) \
+       main/50_mesa.json \
+       meson.build