aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
diff options
context:
space:
mode:
authorVolker Weißmann <volker.weissmann@gmx.de>2023-03-25 13:00:10 +0100
committerJussi Pakkanen <jpakkane@gmail.com>2023-05-13 10:42:03 +0300
commit8d816111142694d032f68a549f4a9e18f38427e2 (patch)
tree70f27b78a7560c3cf466b60a9005563995703a4d /mesonbuild
parent10d6d2860c6abc29000d94f019af35cf931c315d (diff)
downloadmeson-8d816111142694d032f68a549f4a9e18f38427e2.zip
meson-8d816111142694d032f68a549f4a9e18f38427e2.tar.gz
meson-8d816111142694d032f68a549f4a9e18f38427e2.tar.bz2
Fix paths of Fortran order dependencies
Fixes #11047
Diffstat (limited to 'mesonbuild')
-rw-r--r--mesonbuild/backend/ninjabackend.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/mesonbuild/backend/ninjabackend.py b/mesonbuild/backend/ninjabackend.py
index d61c359..a3c0fa3 100644
--- a/mesonbuild/backend/ninjabackend.py
+++ b/mesonbuild/backend/ninjabackend.py
@@ -380,7 +380,8 @@ class NinjaBuildElement:
if len(self.deps) > 0:
line += ' | ' + ' '.join([ninja_quote(x, True) for x in sorted(self.deps)])
if len(self.orderdeps) > 0:
- line += ' || ' + ' '.join([ninja_quote(x, True) for x in sorted(self.orderdeps)])
+ orderdeps = [str(x) for x in self.orderdeps]
+ line += ' || ' + ' '.join([ninja_quote(x, True) for x in sorted(orderdeps)])
line += '\n'
# This is the only way I could find to make this work on all
# platforms including Windows command shell. Slash is a dir separator
@@ -956,7 +957,7 @@ class NinjaBackend(backends.Backend):
obj_targets = [t for t in od if t.uses_fortran()]
obj_list.extend(o)
- fortran_order_deps = [self.get_target_filename(t) for t in obj_targets]
+ fortran_order_deps = [File(True, *os.path.split(self.get_target_filename(t))) for t in obj_targets]
fortran_inc_args: T.List[str] = []
if target.uses_fortran():
fortran_inc_args = mesonlib.listify([target.compilers['fortran'].get_include_args(
@@ -1049,7 +1050,7 @@ class NinjaBackend(backends.Backend):
return True
def generate_dependency_scan_target(self, target, compiled_sources, source2object, generated_source_files: T.List[mesonlib.File],
- object_deps: T.List[str]) -> None:
+ object_deps: T.List['mesonlib.FileOrString']) -> None:
if not self.should_use_dyndeps_for_target(target):
return
depscan_file = self.get_dep_scan_file_for(target)
@@ -2836,7 +2837,7 @@ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=47485'''))
def generate_single_compile(self, target: build.BuildTarget, src,
is_generated=False, header_deps=None,
- order_deps: T.Optional[T.List[str]] = None,
+ order_deps: T.Optional[T.List['mesonlib.FileOrString']] = None,
extra_args: T.Optional[T.List[str]] = None,
unity_sources: T.Optional[T.List[mesonlib.FileOrString]] = None) -> None:
"""