aboutsummaryrefslogtreecommitdiff
path: root/test cases
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2024-03-02 00:59:32 +0200
committerGitHub <noreply@github.com>2024-03-02 00:59:32 +0200
commit54996132af6d0feaef6afd943c94ff25911ca67b (patch)
tree7981fd0fedd247c91a40adf9e9a7716e1ffba892 /test cases
parentcc4cfbcad92945a1629c80664e1eb755c68905dd (diff)
parent524a66116b38a65210b7516781d26ed6efb690b9 (diff)
downloadmeson-54996132af6d0feaef6afd943c94ff25911ca67b.zip
meson-54996132af6d0feaef6afd943c94ff25911ca67b.tar.gz
meson-54996132af6d0feaef6afd943c94ff25911ca67b.tar.bz2
Merge pull request #12804 from joukewitteveen/dist-rewriter
Support `meson dist` when getting project versions from VCS
Diffstat (limited to 'test cases')
-rw-r--r--test cases/unit/35 dist script/subprojects/sub/dist-script.py7
-rw-r--r--test cases/unit/35 dist script/subprojects/sub/meson.build6
-rw-r--r--test cases/unit/35 dist script/subprojects/sub/version-test.py5
3 files changed, 17 insertions, 1 deletions
diff --git a/test cases/unit/35 dist script/subprojects/sub/dist-script.py b/test cases/unit/35 dist script/subprojects/sub/dist-script.py
index 1274f29..5f1b4a1 100644
--- a/test cases/unit/35 dist script/subprojects/sub/dist-script.py
+++ b/test cases/unit/35 dist script/subprojects/sub/dist-script.py
@@ -2,11 +2,18 @@
import os
import pathlib
+import shlex
+import subprocess
import sys
assert sys.argv[1] == 'success'
source_root = pathlib.Path(os.environ['MESON_PROJECT_DIST_ROOT'])
+mesonrewrite = shlex.split(os.environ['MESONREWRITE'])
+rewrite_cmd = ['kwargs', 'set', 'project', '/', 'version', 'release']
+
+subprocess.run([*mesonrewrite, '-s', source_root, *rewrite_cmd], check=True)
+
modfile = source_root / 'prog.c'
with modfile.open('w') as f:
f.write('int main(){return 0;}')
diff --git a/test cases/unit/35 dist script/subprojects/sub/meson.build b/test cases/unit/35 dist script/subprojects/sub/meson.build
index a41a3b6..9dc047c 100644
--- a/test cases/unit/35 dist script/subprojects/sub/meson.build
+++ b/test cases/unit/35 dist script/subprojects/sub/meson.build
@@ -1,4 +1,5 @@
-project('sub', 'c')
+project('sub', 'c',
+ version : 'vcs')
if get_option('broken_dist_script')
# Make sure we can add a dist script in a subproject, but it won't be run
@@ -8,4 +9,7 @@ else
# The dist script replace prog.c with something that actually build.
meson.add_dist_script('dist-script.py', 'success')
executable('prog', 'prog.c')
+
+ versiontest = find_program('version-test.py')
+ test('dist version replacement', versiontest, args : meson.project_version())
endif
diff --git a/test cases/unit/35 dist script/subprojects/sub/version-test.py b/test cases/unit/35 dist script/subprojects/sub/version-test.py
new file mode 100644
index 0000000..1dcafc4
--- /dev/null
+++ b/test cases/unit/35 dist script/subprojects/sub/version-test.py
@@ -0,0 +1,5 @@
+#!/usr/bin/env python3
+
+from sys import argv
+
+assert argv[1] == 'release'