summaryrefslogtreecommitdiff
path: root/test cases
AgeCommit message (Collapse)Author
2020-11-13run_unittests: use textwrap.dedentDylan Baker
So that editors that can fold code (vim, vscode, etc) can correctly fold functions, instead of getting confused by code that doesn't follow the current indention. Also, it makes the code easier to read.
2020-11-13gnome: Handle libraries that are not in the current build dirSam Thursfield
The generate_gir() function previously assumed all library inputs were in the current build dir. This would fail if they weren't.
2020-11-12interpreter: Add get_keys function for configuration_data (#7887)Jones
2020-11-12Merge pull request #7965 from dcbaker/wip/2020-11/macos-github-actionsJussi Pakkanen
Migrate osx CI from travis to github actions
2020-11-12dependencies: Put pkgconfig options before operandsHaelwenn (lanodan) Monnier
This fixes building with meson when the POSIX behavior of getopt is used, such as when GNU libc is used with POSIXLY_CORRECT=1 defined
2020-11-11tests/rust: dynamic linking doesn't work on darwinDylan Baker
This is a bug, and needs to be fixed, but in the short term testing other rust functionality on darwin is an improvement over testing none.
2020-11-11tests/frameeworks 8/flex: fix undefined functionsDylan Baker
Some compilers don't have explicit errors for undefined functions enabled by default. Apple clang seems to.
2020-11-10tests/28 multiline string: include required headersDylan Baker
we're relying on printf being defined with stdio.h, which happens to work sometimes. It doesn't work with Apple clang though.
2020-11-08Add thinlto support. Closes #7493.Jussi Pakkanen
2020-11-05Update CUDA module's nvcc_arch_flags() and nvcc_arch_readable() for newOlexa Bilaniuk
CUDA Toolkits. Also harden internal logic and add several asserts in the testcase.
2020-11-05Add newer CUDA Toolkit version entries.Olexa Bilaniuk
Also, remove the possibility of passing in a compiler instance to min_driver_version. This is because the NVCC compiler instance is, as of CUDA Toolkit 11.0, no longer guaranteed to be versioned identically to the toolkit itself.
2020-11-05docs: Recommend to use SPDX license identifiers [skip ci]Michael Weiss
Some license identifiers are ambiguous (e.g. "GPL3"). The SPDX license identifiers avoid this by providing standardized and unique identifiers (e.g. "GPL-3.0-only" or "GPL-3.0-or-later" for the previous example). Because SPDX short-form identifiers are also both human- and machine-readable we should recommend them in the documentation. More information (advantages, details, etc.) can be found here: - https://spdx.dev/resources/use/#identifiers - https://spdx.dev/ids/ Fix #7905.
2020-11-05rust: implement support for --editionDylan Baker
Using the std option, so now `rust_std=..` will work. I've chosen to use "std" even though rust calls these "editions", as meson refers to language versions as "standards", which makes meson feel more uniform, and be less surprising. Fixes: #5100
2020-11-03Condense test directory names again.Jussi Pakkanen
2020-11-01interpreter: store correct files for project regenerationDylan Baker
Right now sub-sub projects are not correctly registered, because we don't have a way to pass up past the first level of subproject. This patch changes that by making the build_Def_files as defined in the Interpreter initializer accurate for translated dependencies, ie, cmake dependencies won't define a dependency on a non-existent meson.build. This means that it can always add the subi.build_def_files because they are always accurate.
2020-10-24cmake: Disable the new (CMake 3.16) PCH supportDaniel Mensinger
Subprojects that use the CMake PCH feature will cause compilation/linker errors. The CMake PCH support should thus be disabled until this can be properly translated to meson.
2020-10-22depenencies/llvm: Handle llvm-config --shared-mode failing (#7379)Dylan Baker
* depenencies/llvm: Handle llvm-config --shared-mode failing Fixes: #7371 Fixes: #7878 * test cases/llvm: Refactor to use test.json Instead of trying to cover everything internally
2020-10-19In text, betterer grammer usings.Jussi Pakkanen
2020-10-17Fix gnome.compile_resources() when glib is a subprojectXavier Claessens
When glib is a subproject we should use glib-compile-resources it overrides using find_program() in the case it is not installed on the build machine. With old glib version we have to run glib-compile-resources at configure time to generate the list of dependencies, but not when glib is recent enough.
2020-10-16Add test case for "subproject:opt" in project()Xavier Claessens
This is regression test for #7573
2020-10-16Add CUDA compiler header symbol testsCarlos Bederian
2020-10-16Fix consistency in variables kwargXavier Claessens
Share common code to extract the `variables` kwarg in declare_dependency() and pkg.generate().
2020-10-15intro: Add extra_files key to intro output (fixes #7310)Daniel Mensinger
2020-10-13wrap: Use sub-subproject packagefilesXavier Claessens
2020-10-13Merge wraps from subprojects into wraps from main projectXavier Claessens
wraps from subprojects are now merged into the list of wraps from main project, so they can be used to download dependencies of dependencies instead of having to promote wraps manually. If multiple projects provides the same wrap file, the first one to be configured wins. This also fix usage of sub-subproject that don't have wrap files. We can now configure B when its source tree is at `subprojects/A/subprojects/B/`. This has the implication that we cannot assume that subproject "foo" is at `self.subproject_dir / 'foo'` any more.
2020-10-13include_type: Add CMake subporject dependency method (fixes #6879)Daniel Mensinger
2020-10-13include_type: honor include_type in dependency fallbacks (fixes #7503)Daniel Mensinger
2020-10-13cmake: Add cross testsDaniel Mensinger
2020-10-12Merge pull request #7740 from bonzini/fallback-falseJussi Pakkanen
Allow blocking/forcing automatic subproject search
2020-10-10add test case for #6365Sahnvour
2020-10-08dependency: support boolean argument "allow_fallback"Paolo Bonzini
Sometimes, distros want to configure a project so that it does not use any bundled library. In this case, meson.build might want to do something like this, where slirp is a combo option with values auto/system/internal: slirp = dependency('', required: false) if get_option('slirp') != 'internal' slirp = dependency('slirp', required: get_option('slirp') == 'system') endif if not slirp.found() slirp = subproject('libslirp', ...) .variable('...') endif and we cannot use "fallback" because the "system" value should never look for a subproject. This worked until 0.54.x, but in 0.55.x this breaks because of the automatic subproject search. Note that the desired effect here is backwards compared to the policy of doing an automatic search on "required: true"; we only want to do the search if "required" is false! It would be possible to look for the dependency with `required: false` and issue the error manually, but it's ugly and it may produce an error message that looks "different" from Meson's. Instead, with this change it is possible to achieve this effect in an even simpler way: slirp = dependency('slirp', required: get_option('slirp') != 'auto', allow_fallback: get_option('slirp') == 'system' ? false : ['slirp', 'libslirp_dep']) The patch also adds support for "allow_fallback: true", which is simple and enables automatic fallback to a wrap even for non-required dependencies.
2020-10-07Tests: py.dependency() now has required:true by defaultXavier Claessens
It used to ignore the required argument and got fixed to be consistent with dependency() function.
2020-10-07Add win_subsystem kwarg. Closes #7765.Jussi Pakkanen
2020-10-05options: Handle updates to choices in optionsDylan Baker
Currently if you change the `choices` field in the meson_options.txt file, no update will be done until `meson setup --wipe` is called. Now if the choices change then the options will be properly merged. If the currently select value is still valid it is guaranteed to be kept, if it is now invalid the new default value will be used and a warning will be printed. Fixes #7386
2020-10-05Never run clang-format / clang-tidy against directoriesBernd Busse
`pathlib.Path.glob()` also returns directories that match source filenames (i.e. a directory named `test.h/`), but `clang-format` and `clang-tidy` fail when handed a directory. We manually skip calling `clang-format` and `clang-tidy` on those directories.
2020-10-05machinefiles: Allow keys to be stored case insensitiveDylan Baker
This is required to make the various keys in the [user options] section work the same as they do in the meson_options.txt file, where we don't have any rules about case sensitivity. There is some risk here. Someone may be relying on this lower by default behavior, and this could break their machine files. Fixes #7731
2020-10-04Added subdir files testOskar Sigvardsson
2020-10-04cmake: switch to pathlib (fixes #7322)Daniel Mensinger
2020-09-29tests/curses: Extend to test versionsDylan Baker
This is mostly important for the system dependency where we need to roll the version check ourselves.
2020-09-29dependencies/curses: Add a system dependencyDylan Baker
That calls find_library and has_header in conjunction to look for curses implementations that are baked into the system without any other find method.
2020-09-29dependencies/curses: Add support for using the ncurses config toolsDylan Baker
These are mostly duplicated with pkg-config, but maybe someone has one but not another, and they're easy to turn on with the ConfigToolDependency.
2020-09-29Merge pull request #7758 from dcbaker/submit/hdf5-factoryDylan Baker
dependencies/hdf5: Convert to a dependency_factory
2020-09-29Merge pull request #7762 from jon-turney/meson-exe-output-improveJussi Pakkanen
Improve the output for meson wrapped commands
2020-09-29Merge pull request #7772 from xclaesse/deprecate-source-rootJussi Pakkanen
Deprecate meson.build_root() and meson.source_root()
2020-09-28Add meson.project_build/source_root() methodsXavier Claessens
2020-09-27Fixes meson test timeout on windowsYonggang Luo
``` 2020-09-23T01:25:14.7849070Z 2020-09-23T01:25:14.7849592Z 1/5 Boost linktest TIMEOUT 30.16s 2020-09-23T01:25:14.7849811Z 2020-09-23T01:25:14.7850027Z --- command --- 2020-09-23T01:25:14.7850281Z 01:24:30 D:\a\1\s\b 125f976e40\linkedexe.exe 2020-09-23T01:25:14.7850561Z ------- 2020-09-23T01:25:14.7850693Z 2020-09-23T01:25:14.7850947Z 2/5 Boost UTF test TIMEOUT 31.15s 2020-09-23T01:25:14.7851141Z 2020-09-23T01:25:14.7851347Z --- command --- 2020-09-23T01:25:14.7851580Z 01:24:30 D:\a\1\s\b 125f976e40\utf.exe 2020-09-23T01:25:14.7851862Z --- stdout --- 2020-09-23T01:25:14.7852065Z Running 1 test case... 2020-09-23T01:25:14.7852441Z ``` Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
2020-09-25tests/hdf5: work around some problemsDylan Baker
There are two cases that won't work (these are taken from fortran/9 cpp), using gfortran with a non-gcc compiler on windows, or using gfortran with apple clang. The latter is due to default search paths, which we can fix, but is out of scope for this MR.
2020-09-25dependencies/hdf5: Convert to a dependency_factoryDylan Baker
Instead of a mega dependency that does everything, use a dependency factory for config-tool and pkg-config
2020-09-21Add a test of a failed pickled commandJon Turney
2020-09-17project tests: Verify that UWP cross binaries use the right archNirbheek Chauhan
This is a test for https://github.com/mesonbuild/meson/pull/7021, to verify that `link.exe` uses the correct architecture when targeting ARM64. Can be extended to other cross targets later.