aboutsummaryrefslogtreecommitdiff
path: root/test cases
AgeCommit message (Collapse)AuthorFilesLines
2021-08-10Fix i18n target name when using @BASENAME@ and configure_file() inputXavier Claessens4-1/+43
Fixes: #9022
2021-08-10interpreter: Fix missing subsubproject summary when subproject failsXavier Claessens2-1/+5
In the case main->subp->subsubp, if subsubp succeed to configure but subp subsequentially fails, subsubp is still being built but its summary was missing.
2021-08-10interpreter: Fix holder_map not being updated when subproject failsXavier Claessens2-0/+9
Fixes: #9038
2021-08-10pkg-config: support for `-l:libfoo.a`lilinzhe5-0/+67
fixs: #9000 Meson not correctly process with -l:xxx.a link arguments in pkgconfig .pc file. see also:https://stackoverflow.com/questions/48532868/gcc-library-option-with-a-colon-llibevent-a with unit test, unit test will be partially skiped if pkg-config version < 0.28 . see: https://gitlab.freedesktop.org/pkg-config/pkg-config/-/blob/master/NEWS
2021-08-10interpreter: Fix list contains for Holders (fixes #9020 #9047)Daniel Mensinger4-0/+24
2021-08-10Escape path in exclude filter passed to gcovrAlois Wohlschlager2-0/+7
Gcovr interprets exclude filters, as passed to the -e option, as regexes. Since we want to exclude a raw path, the argument must be escaped.
2021-08-10ninjabackend: use get_subdir() instead of subdir attribute for cythonDylan Baker1-0/+10
As this works correctly for CustomTarget, CustomTargetIndex, and GeneratedList, but .subdir doesn't work for CustomTargetIndex.
2021-08-10ast: Add dummy "support" for fstrings in the ast packageDaniel Mensinger1-0/+2
2021-08-10Fix meson.version().version_compare() regression in subprojectXavier Claessens2-0/+10
2021-07-15Condense test directory names for next release.Jussi Pakkanen185-73/+73
2021-07-10fix: Fix recursive _unholder permissive kwarg (fixes #8977)Daniel Mensinger1-0/+2
2021-07-07Annotate framework tests with where they are expected to skipJon Turney9-8/+21
Remove hard-coded framework test skip logic in skippable(), instead annotate test.json with environments in which skip is expected. (Mainly this is done with by testing the value of MESON_CI_JOBNAME now set for linux jobs)
2021-07-07Skip LLVM test if required modules aren't foundJon Turney1-3/+6
If the required LLVM modules can't be found, skip the LLVM framework test, rather than succesfully doing nothing. (This optionality is a leftover from before #7379) (At the moment, OpenSuse provides dynamic-only LLVM. The cmake method still finds LLVM, when a static LLVM is requested, but fails to find any modules. This might be a bug in the cmake method of the LLVM dependency.)
2021-07-05cmake: Improved error message for using dependency for executablesDaniel Mensinger4-0/+24
fixes #8893
2021-07-05cmake: Only use the `cm_` prefix when it is actually required (fixes #8955)Daniel Mensinger6-13/+18
2021-07-03Merge pull request #8950 from dcbaker/submit/import-required-disabledJussi Pakkanen4-12/+16
Add required and disabled to import, modules.found method
2021-07-02Flatten test suite valueTristan Partin1-1/+1
This behavior is more inline with the rest of Meson
2021-07-02fix: get_variable default variables are not ObjectHolders (fixes #8936)Daniel Mensinger1-0/+6
2021-06-30interpreter: add required and disabled to importDylan Baker4-12/+16
This is useful both from the perspective of optional functionality that requires a module, and also as I continue to progress with Meson++, which will probably not implement all of the modules that Meson itself does.
2021-06-29Merge pull request #8924 from jon-turney/fix-test-json-schemaJussi Pakkanen1-4/+4
Various fixes to test.json schema
2021-06-29Add feed arg to custom_target()Simon Ser4-0/+44
2021-06-28 build: fix object path for vs backendDenis Fortin6-2/+44
2021-06-26refactor: Refactor BothLibraries logicDaniel Mensinger1-0/+8
This commit introduces a new type of `HoldableObject`: The `SecondLevelHolder`. The primary purpose of this class is to handle cases where two (or more) `HoldableObject`s are stored at the same time (with one default object). The best (and currently only) example here is the `BothLibraries` class.
2021-06-24Fix test.json for boost test to match schemaJon Turney1-4/+4
I guess the intent was that tests of thread/debug library variants only get run with MSVC, but currently this test isn't getting run at all in our Windows CI (since boost got removed from the VM image [1], and we didn't notice, more on which anon). [1] https://github.com/actions/virtual-environments/pull/2843
2021-06-23Merge pull request #8884 from dcbaker/submit/type-and-annotate-install-functionsJussi Pakkanen3-3/+3
Add annotations for the various install_* functions
2021-06-23Merge pull request #8912 from mensinda/fixBothLibrariesJussi Pakkanen26-28/+61
Fix `BothLibraries` processing
2021-06-22tests: both_library test improvementsDaniel Mensinger26-28/+61
This switches some `shared_library()` calls to `library()` and adds one new CI matrix entries for -Ddefault_library={static, both}.
2021-06-22Merge pull request #8905 from mensinda/refactorFixJussi Pakkanen3-0/+63
fix: Fix set_variable not holderifying (fixes #8904)
2021-06-22Add Visual Studio 2012/2013 backends (#8803)fanc9991-6/+5
* backends: Add a Visual Studio 2013 backend This is more-or-less a quick port from the VS2015 backend, except that we update the Visual Studio version strings and toolset versions accordingly. Also correct the generator string for Visual Studio 2015 in mesonbuild/cmake/common.py. * backend: Add VS2012 backend Similar to what we did for Visual Studio 2013, add a Visual Studio 2012 backend. * vs2010backend.py: Implement `link_whole:` if needed We actually need Visual Studio 2015 Update 2 to use `/WHOLEARCHIVE:`, which is what we are currently using for `link_whole:` on Visual Studio. For Visual Studio versions before that, we need to expand from the static targets that were indicated by `link_whole:`, and any of the sub-dependent targets that were pulled in via the dependent target's `link_whole:`. This wil ensure `link_whole:` would actually work in such cases. * vs2010backend.py: Handle objects from generated sources Unforunately, we can't use backends.determine_ext_objs() reliably, as the Visual Studio backends handle this differently. * vs2010backend.py: Fix generating VS2010 projects Visual Studio 2010 (at least the Express Edition) does not set the envvar %VisualStudioVersion% in its command prompt, so fix generating VS2010 projects by taking account into this, so that we can determine the location of vcvarsall.bat correctly. * whole archive test: Disable on vs2012/2013 backends too The Visual Studio 2012/2013 IDE has problems handling the items that would be generated from this test case, so skip this test when using --backend=vs[2012|2013]. This test does work for the Ninja backend when VS2012 or VS2013 is used, though. Consolidate this error message with XCode along with the vs2010 backend. * docs: Add the new vs2012 and vs2013 backends Let people know that we have backends for vs2012 and 2013. Also let people know that generating Visual Studio 2010 projects have been fixed and the pre-vs2015 backends now handle the `link_whole:` project option.
2021-06-22Merge pull request #8900 from bonzini/extract-objects-docsJussi Pakkanen3-1/+35
extract_objects: fixes, tests and documentation for using the result in a custom_target
2021-06-22Merge pull request #8898 from e820/interpreter-required-argumentsDylan Baker2-0/+11
interpreter: Add checked kwarg to compiler.get_supported_arguments
2021-06-22interpreter: man sections can be up to 9 on many platformsDylan Baker2-2/+2
Linux and FreeBSD use section 9 for kernel man pages, so we should allow that.
2021-06-22interpreter: use typed_pos_args for install_dataDylan Baker1-1/+1
2021-06-22extract_objects: skip headers when building custom_target command linePaolo Bonzini2-2/+9
As seen in the testcase, passing objects to custom_target does not work if headers are passed extract_objects(), or if extract_all_objects() is used and the sources include any header files. To fix this, use the code that already exists for unity build to filter out the nonexistent ".h.o" files. This already gives for free the handling of genlist, which was mentioned in a TODO comment.
2021-06-22Fixed unused-parameter/strict-prototypes warnings.Justin Handville3-4/+4
2021-06-22Added test case to test fix for issue 8910.Justin Handville5-0/+84
2021-06-22extract_objects: test and document using the result in a custom_targetPaolo Bonzini2-0/+27
QEMU would like to use the result of extract_objects in a custom_target; examples are using objcopy, or using the object files as the key to look up command line arguments in compile_commands.json. This is slightly peculiar and not covered by the test suite, but it works; in order to avoid regressions, add a test case and document it.
2021-06-21fix: Ensure that build targets have all methods from ExternalProgramDaniel Mensinger2-0/+14
As a side-effect from #8885 `find_program()` returns now `Executable` objects when `meson.override_find_program` is called with an executable target. To resolve this conflict the missing methods from `ExternalProgram` are added to `BuildTarget`.
2021-06-21interpreter: Move argument checks from add_*_arguments to ↵Laurin-Luis Lehning4-10/+11
compiler.get_supported_arguments
2021-06-21interprter: Add required kwarg to add_(project|global)_argumentsLaurin-Luis Lehning2-0/+10
To avoid manual compiler support checks add_project_arguments and add_global_arguments receive a new keyword argument to perform them automatically.
2021-06-20fix: dicts and list need _holderify for fallbackDaniel Mensinger1-2/+28
2021-06-20fix: Fix set_variable not holderifying (fixes #8904)Daniel Mensinger3-0/+37
2021-06-18holders: Fix the remaining code to respect the holder changesDaniel Mensinger2-1/+4
2021-06-18modules/qt: use append rather than extend in preprocessDylan Baker1-0/+10
Because that's what we need, of course
2021-06-18interpreter: add type annotations to build_incdir_objectDylan Baker1-1/+1
and use textwrap.dedent to make the very large messages more readable and not break method folding.
2021-06-18dependency: Empty fallback is the same as allow_fallback: falseXavier Claessens3-0/+16
2021-06-17update gettext test to use new intl dependencyEli Schwartz2-3/+4
Tests that we find something sensible for intl, capable of producing binaries using gettext() to translate stuff. No more need to manually check headers and *maybe* include the intl library, which we were doing before; the new dependency actually simplifies the existing test, and should simplify users' build files too...
2021-06-17tests: update dependency factory tests to check type_name is saneEli Schwartz1-11/+26
Since we pass a method: 'foo' to every one of these config-tool/pkg-config dependencies, we do not ever need to check which type_name it has; change these to asserts instead. In the process, we discover a bug! We kept checking for type 'configtool' instead of 'config-tool', so these tests all short-circuited and checked nothing. Once moved to an assert, the asserts failed. Add a new lookup for a known system dependency and make it assert that too.
2021-06-16interpreter: Extract dependency() logic into its own helper classXavier Claessens21-30/+46
The dependency lookup is a lot of complex code. This refactor it all into a single file/class outside of interpreter main class. This new design allows adding more fallbacks candidates in the future (e.g. using cc.find_library()) but does not yet add any extra API.
2021-06-16Merge pull request #8822 from dcbaker/submit/annotate-and-check-qt-moduleJussi Pakkanen1-6/+11
Rewrite the Qt module for type safety!