Lines Matching +full:c +full:- +full:cpp
1 #-------------------------------------------------------------------------------
2 # Copyright (c) 2023, Arm Limited. All rights reserved.
4 # SPDX-License-Identifier: BSD-3-Clause
6 #-------------------------------------------------------------------------------
15 set(CROSS_COMPILE arm-none-eabi CACHE STRING "Cross-compiler prefix")
29 set(CMAKE_OBJCOPY ${CROSS_COMPILE}-objcopy CACHE FILEPATH "Path to objcopy")
39 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-Wno-ignored-optimization-argument>
40 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-Wno-unused-command-line-argument>
41 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-Wall>
43 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-Wno-error=cpp>
44 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-c>
45 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-fdata-sections>
46 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-ffunction-sections>
47 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-fno-builtin>
48 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-fshort-enums>
49 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-fshort-wchar>
50 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-funsigned-char>
51 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-masm=auto>
52 $<$<OR:$<COMPILE_LANGUAGE:C>,$<COMPILE_LANGUAGE:CXX>>:-nostdlib>
53 $<$<COMPILE_LANGUAGE:C>:-std=c99>
54 $<$<COMPILE_LANGUAGE:CXX>:-std=c++11>
55 $<$<COMPILE_LANGUAGE:ASM>:--cpu=${CMAKE_ASM_CPU_FLAG}>
56 $<$<AND:$<COMPILE_LANGUAGE:C>,$<BOOL:${TFM_DEBUG_SYMBOLS}>>:-g>
57 $<$<AND:$<COMPILE_LANGUAGE:CXX>,$<BOOL:${TFM_DEBUG_SYMBOLS}>>:-g>
61 set(MEMORY_USAGE_FLAG --info=summarysizes,sizes,totals,unused,veneers)
68 --strict
69 --symbols
70 --xref
71 …<$<AND:$<VERSION_GREATER:${TFM_ISOLATION_LEVEL},1>,$<STREQUAL:"${TEST_PSA_API}","IPC">>:--no-merge>
74 …eloper.arm.com/documentation/100074/0608/linker-errors-and-warnings/list-of-the-armlink-error-and-…
76 --diag_suppress=6312
78 --diag_suppress=6314
80 --diag_suppress=6304
82 --diag_suppress=6329
90 if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main")
101 # ARMCLANG specifies that '+nofp' is available on following M-profile cpus:
102 # 'cortex-m4', 'cortex-m7', 'cortex-m33', 'cortex-m35p', 'cortex-m55' and 'cortex-m85'.
103 # Build fails if other M-profile cpu, such as 'cortex-m23', is added with '+nofp'.
106 (TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m4"
107 OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m7"
108 OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m33"
109 OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m35p"
110 OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m55"
111 OR TFM_SYSTEM_PROCESSOR STREQUAL "cortex-m85"))
145 set(CMAKE_C_COMPILER_TARGET arm-${CROSS_COMPILE})
146 set(CMAKE_CXX_COMPILER_TARGET arm-${CROSS_COMPILE})
147 set(CMAKE_ASM_COMPILER_TARGET arm-${CROSS_COMPILE})
150 if (TFM_SYSTEM_ARCHITECTURE STREQUAL "armv8.1-m.main")
161 # avoid these, we set the list of supported -mcpu and -march variables to
186 __compiler_armclang(C)
187 include(Compiler/ARMCC-ASM)
198 " See [SDCOMP-59788] in Armclang 6.18 release note for details."
205 set(CMAKE_C_FLAGS "-mcpu=${CMAKE_SYSTEM_PROCESSOR}")
206 set(CMAKE_CXX_FLAGS "-mcpu=${CMAKE_SYSTEM_PROCESSOR}")
207 set(CMAKE_C_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}")
208 set(CMAKE_CXX_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}")
209 set(CMAKE_ASM_LINK_FLAGS "--cpu=${CMAKE_SYSTEM_PROCESSOR}")
223 set(CMAKE_C_FLAGS "-march=${CMAKE_SYSTEM_ARCH}")
224 set(CMAKE_CXX_FLAGS "-march=${CMAKE_SYSTEM_ARCH}")
228 # Check command will fail if C flags consist of keyword other than cpu/arch type.
232 set(COMPILER_CP_C_FLAG "-mfloat-abi=hard")
234 set(COMPILER_CP_C_FLAG "-mfloat-abi=hard -mfpu=${CONFIG_TFM_FP_ARCH}")
235 set(COMPILER_CP_ASM_FLAG "--fpu=${CONFIG_TFM_FP_ARCH_ASM}")
236 # armasm and armlink have the same option "--fpu" and are both used to
239 set(LINKER_CP_OPTION "--fpu=${CONFIG_TFM_FP_ARCH_ASM}")
242 set(COMPILER_CP_C_FLAG "-mfpu=softvfp")
243 set(COMPILER_CP_ASM_FLAG "--fpu=softvfp")
244 set(LINKER_CP_OPTION "--fpu=SoftVFP")
252 # Workaround for issues with --depend-single-line with armasm and Ninja
254 set( CMAKE_DEPFILE_FLAGS_ASM "--depend=<OBJECT>.d")
257 set(CMAKE_C_FLAGS_MINSIZEREL "-Oz -DNDEBUG")
276 --bincombined $<TARGET_FILE:${target}>
277 --output=${bin_dir}/${target}.bin
286 --elf $<TARGET_FILE:${target}>
287 --output=${bin_dir}/${target}.elf
296 --i32combined $<TARGET_FILE:${target}>
297 --output=${bin_dir}/${target}.hex
331 if(${scatter_file} STREQUAL "scatter_file-NOTFOUND")
358 LANGUAGE C
363 --scatter=$<TARGET_OBJECTS:${target}_scatter>
373 -E
374 -xc