diff options
Diffstat (limited to 'modules/gnome.py')
-rw-r--r-- | modules/gnome.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/modules/gnome.py b/modules/gnome.py index c0e391f..80ee5fb 100644 --- a/modules/gnome.py +++ b/modules/gnome.py @@ -63,14 +63,18 @@ class GnomeModule: scankwargs = {'output' : girfile, 'input' : libsources, 'command' : scan_command} - scan_target = build.CustomTarget(scan_name, state.subdir, scankwargs) + if kwargs.get('install'): + scankwargs['install'] = kwargs['install'] + scankwargs['install_dir'] = os.path.join(state.environment.get_datadir(), 'gir-1.0') + scan_target = GirTarget(scan_name, state.subdir, scankwargs) typelib_name = girtarget.name + '-typelib' typelib_output = '%s-%s.typelib' % (ns, nsversion) typelib_cmd = ['g-ir-compiler', scan_target, '--output', '@OUTPUT@'] kwargs['output'] = typelib_output kwargs['command'] = typelib_cmd - typelib_target = build.CustomTarget(typelib_name, state.subdir, kwargs) + kwargs['install_dir'] = os.path.join(state.environment.get_libdir(), 'girepository-1.0') + typelib_target = TypelibTarget(typelib_name, state.subdir, kwargs) return [scan_target, typelib_target] def compile_schemas(self, state, args, kwargs): @@ -111,3 +115,11 @@ def initialize(): mlog.log('Warning, glib compiled dependencies will not work until this upstream issue is fixed:', mlog.bold('https://bugzilla.gnome.org/show_bug.cgi?id=745754')) return GnomeModule() + +class GirTarget(build.CustomTarget): + def __init__(self, name, subdir, kwargs): + super().__init__(name, subdir, kwargs) + +class TypelibTarget(build.CustomTarget): + def __init__(self, name, subdir, kwargs): + super().__init__(name, subdir, kwargs) |