gstreamer/subprojects/gst-devtools/dots-viewer/meson.build

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

59 lines
1.4 KiB
Meson
Raw Normal View History

if not add_languages('rust', required: get_option('dots_viewer'))
subdir_done()
endif
rustc = meson.get_compiler('rust')
cargo = find_program('cargo', version:'>=1.40', required: get_option('dots_viewer'))
if not cargo.found()
subdir_done()
endif
cargo_wrapper = find_program('cargo_wrapper.py')
extra_env = {'RUSTC': ' '.join(rustc.cmd_array())}
system = host_machine.system()
exe_suffix = ''
if system == 'windows'
exe_suffix = '.exe'
endif
if get_option('debug')
target = 'debug'
else
target = 'release'
endif
# Extra env to pass to cargo
if get_option('default_library') == 'static'
extra_env += {
# Tell the pkg-config crate to think of all libraries as static
'PKG_CONFIG_ALL_STATIC': '1',
# Tell the system-deps crate to process linker flag for static deps
'SYSTEM_DEPS_LINK': 'static'
}
endif
foreach binname: ['gst-dots-viewer']
custom_target(binname,
build_by_default: true,
output: binname + exe_suffix,
console: true,
install: true,
install_dir: get_option('bindir'),
depfile: binname + '.dep',
env: extra_env,
command: [cargo_wrapper,
'build',
meson.current_build_dir(),
meson.current_source_dir(),
meson.global_build_root(),
target,
get_option('prefix'),
get_option('libdir'),
'--depfile', '@DEPFILE@',
'--bin', binname,
'--exe-suffix', exe_suffix,
])
endforeach