summaryrefslogtreecommitdiff
path: root/mesonbuild/mintro.py
Commit message (Collapse)AuthorAgeFilesLines
* introspect: include choices for array optionsPaolo Bonzini2021-10-141-0/+2
| | | | There was even a test covering this, but it did not fail due to a typo.
* remove printf debuggingEli Schwartz2021-10-041-1/+0
| | | | Why did this dumb thing of mine ever get committed???
* use list unpacking to simplify for loop referencesEli Schwartz2021-10-041-4/+5
|
* mintro: add installed_planFilipe Laíns2021-09-061-0/+31
| | | | Signed-off-by: Filipe Laíns <lains@riseup.net>
* fix: Always explicitly set encoding for text files (fixes #8263)Daniel Mensinger2021-06-291-3/+3
|
* mass rewrite of string formatting to use f-strings everywhereEli Schwartz2021-03-041-2/+2
| | | | performed by running "pyupgrade --py36-plus" and committing the results
* various python neatness cleanupsEli Schwartz2021-03-041-1/+1
| | | | | | | | | | | | | | | | All changes were created by running "pyupgrade --py3-only --keep-percent-format" and committing the results. I have not touched string formatting for now. - use set literals - simplify .format() parameter naming - remove __future__ - remove default "r" mode for open() - use OSError rather than compatibility aliases - remove stray parentheses in function(generator) scopes
* mintro: include the correct target filenames for flat layoutPaolo Bonzini2021-03-041-2/+10
| | | | Fixes: #8408
* mintro: fix flake8 issuesPaolo Bonzini2021-03-041-1/+1
|
* minstall: Add --skip-subprojects optionXavier Claessens2021-02-221-8/+8
| | | | | | | | | By default all subprojects are installed. If --skip-subprojects is given with no value only the main project is installed. If --skip-subprojects is given with a value, it should be a coma separated list of subprojects to skip and all others will be installed. Fixes: #2550.
* mintro: fix mypy warningDylan Baker2021-01-041-4/+4
| | | | | | The output of list_targets is a pretty horrific jumble of things. We really need a TypeDict to make this not so terrible we can't deal with it, so for now just use Any.
* fix LGTM warningsDylan Baker2021-01-041-1/+1
|
* Use a single coredata dictionary for optionsDylan Baker2021-01-041-19/+23
| | | | | | | This patches takes the options work to it's logical conclusion: A single flat dictionary of OptionKey: UserOptions. This allows us to simplify a large number of cases, as we don't need to check if an option is in this dict or that one (or any of 5 or 6, actually).
* use OptionKey for builtin and base optionsDylan Baker2021-01-041-26/+12
| | | | | | | | I would have prefered to do these seperatately, but they are combined in some cases, so it was much easier to convert them together. this eliminates the builtins_per_machine dict, as it's duplicated with the OptionKey's machine parameter.
* use OptionKey for compiler_optionsDylan Baker2021-01-041-3/+4
|
* use OptionKey for backend_optionsDylan Baker2021-01-041-3/+2
|
* use OptionKey for coredata.user_optionsDylan Baker2021-01-041-1/+1
|
* mintro: export functions to load the meson-info filesPaolo Bonzini2020-12-141-17/+30
| | | | | | With the next patch, "meson test" will be using the targets introspection information. Provide helper functions to share bits of code between mintro.py and mtest.py.
* use real pathlib moduleDylan Baker2020-11-201-1/+1
| | | | | We added the _pathlib module to work around defeciencies in python 3.5's implementation, since we now rely on 3.6 lets drop this
* intro: Add extra_files key to intro output (fixes #7310)Daniel Mensinger2020-10-151-7/+17
|
* pathlib: Fix resolve() by overriding it in Python 3.5Daniel Mensinger2020-10-041-1/+1
|
* mesonlib: make OptionOverrideProxy a true MutableMappingDylan Baker2020-10-011-1/+1
| | | | | | | So that we can actually use it anyplace that an OptionDictType could be used. I've also done a bit optimizing/simplifying of the implementation. This is needed for cuda, as it returns an OptionOverrideProxy where we ask for an OptionDicType
* typing: fix code reviewDaniel Mensinger2020-09-081-1/+2
|
* typing: more fixesDaniel Mensinger2020-09-081-10/+9
|
* typing: fully annotate mintro and mtestDaniel Mensinger2020-09-081-12/+12
|
* introspect: add test dependencies info to test/benchmark JSONPaolo Bonzini2020-09-041-0/+1
| | | | | | | | | | | | Add the ids of any target that needs to be rebuilt before running the tests as computed by the backend, to the introspection data for tests and benchmarks. This also includes anything that appears on the test's command line. Without this information, IDEs must update the entire build before running any test. They can now instead selectively build the test executable itself and anything that is needed to run it. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* mconf/mintro: use authoritative list of options from coredataDylan Baker2020-08-011-13/+1
| | | | | This splits the directory options and non-directory options into two dicts, and then merges them later to maintain API.
* mintro: typings again x2TheQwertiest2020-06-121-1/+1
| | | Co-authored-by: Dylan Baker <dylan@pnwbakers.com>
* mintro: more typing shenanigansTheQwertiest2020-06-121-1/+1
|
* mintro: typing fixTheQwertiest2020-06-121-1/+1
|
* mintro: typing fixTheQwertiest2020-06-121-1/+1
|
* mintro: enforced order for subcommandsTheQwertiest2020-06-121-12/+14
|
* Made --help options sortedTheQwertiest2020-06-091-1/+1
|
* ast: Add AST JSON printerDaniel Mensinger2020-05-231-1/+7
|
* Convert test protocol into an enumDylan Baker2020-04-301-1/+1
| | | | | This gives us better type safety, and will be important as we add more test methods
* Compiler options per langJohn Ericson2020-04-201-2/+9
| | | | | | | | | | | A current rather untyped storage of options is one of the things that contributes to the options code being so complex. This takes a small step in synching down by storing the compiler options in dicts per language. Future work might be replacing the langauge strings with an enum, and defaultdict with a custom struct, just like `PerMachine` and `MachineChoice`.
* intro: List symlinks in installdata (fixes #6734)Daniel Mensinger2020-03-081-3/+8
|
* types: Annotate mparser.pyDaniel Mensinger2020-03-021-2/+3
| | | | | | This also fixes that the keys in ArgumentNode.kwargs are all of the type BaseNode now. Before this commit, it was possible that both strings and Nodes where used as keys.
* Make 'default_library' per-subproject builtin optionXavier Claessens2020-02-061-2/+13
| | | | | | | | | | Currently it's just like if all builtin/base/compiler options are yielding. This patch makes possible to have non-yielding builtin options. The value in is overriden in this order: - Value from parent project - Value from subproject's default_options if set - Value from subproject() default_options if set - Value from command line if set
* mintro: use interpreter data for buildsystem-files (fixes #6390)Daniel Mensinger2020-01-281-13/+15
|
* types: import typing as T (fixes #6333)Daniel Mensinger2020-01-081-44/+44
|
* mintro: include test protocol in introspection dataPaolo Bonzini2019-12-131-0/+1
|
* mintro: Add version key to --scan-dependencies (fixes #6287)Daniel Mensinger2019-12-101-1/+8
|
* types: Add type annotations to mintro.pyDaniel Mensinger2019-12-071-120/+93
|
* lgtm: Fix redundant codeDaniel Mensinger2019-12-051-1/+0
|
* mintro: dependencies: added version keyDaniel Mensinger2019-11-141-0/+1
|
* Fix typos found by codespellWolfgang Stöggl2019-11-061-1/+1
| | | | - Typos were found by codespell v1.16.0
* Add missing newlines to "meson introspect" errorAaron Plattner2019-10-181-3/+3
| | | | | | | | | | | | | | | | The lack of newlines in the print() statement for this error causes the result to be jumbled and hard to read: $ ./meson.py introspect Current directory is not a meson build directory.Please specify a valid build dir or change the working directory to it.It is also possible that the build directory was generated with an oldmeson version. Please regenerate it in this case. Add newlines so the message is more readable: $ ./meson.py introspect Current directory is not a meson build directory. Please specify a valid build dir or change the working directory to it. It is also possible that the build directory was generated with an old meson version. Please regenerate it in this case.
* Add test priorities to force test start orderPeter Hutterer2019-08-241-0/+1
|
* mintro: Fix section key in buildoptionsDaniel Mensinger2019-07-171-6/+8
| | | | | | | | | | This reverts the changes to the `section` key for the buildoptions and moves the machine choice into it's own `machine` key. With this commit the __undocumented__ breaking change to the introspection format (introduced in 0.51.0) is reverted and a new key is added instead.