-
-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Description
Describe the bug
I am working on a multi-language project with a layout like:
c/
meson.build
python/
adbc_driver_manager/
meson.build
subprojects
In my Python configuration, I have something that will look for a system dependency of adbc-driver-manager (assumedly to be used by end users) but that will fall back to a local subproject for "at source" development:
adbc_driver_manager_dep = dependency(
'adbc-driver-manager',
fallback: ['arrow-adbc', 'adbc_driver_manager_dep'],
default_options: ['driver_manager=enabled'],
)
I am also creating a symlink in the Python project to resolve to the "c" project:
python/
adbc_driver_manager/
subprojects/
arrow-adbc/ -- > symlinks to c/
This works great for local development, but Meson automatically generates wrap files for transitive dependencies exposed by the arrow-adbc subproject. For example, the subproject relies on the fmt library, so I end up with a file subprojects/fmt.wrap that looks like:
[wrap-redirect]
filename = arrow-adbc/subprojects/fmt.wrap
This is problematic when I then run meson dist
; the arrow-adbc symlinked directory is not included (which I believe is desired), but the auto-generated wrap-redirect files that point to files through that symlink are included with the dist
To Reproduce
See above
Expected behavior
Wrap files that are auto-generated from subprojects should not be included by default as part of the meson dist
command
system parameters
- Is this a cross build or just a plain native build (for the same computer)? Plain
- what operating system (e.g. MacOS Catalina, Windows 10, CentOS 8.0, Ubuntu 18.04, etc.) Ubuntu 24.04
- what Python version are you using e.g. 3.8.0 3.13.1
- what
meson --version
1.7.0 - what
ninja --version
if it's a Ninja build 1.12.1