| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
The change in commit cc4da8d13a (IAR/CXX: Fix compatibility with CMP0057
OLD, 2022-01-29, v3.23.0-rc1~46^2) broke the detection of C++ version
because the `IN_LIST` operator cannot work directly on a list but
requires a variable.
|
|
|
|
|
|
|
|
|
|
| |
Commit a9073db7 (IAR: update language specification detection, 2021-09-23)
added usage of the if() IN_LIST operation and forgot to account for it not
being available in CMP0057 OLD mode.
Push and temporarily enable the policy. Also avoid the unnecessary temporary
variable for the list.
Fixes #23147.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The changes are part of CMP0128.
When the standard level is unset:
* Flags are added if extension mode doesn't match the compiler's default.
Previously logic only worked if LANG_EXTENSIONS was ON. Fixes #22224.
* The full flag is used. Previously CMAKE_LANG_EXTENSION_COMPILE_OPTION was
used. This was only supported for IAR.
Otherwise:
* Avoid adding flags if not necessary per the detected compiler defaults.
* Fixed check for when the requested standard is older. It now matches the
nearby comments.
I reworded the fallback comment as its logic was a bit difficult to wrap my
head around.
|
| |
|
| |
|
| |
|
|
|
|
| |
Issue: #17264
|
|
|
|
|
|
| |
Add compiler identification for V850.
Issue: #17264
|
| |
|
| |
|
|
|
|
| |
This version is not yet supported because it uses xlink unsetad of ilink.
|
|
|
|
| |
Use the correct version macros and version numbers.
|
|
|
|
| |
Moved common ASM setup to the common macros and changed version check.
|
|
|
|
| |
Fixes: #18557
|
|
|
|
|
|
|
|
| |
If these are not detected then we cannot support the IAR compiler.
Fail early with an explicit message instead of silently proceeding
and getting strange errors.
Issue: #18333
|
|
|
|
|
|
|
| |
Set the variable added by commit a2112257 (Add infrastructure to use
language extensions without any standard, 2017-06-29) for IAR. This was
accidentally left out of commit d8e6cd9e (IAR: Improve support for IAR
ARM Compiler, 2017-06-15).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make the implementation for this compiler more complete.
IAR has multiple C++ modes, historically they were reduced c++ versions
for embedded that gradually improved to the full standard (which can be
reduced again by e.g. disabling rtti and exceptions). The new
implementation picks the best available, but the c++ mode can also be
overridden by defining `CMAKE_IAR_CXX_FLAG`.
Add C/C++ standard flags so that all modes up to and including the last
supported standard are defined.
Fixes: #16826
|
|
|
|
|
| |
Without the space between the flag and the filename, IAR will fail to
parse the arguments correctly.
|
|
|
|
|
|
| |
The dependency flags require recent versions of `iccarm` and `iccavr`.
The multi-rule dependency generated with `--dependencies=m` does not
work well with Ninja, so use `--dependencies=ns` instead.
|
|
|
|
|
|
|
|
|
|
|
| |
Teach the Makefile and Ninja generators to substitute for an <INCLUDES>
placeholder instead of putting -I in <FLAGS>. Update our values for
CMAKE_<LANG>_COMPILE_OBJECT,
CMAKE_<LANG>_CREATE_ASSEMBLY_SOURCE, and
CMAKE_<LANG>_CREATE_PREPROCESSED_SOURCE
to place <INCLUDES> just before <FLAGS>.
|
|
The original feature request is at http://www.cmake.org/Bug/view.php?id=10176
Documentation can be found at http://www.iar.com/website1/1.0.1.0/675/1/
Alex
|