meson/mesonbuild
Eli Schwartz 8b573d7dc6
i18n.merge_file: do not disable in the absence of gettext tools
Disabling targets because the tools used to build them aren't available
is a pretty suspicious thing to do. Users who want this are probably, in
general, advised to check themselves whether it is possible to build
those targets with find_program(..., required: false)

The i18n.gettext() invocation is a bit unusual because the product of
running it is non-critical files, specifically, translation catalogs. If
users don't have the tools needed to build them, they may not be able to
use them either, because perhaps they have NLS disabled on their
platform or it's difficult to put it in the bootstrap path.

So, for this reason, it was made non-fatal and the message catalogs are
just not created, and the resulting build is still perfectly usable
*unless* you want to use it in another language, at which point it
"works" but the text is all inscrutable to the end user, and that's a
feature of the target platform.

That's an acceptable tradeoff for translation catalogs.

It is NOT an acceptable tradeoff for merge_file, which produces desktop
files or MIME database catalogs or other files which have crucial roles
to perform, without which the software in question simply doesn't work
at all. In such cases, this just fails to install crucial files, users
report bugs to the project in question, and the project adds
`find_program('xgettext')` to guarantee the hard error due to lack of
confidence in Meson.

Fixes #6165
Fixes #8436
2022-03-06 11:09:56 -05:00
..
ast add install_symlink function 2021-12-01 13:59:54 -05:00
backend devenv: Do not prepend empty list to PATH and LD_LIBRARY_PATH 2022-02-28 09:03:27 -05:00
cmake flake8: fix wrong numbers of blank line separators 2022-02-16 18:19:13 -05:00
compilers compilers/gnu: set level 0 optimization to '-O0' 2022-03-02 19:59:45 +02:00
dependencies Add modules kwarg to JNI system dep 2022-03-04 13:52:21 -05:00
interpreter add D features to InternalDependency 2022-03-03 08:42:56 -08:00
interpreterbase clean up FeatureCheck signature to move location to use time 2022-03-01 12:13:24 -08:00
linkers Genericise TI compiler and add MSP430 support 2022-02-02 16:45:05 +02:00
mesonlib mesonlib: use Literal to tighten configure_file formats 2022-03-01 15:17:59 -05:00
modules i18n.merge_file: do not disable in the absence of gettext tools 2022-03-06 11:09:56 -05:00
scripts scripts: accept the path of the gettext commands to run as an argument 2022-03-06 10:48:34 -05:00
templates flake8: fix indentation style 2022-01-27 10:48:01 -08:00
wrap fix missing encodings 2022-03-01 21:42:52 -05:00
__init__.py
_pathlib.py pathlib: Patch pathlib to work around some bugs (fixes #7295) 2021-06-29 11:28:08 +02:00
_typing.py fix various flake8 whitespace errors 2021-10-27 09:51:52 -04:00
arglist.py Fix typos discovered by codespell 2021-10-10 16:12:25 -04:00
build.py add D features to InternalDependency 2022-03-03 08:42:56 -08:00
coredata.py fix missing encodings 2022-03-01 21:42:52 -05:00
depfile.py depfile: type annotate 2022-01-10 23:06:20 -05:00
envconfig.py Genericise TI compiler and add MSP430 support 2022-02-02 16:45:05 +02:00
environment.py Change jar() default install dir 2022-02-28 11:44:29 +02:00
mcompile.py mcompile: fix broken codepaths and restore orphaned code 2022-01-26 14:49:38 -05:00
mconf.py fix various flake8 whitespace errors 2021-10-27 09:51:52 -04:00
mdevenv.py devenv: Add --dump option 2022-02-28 09:03:27 -05:00
mdist.py implement 'dist --allow-dirty' flag 2022-02-10 21:23:20 -05:00
mesondata.py port from embedded data to importlib.resources 2022-01-10 18:36:57 -05:00
mesonmain.py use a more sane check instead of run_custom_lint 2022-03-01 21:42:52 -05:00
minit.py Add vala template 2021-11-16 22:25:14 -05:00
minstall.py devenv: Source bash completion scripts 2022-02-28 09:03:27 -05:00
mintro.py introspect: include choices for array options 2021-10-14 09:04:25 -04:00
mlog.py fix type annotations for mlog nesting 2021-12-30 15:15:25 -05:00
mparser.py fix malformed warning to print the way it was meant to print 2022-02-16 23:00:28 -05:00
msetup.py Add API for modules that wants to define their devenv 2022-02-28 09:03:27 -05:00
msubprojects.py flake8: remove some redundant separators 2022-02-16 18:19:13 -05:00
mtest.py Merge pull request #10004 from bonzini/mtest-tap-stderr 2022-02-27 22:12:58 +02:00
munstable_coredata.py fix coding errors in unstable-coredata subcommand 2021-08-22 13:56:41 +03:00
optinterpreter.py FeatureNew: add mypy type annotations for subproject arg 2022-02-14 20:40:41 -05:00
programs.py interpreter: use typed_kwargs for run_command 2021-11-29 18:12:33 -08:00
rewriter.py rewriter: create {add,rm}_extra_files commands 2021-12-15 21:21:29 +01:00