summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Fix Rust global and local args. Closes #5101.rustprojargsJussi Pakkanen2019-03-211-0/+2
|
* Merge pull request #5116 from dcbaker/openmp-de-specializeJussi Pakkanen2019-03-215-16/+3
|\ | | | | dependencies/openmp: Don't special case OpenMP
| * dependencies/openmp: Don't special case OpenMPDylan Baker2019-03-195-15/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we specialcase OpenMP like we do threads, with a special `need_openmp` method. This seems like a great idea, but doesn't work out in practice, as well as it complicates the opemp implementation. If GCC is built without opemp support for example, we still add -fopenmp to the the command line, which results in compilation errors. This patch discards that and treats it like a normal dependency, removes the need_openmp() method, and sets the compile_args attributes from the compiler. Fixes #5115
| * dependencies/openmp: Pass openmp arguments to look for _OPENMP defineDylan Baker2019-03-191-1/+2
| | | | | | | | | | On GCC anc Clang th _OPENMP preprocessor define is only defined if -fopenmp is passed to the compiler.
* | Revert "azure: Don't try to publish logs from fork"Jon Turney2019-03-201-2/+1
| | | | | | | | This reverts commit ec5e8869196cc7749f4c224bc8d850b33b942e2d.
* | Merge pull request #5031 from bonzini/kconfigJussi Pakkanen2019-03-2016-0/+207
|\ \ | | | | | | Kconfig Module
| * | kconfig: improvements for builddir config filePaolo Bonzini2019-03-153-0/+24
| | | | | | | | | | | | | | | | | | | | | Document best practices for per-builddir config file, and add a test covering loading a config file from the build directory. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * | [modules] Add kconfig moduleMark Schulte2019-03-1513-0/+180
| | | | | | | | | | | | | | | Add a kconfig module to allow meson to integrate with existing projects that use kconfig.
| * | interpreter: allow passing dictionaries to holderifyPaolo Bonzini2019-03-151-0/+3
| | | | | | | | | | | | | | | This in turn allows modules to return dictionaries, since their return values is automatically passed through holderify.
* | | envconfig: remove unused parse_datafile()Ross Burton2019-03-201-10/+0
| | | | | | | | | | | | The cross-file cleanup meant this function is no longer used, so remove it.
* | | find_program: use Meson's Python3 for non-executable Python scriptsPaolo Bonzini2019-03-201-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Whenever a non-executable Python script is found by find_program, currently Haiku and Windows replace a python3 from the shebang line with the one that was used by Meson. Extend this behavior to POSIX systems so that it is easy to test a program with multiple Python versions. Currently this is particularly important for generators, because they don't allow files in the arguments and thus you cannot do something like g = generator(pymod.find_installation(), ..., arguments: [files('myscript.py'), ...]) With this patch, instead, you can just do g = generator(find_program('myscript.py'), ...)
* | | Merge pull request #5083 from rossburton/crossfilesJussi Pakkanen2019-03-208-58/+49
|\ \ \ | | | | | | | | Support multiple --cross-file options
| * | | Add test case for multiple cross filesRoss Burton2019-03-202-0/+23
| | | |
| * | | run_unittest: update for cross_file being a listRoss Burton2019-03-201-2/+2
| | | |
| * | | mesonbuild: allow multiple --cross-file optionsRoss Burton2019-03-206-52/+20
| | | | | | | | | | | | | | | | | | | | Just like --native-file, allow multiple --cross-file options. This is mostly unifying the logic between cross_files and config_files.
| * | | load_configs: generalise the search pathRoss Burton2019-03-192-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | Instead of hard-coding the fact that load_configs() searches for files under meson/native, pass in the subdirectory allowing the cross-file code to use the same logic.
* | | | replace library type strings with an enumDylan Baker2019-03-207-28/+37
|/ / / | | | | | | | | | | | | | | | | | | This patch creates an enum for selecting libtype as static, shared, prefer-static, or prefer-shared. This also renames 'static-shared' with 'prefer_static' and 'shared-static' with 'prefer_shared'. This is just a refactor with no behavioral changes or user facing changes.
* | | Merge pull request #4724 from jon-turney/lib-machine-alwaysJussi Pakkanen2019-03-195-4/+20
|\ \ \ | | | | | | | | Fix linking when cross-compiling and a windows resource is first object
| * | | Fix linking when cross-compiling and a windows resource is first objectJon Turney2019-01-053-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It appears that LIB/LINK default to the host architecture if they can't guess it from the first object. With the MSVC toolchain, resource files are (usually) compiled to an arch-neutral .res format. Always explicitly provide a '/MACHINE:' argument to avoid it guessing incorrectly when cross-compiling.
| * | | Testcase for library where the first object is an arch-neutral .res fileJon Turney2019-01-052-0/+4
| | | |
* | | | Reserve cross_ option prefix for Meson.Jussi Pakkanen2019-03-191-0/+4
| |_|/ |/| |
* | | interpreterbase: protect string division with FeatureNewPaolo Bonzini2019-03-184-8/+31
| | | | | | | | | | | | | | | | | | | | | | | | Meson is not warning if you join paths with / but you are requesting a version older than 0.49.0; fix this before adding more features to the division operator. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* | | dependencies: fix Python linking for windows+mingwNacho García2019-03-182-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For dynamic linking, some mingw releases don't link correctly with pythonXX.lib in all cases. This patch forces mingw to link against pyhthonXX.dll instead of the .lib file, which has a better compatiblity. Note that msys 1.0 old platform is detected as windows instead of 'mingw'
* | | azure: Unset BOOST_ROOT for Cygwin, MSYS2 and clang-clJon Turney2019-03-172-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It looks like BOOST_ROOT is now set in the azure v2017 image (relevant change seems to be [1], pre-installing boost) Remove BOOST_ROOT from the environment to prevent attempting to use a boost which is incompatible with the compiler. (an MSVC boost should be compatible with clang-cl, but has problems, see c7a3e810) [1] https://github.com/Microsoft/azure-pipelines-image-generation/pull/732
* | | Add feature warning for qt.compile_translationsLuca Weiss2019-03-171-2/+2
| | |
* | | Fix #5046Ninja-Koala2019-03-171-5/+6
| |/ |/|
* | Add libcamera to Users.md [skip ci]Kieran Bingham2019-03-141-0/+1
| | | | | | Add the libcamera project as a user of Meson.
* | Merge pull request #5081 from scivision/fortranincludeJussi Pakkanen2019-03-146-54/+120
|\ \ | | | | | | FEATURE: Fortran Include directive
| * | docsMichael Hirsch, Ph.D2019-03-141-0/+12
| | |
| * | add fortran include test caseMichael Hirsch, Ph.D2019-03-144-0/+19
| | |
| * | functionalize per-file Fortran dep scanMichael Hirsch, Ph.D2019-03-141-54/+89
| | | | | | | | | | | | | | | | | | | | | | | | allow recursion for Fortran include qualify include by file extension correct suffix
* | | dependencies/llvm: Add support for fedora 30Dylan Baker2019-03-141-22/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In Fedora 30 the llvm-config binary has the number of bits in the isa added as a suffic to the name llvm-config-64 or llvm-config-32, and no naked llvm-config binary is provided. This commit moves the list of llvm-config binaries to the constructor so that we can modify the list on a per-instance basis, and adds the new Feodra names. Fixes #5059
* | | envconfig: Store whether the cpu_familiy is 64 bitDylan Baker2019-03-141-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | We'll need this in the llvm-config logic to determine the right llvm-config to call on Fedora 30+, but this feels like the sort of information that might be useful elsewhere. This does not expose this information as part of the public API, it's only accessible at the python layer.
* | | compilers: Update comment about library search patternsNirbheek Chauhan2019-03-141-2/+4
| | |
* | | compilers: Try harder to dedup builtin libsNirbheek Chauhan2019-03-1412-6/+99
| | | | | | | | | | | | | | | | | | | | | | | | Compiler internal libs should always be de-duplicated, no matter what. Closes https://github.com/mesonbuild/meson/issues/2150 Test case is by Bruce Richardson in the issue.
* | | i18n: Use CustomTarget.known_kwargs at permittedKwargs()Georges Basile Stavracas Neto2019-03-141-2/+1
|/ / | | | | | | | | | | | | | | | | | | | | @permittedKwargs() is basically copying the logic of CustomTarget, but it is not actually up to date, leading to warnings on perfectly valid values such as 'build_by_default'. Use CustomTarget.known_kwargs instead, and only append the specific kwargs of i18n.merge_file(). Fixes https://github.com/mesonbuild/meson/issues/5079
* | tests: disable Dlang tests on windowsDylan Baker2019-03-131-1/+1
| | | | | | | | | | | | These don't work and no one has fixed them. When I've tried to download dmd for windows I can't get a valid installer from their website. Let's at least turn the CI green.
* | docs/Users: add Knot Resolver to projectsTomas Krizek2019-03-131-0/+1
| |
* | docs/Users: fix sort order (Kiwix libraries)Tomas Krizek2019-03-131-1/+1
| |
* | do not duplicate external dependencies in listBruce Richardson2019-03-131-2/+3
| | | | | | | | | | | | | | | | | | | | | | Since the "-l<lib>" flags in the build.ninja file are passed in "--start-group"/"--end-group" flags, there should be no need to have any library listed twice, even if there are circular dependencies. Therefore we can eliminate duplicates. For speed, rather than deduplicating at the end of the process, it's faster to not add the duplicate flags in the first place. This should help fix #2150
* | compilers: -fsanitize is not supported on OpenBSD (second pass)Antoine Jacoutot2019-03-131-0/+2
| | | | | | | | | | Similar to https://github.com/mesonbuild/meson/pull/5067 This part was missed in my previous commit.
* | compilers: -fsanitize is not supported on OpenBSDAntoine Jacoutot2019-03-131-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OpenBSD doesn't have any support for the compiler sanitizers yet. While this may change in the future, better fix test suite run in "failfast" mode for now. This can be revisited once (if) we get support in the future. * clang 7.0.1 $ make CFLAGS=-fsanitize=address foo cc -fsanitize=address -o foo foo.c cc: error: unsupported option '-fsanitize=address' for target 'amd64-unknown-openbsd6.5' * gcc 4.2.1 *** Error 1 in /tmp (<sys.mk>:85 'foo') $ make CC=gcc CFLAGS=-fsanitize=address foo gcc -fsanitize=address -o foo foo.c cc1: error: unrecognized command line option "-fsanitize=address" * gcc 8.2.0 $ make CC=egcc CFLAGS=-fsanitize=address foo egcc -fsanitize=address -o foo foo.c ld: error: unable to find library -lasan collect2: error: ld returned 1 exit status
* | Avoid module patching in `test_find_library_patterns`John Ericson2019-03-121-13/+8
| | | | | | | | This is less hacky, and also prepares the way for #4010.
* | build: Handle EOFError and AttributeError like coredataDylan Baker2019-03-121-1/+6
| | | | | | | | Fixes #5056
* | Add static as keyword to find_libraryNiklas Claesson2019-03-1112-30/+93
| |
* | Fix git wraps with submodulesAndrei Alexeyev2019-03-112-9/+8
| | | | | | | | | | | | | | * If clone-recursive is specified, populate submodules only after the specified revision/branch has been checked out. Fixes #4996 * Update submodules recursively on `meson subprojects update`
* | A more verbose RE Definiton in search_version. Closes #5020jrl642019-03-111-2/+20
| |
* | Add unit test for pkgconfig relative pathsIgnacio Casal Quinteiro2019-03-112-0/+26
| |
* | Support relative paths in pkgconfig filesNirbheek Chauhan2019-03-111-1/+5
| | | | | | | | | | | | This is a regression introduced in meson 0.47. Fixes https://github.com/mesonbuild/meson/issues/4135
* | docs: Typos and formatting in the 0.50 release notes [skip ci]Nirbheek Chauhan2019-03-111-13/+14
| |