diff options
-rw-r--r-- | mesonbuild/backend/backends.py | 7 | ||||
-rw-r--r-- | mesonbuild/build.py | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py index 2652ae6..4e1ac1e 100644 --- a/mesonbuild/backend/backends.py +++ b/mesonbuild/backend/backends.py @@ -1445,7 +1445,12 @@ class Backend: for h in headers: outdir = h.get_custom_install_dir() if outdir is None: - outdir = os.path.join(incroot, h.get_install_subdir()) + subdir = h.get_install_subdir() + if subdir is None: + outdir = incroot + else: + outdir = os.path.join(incroot, subdir) + for f in h.get_sources(): if not isinstance(f, File): raise MesonException(f'Invalid header type {f!r} can\'t be installed') diff --git a/mesonbuild/build.py b/mesonbuild/build.py index 414a4f8..83dd3f0 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -149,7 +149,7 @@ class Headers(HoldableObject): def set_install_subdir(self, subdir: str) -> None: self.install_subdir = subdir - def get_install_subdir(self) -> str: + def get_install_subdir(self) -> T.Optional[str]: return self.install_subdir def get_sources(self) -> T.List[File]: |