aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJussi Pakkanen <jpakkane@gmail.com>2017-07-01 01:13:45 +0300
committerJussi Pakkanen <jpakkane@gmail.com>2017-07-01 01:13:45 +0300
commitecde592b86e9c25fc82a612085761c4825017841 (patch)
treea0935b9b292e0f1e3e35995e790f68d08d37d39a
parentc11a4cb952835afda6161f6d63e1eded4381d5a0 (diff)
downloadmeson-ecde592b86e9c25fc82a612085761c4825017841.zip
meson-ecde592b86e9c25fc82a612085761c4825017841.tar.gz
meson-ecde592b86e9c25fc82a612085761c4825017841.tar.bz2
Fix custom target sources
-rw-r--r--mesonbuild/build.py8
-rw-r--r--mesonbuild/modules/gnome.py6
2 files changed, 10 insertions, 4 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py
index c73ba3a..9dd0fa0 100644
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1490,8 +1490,12 @@ class CustomTarget(Target):
def process_kwargs(self, kwargs):
super().process_kwargs(kwargs)
- self.sources = kwargs.get('input', [])
- self.sources = flatten(self.sources)
+ sources = flatten(kwargs.get('input', []))
+ self.sources = []
+ for s in sources:
+ if hasattr(s, 'held_object'):
+ s = s.held_object
+ self.sources.append(s)
if 'output' not in kwargs:
raise InvalidArguments('Missing keyword argument "output".')
self.outputs = kwargs['output']
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 5ec3b5f..5dfd572 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -328,8 +328,10 @@ class GnomeModule(ExtensionModule):
if isinstance(dep, InternalDependency):
cflags.update(get_include_args(dep.include_directories))
for lib in dep.libraries:
- ldflags.update(self._get_link_args(state, lib.held_object, depends, include_rpath))
- libdepflags = self._get_dependencies_flags(lib.held_object.get_external_deps(), state, depends, include_rpath,
+ if hasattr(lib, 'held_object'):
+ lib = lib.held_object
+ ldflags.update(self._get_link_args(state, lib, depends, include_rpath))
+ libdepflags = self._get_dependencies_flags(lib.get_external_deps(), state, depends, include_rpath,
use_gir_args)
cflags.update(libdepflags[0])
ldflags.update(libdepflags[1])