From d6e11f38d2b070ce96aed72810353026e279b5f5 Mon Sep 17 00:00:00 2001 From: Nirbheek Chauhan Date: Tue, 1 Aug 2023 11:24:12 +0530 Subject: [PATCH] meson: Don't require Python 3.8 for cargo_wrapper.py Documentation on gstreamer monorepo is disabled because the image we use to build the docs only has Python 3.7 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2873 Part-of: --- cargo_wrapper.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/cargo_wrapper.py b/cargo_wrapper.py index dadd0984..0b7353c2 100644 --- a/cargo_wrapper.py +++ b/cargo_wrapper.py @@ -30,6 +30,12 @@ PARSER.add_argument('--depfile') PARSER.add_argument('--disable-doc', action="store_true", default=False) +def shlex_join(args): + if hasattr(shlex, 'join'): + return shlex.join(args) + return ' '.join([shlex.quote(arg) for arg in args]) + + def generate_depfile_for(fpath): file_stem = fpath.parent / fpath.stem depfile_content = "" @@ -92,7 +98,7 @@ if __name__ == "__main__": rustc_target_idx = rust_flags.index('--target') _ = rust_flags.pop(rustc_target_idx) # drop '--target' rustc_target = rust_flags.pop(rustc_target_idx) - env['RUSTFLAGS'] = shlex.join(rust_flags) + env['RUSTFLAGS'] = shlex_join(rust_flags) env['RUSTC'] = rustc_cmdline[0] features = opts.features