summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/mixins/gnu.py
Commit message (Collapse)AuthorAgeFilesLines
* compilers: Cache gnu-mixins has_arguments() checksNirbheek Chauhan2020-07-231-1/+1
| | | | | want_output gives us the output file. We don't need the file. We just need the compiler stderr, which is always stored.
* compilers: Silence warning about gnu_inline with clangNirbheek Chauhan2020-04-201-0/+5
| | | | | | | | | | The warning is due to a change in behaviour in Clang 10 and newer: https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html#c-language-changes-in-clang This was already fixed for clang++, but not for clang for some reason. It was also fixed incorrectly; by adding `extern` instead of moving from `-Werror` to `-Werror=attributes`.
* compilers: Move things out of clikeDylan Baker2020-04-101-0/+3
| | | | | One method belongs in the base Compiler class, the other belongs in the GnuLikeCompiler class.
* compilers: disable b_sanitize on hurdPino Toscano2020-04-101-1/+3
| | | | ASAN is not supported on the Hurd yet.
* compilers: Error if invalid linker selectedDylan Baker2020-03-171-0/+4
|
* types: import typing as T (fixes #6333)Daniel Mensinger2020-01-081-38/+38
|
* default inc dirs: Fix warning on MSYS (fixes #6336)Daniel Mensinger2019-12-151-5/+8
|
* Allow selecting the dynamic linkerDylan Baker2019-12-021-0/+4
| | | | | | | This uses the normal meson mechanisms, an LD environment variable or via cross/native files. Fixes: #6057
* default inc dirs: fix warning for unsupporte lang (fixes #6050)Daniel Mensinger2019-10-181-2/+9
|
* Fix for issue 5355Michael Lenczewski2019-10-091-0/+12
| | | | | | | compiler.get_supported_arguments reports success for certain unsupported flags when using the gnu C/ObjC, C++/ObjC++ compilers. This fix reads the stderr on the has_arguments check to ensure the arguments really are supported and not valid for the language selection
* compilers: replace CompilerType with MachineInfoDylan Baker2019-10-071-10/+8
| | | | | | Now that the linkers are split out of the compilers this enum is only used to know what platform we're compiling for. Which is what the MachineInfo class is for
* cache all gnulike_default_include_dirs invocationsDaniel Mensinger2019-10-031-5/+4
|
* compilers: Move the compiler argument to proxy linker flags to the compiler ↵Dylan Baker2019-08-301-0/+4
| | | | | | | | | | | | class Instead of the DynamicLinker returning a hardcoded value like `-Wl,-foo`, it now is passed a value that could be '-Wl,', or could be something '-Xlinker=' This makes a few things cleaner, and will make it possible to fix using clang (not clang-cl) on windows, where it invokes either link.exe or lld-link.exe instead of a gnu-ld compatible linker.
* Fix gcc include dotDylan Baker2019-08-281-0/+2
|
* compilers: Dispatch to dynamic linker classDylan Baker2019-08-141-109/+14
| | | | | Most of the cuda code is from Olexa Bilaniuk. Most of the PGI code is from Michael Hirsc
* compilers: pull sanitzier args into compiler classesDylan Baker2019-07-231-0/+13
| | | | This simplifies and cleans things up.
* compilers: return as-needed args as a listDylan Baker2019-07-231-3/+3
|
* compilers: Move lto args into compiler classDylan Baker2019-07-231-0/+6
| | | | | | | | | There are two problems, one is that it assumes -flto is the argument to do LTO/WPO, which isn't true of ICC and MSVC (and presumably) others. It's also incorrect because it assumes that the compiler and linker will always be the same, which isn't necessarily true. You could combine GCC with Apple's linker, or clang with link.exe, which use different arguments.
* compilers/mixins/elbrus: add type annotations and fix typesDylan Baker2019-07-151-4/+4
| | | | | | | | | There is a pretty big error in here, trying to return a tuple comperhension: (a for a in []) is not a tuple, it's a generator. This has profound type annotations: generators don't support most tuple or list methods, and they can only be iterated once. Beyond that tuples are meant for heterogenous types, ie, position matters for types. I've converted the output to a list in all cases.
* compilers/mixins/gnu: Add type annotationsDylan Baker2019-07-151-100/+119
|
* compilers: split gnu and gnulike compilers out of compilersDylan Baker2019-07-151-0/+390
I debated a bit whether both classes really belong in the same module, and decided that they do because the share a number of helpers.