[PATCH 08/22] meson, mkvenv: add checktests and functests custom targets

John Snow posted 22 patches 2 days, 17 hours ago
Maintainers: "Alex Bennée" <alex.bennee@linaro.org>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Thomas Huth <thuth@redhat.com>, Paolo Bonzini <pbonzini@redhat.com>, "Marc-André Lureau" <marcandre.lureau@redhat.com>, "Daniel P. Berrangé" <berrange@redhat.com>, John Snow <jsnow@redhat.com>, Cleber Rosa <crosa@redhat.com>, Markus Armbruster <armbru@redhat.com>, Michael Roth <michael.roth@amd.com>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>
[PATCH 08/22] meson, mkvenv: add checktests and functests custom targets
Posted by John Snow 2 days, 17 hours ago
add "pyvenv_checktests_group" and "pyvenv_functests_group" targets to
meson. These targets will invoke mkvenv.py to install the associated
dependency group to the build/pyvenv directory.

Signed-off-by: John Snow <jsnow@redhat.com>
---
 meson.build        |  1 +
 pyvenv/meson.build | 34 ++++++++++++++++++++++++++++++++++
 2 files changed, 35 insertions(+)
 create mode 100644 pyvenv/meson.build

diff --git a/meson.build b/meson.build
index df4460035c3..0e9c73dc2a0 100644
--- a/meson.build
+++ b/meson.build
@@ -4585,6 +4585,7 @@ subdir('scripts')
 subdir('tools')
 subdir('pc-bios')
 subdir('docs')
+subdir('pyvenv')
 # Tests are disabled on emscripten because they rely on host features that aren't
 # supported by emscripten (e.g. fork and unix socket).
 if host_os != 'emscripten'
diff --git a/pyvenv/meson.build b/pyvenv/meson.build
new file mode 100644
index 00000000000..6631caf9b7a
--- /dev/null
+++ b/pyvenv/meson.build
@@ -0,0 +1,34 @@
+# Note that this file only controls "optional" dependency groups; groups
+# *required* for the build are handled directly in configure instead:
+# namely, meson and sphinx.
+
+pyvenv_common_deps = files(
+    meson.project_source_root() + '/pythondeps.toml',
+    meson.project_source_root() + '/python/scripts/mkvenv.py'
+)
+pyvenv_wheel_dir = meson.project_source_root() + '/python/wheels'
+
+
+pyvenv_checktests_group = custom_target(
+    'pyvenv_checktests_group',
+    output: 'checktests.group',
+    input: pyvenv_common_deps,
+    command: [ python, '@INPUT1@',
+               'ensuregroup',
+               '--dir', pyvenv_wheel_dir,
+               '@INPUT0@',
+               'checktests' ],
+)
+
+
+pyvenv_functests_group = custom_target(
+    'pyvenv_functests_group',
+    output: 'functests.group',
+    input: pyvenv_common_deps,
+    depends: pyvenv_checktests_group,
+    command: [ python, '@INPUT1@',
+               'ensuregroup',
+               '--dir', pyvenv_wheel_dir,
+               '@INPUT0@',
+               'functests' ],
+)
-- 
2.51.1