From 40d6daf8240f9dc090c23f975488c424b88f120f Mon Sep 17 00:00:00 2001 From: Goffert van Gool Date: Thu, 13 Dec 2018 22:16:58 +0100 Subject: Read version from Cargo.toml (#1267) --- build_extra/rust/run.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'build_extra/rust/run.py') diff --git a/build_extra/rust/run.py b/build_extra/rust/run.py index 3a86c423c..dc89c09a1 100644 --- a/build_extra/rust/run.py +++ b/build_extra/rust/run.py @@ -1,13 +1,24 @@ #!/usr/bin/env python -# This file just executes its arguments, except that also adds GN_OUT_DIR to the -# environ. This is for compatibility with cargo. +# This file just executes its arguments, except that also adds GN_OUT_DIR and +# CARGO_PKG_VERSION to the environ. This is for compatibility with cargo. import subprocess import sys import os +import re # This is for src/msg.rs to know where to find msg_generated.rs. # When building with Cargo this variable is set by build.rs. os.environ["GN_OUT_DIR"] = os.path.abspath(".") assert os.path.isdir(os.environ["GN_OUT_DIR"]) -sys.exit(subprocess.call(sys.argv[1:])) +# Set the CARGO_PKG_VERSION env variable if provided as an argument +# When building with Cargo this variable is set automatically +args = sys.argv[1:] +for i, arg in enumerate(args): + match = re.search('--cargo-pkg-version="?([^"]*)"?', arg) + if match: + os.environ["CARGO_PKG_VERSION"] = match.group(1) + del args[i] + break + +sys.exit(subprocess.call(args)) -- cgit v1.2.3