meson: Only build gallium state tracker tests with shared_glapi
[mesa.git] / src / meson.build
index 4d5637f0aaf092b181edc959306c965b715e74ff..73146d37143430512fd6edc8485b04772c7006f0 100644 (file)
@@ -42,7 +42,7 @@ libglsl_util = static_library(
 sha1_h = custom_target(
   'git_sha1.h',
   output : 'git_sha1.h',
-  command : [prog_python2, git_sha1_gen_py, '--output', '@OUTPUT@'],
+  command : [prog_python, git_sha1_gen_py, '--output', '@OUTPUT@'],
   build_always : true, # commit sha1 can change without having touched these files
 )
 
@@ -56,7 +56,7 @@ subdir('vulkan')
 if with_gallium_radeonsi or with_amd_vk
   subdir('amd')
 endif
-if with_gallium_vc4
+if with_gallium_vc4 or with_gallium_v3d
   subdir('broadcom')
 endif
 if with_dri_i965 or with_intel_vk
@@ -80,16 +80,31 @@ if with_egl
 endif
 if with_gallium
   subdir('gallium')
+  # This has to be here since it requires libgallium, and subdir cannot
+  # contain ..
+  if with_tests and with_shared_glapi
+    subdir('mesa/state_tracker/tests')
+  endif
 endif
 
 # This must be after at least mesa, glx, and gallium, since libgl will be
 # defined in one of those subdirs depending on the glx provider.
 if with_glx != 'disabled'
+  # If using glvnd the pkg-config header should not point to GL_mesa, it should
+  # point to GL. glvnd is only available on unix like platforms so adding -l
+  # should be safe here
+  # TODO: in the glvnd case glvnd itself should really be providing this.
+  if with_glvnd
+    _gl = '-L${libdir} -lGL'
+  else
+    _gl = libgl
+  endif
+
   pkg.generate(
     name : 'gl',
     description : 'Mesa OpenGL Library',
     version : meson.project_version(),
-    libraries : libgl,
+    libraries : _gl,
     libraries_private : gl_priv_libs,
     requires_private : gl_priv_reqs,
     variables : ['glx_tls=yes'],