glx: Fix SEGV due to dereferencing a NULL ptr from XCB-GLX.
[mesa.git] / src / glx / meson.build
index 3fd74439b1137d147ccde9c21158c45ba564d20a..85f2697f08d0d035e8b8c948226b3b2bcb5fa54d 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright © 2017 Intel Corporation
+# Copyright © 2017-2019 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
@@ -70,7 +70,7 @@ extra_libs_libglx = []
 extra_deps_libgl = []
 extra_ld_args_libgl = []
 
-if with_dri
+if with_glx == 'dri'
   files_libglx += files(
     'dri_common.c',
     'dri_common.h',
@@ -83,7 +83,7 @@ if with_dri
 endif
 
 # dri2
-if with_dri and with_dri_platform == 'drm' and dep_libdrm.found()
+if with_glx == 'dri' and with_dri_platform == 'drm' and dep_libdrm.found()
   files_libglx += files(
     'dri2.c',
     'dri2_glx.c',
@@ -139,36 +139,35 @@ gl_lib_cargs = [
 libglx = static_library(
   'glx',
   [files_libglx, glx_generated],
-  include_directories : [inc_common, inc_glapi, inc_loader, inc_gl_internal],
+  include_directories : [inc_common, inc_glapi, inc_loader],
   c_args : [
     c_vis_args, gl_lib_cargs,
     '-DGL_LIB_NAME="lib@0@.so.@1@"'.format(gl_lib_name, gl_lib_version.split('.')[0]),
   ],
   link_with : [
-    libloader, libloader_dri3_helper, libmesa_util, libxmlconfig,
+    libloader, libloader_dri3_helper,
     extra_libs_libglx,
   ],
-  dependencies : [dep_libdrm, dep_dri2proto, dep_glproto, dep_x11, dep_glvnd],
-  build_by_default : false,
+  dependencies : [
+    idep_mesautil, idep_xmlconfig,
+    dep_libdrm, dep_dri2proto, dep_glproto, dep_x11, dep_glvnd,
+  ],
 )
 
-if with_glx == 'dri'
-  libgl = shared_library(
-    gl_lib_name,
-    [],
-    include_directories : [inc_common, inc_glapi, inc_loader, inc_gl_internal],
-    link_with : [libglapi_static, libglapi],
-    link_whole : libglx,
-    link_args : [ld_args_bsymbolic, ld_args_gc_sections, extra_ld_args_libgl],
-    dependencies : [
-      dep_libdrm, dep_dl, dep_m, dep_thread, dep_x11, dep_xcb_glx, dep_xcb,
-      dep_x11_xcb, dep_xcb_dri2, dep_xext, dep_xfixes, dep_xdamage, dep_xxf86vm,
-      extra_deps_libgl,
-    ],
-    version : gl_lib_version,
-    install : true,
-  )
-endif
+libgl = shared_library(
+  gl_lib_name,
+  [],
+  link_with : [libglapi_static, libglapi],
+  link_whole : libglx,
+  link_args : [ld_args_bsymbolic, ld_args_gc_sections, extra_ld_args_libgl],
+  dependencies : [
+    dep_libdrm, dep_dl, dep_m, dep_thread, dep_x11, dep_xcb_glx, dep_xcb,
+    dep_x11_xcb, dep_xcb_dri2, dep_xext, dep_xfixes, dep_xdamage, dep_xxf86vm,
+    extra_deps_libgl,
+  ],
+  version : gl_lib_version,
+  install : true,
+)
 
 if with_tests
   subdir('tests')