~ubuntu-support-team/meson/+git/meson:0.62

Last commit made on 2022-06-02
Get this branch:
git clone -b 0.62 https://git.launchpad.net/~ubuntu-support-team/meson/+git/meson

Branch merges

Branch information

Recent commits

373d18b... by Nirbheek Chauhan <email address hidden>

Bump versions to 0.62.2 for release

2be432d... by =?utf-8?b?VmlsaSBWw6RpbsO2bMOk?= <email address hidden>

Fix sandbox violation when using subproject as a symlink

Fix "Tried to grab file outside current (sub)project" error when subproject exists within
a source tree but it is used through a symlink. Using subprojects as symlinks is very useful
feature when migrating an existing codebase to meson that all sources do not need to be
immediately moved to subprojects folder.

5bb0916... by Eli Schwartz <email address hidden>

another day, another mypy update becomes stricter about typing

Move GlobalState to a runtime T.NamedTuple, use it for constructing the
tuple we are passing around rather than expecting mypy to detect that
the one we already have matches.

9ed4948... by Eli Schwartz <email address hidden>

i18n: be build-compatible (but not developer-compatible) with gettext-tiny

For maintainer targets, we need some more tools that gettext-tiny
doesn't implement. It's a shame to cause NLS to be completely disabled
in such environments, so instead just issue a warning and continue.

Before 0.62.0 these were never checked for, and would simply fail at
runtime, probably. In theory, the user might install the tools in
between configuring and building, and then the maintainer targets would
begin to work. Return to that behavior -- we still create the targets,
which will *probably* fail, but might not -- and for existing
integrations, failing at `ninja foo-update-po` with "error, program
msgmerge not found" is a bit more discoverable than ninja saying "what
do you mean, there's no such target".

We still have the 0.62.0 preferred behavior of trying to find the
programs, succeeding in all cases other than gettext-tiny, and
guaranteeing that their paths are set up in a machine-file-respecting
manner.

86d1f10... by Eli Schwartz <email address hidden>

i18n: fix bug where disabling gettext() broke merge_file()

In the former case, the presence of tools is optional, but triggers a
warning and then no-ops the target. In the latter case, the presence of
the tools is mandatory. But if it was already looked up and discovered
to be missing, we did not actually check that it is found before trying
to use it.

In the case that it isn't found, check again, so that we explicitly
error out with a relevant error message due to setting the required
flag.

Fixes #10320

99768b7... by Eli Schwartz <email address hidden>

fix custom_target crash if boolean true is specified in install_dir

We accept boolean false to indicate "do not install this one particular
output", but the type checking simply checked if it is a bool. We do
this correctly for configure_file, so copy the same validator from
there.

8837636... by Xavier Claessens <email address hidden>

Make a copy of auto_features options when changing its name

This fixes bogus messages "skipped: feature foo disabled" when
auto_features=disabled. It was reporting the name of the latest
get_option() call instead of the name of the current feature option.

This is especially visible in GStreamer summary where it should show a
different option name for every subproject but instead shows "tools"
everywhere:
```
  Subprojects
    gst-devtools : NO Feature 'tools' disabled
    gst-editing-services : NO Feature 'tools' disabled
    ...
```

f6969be... by Andreas Obergschwandtner <email address hidden>

Fix optimization level 's' for the TI compiler

d5c6c9c... by Daniel Mensinger <email address hidden>

cmake: Add test case

803d8ca... by Daniel Mensinger <email address hidden>

cmake: fix detecting directories as input files (fixes #10244)