[Mesa-dev] [PATCH 1/3] meson: don't use build_by_default for specific gallium drivers

Dylan Baker dylan at pnwbakers.com
Mon Nov 13 19:17:51 UTC 2017


Using build_by_default : false is convenient for dependencies that can
be pulled in by various diverse components of the build system, the
gallium hardware/software drivers and state trackers do not fit that
description. Instead, these should be guarded using the variable that tracks
whether that driver should be enabled.

This leaves a few helper libraries: trace, rbug, etc, and the generic
winsys bits as `build_by_default : false` because there are a large
number of gallium components that pull them in.

v2: - remove build_by_default from winsys convenience libs as well.

Signed-off-by: Dylan Baker <dylanx.c.baker at intel.com>
Tested-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com> (v1)
---
 src/gallium/drivers/freedreno/meson.build    |  1 -
 src/gallium/drivers/llvmpipe/meson.build     |  1 -
 src/gallium/drivers/nouveau/meson.build      |  1 -
 src/gallium/drivers/radeon/meson.build       |  1 -
 src/gallium/drivers/radeonsi/meson.build     |  1 -
 src/gallium/drivers/softpipe/meson.build     |  1 -
 src/gallium/drivers/vc5/meson.build          |  1 -
 src/gallium/meson.build                      | 47 +++++++++++++++-------------
 src/gallium/state_trackers/dri/meson.build   |  1 -
 src/gallium/winsys/amdgpu/drm/meson.build    |  1 -
 src/gallium/winsys/freedreno/drm/meson.build |  1 -
 src/gallium/winsys/nouveau/drm/meson.build   |  1 -
 src/gallium/winsys/radeon/drm/meson.build    |  1 -
 13 files changed, 25 insertions(+), 34 deletions(-)

