meson: Add build option for tools

Add a build option to control building some of the misc tools we
have. Also set the executables to install, presumably you want
that if you're asking for the build.

v2: set 'install:' to the with_tools value, not true (Jordan)
    handle 'all' in a the comma list (Dylan)
    Add freedreno's tools (Dylan)

Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
Reviewed-by: Dylan Baker <dylan@pnwbakers.com>
This commit is contained in:
Scott D Phillips 2018-02-07 16:55:24 -08:00
parent 464d057c86
commit 1f4d2433e7
7 changed files with 24 additions and 7 deletions

View File

@ -48,6 +48,10 @@ with_libunwind = get_option('libunwind')
with_asm = get_option('asm')
with_osmesa = get_option('osmesa')
with_swr_arches = get_option('swr-arches').split(',')
with_tools = get_option('tools').split(',')
if with_tools.contains('all')
with_tools = ['freedreno', 'glsl', 'intel', 'nir', 'nouveau']
endif
if get_option('texture-float')
pre_args += '-DTEXTURE_FLOAT_ENABLED'
message('WARNING: Floating-point texture enabled. Please consult docs/patents.txt and your lawyer before building mesa.')

View File

@ -280,3 +280,9 @@ option(
value : 'avx,avx2',
description : 'Comma delemited swr architectures. choices : avx,avx2,knl,skx'
)
option(
'tools',
type : 'string',
value : '',
description : 'Comma delimited list of tools to build. choices : freedreno,glsl,intel,nir,nouveau or all'
)

View File

@ -230,7 +230,8 @@ glsl_compiler = executable(
dependencies : [dep_clock, dep_thread],
include_directories : [inc_common],
link_with : [libglsl_standalone],
build_by_default : false,
build_by_default : with_tools.contains('glsl'),
install : with_tools.contains('glsl'),
)
glsl_test = executable(
@ -242,7 +243,8 @@ glsl_test = executable(
include_directories : [inc_common],
dependencies : [dep_clock, dep_thread],
link_with : [libglsl, libglsl_standalone, libglsl_util],
build_by_default : false,
build_by_default : with_tools.contains('glsl'),
install : with_tools.contains('glsl'),
)
if with_tests

View File

@ -62,7 +62,8 @@ spirv2nir = executable(
include_directories : [inc_common, inc_nir, include_directories('spirv')],
link_with : libmesa_util,
c_args : [c_vis_args, c_msvc_compat_args, no_override_init_args],
build_by_default : false,
build_by_default : with_tools.contains('nir'),
install : with_tools.contains('nir'),
)
subdir('glsl')

View File

@ -249,5 +249,6 @@ ir3_compiler = executable(
libglsl_standalone,
libmesa_util,
],
build_by_default : true,
build_by_default : with_tools.contains('freedreno'),
install : with_tools.contains('freedreno'),
)

View File

@ -219,7 +219,8 @@ nouveau_compiler = executable(
include_directories : [inc_src, inc_include, inc_gallium, inc_gallium_aux],
dependencies : [dep_libdrm, dep_libdrm_nouveau],
link_with : [libnouveau, libgallium, libmesa_util],
build_by_default : false,
build_by_default : with_tools.contains('nouveau'),
install : with_tools.contains('nouveau'),
)
driver_nouveau = declare_dependency(

View File

@ -26,7 +26,8 @@ aubinator = executable(
include_directories : [inc_common, inc_intel],
link_with : [libintel_common, libintel_compiler, libmesa_util],
c_args : [c_vis_args, no_override_init_args],
build_by_default : false,
build_by_default : with_tools.contains('intel'),
install : with_tools.contains('intel'),
)
aubinator_error_decode = executable(
@ -37,5 +38,6 @@ aubinator_error_decode = executable(
include_directories : [inc_common, inc_intel],
link_with : [libintel_common, libintel_compiler, libmesa_util],
c_args : [c_vis_args, no_override_init_args],
build_by_default : false,
build_by_default : with_tools.contains('intel'),
install : with_tools.contains('intel'),
)