summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/mixins
Commit message (Collapse)AuthorAgeFilesLines
...
* default libtype to static to allow windows compilers to not skipMichael Hirsch, Ph.D2019-07-301-3/+5
| | | | | | To make Fortran tests useful on Windows, the library_type should default to static, unless needed to specifically test shared. Shared Fortran libs on Windows for non-Gfortran compilers is fragile requiring proprietary code syntax.
* no special shared lib args for PGIMichael Hirsch, Ph.D2019-07-302-7/+10
|
* PGI -shared is for Linux onlyMichael Hirsch, Ph.D2019-07-301-1/+8
|
* Merge pull request #5740 from scivision/intel-ci_fixJussi Pakkanen2019-07-301-2/+1
|\ | | | | tests: Intel-cl fixes for Fortran
| * intel-cl: readd missing importMichael Hirsch, Ph.D2019-07-301-2/+1
| |
* | PGI: cpp_pch precompiled headers functionalityMichael Hirsch, Ph.D2019-07-301-1/+17
|/ | | | | | | | | | | | | | | * PGI C++ PCH enable PGI compilers support precompiled headers for C++ only. The common/13 pch test passes if run manually with no spaces in the build path. However, since Meson run_project_tests.py makes temporary build directories with spaces in each tests, PGI --pch_dir can't handle this and fails. So we skip the test for PGI despite it working for usual case with no-spaces in build dir. Note: it's fine to have spaces in full path for sourcedir, just no spaces in relative path to builddir. * doc
* 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.
* Fix missing return statements that are seen with -Werror=return-type.Martin Liska2019-07-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Error example: Code: #include <locale.h> int main () { /* If it's not defined as a macro, try to use as a symbol */ #ifndef LC_MESSAGES LC_MESSAGES; #endif } Compiler stdout: Compiler stderr: In file included from /usr/include/locale.h:25, from /tmp/tmpep_i4iwg/testfile.c:2: /usr/include/features.h:382:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp] 382 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O) | ^~~~~~~ /tmp/tmpep_i4iwg/testfile.c: In function 'main': /tmp/tmpep_i4iwg/testfile.c:8:9: error: control reaches end of non-void function [-Werror=return-type] 8 | } | ^ cc1: some warnings being treated as errors
* compilers/mixins/pgi: Finish type annoationsDylan Baker2019-07-151-21/+27
|
* compilers: split pgi compiler out of compilers moduleDylan Baker2019-07-151-0/+89
|
* compilers/mixins/elbrus: add type annotations and fix typesDylan Baker2019-07-153-17/+22
| | | | | | | | | 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: put elbrus in mixinsDylan Baker2019-07-151-0/+59
|
* compilers/mixins/clang: Add type annotationsDylan Baker2019-07-151-12/+21
|
* compilers: Put clang mixin in a moduleDylan Baker2019-07-152-1/+83
|
* compilers/mixins/arm: Add type annotations to armclangDylan Baker2019-07-151-41/+47
|
* compilers: move ArmClang into mixins/arm.pyDylan Baker2019-07-151-0/+117
|
* compilers/mixins/intel: add type annotationsDylan Baker2019-07-151-17/+24
|
* compilers: Put Intel compiler classes into the mixins folderDylan Baker2019-07-151-0/+134
|
* 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.
* compilers/mixins/visualstudio: Add type annotationsDylan Baker2019-07-151-106/+119
|
* compilers: Move the VisualStudioLikeCompiler class into mixinsDylan Baker2019-07-152-2/+414
|
* compilers/mixins/arm: Add type annotationsDylan Baker2019-07-151-42/+51
|
* compilers: Move ArmCompiler to a mixin moduleDylan Baker2019-07-151-0/+128
|
* compilers/mixins/ccrx: add type annotationsDylan Baker2019-07-151-48/+59
|
* compilers: move ccrx compiler abstraction into mixinsDylan Baker2019-07-151-0/+148
|
* compilers: Move clike into a mixins directoryDylan Baker2019-07-152-0/+1165
The compilers module is rather large and confusing, with spaghetti dependencies going every which way. I'm planning to start breaking out the internal representations into a mixins submodule, for things that shouldn't be required outside of the compilers module itself.