diff --git a/src/gallium/drivers/freedreno/meson.build b/src/gallium/drivers/freedreno/meson.build
index fe1a902e9e5..d2b901334d0 100644
--- a/src/gallium/drivers/freedreno/meson.build
+++ b/src/gallium/drivers/freedreno/meson.build
@@ -207,7 +207,6 @@ libfreedreno = static_library(
   c_args : [c_vis_args],
   cpp_args : [cpp_vis_args],
   dependencies : [dep_libdrm, dep_libdrm_freedreno],
-  build_by_default : false,
 )
 
 ir3_compiler = executable(
diff --git a/src/gallium/drivers/llvmpipe/meson.build b/src/gallium/drivers/llvmpipe/meson.build
index ca1d2aa797b..9d0edb0ac33 100644
--- a/src/gallium/drivers/llvmpipe/meson.build
+++ b/src/gallium/drivers/llvmpipe/meson.build
@@ -98,7 +98,6 @@ libllvmpipe = static_library(
   cpp_args : [cpp_vis_args, cpp_msvc_compat_args],
   include_directories : [inc_gallium, inc_gallium_aux, inc_include, inc_src],
   dependencies : dep_llvm,
-  build_by_default : false,
 )
 
 if with_tests and with_gallium_softpipe and with_llvm
diff --git a/src/gallium/drivers/nouveau/meson.build b/src/gallium/drivers/nouveau/meson.build
index 2bc6142879e..59fecfc5255 100644
--- a/src/gallium/drivers/nouveau/meson.build
+++ b/src/gallium/drivers/nouveau/meson.build
@@ -211,7 +211,6 @@ libnouveau = static_library(
   c_args : [c_vis_args],
   cpp_args : [cpp_vis_args],
   dependencies : [dep_libdrm, dep_libdrm_nouveau],
-  build_by_default : false,
 )
 
 nouveau_compiler = executable(
diff --git a/src/gallium/drivers/radeon/meson.build b/src/gallium/drivers/radeon/meson.build
index b4d2832d016..f378b12e8e8 100644
--- a/src/gallium/drivers/radeon/meson.build
+++ b/src/gallium/drivers/radeon/meson.build
@@ -51,5 +51,4 @@ libradeon = static_library(
   include_directories : [
     inc_include, inc_src, inc_gallium, inc_gallium_aux, inc_gallium_drivers,
   ],
-  build_by_default : false,
 )
diff --git a/src/gallium/drivers/radeonsi/meson.build b/src/gallium/drivers/radeonsi/meson.build
index 4392184dbb6..974004db67f 100644
--- a/src/gallium/drivers/radeonsi/meson.build
+++ b/src/gallium/drivers/radeonsi/meson.build
@@ -75,5 +75,4 @@ libradeonsi = static_library(
   c_args : [c_vis_args],
   cpp_args : [cpp_vis_args],
   dependencies : dep_llvm,
-  build_by_default : false,
 )
diff --git a/src/gallium/drivers/softpipe/meson.build b/src/gallium/drivers/softpipe/meson.build
index 0cef15152e2..df23533c72c 100644
--- a/src/gallium/drivers/softpipe/meson.build
+++ b/src/gallium/drivers/softpipe/meson.build
@@ -81,5 +81,4 @@ libsoftpipe = static_library(
   files_softpipe,
   include_directories : [inc_gallium_aux, inc_gallium, inc_include, inc_src],
   c_args : [c_vis_args, c_msvc_compat_args],
-  build_by_default : false,
 )
diff --git a/src/gallium/drivers/vc5/meson.build b/src/gallium/drivers/vc5/meson.build
index d066366fcc7..61059a15560 100644
--- a/src/gallium/drivers/vc5/meson.build
+++ b/src/gallium/drivers/vc5/meson.build
@@ -61,5 +61,4 @@ libvc5 = static_library(
   c_args : [c_vis_args, v3dv3_c_args],
   cpp_args : [cpp_vis_args],
   dependencies : [dep_v3dv3, dep_libdrm, dep_valgrind],
-  build_by_default : false,
 )
diff --git a/src/gallium/meson.build b/src/gallium/meson.build
index c5772b36cb6..5341e093bfb 100644
--- a/src/gallium/meson.build
+++ b/src/gallium/meson.build
@@ -27,41 +27,44 @@ subdir('drivers/ddebug')
 subdir('drivers/noop')
 subdir('drivers/trace')
 subdir('drivers/rbug')
-subdir('drivers/radeon')
-subdir('drivers/radeonsi')
-subdir('drivers/nouveau')
-if with_gallium_freedreno
-  subdir('drivers/freedreno')
-endif
-subdir('drivers/softpipe')
-if with_gallium_vc4
-  subdir('drivers/vc4')
-endif
-if with_gallium_vc5
-  subdir('drivers/vc5')
-endif
-if with_gallium_etnaviv
-  subdir('drivers/etnaviv')
-endif
-subdir('drivers/llvmpipe')
 subdir('winsys/sw/null')
 subdir('winsys/sw/dri')
 subdir('winsys/sw/kms-dri')
 subdir('winsys/sw/wrapper')
-if with_gallium_vc4
+if with_gallium_softpipe
+  subdir('drivers/softpipe')
+  if with_llvm
+    subdir('drivers/llvmpipe')
+  endif
+endif
+if with_gallium_radeonsi
+  # TODO: some of these are needed by r300 and r600
+  subdir('winsys/radeon/drm')
+  subdir('winsys/amdgpu/drm')
+  subdir('drivers/radeon')
+  subdir('drivers/radeonsi')
+endif
+if with_gallium_nouveau
+  subdir('winsys/nouveau/drm')
+  subdir('drivers/nouveau')
+endif
+if with_gallium_freedreno
+  subdir('winsys/freedreno/drm')
+  subdir('drivers/freedreno')
+endif
+if with_gallium_pl111
   subdir('winsys/pl111/drm')
 endif
-subdir('winsys/radeon/drm')
-subdir('winsys/amdgpu/drm')
-subdir('winsys/nouveau/drm')
-subdir('winsys/freedreno/drm')
 if with_gallium_vc4
+  subdir('drivers/vc4')
   subdir('winsys/vc4/drm')
 endif
 if with_gallium_vc5
+  subdir('drivers/vc5')
   subdir('winsys/vc5/drm')
 endif
 if with_gallium_etnaviv
+  subdir('drivers/etnaviv')
   subdir('winsys/etnaviv/drm')
 endif
 if with_gallium_imx
diff --git a/src/gallium/state_trackers/dri/meson.build b/src/gallium/state_trackers/dri/meson.build
index 5d89f23a6fe..b99314ebf61 100644
--- a/src/gallium/state_trackers/dri/meson.build
+++ b/src/gallium/state_trackers/dri/meson.build
@@ -53,5 +53,4 @@ libdri = static_library(
   ],
   c_args : [c_vis_args, libdri_c_args],
   dependencies : dep_libdrm,
-  build_by_default : false,
 )
diff --git a/src/gallium/winsys/amdgpu/drm/meson.build b/src/gallium/winsys/amdgpu/drm/meson.build
index a81750e842a..8b6f69b2bdd 100644
--- a/src/gallium/winsys/amdgpu/drm/meson.build
+++ b/src/gallium/winsys/amdgpu/drm/meson.build
@@ -32,5 +32,4 @@ libamdgpuwinsys = static_library(
   cpp_args : [cpp_vis_args],
   link_with : libamdgpu_addrlib,
   dependencies : dep_libdrm_amdgpu,
-  build_by_default : false,
 )
diff --git a/src/gallium/winsys/freedreno/drm/meson.build b/src/gallium/winsys/freedreno/drm/meson.build
index 71ee01139d3..34aff635dde 100644
--- a/src/gallium/winsys/freedreno/drm/meson.build
+++ b/src/gallium/winsys/freedreno/drm/meson.build
@@ -26,5 +26,4 @@ libfreedrenowinsys = static_library(
   ],
   c_args : [c_vis_args],
   dependencies : [dep_libdrm_freedreno],
-  build_by_default : false,
 )
diff --git a/src/gallium/winsys/nouveau/drm/meson.build b/src/gallium/winsys/nouveau/drm/meson.build
index b5ef0d7097f..cf661971f8b 100644
--- a/src/gallium/winsys/nouveau/drm/meson.build
+++ b/src/gallium/winsys/nouveau/drm/meson.build
@@ -26,5 +26,4 @@ libnouveauwinsys = static_library(
   ],
   c_args : [c_vis_args],
   dependencies : [dep_libdrm_nouveau],
-  build_by_default : false,
 )
diff --git a/src/gallium/winsys/radeon/drm/meson.build b/src/gallium/winsys/radeon/drm/meson.build
index 8a3f8021157..d123df0502b 100644
--- a/src/gallium/winsys/radeon/drm/meson.build
+++ b/src/gallium/winsys/radeon/drm/meson.build
@@ -26,5 +26,4 @@ libradeonwinsys = static_library(
   include_directories : [inc_src, inc_include, inc_gallium, inc_gallium_aux],
   c_args : [c_vis_args],
   dependencies : [dep_libdrm_radeon],
-  build_by_default : false,
 )
-- 
2.15.0



More information about the mesa-dev mailing list