summaryrefslogtreecommitdiff
path: root/mesonbuild/interpreter.py
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge pull request #3243 from dcbaker/accept-d-setupJussi Pakkanen2018-04-171-2/+4
|\ \ | | | | | | Accept -D for meson level options durring initial configuration
| * | interpreter: Don't assume default link_args == compile_argsDylan Baker2018-04-171-2/+4
| | | | | | | | | | | | | | | | | | | | | Since we want to make the options passed to `meson` and `meson configure` equivalent, we need to allows pass -D<lang>_args and -D<lang>_link_args to `meson`. This path assumes that if one is set then the other must be, which isn't true.
* | | Merge pull request #3353 from xclaesse/has-link-argumentJussi Pakkanen2018-04-171-17/+47
|\ \ \ | | | | | | | | Add has_link_argument() and friends
| * | | Add has_link_argument() and friendsXavier Claessens2018-04-161-0/+43
| | | | | | | | | | | | | | | | Closes: #3335.
| * | | has_argument(): reduce code duplicationXavier Claessens2018-04-161-21/+8
| |/ /
* | | Merge pull request #3240 from MathieuDuponchelle/python_moduleJussi Pakkanen2018-04-171-0/+2
|\ \ \ | |/ / |/| | Implement a generic python module
| * | Implement a generic python moduleMathieu Duponchelle2018-04-061-0/+2
| | | | | | | | | | | | With contributions from HÃ¥vard Graff
* | | find_program: Don't spam when called from a modulefindoverriderNirbheek Chauhan2018-04-151-21/+26
| | | | | | | | | | | | | | | The user doesn't need to know whether or not the program was found, especially not when it's spammed for every gnome.foo() function
* | | find_program: Only store successful lookupsNirbheek Chauhan2018-04-151-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise we can't do the following workflow: if not find_program('foo', required : false).found() subproject('provides-foo') endif Where 'provides-foo' has a meson.override_find_program() on a configure_file() or similar.
* | | Updated all modules to work with the new API.Jussi Pakkanen2018-04-151-1/+1
| | |
* | | Can override programs with scripts generated with configure_file.Jussi Pakkanen2018-04-151-0/+6
| | |
* | | Convert Gnome module to use find_program from interpreter.Jussi Pakkanen2018-04-151-6/+13
| | |
* | | Made it possible to override find_program to return a different program.Jussi Pakkanen2018-04-151-2/+43
| | | | | | | | | | | | Closes https://github.com/mesonbuild/meson/issues/2005
* | | Indicate subproject depth in console outputJon Turney2018-04-131-9/+11
| | |
* | | add support for cmakedefine in configure_file()David Fort2018-04-081-2/+12
| | | | | | | | | | | | | | | | | | | | | The added format argument for configure_file allows to specify the kind of file that is treated. It defaults to 'meson', but can also have the 'cmake' or 'cmake@' value to treat config.h.in files in the cmake format with #cmakedefine statements.
* | | Remove arbitrary [-1024,1024] limit in cross_compute_int()Xavier Claessens2018-04-081-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Copy the algorithm used by autoconf. It computes the upper and lower limits by starting at [-1,1] and multiply by 2 at each iteration. This is even faster for small numbers (the common case), for example it finds value 0 in just 2 compilations where old algorithm would check for 1024, 512, ..., 0.
* | | Merge pull request #3312 from MathieuDuponchelle/alwaysfallbackJussi Pakkanen2018-04-081-4/+7
|\ \ \ | | | | | | | | new wrap-mode: forcefallback
| * | | new wrap-mode: forcefallbackMathieu Duponchelle2018-04-061-4/+7
| |/ / | | | | | | | | | | | | | | | | | | This can be useful to make sure that a project builds when its fallbacks are used on systems where external dependencies satisfy the version requirements, or to easily hack on the sources of a dependency for which a fallback exists.
* | | Move entry in build_funct_dict to correct position.Christoph Behle2018-04-081-2/+2
|/ / | | | | | | The entry 'subdir_done' is now at its right place.
* | Add both_libraries() to build both shared and static librariesXavier Claessens2018-04-031-2/+63
| | | | | | | | | | | | | | Also support default_library='both' to make library() build both shared and static libraries. Closes #484
* | pkgconfig generator: Only skip dependencies when using shared_library()Xavier Claessens2018-04-031-1/+5
| | | | | | | | | | | | It is weird and inconsistent to have different pc file depending on default_library value when using library() or build_target(). We should skip dependencies only when user explicitly want shared library only.
* | Remove duplicated list of known kwargs for build targetsXavier Claessens2018-04-031-80/+36
| |
* | Added link to documentation and examples for find_library replacement (#3346)Alexis Jeandet2018-03-311-1/+4
| |
* | Allow meson build file to exit early. (#2808)behlec2018-03-291-1/+10
| |
* | dependency's wanted version might be a listVíctor Manuel Jáquez Leal2018-03-251-1/+1
|/ | | | | | A dependency declared in a subproject should be able to behave as a pkgconfig dependency, thus it should process the wanted version as a list.
* Do not install configure_file output if install_dir is empty. Closes #3270.Jussi Pakkanen2018-03-211-2/+4
|
* Merge pull request #3223 from sarum9in/renameJussi Pakkanen2018-03-201-2/+3
|\ | | | | Add install_data() rename parameter
| * Add rename parameter to install_data()Aleksey Filippov2018-03-171-2/+3
| |
* | Create a helper for checking if a string has a path componentNirbheek Chauhan2018-03-191-2/+2
|/ | | | | This is used in a number of places, and in some places it is incomplete. Use a helper to ensure it's used properly.
* Merge pull request #3127 from bluetech/method-permitted-kwargsJussi Pakkanen2018-03-131-1/+106
|\
| * Warn if non-permitted keyword arguments are given to compiler methodsRan Benita2018-02-231-1/+106
| | | | | | | | | | | | | | | | | | This can help future generations avoid mistakes like this: https://github.com/xkbcommon/libxkbcommon/commit/edb1c662394578a54b7bbed231d918925e5d8150 To avoid breaking builds, this is currently just an error. After sufficient time has passed this can hopefully become a hard error, similarly to the already-existing `permittedKwargs` warnings.
* | Merge pull request #3203 from jukkalaurila/bug3185Jussi Pakkanen2018-03-101-0/+13
|\ \ | | | | | | Fix bug 3185, "Setting -Dc_args=... option and some others during initial run fails silently'
| * | Fixed bug 3185.Jukka Laurila2018-03-091-0/+13
| | |
* | | Show info about possible subproject promotion when appropriateJon Turney2018-03-101-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move call to print_nested_info down into do_subproject() So we don't print info about possible subproject promotion unless subproject failure is due to directory non-existence And we do do that for subproject('foo'), as well as for dependency(fallback: ['foo', ...])
* | | Exclude subprojects when doing coverageNiklas Claesson2018-03-101-0/+2
|/ /
* | Merge pull request #3086 from sarum9in/declare-link-wholeJussi Pakkanen2018-03-061-2/+3
|\ \ | | | | | | Add declare_dependency() link_whole parameter
| * | Add link_whole argument to declare_dependency()Aleksey Filippov2018-03-061-2/+3
| | |
* | | Allow passing a compiler object to run_command()Evgenii Shatokhin2018-03-061-2/+9
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes it is needed to run the current compiler with specific options not to compile a file but rather to obtain additional info. For example, GCC has several -print-* options to query it about the paths to different libraries and development files. One use case is to get the location of development files for GCC plugins, which is not easily obtainable by other means: gcc -print-file-name=plugin For this purpose, it would be convenient if the compiler object returned by meson.get_compiler(lang) could be used in run_command() directly. This commit implements it. Signed-off-by: Evgenii Shatokhin <eshatokhin@virtuozzo.com>
* | Fix various flake8 whitespace reportsJon Turney2018-03-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | $ flake8 | grep -E '(E203|E221|E226|E303|W291|W293)' ./run_unittests.py:1503:5: E303 too many blank lines (2) ./mesonbuild/interpreter.py:2342:64: E226 missing whitespace around arithmetic operator ./mesonbuild/minit.py:110:17: E221 multiple spaces before operator ./mesonbuild/minit.py:131:1: W293 blank line contains whitespace ./mesonbuild/minit.py:135:19: E221 multiple spaces before operator ./mesonbuild/minit.py:155:1: W293 blank line contains whitespace ./mesonbuild/minit.py:181:1: W293 blank line contains whitespace ./mesonbuild/minit.py:183:1: W293 blank line contains whitespace ./mesonbuild/minit.py:294:47: W291 trailing whitespace ./mesonbuild/minit.py:331:47: W291 trailing whitespace ./mesonbuild/modules/unstable_icestorm.py:49:1: W293 blank line contains whitespace ./mesonbuild/modules/unstable_icestorm.py:76:31: E203 whitespace before ':' ./mesonbuild/modules/unstable_icestorm.py:82:22: E203 whitespace before ':'
* | Include project name in a test object.Hemmo Nieminen2018-02-251-6/+5
| |
* | Namespace test setups.Hemmo Nieminen2018-02-251-9/+7
| | | | | | | | | | | | | | Use $project_name:$test_setup namespace scheme for test setups. This allows one to choose from which (sub)project a test setup is taken from should there be several sharing the same name. Defaults to the main project. E.g. "meson test --setup subproj:valgrind".
* | Change an error message when find_program() fails.Hemmo Nieminen2018-02-251-1/+1
| | | | | | | | Mention all the sought programs in the error message.
* | Use include_directories for D impdirs.Jussi Pakkanen2018-02-251-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.
* Merge pull request #2863 from jon-turney/exit-status-on-exceptionJussi Pakkanen2018-02-181-0/+7
|\ | | | | Verify that failing tests are failing with an error, not a python exception
| * Only expose exception() test function during unit testsJon Turney2018-02-151-1/+2
| |
| * Add a test case for python exception exit statusJon Turney2018-02-151-0/+6
| |
* | Merge pull request #2943 from ximion/masterJussi Pakkanen2018-02-181-8/+14
|\ \ | |/ |/| Don't fail loading subprojects if subprojects_dir is in a subdirectory
| * Don't mention "error" in error messagesMatthias Klumpp2018-02-171-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.
| * Don't fail loading subprojects if subprojects_dir is in a subdirectoryMatthias Klumpp2018-02-121-5/+11
| |
| * Show a better error message if subproject can not be configuredMatthias Klumpp2018-02-121-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.