aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter.py
AgeCommit message (Collapse)AuthorFilesLines
2018-02-25Use include_directories for D impdirs.dimpdirJussi Pakkanen1-7/+31
Change the code to store D properties as plain data. Only convert them to compiler flags in the backend. This also means we can fully parse D arguments without needing to know the compiler being used.
2018-02-18Merge pull request #2863 from jon-turney/exit-status-on-exceptionJussi Pakkanen1-0/+7
Verify that failing tests are failing with an error, not a python exception
2018-02-18Merge pull request #2943 from ximion/masterJussi Pakkanen1-8/+14
Don't fail loading subprojects if subprojects_dir is in a subdirectory
2018-02-17Don't mention "error" in error messagesMatthias Klumpp1-1/+1
Starting with VS 2017 if the output of any command run by VS contains the word Error it will interpret that as a fatal error, even if the exit error code is zero. This messes up the unit tests on VS 2017, because we sometimes want to deliberately ignore error messages. Change "Error" to "Problem" to mitigate this issue until a more permanent solution is found.
2018-02-15Only expose exception() test function during unit testsJon Turney1-1/+2
2018-02-15Add a test case for python exception exit statusJon Turney1-0/+6
2018-02-14Permit path separators in subproject names but with a warning. Closes #2794.Jussi Pakkanen1-2/+10
2018-02-14Only add reconfigure deps on files, not dirs. Closes #2919.Jussi Pakkanen1-1/+1
2018-02-13Fix a stack trace caused by subproject.get_variable('non-existing').Hemmo Nieminen1-3/+7
2018-02-13Use absolute path if relative can not be evaluated. Closes #2784.Jussi Pakkanen1-1/+8
2018-02-12Don't fail loading subprojects if subprojects_dir is in a subdirectoryMatthias Klumpp1-5/+11
2018-02-12Show a better error message if subproject can not be configuredMatthias Klumpp1-2/+2
Previously, Meson was showing a subproject being downloaded after later claiming it doesn't exist. This patch shows the actual error to clarify why the given subproject can not be used.
2018-02-08User options can "yield to" a user option of the same name in superproject. ↵Jussi Pakkanen1-2/+6
Closes ##2853.
2018-02-05Rename install_subdir() option elide_directory to strip_directoryAleksey Filippov1-9/+9
2018-02-05Add elide_directory keyword for install_subdir() functionAleksey Filippov1-3/+10
If elide_directory=true install_subdir() installs directory contents instead of directory itself, eliding name of the source directory. Closes #2869.
2018-02-04Merge pull request #2938 from acfoltzer/rust-cross-mergeJussi Pakkanen1-2/+2
Add cross-compilation support for `rustc`
2018-02-04Refactor and simplify install_subdir()Aleksey Filippov1-2/+2
- Pass exclude_files and exclude_directories relative to src_dir, same as specified by user and documented in public install_subdir(). - Make do_copydir() interface similar to do_copyfile(): install src_dir contents to dst_dir. - Remove src_prefix/src_dir code, it adds confusion and duplicates arguments. Use single src_dir parameter instead. - Make callers specify that src_dir contents should be installed under dst_dir/basename(src_dir) if necessary. - Use os.path.relpath() instead of string manipulations on paths. - Add documentation to do_copydir(): specify types and add usage example.
2018-02-02Created an unstable module for IceStorm projects.Jussi Pakkanen1-0/+2
2018-01-31add meson.project_license() builtinMartin Kelly1-0/+4
This Fixes #2941.
2018-01-31Make checks a bit more robust against empty entries.Jussi Pakkanen1-0/+2
2018-01-29Add cross-compilation support for `rustc`Adam C. Foltzer1-2/+2
This patch is largely modeled on the relatively-straightforward code for Fortran cross-compilation, so there might be some intricacies missing.
2018-01-30Use os.path: basename() and dirname() instead of split()Aleksey Filippov1-2/+2
According to Python documentation[1] dirname and basename are defined as follows: os.path.dirname() = os.path.split()[0] os.path.basename() = os.path.split()[1] For the purpose of better readability split() is replaced by appropriate function if only one part of returned tuple is used. [1]: https://docs.python.org/3/library/os.path.html#os.path.split
2018-01-30Report warning/error locations in a format IDEs may already know how to parseJon Turney1-2/+2
Examples: meson.build:2:0: ERROR: Dependency is both required and not-found meson.build:4: WARNING: Keyword argument "link_with" defined multiple times. These are already matched by the default compilation-error-regexp-alist in emacs. Also: Don't start 'red' markup until after the \n before an error Unabsorb full-stop at end of warning with location from mlog.warning() Update warning_location test
2018-01-17Removed two deprecations from 2016.Jussi Pakkanen1-12/+3
2018-01-17Add `main` argument to `dependency` (#2828)Raphael Salamon1-1/+1
`GTest` uses this keyword for conditional linking of it's main(). Fixes issue #2828
2018-01-13Merge pull request #2764 from mesonbuild/generatorpathJussi Pakkanen1-2/+13
Generator outputs can have path segments
2018-01-11Change handling of not found external programsChristophe Gouiran1-1/+1
2018-01-09Add `export_dynamic` argument to `executable`. (#2662)Nikita Churaev1-1/+1
2018-01-07Ensure subproject_dir is a string and doesn't contain ".." segmentsMatthias Klumpp1-0/+4
This is important so people can not trick Meson to select a subproject_dir that is not in the project's source directory. It also ensures a string is used for the path.
2018-01-07Allow subproject dirs in subdirectories in the source tree againMatthias Klumpp1-2/+2
The previous change disallowed any subdirectories for subproject dirs, and therefore broke a couple of projects making use of that. This change still prevents people from setting subproject dirs that are not in the project's source tree, while allowing to specify any path within the project's directory again. Resolves: #2719
2018-01-03Merge pull request #2856 from jon-turney/warning-locationJussi Pakkanen1-3/+3
Consolidate warning location formatting
2018-01-02Merge pull request #2838 from ↵Jussi Pakkanen1-41/+60
mesonbuild/nirbheek/consolidate-subproject-dep-checking intrp: Consolidate subproject dep checking and logging
2018-01-01Wire up locations in a couple more warningsJon Turney1-2/+2
These are the remaining warnings in the parser, where we have the location to hand.
2018-01-01Consolidate warning location formatting in mlog.warning()Jon Turney1-1/+1
Also use .format() rather than % Also use build.environment rather than hardcoding 'meson.build'
2018-01-01intrp: Consolidate subproject dep checking and loggingNirbheek Chauhan1-41/+60
If a dep is not found on the system and a fallback is specified, we have two cases: 1. Look for the dependency in a pre-initialized subproject 2. Initialize the subproject and look for the dependency Both these require version comparing, ensuring the fetched variable is a dependency, and printing a success message, erroring out, etc. Now we share the relevant code instead of duplicating it. It already diverged, so this is a good thing. As a side-effect, we now log fallback dependencies in the same format as system dependencies: Dependency libva found: YES Dependency libva found: YES (cached) Dependency glib-2.0 from subproject subprojects/glib found: YES Dependency glib-2.0 from subproject subprojects/glib found: YES (cached)
2017-12-30Append warning location to warning output by warning()Jon Turney1-1/+1
2017-12-27Add missing spaceKarol Szuster1-1/+1
2017-12-26Merge pull request #2334 from mesonbuild/promotedepJussi Pakkanen1-0/+23
Add functionality to promote nested dependencies to top level.
2017-12-26Merge pull request #2817 from jon-turney/masterJussi Pakkanen1-1/+10
Update prefix-dependent defaults when project(default_options:) changes prefix
2017-12-22Print 'cached' if dependency is found in cacheNiklas Claesson1-0/+5
2017-12-22subproject handling: add fixNiklas Claesson1-6/+16
2017-12-21Update prefix-dependent defaults when project(default_options:) changes prefixJon Turney1-1/+10
Fixes #2811
2017-12-20Merge pull request #2791 from behlec/compiler-versionJussi Pakkanen1-1/+5
Add more version information to compiler
2017-12-17Preserve_path_from should be a kwarg of process(), not generator().Jussi Pakkanen1-1/+12
2017-12-17Print instructions on how to promote subsubprojects.Jussi Pakkanen1-0/+23
2017-12-16Fix flake8 issues.Christoph Behle1-4/+4
2017-12-16More version information for compilers.Christoph Behle1-1/+5
See issue #2762 Adds full_version to class Compiler. If set full_version will be printed additionally. Added support for CCompiler and CPPCompiler Added support for gcc/g++, clang/clang++, icc.
2017-12-14Print UTF-8 warning only when actually encountering non-ascii filenames.Jussi Pakkanen1-0/+2
2017-12-12Files created with generator can have path segments.Jussi Pakkanen1-1/+1
This is OK, because they are written in the private directory of each target and its layout can be anything.
2017-12-05Merge pull request #2731 from mesonbuild/disablerJussi Pakkanen1-1/+7
Created disabler object type