aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesonbuild/modules/gnome.py23
-rw-r--r--test cases/frameworks/7 gnome/resources-data/meson.build2
2 files changed, 16 insertions, 9 deletions
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 685a86b..f4329d9 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -259,21 +259,28 @@ class GnomeModule(ExtensionModule):
if hasattr(dep, 'held_object'):
dep = dep.held_object
if isinstance(dep, mesonlib.File):
- if dep.fname == missing_basename:
- found = True
- dep_files.remove(missing)
- dep_files.append(dep)
- subdirs.append(dep.subdir)
- break
+ if dep.fname != missing_basename:
+ continue
+ found = True
+ dep_files.remove(missing)
+ dep_files.append(dep)
+ subdirs.append(dep.subdir)
+ break
elif isinstance(dep, build.CustomTarget):
- if dep.get_basename() == missing_basename:
+ fname = None
+ outputs = {(o, os.path.basename(o)) for o in dep.get_outputs()}
+ for o, baseo in outputs:
+ if baseo == missing_basename:
+ fname = o
+ break
+ if fname is not None:
found = True
dep_files.remove(missing)
dep_files.append(
mesonlib.File(
is_built=True,
subdir=dep.get_subdir(),
- fname=dep.get_basename()))
+ fname=fname))
depends.append(dep)
subdirs.append(dep.get_subdir())
break
diff --git a/test cases/frameworks/7 gnome/resources-data/meson.build b/test cases/frameworks/7 gnome/resources-data/meson.build
index 9458c2d..31a577b 100644
--- a/test cases/frameworks/7 gnome/resources-data/meson.build
+++ b/test cases/frameworks/7 gnome/resources-data/meson.build
@@ -10,7 +10,7 @@ print("This is a generated resource.")
# Generate file res3.txt from file res3.txt.in. This is then included
# in a GResource file, driven by resources/meson.build.
-res3_txt = custom_target('res3.txt',
+res3_txt = custom_target('res3',
input: 'res3.txt.in',
output: 'res3.txt',
command: [python3, '-c', fake_generator_script, '@INPUT@'],