diff options
author | Xavier Claessens <xavier.claessens@collabora.com> | 2021-08-12 22:13:51 -0400 |
---|---|---|
committer | Xavier Claessens <xclaesse@gmail.com> | 2021-08-17 15:19:18 -0400 |
commit | 8c5aa031b5ffb4eb3c61083072dcab49c8927d45 (patch) | |
tree | f62800f365cf6706fab33283436cbeef7df7206f /mesonbuild/modules | |
parent | 6d055b1e27dc6fc0fac967fbe2f439758a4c5d07 (diff) | |
download | meson-8c5aa031b5ffb4eb3c61083072dcab49c8927d45.zip meson-8c5aa031b5ffb4eb3c61083072dcab49c8927d45.tar.gz meson-8c5aa031b5ffb4eb3c61083072dcab49c8927d45.tar.bz2 |
Add install tags
Fixes: #7007.
Diffstat (limited to 'mesonbuild/modules')
-rw-r--r-- | mesonbuild/modules/gnome.py | 4 | ||||
-rw-r--r-- | mesonbuild/modules/hotdoc.py | 1 | ||||
-rw-r--r-- | mesonbuild/modules/i18n.py | 1 | ||||
-rw-r--r-- | mesonbuild/modules/pkgconfig.py | 2 | ||||
-rw-r--r-- | mesonbuild/modules/python.py | 8 | ||||
-rw-r--r-- | mesonbuild/modules/qt.py | 1 |
6 files changed, 12 insertions, 5 deletions
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py index a9cd1d3..a2f98bc 100644 --- a/mesonbuild/modules/gnome.py +++ b/mesonbuild/modules/gnome.py @@ -747,6 +747,7 @@ class GnomeModule(ExtensionModule): scankwargs['install'] = kwargs['install'] scankwargs['install_dir'] = kwargs.get('install_dir_gir', os.path.join(state.environment.get_datadir(), 'gir-1.0')) + scankwargs['install_tag'] = 'devel' if 'build_by_default' in kwargs: scankwargs['build_by_default'] = kwargs['build_by_default'] @@ -764,6 +765,7 @@ class GnomeModule(ExtensionModule): typelib_kwargs['install'] = kwargs['install'] typelib_kwargs['install_dir'] = kwargs.get('install_dir_typelib', os.path.join(state.environment.get_libdir(), 'girepository-1.0')) + typelib_kwargs['install_tag'] = 'typelib' if 'build_by_default' in kwargs: typelib_kwargs['build_by_default'] = kwargs['build_by_default'] @@ -1146,7 +1148,7 @@ class GnomeModule(ExtensionModule): state.test(check_args, env=check_env, workdir=check_workdir, depends=custom_target) res = [custom_target, alias_target] if kwargs.get('install', True): - res.append(state.backend.get_executable_serialisation(command + args)) + res.append(state.backend.get_executable_serialisation(command + args, tag='doc')) return ModuleReturnValue(custom_target, res) def _get_build_args(self, kwargs, state, depends): diff --git a/mesonbuild/modules/hotdoc.py b/mesonbuild/modules/hotdoc.py index 4dccd06..19a1728 100644 --- a/mesonbuild/modules/hotdoc.py +++ b/mesonbuild/modules/hotdoc.py @@ -354,6 +354,7 @@ class HotdocTargetBuilder: '--builddir', os.path.join(self.builddir, self.subdir)] + self.hotdoc.get_command() + ['run', '--conf-file', hotdoc_config_name]) + install_script.tag = 'doc' return (target, install_script) diff --git a/mesonbuild/modules/i18n.py b/mesonbuild/modules/i18n.py index 57d25fd..539f82b 100644 --- a/mesonbuild/modules/i18n.py +++ b/mesonbuild/modules/i18n.py @@ -181,6 +181,7 @@ class I18nModule(ExtensionModule): # to custom_targets. Crude hack: set the build target's subdir manually. # Bonus: the build tree has something usable as an uninstalled bindtextdomain() target dir. 'install_dir': path.join(install_dir, l, 'LC_MESSAGES'), + 'install_tag': 'i18n', } gmotarget = build.CustomTarget(l+'.mo', path.join(state.subdir, l, 'LC_MESSAGES'), state.subproject, gmo_kwargs) targets.append(gmotarget) diff --git a/mesonbuild/modules/pkgconfig.py b/mesonbuild/modules/pkgconfig.py index 48bbc34..e57c4f6 100644 --- a/mesonbuild/modules/pkgconfig.py +++ b/mesonbuild/modules/pkgconfig.py @@ -548,7 +548,7 @@ class PkgConfigModule(ExtensionModule): self._generate_pkgconfig_file(state, deps, subdirs, name, description, url, version, pcfile, conflicts, variables, unescaped_variables, False, dataonly) - res = build.Data([mesonlib.File(True, state.environment.get_scratch_dir(), pcfile)], pkgroot, None, state.subproject) + res = build.Data([mesonlib.File(True, state.environment.get_scratch_dir(), pcfile)], pkgroot, None, state.subproject, install_tag='devel') variables = self.interpreter.extract_variables(kwargs, argname='uninstalled_variables', dict_new=True) variables = parse_variable_list(variables) unescaped_variables = self.interpreter.extract_variables(kwargs, argname='unescaped_uninstalled_variables') diff --git a/mesonbuild/modules/python.py b/mesonbuild/modules/python.py index f38becf..65a73a7 100644 --- a/mesonbuild/modules/python.py +++ b/mesonbuild/modules/python.py @@ -344,6 +344,7 @@ if T.TYPE_CHECKING: pure: bool subdir: str + install_tag: T.Optional[str] class PythonInstallation(ExternalProgramHolder): @@ -436,14 +437,15 @@ class PythonInstallation(ExternalProgramHolder): return dep @typed_pos_args('install_data', varargs=(str, mesonlib.File)) - @typed_kwargs('python_installation.install_sources', _PURE_KW, _SUBDIR_KW) + @typed_kwargs('python_installation.install_sources', _PURE_KW, _SUBDIR_KW, + KwargInfo('install_tag', str, since='0.60.0')) def install_sources_method(self, args: T.Tuple[T.List[T.Union[str, mesonlib.File]]], kwargs: 'PyInstallKw') -> 'Data': + tag = kwargs['install_tag'] or 'runtime' return self.interpreter.install_data_impl( self.interpreter.source_strings_to_files(args[0]), self._get_install_dir_impl(kwargs['pure'], kwargs['subdir']), - mesonlib.FileMode(), - None) + mesonlib.FileMode(), rename=None, tag=tag) @noPosargs @typed_kwargs('python_installation.install_dir', _PURE_KW, _SUBDIR_KW) diff --git a/mesonbuild/modules/qt.py b/mesonbuild/modules/qt.py index 5efd668..ed66ae9 100644 --- a/mesonbuild/modules/qt.py +++ b/mesonbuild/modules/qt.py @@ -513,6 +513,7 @@ class QtBaseModule(ExtensionModule): lrelease_kwargs = {'output': '@BASENAME@.qm', 'input': ts, 'install': kwargs.get('install', False), + 'install_tag': 'i18n', 'build_by_default': kwargs.get('build_by_default', False), 'command': cmd} if install_dir is not None: |