diff options
author | Joakim Lönnberg <joakim.lonnberg@iar.com> | 2023-02-21 09:15:14 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2023-02-21 14:24:14 (GMT) |
commit | 3b365c461fc2536f731435832f8a3f05b2c64854 (patch) | |
tree | 80513456a6e273c5e116bd56d8af2caf180238c5 /Modules/Compiler | |
parent | 053fa2fef85ec6d8b46837230cabf9612a667773 (diff) | |
download | CMake-3b365c461fc2536f731435832f8a3f05b2c64854.zip CMake-3b365c461fc2536f731435832f8a3f05b2c64854.tar.gz CMake-3b365c461fc2536f731435832f8a3f05b2c64854.tar.bz2 |
IAR: Tolerate variables named for languages
If a project or user sets a variable or cache entry named `C` or `CXX`,
we were previously comparing those language names to the value of that
variable, rather than the name itself. Double-quote the string to take
advantage of policy `CMP0054`, but also add "x" prefixes to support
projects that do not set the policy.
This extends a similar fix from commit c8eb357738 (CompilerId: Tolerate
variables named for languages, 2021-06-17, v3.21.0-rc1~9^2).
Diffstat (limited to 'Modules/Compiler')
-rw-r--r-- | Modules/Compiler/IAR.cmake | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Modules/Compiler/IAR.cmake b/Modules/Compiler/IAR.cmake index 7908f96..e75df59 100644 --- a/Modules/Compiler/IAR.cmake +++ b/Modules/Compiler/IAR.cmake @@ -9,7 +9,7 @@ include_guard() macro(__compiler_iar_common lang) - if (${lang} MATCHES "^(C|CXX)$") + if ("x${lang}" MATCHES "^x(C|CXX)$") set(CMAKE_${lang}_COMPILE_OBJECT "<CMAKE_${lang}_COMPILER> ${CMAKE_IAR_${lang}_FLAG} --silent <SOURCE> <DEFINES> <INCLUDES> <FLAGS> -o <OBJECT>") set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}_COMPILER> ${CMAKE_IAR_${lang}_FLAG} --silent <SOURCE> <DEFINES> <INCLUDES> <FLAGS> --preprocess=cnl <PREPROCESSED_SOURCE>") set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE "<CMAKE_${lang}_COMPILER> ${CMAKE_IAR_${lang}_FLAG} --silent <SOURCE> <DEFINES> <INCLUDES> <FLAGS> -lAH <ASSEMBLY_SOURCE> -o <OBJECT>.dummy") |