aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-09-08typing: fully annotate mcompile, minit, and msetupDaniel Mensinger4-15/+22
2020-09-08typing: fully annotate fs moduleDaniel Mensinger2-4/+5
2020-09-08typing: fully annotate arglistDaniel Mensinger3-5/+7
2020-09-08typing: fully annotate boost and hdf5 depsDaniel Mensinger3-8/+15
2020-09-08typing: fully annotate scriptsDaniel Mensinger23-152/+184
2020-09-08typing: fully annotate toolsDaniel Mensinger5-21/+23
2020-09-08typing: fully annotate wrapDaniel Mensinger4-35/+41
2020-09-08typing: fully annotate mparser.pyDaniel Mensinger3-18/+31
2020-09-08typing: fully annotate mesonlib.pyDaniel Mensinger3-43/+55
2020-09-08typing: Add run_mypy.py for easier mypy invocationDaniel Mensinger3-2/+84
2020-09-08typing: completely type interpreterbaseDaniel Mensinger1-64/+68
2020-09-08typing: completely type astDaniel Mensinger3-7/+7
2020-09-08typing: refactor dict handlingDaniel Mensinger2-25/+28
2020-09-08IntrospectInterpreter: allow dictionaries with nonconstant keysPaolo Bonzini2-0/+11
Something like {a: foo} currently stymies the IntrospectionInterpreter and breaks introspection of the source directory. The fix is just to walk the keys and return a dummy dictionary. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-08minstall: Print a big FAILED when a script failsNirbheek Chauhan1-4/+6
We don't run any further scripts when this happens, so we need to print a big error. The exit code was already correct. Fixes https://github.com/mesonbuild/meson/issues/7627
2020-09-08Add some type hints to the ExternalProgram classNirbheek Chauhan1-7/+7
2020-09-08Fix picking up tools with args from the env on WindowsNirbheek Chauhan2-3/+26
This was a regression in https://github.com/mesonbuild/meson/pull/7059. We do not need to do a full search for all windows special cases. We only want to check whether the command provided is actually a full path to a script so we can add the interpreter. Fixes https://github.com/mesonbuild/meson/issues/7645
2020-09-07docs/Users: add p11-kit [skip ci]Daiki Ueno1-0/+1
Signed-off-by: Daiki Ueno <ueno@gnu.org>
2020-09-06backends: check external rpaths for all languages using ldflagsJames Hilliard2-2/+3
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
2020-09-06Merge pull request #7689 from scivision/fortran_incJussi Pakkanen9-65/+64
correct Fortran include algorithm
2020-09-06ci: update to use latest recommendationsMichael Hirsch3-14/+13
2020-09-06doc: Add missing method arguments [skip ci]Michal Sojka1-21/+21
Documentation of most methods mentions method arguments enclosed in parentheses. Two methods are an exception and we fix them here to make the manual more consistent.
2020-09-05docs: Fix typo in Reference-manual.md [skip ci]Krzysztof Małysa1-1/+1
2020-09-04environment: use ExternalProgram to find ninjaPaolo Bonzini7-18/+22
This allows the NINJA environment variable to support all the Windows special cases, especially allowing an absolute path without extension. Based on a patch by Yonggang Luo. Fixes: #7659 Suggested-by: Nirbheek Chauhan <nirbheek@centricular.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-09-04introspect: add test dependencies info to test/benchmark JSONPaolo Bonzini7-4/+50
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>
2020-09-03tests: add fortran cmake subproject include testMichael Hirsch8-45/+42
ci:unused_arg: update ninja version to work with fortran+cmake
2020-09-02fortran: make include scanning also work for CMake subprojectsMichael Hirsch1-20/+22
also fixed PEP8 I originally implemented the "include" scanning, but hadn't made a test for this case
2020-09-02cuda: bump CUDA version since 3.0 is no longer supportedDaniel Mensinger1-2/+2
2020-09-02symbolextractor: Handle PermissionError when running toolNirbheek Chauhan1-0/+5
I can't reproduce this, but it is definitely possible. In this case what we should do is the same as when the tool is not found. Fixes https://github.com/mesonbuild/meson/issues/7605
2020-09-02cmake: Don't link DEBUG to CRT when not building with MSVCNirbheek Chauhan1-1/+3
is_debug doesn't just control the CRT, it also controls the 'debug configuration' which is unrelated to the CRT setting on non-MSVC. Fixes https://github.com/mesonbuild/meson/issues/7631
2020-09-02interpreterbase: Fix typing annotationXavier Claessens1-1/+1
Co-authored-by: Daniel Mensinger <daniel@mensinger-ka.de>
2020-09-02Special case meson.version().version_compare() statementXavier Claessens4-3/+44
when that statement gets evaluated, the interpreter remembers the version target and if it was part of the evaluation of a `if` condition then the target meson version is temporally overriden within that if-block. Fixes: #7590
2020-09-02docs: Add a snippet for python 3.5 deprecation [skip ci]Nirbheek Chauhan1-0/+15
2020-09-02Add test case for cuda compiler setting fixMatt Madison3-0/+40
Signed-off-by: Matt Madison <matt@madison.systems>
2020-09-02environment: do not raise exception in detect_cuda_compilerMatt Madison1-2/+0
when the compiler is not a string. When the compiler is set in the build configuration (required, for example, in a cross-build setup), the compiler setting is already a list, which is the desired type. Signed-off-by: Matt Madison <matt@madison.systems>
2020-09-02Add a notice about Python 3.5 supportNirbheek Chauhan2-4/+21
This will be printed in bold at the end of interactive meson sub-commands that won't be parsed by a program. Specifically: setup, compile, test, and install. NOTICE: You are using [...]
2020-09-02Add Entangle application to list of apps using MesonDaniel Berrangé1-0/+1
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-09-02dependencies/mpi: add missing annotationDylan Baker1-3/+3
2020-09-02dependencies: Fix type of dependency_factory decoratorDylan Baker1-13/+11
There was both a straight up bug in the type signature (the return type is List[Callable[[], Dependency]] not List[Type[Dependency]]), and in the way the arguments are assembled. Typing is pretty limited in it's ability to express decorators, so the best mypy can do is check the return types (I think). I've done what the docs suggest and it's stopped complaining.
2020-09-02Add some forgotten values for "cpp_std" [skip ci]Michael Brockus1-1/+1
2020-08-31backends: do not look for extra paths unnecessarilyPaolo Bonzini2-8/+6
extra_paths only matter for the host machine if using an exe_wrapper. However, because CustomTarget.for_machine is always MachineChoice.HOST, they were computed unnecessarily in as_meson_exe_cmdline. Defer computation of extra_paths until after we have found out if the custom target executable is really for the host or the build machine, so that we can use exe_for_machine; for_machine then becomes unused and can be removed. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2020-08-31mcompile: Also support -v for verboseNirbheek Chauhan1-1/+1
This matches `meson test`, and there's really no other meaning that could be attributed to this, since you would call `meson` to get the version, not the `compile` sub-command.
2020-08-30CMake module: fix cmake 3.10 compatibility in path generationSebastian Würl1-4/+4
2020-08-30CMake module: fix python 3.6 compatibility in path generationSebastian Würl1-2/+2
2020-08-30CMake module: Allow paths of generated CMake sources for include directoriesSebastian Würl4-5/+24
2020-08-30Clarify the use of -Doption and alternatives [skip ci]Sebastian Engel1-4/+8
The -Doption=value style argument works for all builtin options, and compiler options passed to meson. And some universal options, have additional ways to be passed. However, base options (and compiler options) do not have exactly the same ways of passing as universal options. This change adds a few pieces of information, which might get lost, if the manual is not read serially. [skip ci]
2020-08-30Be stricter when detecting Windows/CygwinChristoph Reiter5-11/+9
This removes the check for "mingw" for platform.system(). The only case I know where "mingw" is return is if using a msys Python under a msys2 mingw environment. This combination is not really supported by meson and will result in weird errors, so remove the check. The second change is checking sys.platform for cygwin instead of platform.system(). The former is document to return "cygwin", while the latter is not and just returns uname(). While under Cygwin it uname() always starts with "cygwin" it's not hardcoded in MSYS2 and starts with the environment name. Using sys.platform is safer here. Fixes #7552
2020-08-30meson_exe: Remove two unused functionsChristoph Reiter1-9/+0
2020-08-30mcompile: use -v instead of --verbose for ninjaIgor Raits1-1/+1
The `--verbose` has been added to ninja in 1.9.0 and we pretend that we have compatibility with Ninja 1.7+. References: https://github.com/ninja-build/ninja/commit/bf7517505ad1def03e13bec2b4131399331bc5c4
2020-08-30unittests: continue on exception instead of breakJames Hilliard1-1/+1
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>