[...]
+ /tmp/tmp.o6S4xT3ZeL/env/bin/meson dist --include-subprojects --no-tests
Traceback (most recent call last):
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/mesonmain.py", line 194, in run
return options.run_func(options)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/mdist.py", line 371, in run
names = project.create_dist(archives)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/mdist.py", line 209, in create_dist
if is_git(sub_src_root):
^^^^^^^^^^^^^^^^^^^^
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/mdist.py", line 88, in is_git
return quiet_git(['ls-files', '--error-unmatch', 'meson.build'], src_root)[0]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/utils/universal.py", line 210, in quiet_git
p, o, e = git(cmd, workingdir, check)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/utils/universal.py", line 199, in git
p, o, e = Popen_safe(cmd, cwd=workingdir, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/tmp/tmp.o6S4xT3ZeL/env/lib64/python3.11/site-packages/mesonbuild/utils/universal.py", line 1485, in Popen_safe
p = subprocess.Popen(args, universal_newlines=True, encoding=encoding, close_fds=False,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib64/python3.11/subprocess.py", line 1026, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib64/python3.11/subprocess.py", line 1950, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: '/tmp/tmp.o6S4xT3ZeL/src/subprojects/gvdb'
ERROR: Unhandled python OSError. This is probably not a Meson bug, but an issue with your build environment.
Describe the bug
When running
meson diston a project with a subproject (glib) which itself has a subproject (gvdb),meson dist --include-subprojectsfails with aFileNotFoundErroron the promoted sub-subproject directory. Building the project first doesn't help.glib tarballs include both
gvdb.wrapand agvdbdirectory, in case that makes a difference. Meson automatically promotesgvdb.wrapbut notgvdb.To Reproduce
This produces:
Expected behavior
Meson produces a dist tarball.
system parameters
native
Fedora 38
3.11.6
meson --version1.2.3
ninja --versionif it's a Ninja build1.11.1