The Meson Build System
http://mesonbuild.com/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
906 B
22 lines
906 B
4 years ago
|
== Link tests can use sources for a different compiler ==
|
||
|
|
||
|
Usually, the `links` method of the compiler object uses a single program
|
||
|
invocation to do both compilation and linking. Starting with this version,
|
||
|
whenever the argument to `links` is a file, Meson will check if the file
|
||
|
suffix matches the compiler object's language. If they do not match,
|
||
|
as in the following case:
|
||
|
|
||
|
```
|
||
|
cxx = meson.get_compiler('cpp')
|
||
|
cxx.links(files('test.c'))
|
||
|
```
|
||
|
|
||
|
then Meson will separate compilation and linking. In the above example
|
||
|
`test.c` will be compiled with a C compiler and the resulting object file
|
||
|
will be linked with a C++ compiler. This makes it possible to detect
|
||
|
misconfigurations of the compilation environment, for example when the
|
||
|
C++ runtime is not compatible with the one expected by the C compiler.
|
||
|
|
||
|
For this reason, passing file arguments with an unrecognized suffix to
|
||
|
`links` will cause a warning.
|