Jon Turney
82bdf07a9d
Hoist trying several dependency detection methods up to find_external_dependency()
...
find_external_dependency() now makes and iterates over a list of callables
which are constructors with bound arguments for the dependency objects we
are going to attempt to make, so we can consolidate reporting on these
attempts and handling failures in that function.
6 years ago
Jon Turney
fce4f35170
Remove do-nothing extraframework method from libwmf and pcap
...
libwmf and pcap allegedly support method:extraframework, but this does
nothing but return not-found. Possibly cut-and-pasted from elsewhere?
6 years ago
Nirbheek Chauhan
a1d9adba09
FeatureNew: Make all checks subproject-specific
...
We now pass the current subproject to every FeatureNew and
FeatureDeprecated call. This requires a bunch of rework to:
1. Ensure that we have access to the subproject in the list of
arguments when used as a decorator (see _get_callee_args).
2. Pass the subproject to .use() when it's called manually.
3. We also can't do feature checks for new features in
meson_options.txt because that's parsed before we know the
meson_version from project()
7 years ago
Nirbheek Chauhan
58ae2c9a8c
Rename clike_langs to clink_langs for clarity
...
D is not a 'c-like' language, but it can link to C libraries. The same
might be true of Rust in the future and Go when we add support for it.
This contains no functionality changes.
7 years ago
Nirbheek Chauhan
d737488150
dependencies: Don't assume self.compiler is a C compiler
...
All dependencies were using find_library, has_header, get_define, etc on
self.compiler assuming that it's a compiler that outputs and consumes
C-like libraries. This is not true for D (and in the future, for Rust)
since although they can consume C libraries, they do not use the
C ecosystem.
For such purposes, we now have self.clib_compiler. Nothing uses
self.compiler anymore as a result, and it has been removed.
7 years ago
Nirbheek Chauhan
26e11f5fd8
Add missing FeatureNew for libwmf dependency
...
Also add it to the release notes for the 0.44 release.
https://github.com/mesonbuild/meson/pull/3709#issuecomment-395738573
7 years ago
Salamandar
2fb6018763
Add 0.46.0 features
7 years ago
Salamandar
4741f1e243
Add 0.42.0 features
7 years ago
David Seifert
d28e6c6153
Allow `required : false` for OpenMP dependency
...
* Currently `required : true` is implicitly assumed, making
optional use of OpenMP not possible.
7 years ago
Elliott Sales de Andrade
461f3af294
Explicitly check for OpenMP headers.
7 years ago
Elliott Sales de Andrade
9c254cca65
Determine OpenMP version from _OPENMP macro.
7 years ago
Elliott Sales de Andrade
dbb025a175
Add an OpenMP dependency.
...
This works similarly to the thread dependency which stores the various
inconsistent flags in each compiler.
7 years ago
Aleksey Filippov
ffa5293901
Split boost dependency out into separate file
...
Boost dependency is very complex and it is easier to manage it
in a separate file.
7 years ago
Benjamin Redelings
ab37727289
Add comment.
7 years ago
Benjamin Redelings
52775ecb14
Clean up code a bit.
7 years ago
Benjamin Redelings
8596c36214
Don't give up - boost could be in search path.
7 years ago
Benjamin Redelings
80e4ac2d49
Don't give up before check for libraries - they could be in search path.
7 years ago
Benjamin Redelings
45a7d094cc
Remove completed TODO notes.
7 years ago
Benjamin Redelings
b762655e98
Remove unused import.
7 years ago
Benjamin Redelings
8cf9c7f268
Allow finding boost libraries on windows.
7 years ago
Benjamin Redelings
4babf035e5
Factor our sourceforge dir names, and don't crash on non-msvc.
7 years ago
Benjamin Redelings
47ced35b77
Don't crash if we are not msvc.
7 years ago
Benjamin Redelings
f7862bcd92
Add note about mingw-w64 libraries.
7 years ago
Benjamin Redelings
7a233d01c7
Factor out debug tag.
7 years ago
Benjamin Redelings
a47a521b50
Correctly check for cross-compilation.
7 years ago
Benjamin Redelings
632d12f281
Add the right directory to linker search path.
7 years ago
Benjamin Redelings
f62a8aa413
Remove old code and debug messages since abi tags now work.
7 years ago
Benjamin Redelings
c54af27cd1
Add missing dash.
7 years ago
Benjamin Redelings
ead02636dc
Try using abi-tag to get libname and globber on windows.
7 years ago
Benjamin Redelings
a517c657fa
Compute abi tags for windows also.
7 years ago
Benjamin Redelings
7749497923
Move log_fail() out of sub-method.
7 years ago
Jon Turney
227ad7605b
Same for libwmf
7 years ago
Benjamin Redelings
03ec76a842
Attempt to make Unix and Windows use the same code for get_link_args( ).
7 years ago
Benjamin Redelings
465a31cf9d
Update verbose comments.
7 years ago
Benjamin Redelings
1af531c2d5
Restore comments.
7 years ago
Benjamin Redelings
f68bae49da
Use get_linker_search_args(libdir) instead of '-L'+libdir
7 years ago
Benjamin Redelings
a8c051256f
Begin factoring abi_tag logic into own function.
7 years ago
Benjamin Redelings
9759294a7f
Factor check for invalid BOOST modules into separate function.
7 years ago
Jan Niklas Hasse
b37706737c
Log instead of raise if Boost library not found ( #2924 )
7 years ago
Jon Turney
cdf241420c
Same for cups
7 years ago
Jon Turney
638095125d
Same for pcap
7 years ago
Jon Turney
8efdcca930
Make Dependency.get_methods() a static method
...
Since this is only consulted while constructing the Dependency object, it's
result doesn't depend on the instance (and it would make no sense if it did)
7 years ago
Jon Turney
0a6cbcce03
Fix typos
7 years ago
Jon Turney
1a948b2e67
Fix dependency('boost') on Cygwin
...
Fix dependency('boost') on Cygwin, broken in PR #2824
Like linux, Cygwin doesn't use -mt tags
Not sure what's correct for BSDs and Haiku
7 years ago
Benjamin Redelings
62bec86aa6
Handle header-only boost modules on Unix when BOOST_ROOT is not set.
7 years ago
Benjamin Redelings
ce0b0d463f
Fix macports builds: don't override include paths unless BOOST_ROOT.
...
We don't want to add /usr/local to the include path, because that will
pick up homebrew headers.
7 years ago
Benjamin Redelings
075e2d4154
Add todo comments.
7 years ago
Benjamin Redelings
a12d47984e
Remove unqualified import and add mesonlib. in from of symbols.
7 years ago
Benjamin Redelings
57265e2486
Use include path to find <boost/version.hpp> and version number.
7 years ago
Benjamin Redelings
ea4d5697a8
Fix style issues.
7 years ago