c_args are meant to be overridden by the user if needed (even via the
environment CFLAGS variables + -Doptimization=plain, for example),
so they should not contain any option that affect the multilib search
path. For example, a hypothetical native file like this:
[binaries]
c = gcc
[built-in options]
c_args = ['-m32']
would *not* build 32-bit binaries if -Dc_args is passed to meson.
Such options, instead should be in the [binaries] section. Adjust
the sample cross files included with meson.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This is like the project options, but for meson builtin options.
The only real differences here have to do with the differences between
meson builtin options and project options. Some meson options can be set
on a per-machine basis (build.pkg_config_path vs pkg_config_path) others
can be set on a per-subproject basis, but should inherit the parent
setting.
D lang compilers have an option -release (or similar) which turns off
asserts, contracts, and other runtime type checking. This patch wires
that up to the b_ndebug flag.
Fixes#7082