aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-12-08Update configure_file.yamladd-configuration-configure_FileDylan Baker1-1/+1
2021-12-07Update configure_file.yamlDylan Baker1-1/+1
Squash this
2021-12-06docs: Add the `configuration` keyeword argument to `configure_File`Dylan Baker1-0/+7
We were missing the most important keyword argument of them all!
2021-12-06gnome module: deprecate passing false to install_dir_girEli Schwartz4-7/+21
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 Schwartz4-11/+29
*_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 Baker2-7/+24
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-06unittests/internal: use more subTestDylan Baker1-13/+11
2021-12-06Add deprecated_message and since_message to KwargInfoDylan Baker2-12/+23
For passing an extra message to Feature* This allows providing a more detailed message.
2021-12-06unittests/internal: use mock and subTestDylan Baker1-7/+9
This just makes things a little cleaner, and allows more accurate error reporting.
2021-12-06interpreterbase/decorators: Fix types of deprecated_values and since_valuesDylan Baker2-2/+8
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-06ci: install pytest-subtestsDylan Baker5-4/+5
Which lets pytest understand unittest.subtest
2021-12-06ci/ubuntu-rolling: remove pkg-config-arm-linux-gnueabihfDylan Baker1-1/+0
This has been removed as an explicit package in impish. It seems that having pkg-config installed and adding arm as an arch will cause it to be generated automatically
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 Bonzini5-14/+45
Fixes: #8333
2021-12-06allow passing a CustomTargetIndex as argument to a testPaolo Bonzini4-6/+8
Fixes: #7585 Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2021-12-06pass all outputs of a custom_target as arguments to a testPaolo Bonzini3-15/+25
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-06doc: fix missing kwarg in qt5 moduleEli Schwartz1-0/+1
compile_moc accepts "dependencies" for the same reason preprocess does, but the original documentation never copied this over from the preprocess docs. See: https://github.com/mesonbuild/meson/issues/9683#issuecomment-986825041
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-01gnome module: document that yelp(languages: ...) is deprecatedEli Schwartz1-1/+5
If you use it, we emit a warning telling you to use LINGUAS instead. So we should warn people in the documentation as well. Fixes #9495
2021-12-02cmake: Deprecate CMake <3.14 and warn for <3.17 (#9677)Daniel Mensinger2-0/+21
* 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 Mensinger7-169/+171
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ómez14-17/+180
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-29docs: add missing argument documentation for run_command captureDylan Baker1-0/+9
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
2021-11-29report the context, if possible, on python tracebacksEli Schwartz1-2/+8
The interpreter tries to catch any exception and add the latest node information to it, but currently we only used that to print better formatted error messages on MesonException. Since we should theoretically have that property for most/all exceptions, let's percolate that upward, and message the user that an unexpected traceback was encountered, that it should be reported as a bug, and the helpful information of "how far into parsing this meson.build did we get before erroring out, anyway?"
2021-11-28make sure files arguments to compiler.compiles and friends, performs rebuildEli Schwartz2-0/+10
If the compiler check is updated as a string in meson.build, we force rebuild, which is a good thing since the outcome of that check changes the configuration context and can enable or disable parts of the build. If the compiler check came from a files() object then we didn't add a regen rule on those files. Fixes #1656
2021-11-28Merge pull request #9623 from dcbaker/submit/keyval-typeingJussi Pakkanen2-16/+18
Add type annotations and typed_pos_args to the keyval module
2021-11-28fix BSD ldconfig handling (#9631)Eli Schwartz2-6/+16
For libraries installed to libdir, it's not expected to have rpath hooked up. But for non-default libdirs, the path might not get searched by default. `ldconfig -m <libdir>` is convenient here, as it will programmatically add a new directory to search for shared libraries, so the resulting installed programs work out of the box. Include the dragonfly BSD platform name, which doesn't match the 'bsd' catch-all pattern.
2021-11-28iconv dependency: try even harder to find working iconvEli Schwartz1-1/+2
has_function(prefix: '...') is useless to check the difference between builtins and external library functions. It has code to detect "builtins" that misfires and reports that iconv_open is defined as a builtin on mingw, but only if you include the header. Instead compile an open-coded test file that this iconv dependency implementation fully controls, that doesn't get up to imaginative edge cases like trying to find `__builtin_iconv_open`. Fixes commit db1fa702f3943c6e4fec142b2bf5468c89173993, which merely moved the brokenness over one step to the right (by breaking mingw instead of freebsd) Fixes https://github.com/mesonbuild/meson/pull/9632#issuecomment-979581509
2021-11-28Add typing to msubprojects.pyTristan Partin4-65/+107
2021-11-27Merge pull request #9599 from dcbaker/submit/typed_kwargs-message-improvementsJussi Pakkanen4-30/+54
Improve error messages for typed_kwarg type mismatches in containers
2021-11-27Fix _calculate_toolset_version for VS2022.Luke Elliott1-0/+2
2021-11-27Merge pull request #9531 from dcbaker/submit/interpreter-more-typingJussi Pakkanen5-115/+194
More use of typed_* in the interpreter module
2021-11-27Remove premature return in BuildTarget.check_module_linking()Mike Gilbert1-2/+1
We want to loop over all link_targets to update backwards_compat_want_soname if necessary. Fixes: ec9bdc6edb17d1d9da5df2d6525025242c119f3a
2021-11-27Add -g for debug builds.Nathanael Gray1-1/+1
2021-11-27Fix more code which appears copied from CcrxCompiler.Nathanael Gray1-4/+6
2021-11-27Fix '# Visual Studio <>' comment in sln files with VS backendLuke Elliott7-5/+20
such that Visual Studio Version Selector works.
2021-11-25interpreter: fix `feature.require` handling of error messageBenoit Pierre4-1/+13
Don't show a blank error when no `error_message` was passed as argument.