summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/mixins/intel.py
Commit message (Collapse)AuthorAgeFilesLines
* treewide: add future annotations importEli Schwartz2023-02-011-0/+1
|
* compilers: Add optimization=plain optionJan Tojnar2022-10-091-2/+4
| | | | | | | | | | | | | | https://github.com/mesonbuild/meson/pull/9287 changed the `optimization=0` to pass `-O0` to the compiler. This change is reasonable by itself but unfortunately, it breaks `buildtype=plain`, which promises that ā€œno extra build flags are usedā€. `buildtype=plain` is important for distros like NixOS, which manage compiler flags for optimization and hardening themselves. Let’s introduce a new optimization level that does nothing and set it as the default for `buildtype=plain`.
* compilers: push the compiler id to a class variableDylan Baker2022-01-101-4/+2
| | | | | | It really is a per class value, and shouldn't be set per instance. It also allows us to get rid of useless constructors, including those breaking mypy
* apply flake8 fixes for unused imports and missing importsEli Schwartz2021-09-141-6/+1
|
* Split compiler detection from EnvironmentDaniel Mensinger2021-06-251-4/+1
| | | | | | This moves all the compiler detection logic into the new compilers.detect module. This dramatically reduces the size and complexity of Environment.
* use OptionKey for builtin and base optionsDylan Baker2021-01-041-2/+3
| | | | | | | | I would have prefered to do these seperatately, but they are combined in some cases, so it was much easier to convert them together. this eliminates the builtins_per_machine dict, as it's duplicated with the OptionKey's machine parameter.
* compilers/icl: Fix pch usageDylan Baker2020-10-011-0/+3
|
* compilers/intel: use get_compiler_check_argsDylan Baker2020-10-011-18/+9
| | | | | Instead of trying to override the compiles() method, which gets skipped in a bunch of cases.
* compilers: Use /Od for no-optimisation flag for Intel compilers on windowsIan Harvey2020-09-301-2/+2
| | | | Intel compilers on Windows (and the Microsoft C++ compiler) use /Od to disable optimisation, not /O0.
* compilers: Tell mypy that the compiler mixins are just thatDylan Baker2020-09-241-6/+2
| | | | | | We do this by making the mixins inherit the Compiler class only when mypy is examining the code (using some clever inheritance shenanigans). This caught a bunch of issues, and also lets us delete a ton of code.
* compilers/mixins/intel: make type safeDylan Baker2020-09-241-11/+22
|
* compilers/mixins/intel: Use the has_func_attribute_extra_args functionDylan Baker2020-09-241-1/+3
| | | | Instead of putting that extra argument in the base compiles() class
* typing: fully annotate arglistDaniel Mensinger2020-09-081-2/+2
|
* types: import typing as T (fixes #6333)Daniel Mensinger2020-01-081-16/+16
|
* intel/intel-cl: handle arguments in intel-specific wayMichael Hirsch, Ph.D2019-12-141-20/+38
| | | | | | | intel compiler's defaults are different enough from MSVC and GNU that it's necessary to set specific defaults for Intel compilers. This corrects/improves behaviors initially addressed in b1c8f765fa6e2a
* intel/intel-cl: use appropriate buildtype optionsMichael Hirsch, Ph.D2019-12-041-4/+39
| | | | | | | | This puts appropriate default options across buildtype for Intel and Intel-Cl compilers, for C, C++ and Fortran. Prior to this PR, the behavior of Intel compilers vs. GNUlike was not the same, in particular, debug traceback available by default for GNUlike compilers was not present with Intel compilers.
* compilers: replace CompilerType with MachineInfoDylan Baker2019-10-071-4/+2
| | | | | | 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
* compilers: Dispatch to dynamic linker classDylan Baker2019-08-141-3/+0
| | | | | Most of the cuda code is from Olexa Bilaniuk. Most of the PGI code is from Michael Hirsc
* intel-cl: readd missing importMichael Hirsch, Ph.D2019-07-301-2/+1
|
* 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