Mesa (master): gbm: Don't traverse backwards for includes

Dylan Baker dbaker at kemper.freedesktop.org
Thu Nov 2 18:40:24 UTC 2017


Module: Mesa
Branch: master
Commit: a29869e8720b385d3692f6a74de2921412b2c8c1
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a29869e8720b385d3692f6a74de2921412b2c8c1

Author: Dylan Baker <dylan at pnwbakers.com>
Date:   Fri Oct 20 17:49:42 2017 -0700

gbm: Don't traverse backwards for includes

This is just a bad idea and should be avoided. Instead, make the #include
flat and fix the build systems to pass the proper -I flags

v2: - add an inc_wayland_drm instead passing a path to
      include_directories (Emil)
    - update commit message (Emil)

Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
Reviewed-by: Emil Velikov <emil.velikov at collabora.com>
Reviewed-by: Daniel Stone <daniels at collabora.com> (v1)
Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com> (v1)

---

 src/egl/wayland/wayland-drm/meson.build | 2 ++
 src/gbm/Makefile.am                     | 4 +++-
 src/gbm/backends/dri/gbm_dri.c          | 2 +-
 src/gbm/meson.build                     | 9 ++++++---
 4 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/src/egl/wayland/wayland-drm/meson.build b/src/egl/wayland/wayland-drm/meson.build
index 12b49ca4f0..17ac2ddf74 100644
--- a/src/egl/wayland/wayland-drm/meson.build
+++ b/src/egl/wayland/wayland-drm/meson.build
@@ -18,6 +18,8 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
+inc_wayland_drm = include_directories('.')
+
 wayland_drm_protocol_c = custom_target(
   'wayland-drm-protocol.c',
   input : 'wayland-drm.xml',
diff --git a/src/gbm/Makefile.am b/src/gbm/Makefile.am
index 805208a3ca..05d861ff99 100644
--- a/src/gbm/Makefile.am
+++ b/src/gbm/Makefile.am
@@ -31,7 +31,9 @@ libgbm_la_LIBADD = \
 	$(DLOPEN_LIBS)
 
 if HAVE_PLATFORM_WAYLAND
-AM_CFLAGS += $(WAYLAND_SERVER_CFLAGS)
+AM_CFLAGS += \
+	$(WAYLAND_SERVER_CFLAGS) \
+	-I$(top_srcdir)/src/egl/wayland/wayland-drm/
 libgbm_la_LIBADD += $(top_builddir)/src/egl/wayland/wayland-drm/libwayland-drm.la $(WAYLAND_SERVER_LIBS)
 endif
 
diff --git a/src/gbm/backends/dri/gbm_dri.c b/src/gbm/backends/dri/gbm_dri.c
index 0a4853bf63..b2121cbc34 100644
--- a/src/gbm/backends/dri/gbm_dri.c
+++ b/src/gbm/backends/dri/gbm_dri.c
@@ -53,7 +53,7 @@
 
 /* For importing wl_buffer */
 #if HAVE_WAYLAND_PLATFORM
-#include "../../../egl/wayland/wayland-drm/wayland-drm.h"
+#include "wayland-drm.h"
 #endif
 
 #ifndef DRM_FORMAT_MOD_INVALID
diff --git a/src/gbm/meson.build b/src/gbm/meson.build
index ff3cf3f61d..437896ef7f 100644
--- a/src/gbm/meson.build
+++ b/src/gbm/meson.build
@@ -31,6 +31,10 @@ deps_gbm = []
 args_gbm = []
 links_gbm = []
 deps_gbm = []
+incs_gbm = [
+  include_directories('main'), inc_include, inc_src, inc_loader,
+  inc_wayland_drm,
+]
 
 if with_dri2
   files_gbm += files('backends/dri/gbm_dri.c', 'backends/dri/gbm_driint.h')
@@ -40,6 +44,7 @@ endif
 if with_platform_wayland
   deps_gbm += dep_wayland_server
   links_gbm += libwayland_drm
+  incs_gbm += inc_wayland_drm
 endif
 
 # TODO: wayland support (requires egl)
@@ -47,9 +52,7 @@ endif
 libgbm = shared_library(
   'gbm',
   files_gbm,
-  include_directories : [
-    include_directories('main'), inc_include, inc_src, inc_loader,
-    include_directories('../egl/wayland/wayland-drm')],
+  include_directories : incs_gbm,
   c_args : [c_vis_args, args_gbm],
   link_args : [ld_args_gc_sections],
   link_with : [links_gbm, libloader, libmesa_util, libxmlconfig],




More information about the mesa-commit mailing list