diff options
author | Tristan Partin <tristan@partin.io> | 2022-03-01 12:05:28 -0600 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2022-03-22 13:21:26 +0200 |
commit | 39f1d52e4a82cc75a4a3a41c3cc17fe2dabdb30b (patch) | |
tree | ec8855a6f7ea0c937736f366258ae8ca2629ea9d /mesonbuild/build.py | |
parent | a559dbe70d113ebaa9bab406e371e54251d66e71 (diff) | |
download | meson-39f1d52e4a82cc75a4a3a41c3cc17fe2dabdb30b.zip meson-39f1d52e4a82cc75a4a3a41c3cc17fe2dabdb30b.tar.gz meson-39f1d52e4a82cc75a4a3a41c3cc17fe2dabdb30b.tar.bz2 |
Add ability to add resources to jars
Previously Meson lacked the ability to add resources to jar files.
Fixes #9945
Diffstat (limited to 'mesonbuild/build.py')
-rw-r--r-- | mesonbuild/build.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/mesonbuild/build.py b/mesonbuild/build.py index 4f569a6..2c841a6 100644 --- a/mesonbuild/build.py +++ b/mesonbuild/build.py @@ -36,7 +36,7 @@ from .mesonlib import ( extract_as_list, typeslistify, stringlistify, classify_unity_sources, get_filenames_templates_dict, substitute_values, has_path_sep, OptionKey, PerMachineDefaultable, - MesonBugException, + MesonBugException ) from .compilers import ( Compiler, is_object, clink_langs, sort_clink, lang_suffixes, @@ -122,7 +122,7 @@ known_exe_kwargs = known_build_target_kwargs | {'implib', 'export_dynamic', 'pie known_shlib_kwargs = known_build_target_kwargs | {'version', 'soversion', 'vs_module_defs', 'darwin_versions'} known_shmod_kwargs = known_build_target_kwargs | {'vs_module_defs'} known_stlib_kwargs = known_build_target_kwargs | {'pic', 'prelink'} -known_jar_kwargs = known_exe_kwargs | {'main_class'} +known_jar_kwargs = known_exe_kwargs | {'main_class', 'java_resources'} @lru_cache(maxsize=None) def get_target_macos_dylib_install_name(ld) -> str: @@ -2712,6 +2712,7 @@ class Jar(BuildTarget): self.filename = self.name + '.jar' self.outputs = [self.filename] self.java_args = kwargs.get('java_args', []) + self.java_resources: T.Optional[StructuredSources] = kwargs.get('java_resources', None) def get_main_class(self): return self.main_class @@ -2722,6 +2723,9 @@ class Jar(BuildTarget): def get_java_args(self): return self.java_args + def get_java_resources(self) -> T.Optional[StructuredSources]: + return self.java_resources + def validate_install(self, environment): # All jar targets are installable. pass |