pre_args += '-DHAVE_HAIKU_PLATFORM'
endif
-prog_python2 = find_program('python2')
-has_mako = run_command(prog_python2, '-c', 'import mako')
+prog_python = find_program('python3')
+has_mako = run_command(prog_python, '-c', 'import mako')
if has_mako.returncode() != 0
- error('Python (2.x) mako module required to build mesa.')
+ error('Python (3.x) mako module required to build mesa.')
endif
if cc.get_id() == 'gcc' and cc.version().version_compare('< 4.4.6')
'sid_tables_h',
input : ['sid_tables.py', 'sid.h', 'gfx9d.h'],
output : 'sid_tables.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
input : ['radv_entrypoints_gen.py', vk_api_xml],
output : ['radv_entrypoints.h', 'radv_entrypoints.c'],
command : [
- prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--outdir',
+ prog_python, '@INPUT0@', '--xml', '@INPUT1@', '--outdir',
meson.current_build_dir()
],
depend_files : files('radv_extensions.py'),
input : ['radv_extensions.py', vk_api_xml],
output : ['radv_extensions.c', 'radv_extensions.h'],
command : [
- prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--out-c', '@OUTPUT0@',
+ prog_python, '@INPUT0@', '--xml', '@INPUT1@', '--out-c', '@OUTPUT0@',
'--out-h', '@OUTPUT1@'
],
)
'vk_format_table.c',
input : ['vk_format_table.py', 'vk_format_layout.csv'],
output : 'vk_format_table.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
depend_files : files('vk_format_parse.py'),
capture : true,
)
input : 'radv_icd.py',
output : 'radeon_icd.@0@.json'.format(host_machine.cpu()),
command : [
- prog_python2, '@INPUT@',
+ prog_python, '@INPUT@',
'--lib-path', join_paths(get_option('prefix'), get_option('libdir')),
'--out', '@OUTPUT@',
],
input : 'radv_icd.py',
output : 'dev_icd.json',
command : [
- prog_python2, '@INPUT@', '--lib-path', meson.current_build_dir(),
+ prog_python, '@INPUT@', '--lib-path', meson.current_build_dir(),
'--out', '@OUTPUT@'
],
depend_files : files('radv_extensions.py'),
_name,
input : ['gen_pack_header.py', f],
output : _name,
- command : [prog_python2, '@INPUT@', '@0@'.format(v)],
+ command : [prog_python, '@INPUT@', '@0@'.format(v)],
capture : true,
)
endforeach
'v3d_xml.h',
input : ['../../intel/genxml/gen_zipped_file.py', v3d_xml_files],
output : 'v3d_xml.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
'ir_expression_operation_constant.h',
input : 'ir_expression_operation.py',
output : 'ir_expression_operation_constant.h',
- command : [prog_python2, '@INPUT@', 'constant'],
+ command : [prog_python, '@INPUT@', 'constant'],
capture : true,
)
'ir_expression_operation_strings.h',
input : 'ir_expression_operation.py',
output : 'ir_expression_operation_strings.h',
- command : [prog_python2, '@INPUT@', 'strings'],
+ command : [prog_python, '@INPUT@', 'strings'],
capture : true,
)
'ir_expression_operation.h',
input : 'glsl/ir_expression_operation.py',
output : 'ir_expression_operation.h',
- command : [prog_python2, '@INPUT@', 'enum'],
+ command : [prog_python, '@INPUT@', 'enum'],
capture : true,
)
'nir_builder_opcodes.h',
input : 'nir_builder_opcodes_h.py',
output : 'nir_builder_opcodes.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
depend_files : nir_depends,
)
'nir_constant_expressions.c',
input : 'nir_constant_expressions.py',
output : 'nir_constant_expressions.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
depend_files : nir_depends,
)
'nir_opcodes.h',
input : 'nir_opcodes_h.py',
output : 'nir_opcodes.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
depend_files : nir_depends,
)
'nir_opcodes.c',
input : 'nir_opcodes_c.py',
output : 'nir_opcodes.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
depend_files : nir_depends,
)
'nir_opt_algebraic.c',
input : 'nir_opt_algebraic.py',
output : 'nir_opt_algebraic.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
depend_files : files('nir_algebraic.py'),
)
'nir_intrinsics.h',
input : 'nir_intrinsics_h.py',
output : 'nir_intrinsics.h',
- command : [prog_python2, '@INPUT@', '--outdir', meson.current_build_dir()],
+ command : [prog_python, '@INPUT@', '--outdir', meson.current_build_dir()],
capture : false,
depend_files : files('nir_intrinsics.py'),
)
'nir_intrinsic.c',
input : 'nir_intrinsics_c.py',
output : 'nir_intrinsics.c',
- command : [prog_python2, '@INPUT@', '--outdir', meson.current_build_dir()],
+ command : [prog_python, '@INPUT@', '--outdir', meson.current_build_dir()],
capture: false,
depend_files : files('nir_intrinsics.py'),
)
'vtn_gather_types.c',
input : files('vtn_gather_types_c.py', 'spirv.core.grammar.json'),
output : 'vtn_gather_types.c',
- command : [prog_python2, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
+ command : [prog_python, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
)
spirv_info_c = custom_target(
'spirv_info.c',
input : files('spirv_info_c.py', 'spirv.core.grammar.json'),
output : 'spirv_info.c',
- command : [prog_python2, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
+ command : [prog_python, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
)
],
output : 'g_egldispatchstubs.c',
command : [
- prog_python2, '@INPUT0@', 'source', '@INPUT1@', '@INPUT2@', '@INPUT3@'
+ prog_python, '@INPUT0@', 'source', '@INPUT1@', '@INPUT2@', '@INPUT3@'
],
depend_files : files('generate/genCommon.py'),
capture : true,
],
output : 'g_egldispatchstubs.h',
command : [
- prog_python2, '@INPUT0@', 'header', '@INPUT1@', '@INPUT2@', '@INPUT3@'
+ prog_python, '@INPUT0@', 'header', '@INPUT1@', '@INPUT2@', '@INPUT3@'
],
depend_files : files('generate/genCommon.py'),
capture : true,
'u_indices_gen.c',
input : 'indices/u_indices_gen.py',
output : 'u_indices_gen.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
'u_unfilled_gen.c',
input : 'indices/u_unfilled_gen.py',
output : 'u_unfilled_gen.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
'u_format_table.c',
input : ['util/u_format_table.py', 'util/u_format.csv'],
output : 'u_format_table.c',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
depend_files : files('util/u_format_pack.py', 'util/u_format_parse.py'),
capture : true,
)
input : 'ir3/ir3_nir_trig.py',
output : 'ir3_nir_trig.c',
command : [
- prog_python2, '@INPUT@',
+ prog_python, '@INPUT@',
'-p', join_paths(meson.source_root(), 'src/compiler/nir/'),
],
capture : true,
'egd_tables.h',
input : ['egd_tables.py', 'evergreend.h'],
output : 'egd_tables.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
'../../auxiliary/pipe-loader/driinfo_gallium.h', 'driinfo_radeonsi.h'
),
output : 'si_driinfo.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
'gen_knobs.cpp',
input : ['gen_knobs.py'],
output : 'gen_knobs.cpp',
- command : [prog_python2, '@INPUT0@', '--output', '@OUTPUT@', '--gen_cpp'],
+ command : [prog_python, '@INPUT0@', '--output', '@OUTPUT@', '--gen_cpp'],
depend_files : files(
'knob_defs.py', 'gen_common.py',
'templates/gen_knobs.cpp',
'gen_knobs.h',
input : ['gen_knobs.py'],
output : 'gen_knobs.h',
- command : [prog_python2, '@INPUT0@', '--output', '@OUTPUT@', '--gen_h'],
+ command : [prog_python, '@INPUT0@', '--output', '@OUTPUT@', '--gen_h'],
depend_files : files(
'knob_defs.py', 'gen_common.py',
'templates/gen_knobs.h',
x[1],
input : ['gen_llvm_types.py', x[0]],
output : x[1],
- command : [prog_python2, '@INPUT0@', '--input', '@INPUT1@', '--output', '@OUTPUT@'],
+ command : [prog_python, '@INPUT0@', '--input', '@INPUT1@', '--output', '@OUTPUT@'],
depend_files : files(
'templates/gen_llvm.hpp',
'gen_common.py',
input : ['gen_archrast.py', swr_event_proto_files, swr_event_pproto_files],
output : x[0],
command : [
- prog_python2,
+ prog_python,
'@INPUT0@',
'--proto', '@INPUT1@',
'--proto_private', '@INPUT2@',
'gen_BackendPixelRate.hpp',
],
command : [
- prog_python2, '@INPUT@',
+ prog_python, '@INPUT@',
'--outdir', '@OUTDIR@',
'--dim', '5', '2', '3', '2', '2', '2',
'--numfiles', '4',
'gen_rasterizer.hpp',
],
command : [
- prog_python2, '@INPUT@',
+ prog_python, '@INPUT@',
'--outdir', '@OUTDIR@',
'--rast',
'--dim', '5', '2', '2', '3', '5', '2',
],
output : 'gen_builder.hpp',
command : [
- prog_python2, '@INPUT0@', '--input', '@INPUT1@', '--output', '@OUTPUT@',
+ prog_python, '@INPUT0@', '--input', '@INPUT1@', '--output', '@OUTPUT@',
'--gen_h', '--output-dir', '@OUTDIR@'
],
depend_files : swr_gen_builder_depends,
input : '../codegen/gen_llvm_ir_macros.py',
output : 'gen_builder_meta.hpp',
command : [
- prog_python2, '@INPUT0@', '--gen_meta_h', '--output', '@OUTPUT@',
+ prog_python, '@INPUT0@', '--gen_meta_h', '--output', '@OUTPUT@',
'--output-dir', '@OUTDIR@'
],
depend_files : swr_gen_builder_depends,
input : '../codegen/gen_llvm_ir_macros.py',
output : 'gen_builder_intrin.hpp',
command : [
- prog_python2, '@INPUT0@', '--gen_intrin_h', '--output', '@OUTPUT@',
+ prog_python, '@INPUT0@', '--gen_intrin_h', '--output', '@OUTPUT@',
'--output-dir', '@OUTDIR@'
],
depend_files : swr_gen_builder_depends,
input : 'brw_nir_trig_workarounds.py',
output : 'brw_nir_trig_workarounds.c',
command : [
- prog_python2, '@INPUT@',
+ prog_python, '@INPUT@',
'-p', join_paths(meson.source_root(), 'src/compiler/nir/'),
],
depend_files : nir_algebraic_py,
'genX_xml.h',
input : ['gen_zipped_file.py', gen_xml_files],
output : 'genX_xml.h',
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
'genX_bits.h',
input : ['gen_bits_header.py', gen_xml_files],
output : 'genX_bits.h',
- command : [prog_python2, '@INPUT@', '-o', '@OUTPUT@'],
+ command : [prog_python, '@INPUT@', '-o', '@OUTPUT@'],
)
gen_xml_pack = []
_name,
input : ['gen_pack_header.py', f],
output : _name,
- command : [prog_python2, '@INPUT@'],
+ command : [prog_python, '@INPUT@'],
capture : true,
)
endforeach
'isl_format_layout.c',
input : ['gen_format_layout.py', 'isl_format_layout.csv'],
output : 'isl_format_layout.c',
- command : [prog_python2, '@INPUT0@', '--csv', '@INPUT1@', '--out', '@OUTPUT@'],
+ command : [prog_python, '@INPUT0@', '--csv', '@INPUT1@', '--out', '@OUTPUT@'],
)
libisl_files = files(
input : ['anv_entrypoints_gen.py', vk_api_xml],
output : ['anv_entrypoints.h', 'anv_entrypoints.c'],
command : [
- prog_python2, '@INPUT0@', '--xml', '@INPUT1@',
+ prog_python, '@INPUT0@', '--xml', '@INPUT1@',
'--outdir', meson.current_build_dir(),
],
depend_files : anv_extensions_py,
input : ['anv_extensions_gen.py', vk_api_xml],
output : 'anv_extensions.c',
command : [
- prog_python2, '@INPUT0@', '--xml', '@INPUT1@',
+ prog_python, '@INPUT0@', '--xml', '@INPUT1@',
'--out-c', '@OUTPUT@',
],
depend_files : anv_extensions_py,
input : ['anv_extensions_gen.py', vk_api_xml],
output : 'anv_extensions.h',
command : [
- prog_python2, '@INPUT0@', '--xml', '@INPUT1@',
+ prog_python, '@INPUT0@', '--xml', '@INPUT1@',
'--out-h', '@OUTPUT@',
],
depend_files : anv_extensions_py,
input : 'anv_icd.py',
output : 'intel_icd.@0@.json'.format(host_machine.cpu()),
command : [
- prog_python2, '@INPUT@',
+ prog_python, '@INPUT@',
'--lib-path', join_paths(get_option('prefix'), get_option('libdir')),
'--out', '@OUTPUT@',
],
input : 'anv_icd.py',
output : 'dev_icd.@0@.json'.format(host_machine.cpu()),
command : [
- prog_python2, '@INPUT@', '--lib-path', meson.current_build_dir(),
+ prog_python, '@INPUT@', '--lib-path', meson.current_build_dir(),
'--out', '@OUTPUT@'
],
depend_files : files('anv_extensions.py'),
'es1_glapi_mapi_tmp.h',
input : [mapi_abi_py, gl_and_es_api_files],
output : 'glapi_mapi_tmp.h',
- command : [prog_python2, '@INPUT0@', '--printer', 'es1api', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '--printer', 'es1api', '@INPUT1@'],
depend_files : api_xml_files,
capture : true,
)
'es2_glapi_mapi_tmp.h',
input : [mapi_abi_py, gl_and_es_api_files],
output : 'glapi_mapi_tmp.h',
- command : [prog_python2, '@INPUT0@', '--printer', 'es2api', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '--printer', 'es2api', '@INPUT1@'],
depend_files : api_xml_files,
capture : true,
)
'glapi_mapi_tmp.h',
input : [mapi_abi_py, 'gl_and_es_API.xml'],
output : 'glapi_mapi_tmp.h',
- command : [prog_python2, '@INPUT0@', '--printer', 'glapi', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '--printer', 'glapi', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'glprocs.h',
input : ['gl_procs.py', 'gl_and_es_API.xml'],
output : 'glprocs.h',
- command : [prog_python2, '@INPUT0@', '-c', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-c', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'glapitemp.h',
input : ['gl_apitemp.py', 'gl_and_es_API.xml'],
output : 'glapitemp.h',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'glapitable.h',
input : ['gl_table.py', 'gl_and_es_API.xml'],
output : 'glapitable.h',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'glapi_gentable.c',
input : ['gl_gentable.py', 'gl_and_es_API.xml'],
output : 'glapi_gentable.c',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'enums.c',
input : ['gl_enums.py', files('../registry/gl.xml')],
output : 'enums.c',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
capture : true,
)
'api_exec.c',
input : ['gl_genexec.py', 'gl_and_es_API.xml'],
output : 'api_exec.c',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : files('apiexec.py') + glapi_gen_depends,
capture : true,
)
'marshal_generated.c',
input : ['gl_marshal.py', 'gl_and_es_API.xml'],
output : 'marshal_generated.c',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : files('marshal_XML.py') + glapi_gen_depends,
capture : true,
)
x[0],
input : ['glX_proto_send.py', 'gl_API.xml'],
output : x[0],
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@', '-m', x[1]],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@', '-m', x[1]],
depend_files : glx_gen_depends,
capture : true,
)
x[0],
input : ['glX_proto_size.py', 'gl_API.xml'],
output : x[0],
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@', '--only-set', x[1]],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@', '--only-set', x[1]],
depend_files : glx_gen_depends,
capture : true,
)
'glapi_x86.S',
input : ['gl_x86_asm.py', gl_and_es_api_files],
output : 'glapi_x86.S',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'glapi_x86-64.S',
input : ['gl_x86-64_asm.py', gl_and_es_api_files],
output : 'glapi_x86-64.S',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'glapi_sparc.S',
input : ['gl_SPARC_asm.py', gl_and_es_api_files],
output : 'glapi_sparc.S',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'shared_glapi_mapi_tmp.h',
input : [mapi_abi_py, gl_and_es_api_files],
output : 'glapi_mapi_tmp.h',
- command : [prog_python2, '@INPUT0@', '--printer', 'shared-glapi', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '--printer', 'shared-glapi', '@INPUT1@'],
depend_files : api_xml_files,
capture : true,
)
input : i965_hw_metrics_xml_files,
output : [ 'brw_oa_metrics.c', 'brw_oa_metrics.h' ],
command : [
- prog_python2, files('brw_oa.py'),
+ prog_python, files('brw_oa.py'),
'--code', '@OUTPUT0@', '--header', '@OUTPUT1@',
'@INPUT@',
],
'dispatch.h',
input : [files('../../mapi/glapi/gen/gl_table.py'), gl_and_es_api_files],
output : 'dispatch.h',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@', '-m', 'remap_table'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@', '-m', 'remap_table'],
depend_files : glapi_gen_depends,
capture : true,
)
'marshal_generated.h',
input : [files('../../mapi/glapi/gen/gl_marshal_h.py'), gl_and_es_api_files],
output : 'marshal_generated.h',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : files('../../mapi/glapi/gen/marshal_XML.py') + glapi_gen_depends,
capture : true,
)
'remap_helper.h',
input : [files('../../mapi/glapi/gen/remap_helper.py'), gl_and_es_api_files],
output : 'remap_helper.h',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : glapi_gen_depends,
capture : true,
)
'format_fallback.c',
input : ['main/format_fallback.py', 'main/formats.csv'],
output : 'format_fallback.c',
- command : [prog_python2, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
+ command : [prog_python, '@INPUT0@', '@INPUT1@', '@OUTPUT@'],
depend_files : files('main/format_parser.py'),
)
'get_hash.h',
input : ['main/get_hash_generator.py', gl_and_es_api_files],
output : 'get_hash.h',
- command : [prog_python2, '@INPUT0@', '-f', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '-f', '@INPUT1@'],
depend_files : files('main/get_hash_params.py'),
capture : true,
)
x[0],
input : ['main/@0@'.format(x[1]), 'main/formats.csv'],
output : x[0],
- command : [prog_python2, '@INPUT0@', '@INPUT1@'],
+ command : [prog_python, '@INPUT0@', '@INPUT1@'],
depend_files : files('main/format_parser.py'),
capture : true,
)
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
)
'format_srgb',
input : ['format_srgb.py'],
output : 'format_srgb.c',
- command : [prog_python2, '@INPUT0@'],
+ command : [prog_python, '@INPUT0@'],
capture : true,
)
'xmlpool_options.h',
input : ['gen_xmlpool.py', 't_options.h'],
output : 'options.h',
- command : [prog_python2, '@INPUT@', meson.current_source_dir()],
+ command : [prog_python, '@INPUT@', meson.current_source_dir()],
capture : true,
depend_files : files('ca.po', 'es.po', 'de.po', 'nl.po', 'sv.po', 'fr.po'),
)
input : ['gen_enum_to_str.py', vk_api_xml[0]],
output : ['vk_enum_to_str.c', 'vk_enum_to_str.h'],
command : [
- prog_python2, '@INPUT0@', '--xml', '@INPUT1@', '--outdir',
+ prog_python, '@INPUT0@', '--xml', '@INPUT1@', '--outdir',
meson.current_build_dir()
],
)