aboutsummaryrefslogtreecommitdiff
path: root/mesonbuild/dependencies
AgeCommit message (Collapse)AuthorFilesLines
2019-09-23Add blocks dependencyPatrick Griffis2-1/+35
This allows easily enabling the blocks clang extension.
2019-09-06Add `-Wl,-rpath-link` for secondary dependenciesDavid Seifert1-3/+45
2019-09-05mesonlib.split_args/quote_arg/join_argsAleksey Gurtovoy2-12/+14
2019-08-21cmake: fix missing -lpthread (fixes #5821)Daniel Mensinger1-4/+7
2019-08-03Improve support for crosscompiled CMake modulesMarcin Niestroj2-1/+12
There are two variables that CMake takes into account during find_package() in cross-compiled environments, which are: CMAKE_SYSROOT and CMAKE_FIND_ROOT_PATH. Those are used in cmFindCommon::RerootPaths() function, which blindly prepends all search paths with those specified via CMAKE_SYSROOT and CMAKE_FIND_ROOT_PATH. Extend search paths by using CMAKE_SYSROOT and CMAKE_FIND_ROOT_PATH in a similar way as CMake does, so we successfully find CMake packages information in cross-compiled environments.
2019-07-31OpenMP:stop searching when openmp headers are first foundMichael Hirsch, Ph.D1-2/+3
2019-07-30PGI: fix openmp for 190common testMichael Hirsch, Ph.D1-10/+9
since there is no pgc++ on Windows, we avoid invoking that in 190common
2019-07-30OpenMP is intrinsic to PGIMichael Hirsch, Ph.D1-3/+10
2019-07-29openmp: allow omp.h or omp_lib.hMichael Hirsch, Ph.D1-5/+8
2019-07-23meson: Use CMAKE_PREFIX_PATH environment variableDaniel Mensinger1-0/+6
2019-07-18str => pathlib for cmakelistsMichael Hirsch, Ph.D1-10/+6
Use pathlib.Path to simplify and condense the generation of CMakeLists.txt
2019-07-17cmake: additional debug loggingDaniel Mensinger1-0/+3
2019-07-17cmake: Fix empty -D due to empty strings (closes #5522)Daniel Mensinger1-17/+15
2019-07-11Adapting Boost Python library detection to Boost >= 1.67. Closes #4288.gjaeger11-12/+17
2019-07-10try IMPORTED_IMPLIB before IMPORTED_LOCATION for cmake dependenciesNorbert Nemec1-1/+5
2019-07-02dependencies/dev: Switch order of llvm dependency findersDylan Baker1-3/+3
Cmake ignores shared vs dynamic linking, and always returns static. This went unnoticed, but results in regresssions for mesa. We need to fix cmake, but with 0.51.1 due out shortly switching the order provides a quick fix to restore expected functionality seems acceptable. Fixes #5568
2019-06-26dependencies/base: Set PKG_CONFIG_SYSROOT_DIR from cross fileDylan Baker1-0/+4
In some cases it may be necessary to set PKG_CONFIG_SYSROOT_DIR, like when you've mounted a host architecture system in an arbitrary path. Meson will now check the cross files for a [properties]:sys_root variable and set the PKG_CONFIG_SYSROOT_DIR environment variable based on that variable. Fixes #3801 Fixes #4057
2019-06-24typoMichael Hirsch, Ph.D1-1/+1
2019-06-24update compiler ID for windows INtel MPIMichael Hirsch, Ph.D1-1/+1
2019-06-24intel windows coarray argsMichael Hirsch, Ph.D1-0/+4
2019-06-19Merge pull request #5457 from mensinda/cmakeRefactorJussi Pakkanen2-474/+32
CMake code refactor
2019-06-19Handle thread flags when not using C at all. Closes #5497.Jussi Pakkanen1-2/+8
2019-06-13tvOS: added support AppleTVOSRoman Shpuntov1-2/+2
2019-06-13dependencies/shaderc: fix exception caused by typoAndrei Alexeyev1-1/+1
2019-06-12cmake: Move parsing the CMake trace into the CMake moduleDaniel Mensinger2-324/+26
2019-06-12cmake: Moved finding and running CMake out of dependencyDaniel Mensinger1-151/+7
2019-06-09Simplify `ConfigToolDependency` for_machineJohn Ericson1-4/+2
`native` kwarg is already handled
2019-06-09Purge `is_cross` and friends without changing user interfacesJohn Ericson5-98/+79
In most cases instead pass `for_machine`, the name of the relevant machines (what compilers target, what targets run on, etc). This allows us to use the cross code path in the native case, deduplicating the code. As one can see, environment got bigger as more information is kept structured there, while ninjabackend got a smaller. Overall a few amount of lines were added, but the hope is what's added is a lot simpler than what's removed.
2019-06-09Use `env.machines.*` to avoid some `is_cross`John Ericson1-8/+8
This is a small example of the `is_cross` removal the that abstraction enables.
2019-06-06cmake: Made CMake executable finding availiable for other functionsDaniel Mensinger1-36/+40
2019-06-05Per machine do 'build.' and '' option prefixesJohn Ericson1-7/+5
See the docs/ changes for details.
2019-06-05mlog.debug the meson-set PKG_CONFIG_PATHJohn Ericson1-1/+4
This is very useful for debugging!
2019-05-30dependencies/cmake: Handle spaces in set_target_propertiesDylan Baker1-12/+29
this is better, but it's still not perfect. cmake doesn't return quotes to us in the trace output, and being 100% the same as cmake is pretty much impossible without that information. What I've done should be a "good enough" implementation without having to maintain a copy of every property allowed in cmake, as well as custom properties.
2019-05-29dependencies/cmake: Handle spaces in set_property callsDylan Baker1-14/+14
2019-05-29dependencies/cmake: correctly handle spaces in variable namesDylan Baker1-7/+27
2019-05-29tests: Test the cmake parser more thuroughlyDylan Baker1-1/+1
It turns out there are bugs, in particular with spaces in variables...
2019-05-27coredata: add cmake_prefix_path optionDylan Baker1-4/+18
2019-05-27dependencies/llvm: Fixup bad output from llvm-config on windowsDylan Baker1-2/+8
It turns out that llvm-config on windows can return such wonderful output as `-LIBDIR:c:\\... c:\\abslute\\path\\to\\lib.lib`, which was all fine and dandy when we were blindly passing it through, GCC/MinGW ignored it and MSVC understood it meant `/LIBDIR:`; however, after we added some code to validate linker arguments, and we have some code before the validation that tries to remove posix style -L arguments, resulting in IBDIR:..., which doesn't validate. This patch fixes up the output of llvm-config so that -LIBDIR: is replaced by the the link libdir argument of the compiler, via the compiler/linker method for getting that. Fixes #5419
2019-05-22dub: add other library target typesLuís Ferreira1-1/+1
Signed-off-by: Luís Ferreira <lsferreira169@gmail.com>
2019-05-21Merge pull request #5372 from dcbaker/get_variableJussi Pakkanen1-0/+61
Dependency.get_variable method
2019-05-20fixup! interpreter: Add get_variable method to dependency holdersDylan Baker1-16/+15
2019-05-20Use dependency cacheDylan Baker1-2/+2
2019-05-16Merge pull request #5395 from dcbaker/mtest-annotationsJussi Pakkanen1-4/+5
Mtest annotations and bug fixes
2019-05-16Make `PerMachine` and `MachineChoice` have just `build` and `host`John Ericson1-4/+4
Meson itself *almost* only cares about the build and host platforms. The exception is it takes a `target_machine` in the cross file and exposes it to the user; but it doesn't do anything else with it. It's therefore overkill to put target in `PerMachine` and `MachineChoice`. Instead, we make a `PerThreeMachine` only for the machine infos. Additionally fix a few other things that were bugging me in the process: - Get rid of `MachineInfos` class. Since `envconfig.py` was created, it has no methods that couldn't just got on `PerMachine` - Make `default_missing` and `miss_defaulting` work functionally. That means we can just locally bind rather than bind as class vars the "unfrozen" configuration. This helps prevent bugs where one forgets to freeze a configuration.
2019-05-14dependencies/base: Add some annotations to ExternalProgramDylan Baker1-4/+5
as required by mtest.
2019-05-10dependencies/base: Implement backend component of get variableDylan Baker1-0/+62
2019-05-03cmake: Fixed new thread dependencyDaniel Mensinger1-3/+1
2019-05-03cmake: LLVM better modules handlingDaniel Mensinger3-20/+48
2019-05-03cmake: revert module name mappingDaniel Mensinger2-11/+34
2019-05-03cmake: minor code fixesDaniel Mensinger2-9/+11