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

Eric Anholt eric at anholt.net
Mon Nov 13 21:07:31 UTC 2017


Dylan Baker <dylan at pnwbakers.com> writes:

> 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

It seems weird to have some of them be drivers then winsys and others
the other way around.  Can we be consistent, if possible?

Either way, the series is:

Reviewed-by: Eric Anholt <eric at anholt.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20171113/adb53a8c/attachment.sig>


More information about the mesa-dev mailing list