diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2017-01-04 21:01:06 +0200 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2017-01-04 21:01:06 +0200 |
commit | de24fddbd149d465dc737d707fed204bdf8d06cc (patch) | |
tree | a68ed84d13ecc656d2807f0f143d7d0438edce11 /mesonbuild/modules | |
parent | 56e2c46ce1cb1ffb4f0fe56c6462954dd00f33c4 (diff) | |
download | meson-de24fddbd149d465dc737d707fed204bdf8d06cc.zip meson-de24fddbd149d465dc737d707fed204bdf8d06cc.tar.gz meson-de24fddbd149d465dc737d707fed204bdf8d06cc.tar.bz2 |
Create a module return value object.
Diffstat (limited to 'mesonbuild/modules')
-rw-r--r-- | mesonbuild/modules/__init__.py | 5 | ||||
-rw-r--r-- | mesonbuild/modules/modtest.py | 4 | ||||
-rw-r--r-- | mesonbuild/modules/pkgconfig.py | 5 |
3 files changed, 13 insertions, 1 deletions
diff --git a/mesonbuild/modules/__init__.py b/mesonbuild/modules/__init__.py index 184d85a..16cada0 100644 --- a/mesonbuild/modules/__init__.py +++ b/mesonbuild/modules/__init__.py @@ -45,6 +45,11 @@ def get_include_args(environment, include_dirs, prefix='-I'): return dirs_str +class ModuleReturnValue: + def __init__(self, return_value, new_objects): + self.return_value = return_value + assert(isinstance(new_objects, list)) + self.new_objects = new_objects class GResourceTarget(build.CustomTarget): def __init__(self, name, subdir, kwargs): diff --git a/mesonbuild/modules/modtest.py b/mesonbuild/modules/modtest.py index c9247e6..dc347e2 100644 --- a/mesonbuild/modules/modtest.py +++ b/mesonbuild/modules/modtest.py @@ -12,10 +12,14 @@ # See the License for the specific language governing permissions and # limitations under the License. +from . import ModuleReturnValue + class TestModule: def print_hello(self, state, args, kwargs): print('Hello from a Meson module') + rv = ModuleReturnValue(None, []) + return rv def initialize(): return TestModule() diff --git a/mesonbuild/modules/pkgconfig.py b/mesonbuild/modules/pkgconfig.py index aaf0746..38358f3 100644 --- a/mesonbuild/modules/pkgconfig.py +++ b/mesonbuild/modules/pkgconfig.py @@ -15,6 +15,8 @@ from .. import build from .. import mesonlib from .. import mlog +from . import ModuleReturnValue + import os class PkgConfigModule: @@ -138,7 +140,8 @@ class PkgConfigModule: self.generate_pkgconfig_file(state, libs, subdirs, name, description, url, version, pcfile, pub_reqs, priv_reqs, conflicts, priv_libs) - return build.Data(mesonlib.File(True, state.environment.get_scratch_dir(), pcfile), pkgroot) + res = build.Data(mesonlib.File(True, state.environment.get_scratch_dir(), pcfile), pkgroot) + return ModuleReturnValue(res, [res]) def initialize(): return PkgConfigModule() |