aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
AgeCommit message (Collapse)AuthorFilesLines
2021-12-20gnome: use typed_kwargs for mkenums_simpleDylan Baker1-35/+52
the simple_version still goes through the big version of this function, but at last we have type checking
2021-12-20gnome: remove 'template' handling from mkenumsDylan Baker1-9/+1
This has never been in permittedKwargs, it does nothing, and it was never documented, so it seems pretty safe to just remove it.
2021-12-18i18n: Fix typo for typed_pos_argsMatthias Klumpp1-1/+1
2021-12-17Fix mypy errorsDaniel Mensinger5-7/+16
2021-12-17add ft32 cpu familyRafael Silva1-0/+1
2021-12-16armclang: extend the prefix detection for Keil armclangBen Boeckel1-2/+2
This will avoid false positives with the ARM Ltd. `armclang` compiler.
2021-12-16armclang: clarify that this is support for the Keil cross-compilerBen Boeckel3-0/+11
2021-12-15mesonlib: make get_meson_command return an ImmutableListDylan Baker1-2/+2
We really don't want to be mutating global state, so let mypy yell at us when we try.
2021-12-15rewriter: create {add,rm}_extra_files commandsCeleste Wouters1-3/+96
Add ability to mutate a target's `extra_files` list through the rewriter. The logic is copied from sources add/rm, but changes the `extra_files` kwarg instead of the sources positional argument. Has additional logic to handle creating the `extra_files` list if it doesn't exist.
2021-12-12intl dep: forward static to iconv if neededChristoph Reiter1-1/+1
In 1fb6c939473ca7cdab2 the intl dep gained support for static linking which also forwarded this property to the iconv sub dependency. The refactoring in 214d03568f75 lost this change, which results in iconv getting linked dynamically again. Forward static again to fix this.
2021-12-12Merge pull request #9711 from dcbaker/submit/fix-gnome-typing-regressionsJussi Pakkanen1-13/+13
Fix regressions caused by typing changes
2021-12-11install: Don't run ldconfig on cross buildsDylan Baker2-6/+10
Even if we install without a DESTDIR set, we should never update ldconfig when cross compiling. Fixes #9707
2021-12-11Activate VS env when running `meson test`William Toohey1-1/+4
2021-12-09modules/gnome: fix genmarshall install_dir defaultDylan Baker1-1/+1
Which needs to be converted from None to an empty list
2021-12-09modules/gnome: Fix handling of flags to genmarshalDylan Baker1-11/+11
These are actually just flags, they don't take any arguments (except prefix, which was already handled correctly), and as such their arguments should be booleans, not strings, and they should default to False.
2021-12-09modules/gnome: set genmarshal extra_args default to listDylan Baker1-1/+1
Which is what it should have been all along.
2021-12-07custom_target: catch and reject input files that do not existEli Schwartz1-10/+14
Currently there is a try/except around the function that detects and rejects this, which instead of rejecting it, spawns a warning and continue. This warning exists because of 'test cases/vala/9 gir/' which passes a vala generated output that isn't a return value (!!!) using string joining with the meson.current_build_dir() function (also !!!) because we officially document this (!!! for a third time) as the only way to make a vala shared library generate a typelib with a custom_command from the automatically generated gir: https://mesonbuild.com/Vala.html#gobject-introspection-and-language-bindings In #3061 we converted strings to Files, but only if none of them were this vala hack. Due to the precise implementation, we also failed to convert strings to Files if any other error occurred, but since we only want to ignore errors for generated vala outputs, tighten that check and specifically call out generated files in the warning. Fixes #8635
2021-12-08clang-cl: add a translation pass for `-isystem` args to workSahnvour1-0/+14
2021-12-07modules/gnome: replace FeatureDeprecatedKwarg with typed_kwargDylan Baker1-3/+6
Using the deprected_message helper.
2021-12-07modules/gnome: use typed_kwargs for generate_vapiDylan Baker1-47/+52
There is a change here, in that packages has error messaging for using IncludeDirs objects in the packages argument, but it never worked, so the message was useless.
2021-12-07modules/gnome: use typed_kwargs for genmarshalDylan Baker1-43/+57
2021-12-07gnome/genmarshal: Add missing kwargs to permittedKwargsDylan Baker1-1/+1
There are thee arguments that are passed directly to CustomTarget which are not in the permittedKwargs: depends, depend_files, and build_always. The first two are obviously generically useful, as they allow creating correct ordering. The latter, not so much. Since it was an error to pass it, we'll just delete it.
2021-12-07interpreter: use common DEPENDS_KWDylan Baker2-3/+3
2021-12-07interpreter: move more custom_target keyword arguments to the type_checking ↵Dylan Baker2-3/+8
module These are going to be used in the gnome module.
2021-12-06gnome module: deprecate passing false to install_dir_girEli Schwartz1-2/+10
Use a proper install option for this. Now `install_<type>` can directly override `install` instead of passing a boolean to the string kwarg `install_dir_<type>`.
2021-12-06gnome module: document and fix install_dir x3, by allowing false *_gir and ↵Eli Schwartz1-6/+24
*_typelib generate_gir forces building both the typelib and gir, and some people only want one or the other (probably only the typelib?) which means flagging the other as install_dir: false in the same way custom_target supports. As this always worked, albeit undocumented, make sure it keeps working. It's pretty reasonable to allow, anyway. Fixes https://github.com/mesonbuild/meson/pull/9484#issuecomment-980131791
2021-12-06decorators: fold some duplicated code into a closureDylan Baker1-26/+17
2021-12-06add message option to since_values and deprecated_valuesDylan Baker1-6/+15
This allows these two arguments to take a tuple of (version, message), where the message will be passed to Feature*'s message parameter
2021-12-06Add deprecated_message and since_message to KwargInfoDylan Baker1-6/+17
For passing an extra message to Feature* This allows providing a more detailed message.
2021-12-06interpreterbase/decorators: Fix types of deprecated_values and since_valuesDylan Baker1-2/+3
Which shouldn't be Dict[str, str], they should be Dict[_T, str], as nay value that can be passed to types is valid here.
2021-12-06interpreter: use build.GeneratedTypesPaolo Bonzini1-1/+1
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-12-06interpreter: allow extract_objects to receive generated sourcesPaolo Bonzini2-14/+23
Fixes: #8333
2021-12-06allow passing a CustomTargetIndex as argument to a testPaolo Bonzini2-4/+6
Fixes: #7585 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-12-06pass all outputs of a custom_target as arguments to a testPaolo Bonzini1-12/+19
Meson was passing only the first output and warning about it. To do this easily, refactor construct_target_rel_path to return a list. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-12-06Fix performance regression in build file generationcomplexoctonion1-1/+2
Re-use any already determined rpaths for a target. Fixes #9695
2021-12-05fix stray typoEli Schwartz1-1/+1
2021-12-05rename exe_runner to exe_wrapper everywhereEli Schwartz3-15/+15
I don't understand the purpose of this confusing API naming split.
2021-12-05clean up function signatures in preparation for dataclassesEli Schwartz2-16/+16
FeatureCheck always immediately sets extra_message to '' if it isn't explicitly passed, so there is really no point in using None as a sentinel that is never used. Names used in init functions are sometimes pointlessly different from the class instance attributes they are immediately assigned to. They would make more sense if defined properly.
2021-12-05modules/qt: compeil_resources allow name to be unsetDylan Baker1-1/+1
Originally name should have been set to required=True, but since then the requirement to name CustomTargets (which compile_resources is a wrapper around) has been dropped. As such we just need to allow the default value of None through. Fixes: #9698
2021-12-02gtkdoc: add support for a binary wrapperAlexander Kanavin1-1/+3
Make it possible to specify a wrapper for executing binaries in cross-compiling scenarios. (usually, some kind of target hardware emulator, such as qemu)
2021-12-02i18n module: correctly annotate the availability of data_dirsEli Schwartz1-2/+2
It was originally forgotten in merge_file() and later added for parity with gettext(). This means that the FeatureNew for each function is different.
2021-12-02cmake: Deprecate CMake <3.14 and warn for <3.17 (#9677)Daniel Mensinger1-0/+14
* cmake: Deprecate CMake <3.14 and warn for <3.17 See: - #7832 - #9676 * cmake: Add deprecation release note snippet
2021-12-01cmake: Fix old style dependency lookup with imported targetsDaniel Mensinger5-169/+157
This also includes some refactoring, since the alternaticve would have been to duplicate the huge traceparser target code block again. fixes #9581
2021-12-01add install_symlink functionPablo Correa Gómez6-17/+107
Allows installing symlinks directly from meson, which can become useful in multiple scenarios. Current main use is to help moving forward #9557
2021-12-01interpreter: reorder functions alphabeticallyPablo Correa Gómez1-15/+15
2021-11-30Fix typo in wrap.pyRandy1-1/+1
2021-11-30fix broken FeatureNew checks that never printedEli Schwartz1-2/+2
They passed the arguments in the wrong order, so the version parsed as the message and the message parsed as a version. While we are at it, pass the location node in too.
2021-11-29interpreter: allow Compiler as a variadic positional argumentDylan Baker1-6/+15
We allow this for the command (the first parameter), but not later parameters, which is just odd. This also allows us to give better error messages for the case of overridden programs.
2021-11-29interpreter: use typed_kwargs for run_commandDylan Baker3-19/+26
This also cleans up a couple of internal callers of the internal impl version that don't set the `check` argument, and therefore trigger a warning about not setting the check argument.
2021-11-29interpreter: use typed_pos_args for run_commandDylan Baker2-10/+19