utils: gen-version: Pass the meson source root to the gen-version.sh script

The gen-version.sh script expects to be called from a git repo, and sets its
src_root variable accordingly. This may not always be the case if it is built
from a tarball source - full support for which is in a future commit.

The MESON_SOURCE_ROOT environnement variable does not get set when called from
the meson vcs_tag() function, but does when called from the run_command()
function, so that cannot be used either.

Instead, explicitly pass the meson source root to the gen-version.sh script.

Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
This commit is contained in:
Naushir Patuck
2021-10-18 10:29:41 +01:00
committed by Laurent Pinchart
parent 40d9947781
commit 54637a615d
3 changed files with 13 additions and 4 deletions
+3 -1
View File
@@ -95,7 +95,9 @@ libcamera_sources += control_sources
gen_version = meson.source_root() / 'utils' / 'gen-version.sh'
version_cpp = vcs_tag(command : [gen_version, meson.build_root()],
# Use vcs_tag() and not configure_file() or run_command(), to ensure that the
# version gets updated with every ninja build and not just at meson setup time.
version_cpp = vcs_tag(command : [gen_version, meson.build_root(), meson.source_root()],
input : 'version.cpp.in',
output : 'version.cpp',
fallback : meson.project_version())