aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild
AgeCommit message (Collapse)AuthorFilesLines
2020-09-10msubprojects: Support git subprojects with no wrap fileXavier Claessens2-0/+19
User could have cloned manually a subproject.
2020-09-10msubprojects: Use less cryptic "git branch --show-current" commandXavier Claessens1-3/+3
It describes well what it does, compared to obscure "rev-parse".
2020-09-10msubprojects: Add --type argumentXavier Claessens1-0/+5
It is often desired to only update git repositories and not pull files from wrapdb.
2020-09-10msubprojects: Use wrap.Resolver() to load all PackageDefinitionXavier Claessens1-21/+16
Besides being simpler, it has the advantage of picking directories that don't have a .wrap file assotiated.
2020-09-10minstall: Add version field to install dataNirbheek Chauhan3-9/+17
And check the install data in the same way that mtest checks serialisation data. Fixes https://github.com/mesonbuild/meson/issues/2354
2020-09-10mtest: Refactor test data checkingNirbheek Chauhan1-21/+12
2020-09-10mtest: Check version in the test data after loadingNirbheek Chauhan3-16/+34
Same as coredata.dat and build.dat loading. Also, do not assert if things change. Raise the appropriate exception. Fixes https://github.com/mesonbuild/meson/issues/7613
2020-09-10Identify machine in error accesing compiler object for missing languageJon Turney1-1/+1
Also add a failing test case for that error.
2020-09-10ninja: Generate all STATIC_LINKER rulesJon Turney1-2/+5
Don't stop generating STATIC_LINKER rules at the first MachineChoice which isn't available (i.e. generate a STATIC_LINKER rule, even if STATIC_LINKER_FOR_BUILD isn't needed) Also warn about internal errors which lead to non-existent rule references, rather than exploding with a KeyError.
2020-09-10Don't require build machine compilers for project() languagesJon Turney1-1/+3
This means that, in the common case of a simple meson.build which doesn't contain any 'native: true' targets, we won't require a native compiler when cross-compiling, without needing any changes in the meson.build.
2020-09-10cmake: fix shared_module dependency (fixes #7715)Daniel Mensinger1-0/+4
2020-09-09Merge pull request #7657 from mensinda/moreTypingDylan Baker70-607/+718
typing: Strict type annotations
2020-09-09Merge pull request #7428 from jon-turney/introspector-add-languagesJussi Pakkanen1-12/+21
Handle add_languages(native:) in introspector
2020-09-09Implement add_languages(native:) in introspectorJon Turney1-2/+7
2020-09-08typing: fixup for #7708Daniel Mensinger1-1/+5
2020-09-08typing: fixup of #7688Daniel Mensinger1-1/+1
This bug not beeing caught in review is another reason for adding strict typing support to meson.
2020-09-08typing: Fix code reviewDaniel Mensinger3-37/+12
2020-09-08typing: fix LGTM bot errorDaniel Mensinger1-0/+4
2020-09-08typing: fix code reviewDaniel Mensinger10-38/+39
2020-09-08typing: get rid of most T.castDaniel Mensinger7-16/+21
2020-09-08typing: more fixesDaniel Mensinger18-161/+214
2020-09-08typing: Fix templatesDaniel Mensinger13-24/+28
2020-09-08typing: fix dependencies for new follow_importsDaniel Mensinger4-15/+18
2020-09-08typing: fix envconfig typingDaniel Mensinger1-1/+1
2020-09-08typing: ignore error because of untyped decoratorDaniel Mensinger1-1/+1
2020-09-08typing: fully annotate mintro and mtestDaniel Mensinger2-25/+25
2020-09-08typing: fully annotate mcompile, minit, and msetupDaniel Mensinger3-15/+19
2020-09-08typing: fully annotate fs moduleDaniel Mensinger1-4/+4
2020-09-08typing: fully annotate arglistDaniel Mensinger2-5/+5
2020-09-08typing: fully annotate boost and hdf5 depsDaniel Mensinger2-8/+12
2020-09-08typing: fully annotate scriptsDaniel Mensinger22-152/+182
2020-09-08typing: fully annotate wrapDaniel Mensinger3-34/+40
2020-09-08typing: fully annotate mparser.pyDaniel Mensinger2-18/+29
2020-09-08typing: fully annotate mesonlib.pyDaniel Mensinger2-42/+42
2020-09-08typing: Add run_mypy.py for easier mypy invocationDaniel Mensinger1-1/+1
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 Bonzini1-0/+10
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-08Factor out an _add_languages() function in introspectorJon Turney1-11/+15
Factor out an _add_languages() function in introspector, rather than calling func_add_languages() with arguments crafted to fake an interpreter call.
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 Chauhan1-1/+8
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-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 Pakkanen1-20/+22
correct Fortran include algorithm
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 Bonzini2-2/+11
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-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-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