1# FreeRTOS internal cmake file. Do not use it in user top-level project 2 3if (FREERTOS_PORT STREQUAL "A_CUSTOM_PORT") 4 message(STATUS "Using a custom FREERTOS_PORT.") 5 return() 6endif() 7 8# FreeRTOS internal cmake file. Do not use it in user top-level project 9 10add_library(freertos_kernel_port STATIC 11 # 16-Bit DOS ports for BCC 12 $<$<STREQUAL:${FREERTOS_PORT},BCC_16BIT_DOS_FLSH186>: 13 BCC/16BitDOS/common/portcomn.c 14 BCC/16BitDOS/Flsh186/port.c> 15 16 $<$<STREQUAL:${FREERTOS_PORT},BCC_16BIT_DOS_PC>: 17 BCC/16BitDOS/common/portcomn.c 18 BCC/16BitDOS/PC/port.c> 19 20 # ARMv7-M port for Texas Instruments Code Composer Studio 21 $<$<STREQUAL:${FREERTOS_PORT},CCS_ARM_CM3>: 22 CCS/ARM_CM3/port.c 23 CCS/ARM_CM3/portasm.asm> 24 25 # ARMv7E-M port for Texas Instruments Code Composer Studio 26 $<$<STREQUAL:${FREERTOS_PORT},CCS_ARM_CM4F>: 27 CCS/ARM_CM4F/port.c 28 CCS/ARM_CM4F/portasm.asm> 29 30 # ARMv7-R port for Texas Instruments Code Composer Studio 31 $<$<STREQUAL:${FREERTOS_PORT},CCS_ARM_CR4>: 32 CCS/ARM_Cortex-R4/port.c 33 CCS/ARM_Cortex-R4/portASM.asm> 34 35 # Texas Instruments MSP430 port for Texas Instruments Code Composer Studio 36 $<$<STREQUAL:${FREERTOS_PORT},CCS_MSP430X>: 37 CCS/MSP430X/port.c 38 CCS/MSP430X/portext.asm> 39 40 # NXP (formerly Motorola, Freescale) Cold Fire and 68HCS12 ports for Code Warrior 41 $<$<STREQUAL:${FREERTOS_PORT},CODEWARRIOR_COLDFIRE_V1>: 42 CodeWarrior/ColdFire_V1/port.c 43 CodeWarrior/ColdFire_V1/portasm.S> 44 45 $<$<STREQUAL:${FREERTOS_PORT},CODEWARRIOR_COLDFIRE_V2>: 46 CodeWarrior/ColdFire_V2/port.c 47 CodeWarrior/ColdFire_V2/portasm.S> 48 49 $<$<STREQUAL:${FREERTOS_PORT},CODEWARRIOR_HCS12>: 50 CodeWarrior/HCS12/port.c> 51 52 # ARMv7-A port for GCC 53 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CA9>: 54 GCC/ARM_CA9/port.c 55 GCC/ARM_CA9/portASM.S> 56 57 # ARMv8-A ports for GCC 58 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CA53_64_BIT>: 59 GCC/ARM_CA53_64_BIT/port.c 60 GCC/ARM_CA53_64_BIT/portASM.S> 61 62 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CA53_64_BIT_SRE>: 63 GCC/ARM_CA53_64_BIT_SRE/port.c 64 GCC/ARM_CA53_64_BIT_SRE/portASM.S> 65 66 # ARMv6-M port for GCC 67 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM0>: 68 GCC/ARM_CM0/port.c> 69 70 # ARMv6-M / Cortex-M0 Raspberry PI RP2040 port for GCC 71 $<$<STREQUAL:${FREERTOS_PORT},GCC_RP2040>: 72 ThirdParty/GCC/RP2040/idle_task_static_memory.c 73 ThirdParty/GCC/RP2040/port.c> 74 75 # ARMv7-M ports for GCC 76 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM3>: 77 GCC/ARM_CM3/port.c> 78 79 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM3_MPU>: 80 GCC/ARM_CM3_MPU/port.c> 81 82 # ARMv7E-M ports for GCC 83 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM4_MPU>: 84 GCC/ARM_CM4_MPU/port.c> 85 86 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM4F>: 87 GCC/ARM_CM4F/port.c> 88 89 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM7>: 90 GCC/ARM_CM7/r0p1/port.c> 91 92 # ARMv8-M ports for GCC 93 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM23_NONSECURE>: 94 GCC/ARM_CM23/non_secure/port.c 95 GCC/ARM_CM23/non_secure/portasm.c> 96 97 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM23_SECURE>: 98 GCC/ARM_CM23/secure/secure_context_port.c 99 GCC/ARM_CM23/secure/secure_context.c 100 GCC/ARM_CM23/secure/secure_heap.c 101 GCC/ARM_CM23/secure/secure_init.c> 102 103 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM23_NTZ_NONSECURE>: 104 GCC/ARM_CM23_NTZ/non_secure/port.c 105 GCC/ARM_CM23_NTZ/non_secure/portasm.c> 106 107 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_NONSECURE>: 108 GCC/ARM_CM33/non_secure/port.c 109 GCC/ARM_CM33/non_secure/portasm.c> 110 111 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_SECURE>: 112 GCC/ARM_CM33/secure/secure_context_port.c 113 GCC/ARM_CM33/secure/secure_context.c 114 GCC/ARM_CM33/secure/secure_heap.c 115 GCC/ARM_CM33/secure/secure_init.c> 116 117 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_NTZ_NONSECURE>: 118 GCC/ARM_CM33_NTZ/non_secure/port.c 119 GCC/ARM_CM33_NTZ/non_secure/portasm.c> 120 121 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_TFM>: 122 GCC/ARM_CM33_NTZ/non_secure/port.c 123 GCC/ARM_CM33_NTZ/non_secure/portasm.c 124 ThirdParty/GCC/ARM_TFM/os_wrapper_freertos.c> 125 126 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM35P_NONSECURE>: 127 GCC/ARM_CM35P/non_secure/port.c 128 GCC/ARM_CM35P/non_secure/portasm.c> 129 130 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM35P_SECURE>: 131 GCC/ARM_CM35P/secure/secure_context_port.c 132 GCC/ARM_CM35P/secure/secure_context.c 133 GCC/ARM_CM35P/secure/secure_heap.c 134 GCC/ARM_CM35P/secure/secure_init.c> 135 136 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM35P_NTZ_NONSECURE>: 137 GCC/ARM_CM35P_NTZ/non_secure/port.c 138 GCC/ARM_CM35P_NTZ/non_secure/portasm.c> 139 140 # ARMv8.1-M ports for GCC 141 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_NONSECURE>: 142 GCC/ARM_CM55/non_secure/port.c 143 GCC/ARM_CM55/non_secure/portasm.c> 144 145 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_SECURE>: 146 GCC/ARM_CM55/secure/secure_context_port.c 147 GCC/ARM_CM55/secure/secure_context.c 148 GCC/ARM_CM55/secure/secure_heap.c 149 GCC/ARM_CM55/secure/secure_init.c> 150 151 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_NTZ_NONSECURE>: 152 GCC/ARM_CM55_NTZ/non_secure/port.c 153 GCC/ARM_CM55_NTZ/non_secure/portasm.c> 154 155 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_TFM>: 156 GCC/ARM_CM55_NTZ/non_secure/port.c 157 GCC/ARM_CM55_NTZ/non_secure/portasm.c 158 ThirdParty/GCC/ARM_TFM/os_wrapper_freertos.c> 159 160 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_NONSECURE>: 161 GCC/ARM_CM85/non_secure/port.c 162 GCC/ARM_CM85/non_secure/portasm.c> 163 164 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_SECURE>: 165 GCC/ARM_CM85/secure/secure_context_port.c 166 GCC/ARM_CM85/secure/secure_context.c 167 GCC/ARM_CM85/secure/secure_heap.c 168 GCC/ARM_CM85/secure/secure_init.c> 169 170 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_NTZ_NONSECURE>: 171 GCC/ARM_CM85_NTZ/non_secure/port.c 172 GCC/ARM_CM85_NTZ/non_secure/portasm.c> 173 174 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_TFM>: 175 GCC/ARM_CM85_NTZ/non_secure/port.c 176 GCC/ARM_CM85_NTZ/non_secure/portasm.c 177 ThirdParty/GCC/ARM_TFM/os_wrapper_freertos.c> 178 179 # ARMv7-R ports for GCC 180 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CR5>: 181 GCC/ARM_CR5/port.c 182 GCC/ARM_CR5/portASM.S> 183 184 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CRX_NOGIC>: 185 GCC/ARM_CRx_No_GIC/port.c 186 GCC/ARM_CRx_No_GIC/portASM.S> 187 188 # ARMv4T ARM7TDMI ports for GCC 189 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_AT91FR40008>: 190 GCC/ARM7_AT91FR40008/port.c 191 GCC/ARM7_AT91FR40008/portISR.c> 192 193 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_AT91SAM7S>: 194 GCC/ARM7_AT91SAM7S/lib_AT91SAM7X256.c 195 GCC/ARM7_AT91SAM7S/port.c 196 GCC/ARM7_AT91SAM7S/portISR.c> 197 198 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_LPC2000>: 199 GCC/ARM7_LPC2000/port.c 200 GCC/ARM7_LPC2000/portISR.c> 201 202 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_LPC23XX>: 203 GCC/ARM7_LPC23xx/port.c 204 GCC/ARM7_LPC23xx/portISR.c> 205 206 $<$<STREQUAL:${FREERTOS_PORT},GCC_STR75X>: 207 GCC/STR75x/port.c 208 GCC/STR75x/portISR.c> 209 210 # Microchip (formerly Ateml) AVR8 ports for GCC 211 $<$<STREQUAL:${FREERTOS_PORT},GCC_ATMEGA323>: 212 GCC/ATMega323/port.c> 213 214 $<$<STREQUAL:${FREERTOS_PORT},GCC_ATMEGA>: 215 ThirdParty/GCC/ATmega/port.c> 216 217 $<$<STREQUAL:${FREERTOS_PORT},GCC_AVRDX>: 218 ThirdParty/Partner-Supported-Ports/GCC/AVR_AVRDx/port.c> 219 220 $<$<STREQUAL:${FREERTOS_PORT},GCC_AVR_MEGA0>: 221 ThirdParty/Partner-Supported-Ports/GCC/AVR_Mega0/port.c> 222 223 # Microchip (formerly Ateml) AVR32 port for GCC 224 $<$<STREQUAL:${FREERTOS_PORT},GCC_AVR32_UC3>: 225 GCC/AVR32_UC3/exception.S 226 GCC/AVR32_UC3/port.c> 227 228 # NXP (formerly Motorola, Freescale) Cold Fire and 68HCS12 ports for GCC 229 $<$<STREQUAL:${FREERTOS_PORT},GCC_COLDFIRE_V2>: 230 GCC/ColdFire_V2/port.c 231 GCC/ColdFire_V2/portasm.S> 232 233 $<$<STREQUAL:${FREERTOS_PORT},GCC_HCS12>: 234 GCC/HCS12/port.c> 235 236 # Cortus APS3 soft core port for GCC 237 $<$<STREQUAL:${FREERTOS_PORT},GCC_CORTUS_APS3>: 238 GCC/CORTUS_APS3/port.c> 239 240 # Renesas (formerly Hitach) H8S port for GCC 241 $<$<STREQUAL:${FREERTOS_PORT},GCC_H8S2329>: 242 GCC/H8S2329/port.c> 243 244 # x86 / IA32 flat memory model port for GCC 245 $<$<STREQUAL:${FREERTOS_PORT},GCC_IA32_FLAT>: 246 GCC/IA32_flat/port.c 247 GCC/IA32_flat/portASM.S> 248 249 # Xilinx MicroBlaze soft core ports for GCC 250 $<$<STREQUAL:${FREERTOS_PORT},GCC_MICROBLAZE>: 251 GCC/MicroBlaze/port.c 252 GCC/MicroBlaze/portasm.s> 253 254 $<$<STREQUAL:${FREERTOS_PORT},GCC_MICROBLAZE_V8>: 255 GCC/MicroBlazeV8/port.c 256 GCC/MicroBlazeV8/port_exceptions.c 257 GCC/MicroBlazeV8/portasm.S> 258 259 $<$<STREQUAL:${FREERTOS_PORT},GCC_MICROBLAZE_V9>: 260 GCC/MicroBlazeV9/port.c 261 GCC/MicroBlazeV9/port_exceptions.c 262 GCC/MicroBlazeV9/portasm.S> 263 264 # Xilinx PCC4XX soft core ports for GCC 265 $<$<STREQUAL:${FREERTOS_PORT},GCC_PPC405_XILINX>: 266 GCC/PPC405_Xilinx/port.c 267 GCC/PPC405_Xilinx/portasm.S> 268 269 $<$<STREQUAL:${FREERTOS_PORT},GCC_PPC440_XILINX>: 270 GCC/PPC440_Xilinx/port.c 271 GCC/PPC440_Xilinx/portasm.S> 272 273 # Texas Instruments MSP430 port for GCC 274 $<$<STREQUAL:${FREERTOS_PORT},GCC_MSP430F449>: 275 GCC/MSP430F449/port.c> 276 277 # Intel (formerly Altera) NIOS II soft core port for GCC 278 $<$<STREQUAL:${FREERTOS_PORT},GCC_NIOSII>: 279 GCC/NiosII/port.c 280 GCC/NiosII/port_asm.S> 281 282 # RISC-V architecture ports for GCC 283 $<$<STREQUAL:${FREERTOS_PORT},GCC_RISC_V>: 284 GCC/RISC-V/port.c 285 GCC/RISC-V/portASM.S> 286 287 $<$<STREQUAL:${FREERTOS_PORT},GCC_RISC_V_PULPINO_VEGA_RV32M1RM>: 288 GCC/RISC-V/port.c 289 GCC/RISC-V/portASM.S> 290 291 # Renesas RL78 port for GCC 292 $<$<STREQUAL:${FREERTOS_PORT},GCC_RL78>: 293 GCC/RL78/port.c 294 GCC/RL78/portasm.S> 295 296 # Renesas RX architecture ports for GCC 297 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX100>: 298 GCC/RX100/port.c> 299 300 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX200>: 301 GCC/RX200/port.c> 302 303 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX600>: 304 GCC/RX600/port.c> 305 306 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX600_V2>: 307 GCC/RX600v2/port.c> 308 309 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX700_V3_DPFPU>: 310 GCC/RX700v3_DPFPU/port.c> 311 312 # Infineon TriCore 1782 port for GCC 313 $<$<STREQUAL:${FREERTOS_PORT},GCC_TRICORE_1782>: 314 GCC/TriCore_1782/port.c 315 GCC/TriCore_1782/porttrap.c> 316 317 # Synopsys ARC architecture ports for GCC 318 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARC_EM_HS>: 319 ThirdParty/GCC/ARC_EM_HS/arc_freertos_exceptions.c 320 ThirdParty/GCC/ARC_EM_HS/arc_support.s 321 ThirdParty/GCC/ARC_EM_HS/freertos_tls.c 322 ThirdParty/GCC/ARC_EM_HS/port.c> 323 324 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARC_V1>: 325 ThirdParty/GCC/ARC_v1/arc_freertos_exceptions.c 326 ThirdParty/GCC/ARC_v1/arc_support.s 327 ThirdParty/GCC/ARC_v1/port.c> 328 329 # Posix Simulator port for GCC 330 $<$<STREQUAL:${FREERTOS_PORT},GCC_POSIX>: 331 ThirdParty/GCC/Posix/port.c 332 ThirdParty/GCC/Posix/utils/wait_for_event.c> 333 334 # Xtensa LX / Espressif ESP32 port for GCC 335 $<$<STREQUAL:${FREERTOS_PORT},GCC_XTENSA_ESP32>: 336 ThirdParty/GCC/Xtensa_ESP32/FreeRTOS-openocd.c 337 ThirdParty/GCC/Xtensa_ESP32/port.c 338 ThirdParty/GCC/Xtensa_ESP32/portasm.S 339 ThirdParty/GCC/Xtensa_ESP32/xtensa_context.S 340 ThirdParty/GCC/Xtensa_ESP32/xtensa_init.c 341 ThirdParty/GCC/Xtensa_ESP32/xtensa_intr_asm.S 342 ThirdParty/GCC/Xtensa_ESP32/xtensa_intr.c 343 ThirdParty/GCC/Xtensa_ESP32/xtensa_loadstore_handler.S 344 ThirdParty/GCC/Xtensa_ESP32/xtensa_overlay_os_hook.c 345 ThirdParty/GCC/Xtensa_ESP32/xtensa_vector_defaults.S 346 ThirdParty/GCC/Xtensa_ESP32/xtensa_vectors.S> 347 348 # Renesas (formerly NEC) 78K port for IAR EW78K 349 $<$<STREQUAL:${FREERTOS_PORT},IAR_78K0K>: 350 IAR/78K0R/port.c 351 IAR/78K0R/portasm.s26> 352 353 # ARMv7-A ports for IAR EWARM 354 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CA5_NOGIC>: 355 IAR/ARM_CA5_No_GIC/port.c 356 IAR/ARM_CA5_No_GIC/portASM.s> 357 358 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CA9>: 359 IAR/ARM_CA9/port.c 360 IAR/ARM_CA9/portASM.s> 361 362 # ARMv6-M port for IAR EWARM 363 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM0>: 364 IAR/ARM_CM0/port.c 365 IAR/ARM_CM0/portasm.s> 366 367 # ARMv7-M port for IAR EWARM 368 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM3>: 369 IAR/ARM_CM3/port.c 370 IAR/ARM_CM3/portasm.s> 371 372 # ARMv7E-M ports for IAR EWARM 373 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM4F>: 374 IAR/ARM_CM4F/port.c 375 IAR/ARM_CM4F/portasm.s> 376 377 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM4F_MPU>: 378 IAR/ARM_CM4F_MPU/port.c 379 IAR/ARM_CM4F_MPU/portasm.s> 380 381 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM7>: 382 IAR/ARM_CM7/r0p1/port.c 383 IAR/ARM_CM7/r0p1/portasm.s> 384 385 # ARMv8-M Ports for IAR EWARM 386 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM23_NONSECURE>: 387 IAR/ARM_CM23/non_secure/port.c 388 IAR/ARM_CM23/non_secure/portasm.s> 389 390 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM23_SECURE>: 391 IAR/ARM_CM23/secure/secure_context_port_asm.s 392 IAR/ARM_CM23/secure/secure_context.c 393 IAR/ARM_CM23/secure/secure_heap.c 394 IAR/ARM_CM23/secure/secure_init.c> 395 396 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM23_NTZ_NONSECURE>: 397 IAR/ARM_CM23_NTZ/non_secure/port.c 398 IAR/ARM_CM23_NTZ/non_secure/portasm.s> 399 400 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM33_NONSECURE>: 401 IAR/ARM_CM33/non_secure/port.c 402 IAR/ARM_CM33/non_secure/portasm.s> 403 404 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM33_SECURE>: 405 IAR/ARM_CM33/secure/secure_context_port_asm.s 406 IAR/ARM_CM33/secure/secure_context.c 407 IAR/ARM_CM33/secure/secure_heap.c 408 IAR/ARM_CM33/secure/secure_init.c> 409 410 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM33_NTZ_NONSECURE>: 411 IAR/ARM_CM33_NTZ/non_secure/port.c 412 IAR/ARM_CM33_NTZ/non_secure/portasm.s> 413 414 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM35P_NONSECURE>: 415 IAR/ARM_CM35P/non_secure/port.c 416 IAR/ARM_CM35P/non_secure/portasm.s> 417 418 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM35P_SECURE>: 419 IAR/ARM_CM35P/secure/secure_context_port_asm.s 420 IAR/ARM_CM35P/secure/secure_context.c 421 IAR/ARM_CM35P/secure/secure_heap.c 422 IAR/ARM_CM35P/secure/secure_init.c> 423 424 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM35P_NTZ_NONSECURE>: 425 IAR/ARM_CM35P_NTZ/non_secure/port.c 426 IAR/ARM_CM35P_NTZ/non_secure/portasm.s> 427 428 # ARMv8.1-M ports for IAR EWARM 429 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM55_NONSECURE>: 430 IAR/ARM_CM55/non_secure/port.c 431 IAR/ARM_CM55/non_secure/portasm.s> 432 433 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM55_SECURE>: 434 IAR/ARM_CM55/secure/secure_context_port_asm.s 435 IAR/ARM_CM55/secure/secure_context.c 436 IAR/ARM_CM55/secure/secure_heap.c 437 IAR/ARM_CM55/secure/secure_init.c> 438 439 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM55_NTZ_NONSECURE>: 440 IAR/ARM_CM55_NTZ/non_secure/port.c 441 IAR/ARM_CM55_NTZ/non_secure/portasm.s> 442 443 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM85_NONSECURE>: 444 IAR/ARM_CM85/non_secure/port.c 445 IAR/ARM_CM85/non_secure/portasm.s> 446 447 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM85_SECURE>: 448 IAR/ARM_CM85/secure/secure_context_port_asm.s 449 IAR/ARM_CM85/secure/secure_context.c 450 IAR/ARM_CM85/secure/secure_heap.c 451 IAR/ARM_CM85/secure/secure_init.c> 452 453 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM85_NTZ_NONSECURE>: 454 IAR/ARM_CM85_NTZ/non_secure/port.c 455 IAR/ARM_CM85_NTZ/non_secure/portasm.s> 456 457 # ARMv7-R Ports for IAR EWARM 458 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CRX_NOGIC>: 459 IAR/ARM_CRx_No_GIC/port.c 460 IAR/ARM_CRx_No_GIC/portASM.s> 461 462 # Microchip (formerly Atmel) AVR8 ports for IAR EWAVR 463 $<$<STREQUAL:${FREERTOS_PORT},IAR_ATMEGA323>: 464 IAR/ATMega323/port.c 465 IAR/ATMega323/portmacro.s90> 466 467 $<$<STREQUAL:${FREERTOS_PORT},IAR_AVR_AVRDX>: 468 IAR/AVR_AVRDx/port.c 469 IAR/AVR_AVRDx/portmacro.s90> 470 471 $<$<STREQUAL:${FREERTOS_PORT},IAR_AVR_MEGA0>: 472 IAR/AVR_Mega0/port.c 473 IAR/AVR_Mega0/portmacro.s90> 474 475 # Microchip (formerly Atmel) AVR32 port for IAR Embedded Workbench for AVR32 476 $<$<STREQUAL:${FREERTOS_PORT},IAR_AVR32_UC3>: 477 IAR/AVR32_UC3/exception.s82 478 IAR/AVR32_UC3/port.c 479 IAR/AVR32_UC3/read.c 480 IAR/AVR32_UC3/write.c> 481 482 # Texas Instruments MSP430 ports for IAR Embedded Workbench for MSP430 483 $<$<STREQUAL:${FREERTOS_PORT},IAR_MSP430>: 484 IAR/MSP430/port.c 485 IAR/MSP430/portext.s43> 486 487 $<$<STREQUAL:${FREERTOS_PORT},IAR_MSP430X>: 488 IAR/MSP430X/port.c 489 IAR/MSP430X/portext.s43> 490 491 # RISC-V architecture port for IAR Embedded Workbench for RISC-V 492 $<$<STREQUAL:${FREERTOS_PORT},IAR_RISC_V>: 493 IAR/RISC-V/port.c 494 IAR/RISC-V/portASM.s> 495 496 # Renesas RL78 port for IAR EWRL78 497 $<$<STREQUAL:${FREERTOS_PORT},IAR_RL78>: 498 IAR/RL78/port.c 499 IAR/RL78/portasm.s87> 500 501 # Renesas RX architecture ports for IAR EWRX 502 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX100>: 503 IAR/RX100/port.c 504 IAR/RX100/port_asm.s> 505 506 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX600>: 507 IAR/RX600/port.c 508 IAR/RX600/port_asm.s> 509 510 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX700_V3_DPFPU>: 511 IAR/RX700v3_DPFPU/port.c> 512 513 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX_V2>: 514 IAR/RXv2/port.c 515 IAR/RXv2/port_asm.s> 516 517 # Renesas (formerly NEC) V850ES port for IAR EWV850 518 $<$<STREQUAL:${FREERTOS_PORT},IAR_V850ES_FX3>: 519 IAR/V850ES/port.c 520 IAR/V850ES/portasm_Fx3.s85> 521 522 $<$<STREQUAL:${FREERTOS_PORT},IAR_V850ES_HX3>: 523 IAR/V850ES/port.c 524 IAR/V850ES/portasm_Hx2.s85> 525 526 # ARMv4T ARM7TDMI ports for IAR Embedded Workbench for ARM 527 $<$<STREQUAL:${FREERTOS_PORT},IAR_STR71X>: 528 IAR/STR71x/port.c 529 IAR/STR71x/portasm.s79> 530 531 $<$<STREQUAL:${FREERTOS_PORT},IAR_STR75X>: 532 IAR/STR75x/port.c 533 IAR/STR75x/portasm.s79> 534 535 $<$<STREQUAL:${FREERTOS_PORT},IAR_LPC2000>: 536 IAR/LPC2000/port.c 537 IAR/LPC2000/portasm.s79> 538 539 $<$<STREQUAL:${FREERTOS_PORT},IAR_ATMEL_SAM7S64>: 540 IAR/AtmelSAM7S64/port.c 541 IAR/AtmelSAM7S64/portasm.s79> 542 543 # ARMv5TE ARM926 ports for IAR Embedded Workbench for ARM 544 $<$<STREQUAL:${FREERTOS_PORT},IAR_STR91X>: 545 IAR/STR91x/port.c 546 IAR/STR91x/portasm.s79> 547 548 $<$<STREQUAL:${FREERTOS_PORT},IAR_ATMEL_SAM9XE>: 549 IAR/AtmelSAM9XE/port.c 550 IAR/AtmelSAM9XE/portasm.s79> 551 552 # ARM Cortex-M4F port for the MikroElektronika MikroC compiler 553 $<$<STREQUAL:${FREERTOS_PORT},MIKROC_ARM_CM4F>: 554 MikroC/ARM_CM4F/port.c> 555 556 # Microchip PIC18 8-bit MCU port for MPLAB XC8 557 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC18F>: 558 MPLAB/PIC18F/port.c> 559 560 # Microchip PIC24 16-bit MCU port for MPLAB XC16 561 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC24>: 562 MPLAB/PIC24_dsPIC/port.c 563 MPLAB/PIC24_dsPIC/portasm_PIC24.S> # TODO: What to do with portasm_dsPIC.S ? 564 565 # Microchip MIPS 32-Bit MCU ports for MPLAB XC32 566 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC32MEC14XX>: 567 MPLAB/PIC32MEC14xx/port.c 568 MPLAB/PIC32MEC14xx/port_asm.S> 569 570 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC32MX>: 571 MPLAB/PIC32MX/port.c 572 MPLAB/PIC32MX/port_asm.S> 573 574 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC32MZ>: 575 MPLAB/PIC32MZ/port.c 576 MPLAB/PIC32MZ/port_asm.S> 577 578 # Windows Simulator for Microsoft Visual C Compiler and MinGW GCC 579 $<$<STREQUAL:${FREERTOS_PORT},MSVC_MINGW>: 580 MSVC-MingW/port.c> 581 582 # 16 bit DOS ports for Open Watcom 583 $<$<STREQUAL:${FREERTOS_PORT},OWATCOM_16BIT_DOS_FLSH186>: 584 oWatcom/16BitDOS/common/portcomn.c 585 oWatcom/16BitDOS/Flsh186/port.c> 586 587 $<$<STREQUAL:${FREERTOS_PORT},OWATCOM_16BIT_DOS_PC>: 588 oWatcom/16BitDOS/common/portcomn.c 589 oWatcom/16BitDOS/PC/port.c> 590 591 $<$<STREQUAL:${FREERTOS_PORT},PARADIGM_TERN_EE_LARGE>: 592 Paradigm/Tern_EE/large_untested/port.c> 593 594 $<$<STREQUAL:${FREERTOS_PORT},PARADIGM_TERN_EE_SMALL>: 595 Paradigm/Tern_EE/small/port.c> 596 597 # Renesas RX mcu ports for Renesas CC-RX 598 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX100>: 599 Renesas/RX100/port.c 600 Renesas/RX100/port_asm.src> 601 602 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX200>: 603 Renesas/RX200/port.c 604 Renesas/RX200/port_asm.src> 605 606 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX600>: 607 Renesas/RX600/port.c 608 Renesas/RX600/port_asm.src> 609 610 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX600_V2>: 611 Renesas/RX600v2/port.c 612 Renesas/RX600v2/port_asm.src> 613 614 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX700_V3_DPFPU>: 615 Renesas/RX700v3_DPFPU/port.c 616 Renesas/RX700v3_DPFPU/port_asm.src> 617 618 # Renesas (formerly Hitach) SHA2 SuperH port for the Renesas SH C Compiler 619 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_SH2A_FPU>: 620 Renesas/SH2A_FPU/port.c 621 Renesas/SH2A_FPU/portasm.src> 622 623 # Texas Instruments MSP430 port for Rowley CrossWorks 624 $<$<STREQUAL:${FREERTOS_PORT},ROWLEY_MSP430F449>: 625 Rowley/MSP430F449/port.c 626 Rowley/MSP430F449/portext.asm> 627 628 # ARMv7-A Cortex-A9 port for ARM RVDS / armcc 629 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CA9>: 630 RVDS/ARM_CA9/port.c 631 RVDS/ARM_CA9/portASM.s> 632 633 # ARMv6-M port for ARM RVDS / armcc 634 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM0>: 635 RVDS/ARM_CM0/port.c> 636 637 # ARMv7-M port for ARM RVDS / armcc 638 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM3>: 639 RVDS/ARM_CM3/port.c> 640 641 # ARMv7E-M ports for ARM RVDS / armcc 642 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM4_MPU>: 643 RVDS/ARM_CM4_MPU/port.c> 644 645 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM4F>: 646 RVDS/ARM_CM4F/port.c> 647 648 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM7>: 649 RVDS/ARM_CM7/r0p1/port.c> 650 651 # ARMv4T / ARM7TDMI LPC21XX port for ARM RVDS / armcc 652 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM7_LPC21XX>: 653 RVDS/ARM7_LPC21xx/port.c 654 RVDS/ARM7_LPC21xx/portASM.s> 655 656 # Cygnal c8051 port for SDCC (Small Device C Compiler) 657 $<$<STREQUAL:${FREERTOS_PORT},SDCC_CYGNAL>: 658 SDCC/Cygnal/port.c> 659 660 # Infineon (formerly Fujitsu, Spansion, Cypress) MB9x ports for Softune C Compiler 661 $<$<STREQUAL:${FREERTOS_PORT},SOFTUNE_MB91460>: 662 Softune/MB91460/__STD_LIB_sbrk.c 663 Softune/MB91460/port.c> 664 665 $<$<STREQUAL:${FREERTOS_PORT},SOFTUNE_MB96340>: 666 Softune/MB96340/__STD_LIB_sbrk.c 667 Softune/MB96340/port.c> 668 669 # ARMv7E-M (Cortex-M4F) port for TASKING VX-toolset for ARM 670 $<$<STREQUAL:${FREERTOS_PORT},TASKING_ARM_CM4F>: 671 Tasking/ARM_CM4F/port.c 672 Tasking/ARM_CM4F/port_asm.asm> 673 674 # Port for C-SKY T-HEAD CK802 675 $<$<STREQUAL:${FREERTOS_PORT},CDK_THEAD_CK802>: 676 ThirdParty/CDK/T-HEAD_CK802/port.c 677 ThirdParty/CDK/T-HEAD_CK802/portasm.S> 678 679 # Tensilica Xtensa port for XCC 680 $<$<STREQUAL:${FREERTOS_PORT},XCC_XTENSA>: 681 ThirdParty/XCC/Xtensa/port.c 682 ThirdParty/XCC/Xtensa/portasm.S 683 ThirdParty/XCC/Xtensa/portclib.c 684 ThirdParty/XCC/Xtensa/xtensa_context.S 685 ThirdParty/XCC/Xtensa/xtensa_init.c 686 ThirdParty/XCC/Xtensa/xtensa_intr_asm.S 687 ThirdParty/XCC/Xtensa/xtensa_intr.c 688 ThirdParty/XCC/Xtensa/xtensa_overlay_os_hook.c 689 ThirdParty/XCC/Xtensa/xtensa_vectors.S> 690 691 # Microchip PIC18 port for WIZ-C 692 $<$<STREQUAL:${FREERTOS_PORT},WIZC_PIC18>: 693 WizC/PIC18/port.c 694 WizC/PIC18/Drivers/Tick/isrTick.c 695 WizC/PIC18/Drivers/Tick/Tick.c> 696) 697 698if( FREERTOS_PORT MATCHES "GCC_ARM_CM(3|4)_MPU" OR 699 FREERTOS_PORT STREQUAL "IAR_ARM_CM4F_MPU" OR 700 FREERTOS_PORT STREQUAL "RVDS_ARM_CM4_MPU" OR 701 FREERTOS_PORT MATCHES "GCC_ARM_CM(23|33|55|85)_NTZ_NONSECURE" OR 702 FREERTOS_PORT MATCHES "GCC_ARM_CM(23|33|55|85)_NONSECURE" OR 703 FREERTOS_PORT MATCHES "GCC_ARM_CM(33|55|85)_TFM" OR 704 FREERTOS_PORT MATCHES "IAR_ARM_CM(23|33|55|85)_NTZ_NONSECURE" OR 705 FREERTOS_PORT MATCHES "IAR_ARM_CM(23|33|55|85)_NONSECURE" 706) 707 target_sources(freertos_kernel_port PRIVATE Common/mpu_wrappers.c) 708endif() 709 710target_include_directories(freertos_kernel_port PUBLIC 711 # 16-Bit DOS ports for BCC 712 $<$<STREQUAL:${FREERTOS_PORT},BCC_16BIT_DOS_FLSH186>: 713 ${CMAKE_CURRENT_LIST_DIR}/BCC/16BitDOS/common 714 ${CMAKE_CURRENT_LIST_DIR}/BCC/16BitDOS/Flsh186> 715 716 $<$<STREQUAL:${FREERTOS_PORT},BCC_16BIT_DOS_PC>: 717 ${CMAKE_CURRENT_LIST_DIR}/BCC/16BitDOS/common 718 ${CMAKE_CURRENT_LIST_DIR}/BCC/16BitDOS/PC> 719 720 # ARMv7-M port for Texas Instruments Code Composer Studio 721 $<$<STREQUAL:${FREERTOS_PORT},CCS_ARM_CM3>:${CMAKE_CURRENT_LIST_DIR}/CCS/ARM_CM3> 722 723 # ARMv7E-M port for Texas Instruments Code Composer Studio 724 $<$<STREQUAL:${FREERTOS_PORT},CCS_ARM_CM4F>:${CMAKE_CURRENT_LIST_DIR}/CCS/ARM_CM4F> 725 726 # ARMv7-R port for Texas Instruments Code Composer Studio 727 $<$<STREQUAL:${FREERTOS_PORT},CCS_ARM_CR4>:${CMAKE_CURRENT_LIST_DIR}/CCS/ARM_Cortex-R4> 728 729 # Texas Instruments MSP430 port for Texas Instruments Code Composer Studio 730 $<$<STREQUAL:${FREERTOS_PORT},CCS_MSP430X>:${CMAKE_CURRENT_LIST_DIR}/CCS/MSP430X> 731 732 # NXP (formerly Motorola, Freescale) Cold Fire and 68HCS12 ports for Code Warrior 733 $<$<STREQUAL:${FREERTOS_PORT},CODEWARRIOR_COLDFIRE_V1>:${CMAKE_CURRENT_LIST_DIR}/CodeWarrior/ColdFire_V1> 734 $<$<STREQUAL:${FREERTOS_PORT},CODEWARRIOR_COLDFIRE_V2>:${CMAKE_CURRENT_LIST_DIR}/CodeWarrior/ColdFire_V2> 735 $<$<STREQUAL:${FREERTOS_PORT},CODEWARRIOR_HCS12>:${CMAKE_CURRENT_LIST_DIR}/CodeWarrior/HCS12> 736 737 # ARMv7-A port for GCC 738 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CA9>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CA9> 739 740 # ARMv8-A ports for GCC 741 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CA53_64_BIT>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CA53_64_BIT> 742 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CA53_64_BIT_SRE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CA53_64_BIT_SRE> 743 744 # ARMv6-M port for GCC 745 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM0>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM0> 746 747 # ARMv6-M / Cortex-M0 Raspberry PI RP2040 port for GCC 748 $<$<STREQUAL:${FREERTOS_PORT},GCC_RP2040>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/RP2040/include> 749 750 # ARMv7-M ports for GCC 751 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM3>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM3> 752 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM3_MPU>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM3_MPU> 753 754 # ARMv7E-M ports for GCC 755 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM4_MPU>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM4_MPU> 756 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM4F>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM4F> 757 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM7>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM7/r0p1> 758 759 # ARMv8-M ports for GCC 760 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM23_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM23/non_secure> 761 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM23_SECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM23/secure> 762 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM23_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM23_NTZ/non_secure> 763 764 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM33/non_secure> 765 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_SECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM33/secure> 766 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM33_NTZ/non_secure> 767 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM33_TFM>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM33_NTZ/non_secure> 768 769 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM35P_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM35P/non_secure> 770 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM35P_SECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM35P/secure> 771 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM35P_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM35P_NTZ/non_secure> 772 773 # ARMv8.1-M ports for GCC 774 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM55/non_secure> 775 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_SECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM55/secure> 776 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM55_NTZ/non_secure> 777 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM55_TFM>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM85_NTZ/non_secure> 778 779 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM85/non_secure> 780 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_SECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM85/secure> 781 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM85_NTZ/non_secure> 782 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CM85_TFM>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CM85_NTZ/non_secure> 783 784 # ARMv7-R ports for GCC 785 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CR5>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CR5> 786 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM_CRX_NOGIC>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM_CRx_No_GIC> 787 788 # ARMv4T ARM7TDMI ports for GCC 789 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_AT91FR40008>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM7_AT91FR40008> 790 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_AT91SAM7S>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM7_AT91SAM7S> 791 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_LPC2000>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM7_LPC2000> 792 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARM7_LPC23XX>:${CMAKE_CURRENT_LIST_DIR}/GCC/ARM7_LPC23xx> 793 $<$<STREQUAL:${FREERTOS_PORT},GCC_STR75X>:${CMAKE_CURRENT_LIST_DIR}/GCC/STR75x> 794 795 # Microchip (formerly Ateml) AVR8 ports for GCC 796 $<$<STREQUAL:${FREERTOS_PORT},GCC_ATMEGA323>:${CMAKE_CURRENT_LIST_DIR}/GCC/ATMega323> 797 $<$<STREQUAL:${FREERTOS_PORT},GCC_ATMEGA>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/ATmega> 798 $<$<STREQUAL:${FREERTOS_PORT},GCC_AVRDX>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/Partner-Supported-Ports/GCC/AVR_AVRDx> 799 $<$<STREQUAL:${FREERTOS_PORT},GCC_AVR_MEGA0>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/Partner-Supported-Ports/GCC/AVR_Mega0> 800 801 # Microchip (formerly Ateml) AVR32 port for GCC 802 $<$<STREQUAL:${FREERTOS_PORT},GCC_AVR32_UC3>:${CMAKE_CURRENT_LIST_DIR}/GCC/AVR32_UC3> 803 804 # NXP (formerly Motorola, Freescale) Cold Fire and 68HCS12 ports for GCC 805 $<$<STREQUAL:${FREERTOS_PORT},GCC_COLDFIRE_V2>:${CMAKE_CURRENT_LIST_DIR}/GCC/ColdFire_V2> 806 $<$<STREQUAL:${FREERTOS_PORT},GCC_HCS12>:${CMAKE_CURRENT_LIST_DIR}/GCC/HCS12> 807 808 # Cortus APS3 soft core port for GCC 809 $<$<STREQUAL:${FREERTOS_PORT},GCC_CORTUS_APS3>:${CMAKE_CURRENT_LIST_DIR}/GCC/CORTUS_APS3> 810 811 # Renesas (formerly Hitach) H8S port for GCC 812 $<$<STREQUAL:${FREERTOS_PORT},GCC_H8S2329>:${CMAKE_CURRENT_LIST_DIR}/GCC/H8S2329> 813 814 # x86 / IA32 flat memory model port for GCC 815 $<$<STREQUAL:${FREERTOS_PORT},GCC_IA32_FLAT>:${CMAKE_CURRENT_LIST_DIR}/GCC/IA32_flat> 816 817 # Intel (formerly Altera) NIOS II soft core port for GCC 818 $<$<STREQUAL:${FREERTOS_PORT},GCC_NIOSII>:${CMAKE_CURRENT_LIST_DIR}/GCC/NiosII> 819 820 # Texas Instruments MSP430 port for GCC 821 $<$<STREQUAL:${FREERTOS_PORT},GCC_MSP430F449>:${CMAKE_CURRENT_LIST_DIR}/GCC/MSP430F449> 822 823 # Xilinx MicroBlaze soft core ports for GCC 824 $<$<STREQUAL:${FREERTOS_PORT},GCC_MICROBLAZE>:${CMAKE_CURRENT_LIST_DIR}/GCC/MicroBlaze> 825 $<$<STREQUAL:${FREERTOS_PORT},GCC_MICROBLAZE_V8>:${CMAKE_CURRENT_LIST_DIR}/GCC/MicroBlazeV8> 826 $<$<STREQUAL:${FREERTOS_PORT},GCC_MICROBLAZE_V9>:${CMAKE_CURRENT_LIST_DIR}/GCC/MicroBlazeV9> 827 828 # Xilinx PCC4XX soft core ports for GCC 829 $<$<STREQUAL:${FREERTOS_PORT},GCC_PPC405_XILINX>:${CMAKE_CURRENT_LIST_DIR}/GCC/PPC405_Xilinx> 830 $<$<STREQUAL:${FREERTOS_PORT},GCC_PPC440_XILINX>:${CMAKE_CURRENT_LIST_DIR}/GCC/PPC440_Xilinx> 831 832 # RISC-V architecture ports for GCC 833 $<$<STREQUAL:${FREERTOS_PORT},GCC_RISC_V>: 834 ${CMAKE_CURRENT_LIST_DIR}/GCC/RISC-V 835 ${CMAKE_CURRENT_LIST_DIR}/GCC/RISC-V/chip_specific_extensions/RISCV_MTIME_CLINT_no_extensions> 836 837 $<$<STREQUAL:${FREERTOS_PORT},GCC_RISC_V_PULPINO_VEGA_RV32M1RM>: 838 ${CMAKE_CURRENT_LIST_DIR}/GCC/RISC-V 839 ${CMAKE_CURRENT_LIST_DIR}/GCC/RISC-V/chip_specific_extensions/Pulpino_Vega_RV32M1RM> 840 841 # Renesas RL78 port for GCC 842 $<$<STREQUAL:${FREERTOS_PORT},GCC_RL78>:${CMAKE_CURRENT_LIST_DIR}/GCC/RL78> 843 844 # Renesas RX architecture ports for GCC 845 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX100>:${CMAKE_CURRENT_LIST_DIR}/GCC/RX100> 846 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX200>:${CMAKE_CURRENT_LIST_DIR}/GCC/RX200> 847 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX600>:${CMAKE_CURRENT_LIST_DIR}/GCC/RX600> 848 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX600_V2>:${CMAKE_CURRENT_LIST_DIR}/GCC/RX600v2> 849 $<$<STREQUAL:${FREERTOS_PORT},GCC_RX700_V3_DPFPU>:${CMAKE_CURRENT_LIST_DIR}/GCC/RX700v3_DPFPU> 850 851 # Infineon TriCore 1782 port for GCC 852 $<$<STREQUAL:${FREERTOS_PORT},GCC_TRICORE_1782>:${CMAKE_CURRENT_LIST_DIR}/GCC/TriCore_1782> 853 854 # Synopsys ARC architecture ports for GCC 855 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARC_EM_HS>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/ARC_EM_HS> 856 $<$<STREQUAL:${FREERTOS_PORT},GCC_ARC_V1>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/ARC_v1> 857 858 # Posix Simulator port for GCC 859 $<$<STREQUAL:${FREERTOS_PORT},GCC_POSIX>: 860 ${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/Posix 861 ${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/Posix/utils> 862 863 # Xtensa LX / Espressif ESP32 port for GCC 864 $<$<STREQUAL:${FREERTOS_PORT},GCC_XTENSA_ESP32>: 865 ${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/Xtensa_ESP32 866 ${CMAKE_CURRENT_LIST_DIR}/ThirdParty/GCC/Xtensa_ESP32/include> 867 868 # Renesas (formerly NEC) 78K port for IAR EW78K 869 $<$<STREQUAL:${FREERTOS_PORT},IAR_78K0K>:${CMAKE_CURRENT_LIST_DIR}/IAR/78K0R> 870 871 # ARMv7-A ports for IAR EWARM 872 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CA5_NOGIC>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CA5_No_GIC> 873 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CA9>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CA9> 874 875 # ARMv6-M port for IAR EWARM 876 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM0>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM0> 877 878 # ARMv7-M port for IAR EWARM 879 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM3>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM3> 880 881 # ARMv7E-M ports for IAR EWARM 882 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM4F>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM4F> 883 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM4F_MPU>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM4F_MPU> 884 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM7>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM7/r0p1> 885 886 # ARMv8-M Ports for IAR EWARM 887 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM23_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM23/non_secure> 888 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM23_SECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM23/secure> 889 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM23_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM23_NTZ/non_secure> 890 891 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM33_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM33/non_secure> 892 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM33_SECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM33/secure> 893 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM33_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM33_NTZ/non_secure> 894 895 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM35P_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM35P/non_secure> 896 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM35P_SECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM35P/secure> 897 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM35P_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM35P_NTZ/non_secure> 898 899 # ARMv8.1-M ports for IAR EWARM 900 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM55_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM55/non_secure> 901 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM55_SECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM55/secure> 902 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM55_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM55_NTZ/non_secure> 903 904 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM85_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM85/non_secure> 905 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM85_SECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM85/secure> 906 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CM85_NTZ_NONSECURE>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CM85_NTZ/non_secure> 907 908 # ARMv7-R Ports for IAR EWARM 909 $<$<STREQUAL:${FREERTOS_PORT},IAR_ARM_CRX_NOGIC>:${CMAKE_CURRENT_LIST_DIR}/IAR/ARM_CRx_No_GIC> 910 911 # ARMv4T ARM7TDMI ports for IAR Embedded Workbench for ARM 912 $<$<STREQUAL:${FREERTOS_PORT},IAR_STR71X>:${CMAKE_CURRENT_LIST_DIR}/IAR/STR71x> 913 $<$<STREQUAL:${FREERTOS_PORT},IAR_STR75X>:${CMAKE_CURRENT_LIST_DIR}/IAR/STR75x> 914 $<$<STREQUAL:${FREERTOS_PORT},IAR_LPC2000>:${CMAKE_CURRENT_LIST_DIR}/IAR/LPC2000> 915 $<$<STREQUAL:${FREERTOS_PORT},IAR_ATMEL_SAM7S64>:${CMAKE_CURRENT_LIST_DIR}/IAR/AtmelSAM7S64> 916 917 # ARMv5TE ARM926 ports for IAR Embedded Workbench for ARM 918 $<$<STREQUAL:${FREERTOS_PORT},IAR_STR91X>:${CMAKE_CURRENT_LIST_DIR}/IAR/STR91x> 919 $<$<STREQUAL:${FREERTOS_PORT},IAR_ATMEL_SAM9XE>:${CMAKE_CURRENT_LIST_DIR}/IAR/AtmelSAM9XE> 920 921 # Microchip (formerly Atmel) AVR8 ports for IAR EWAVR 922 $<$<STREQUAL:${FREERTOS_PORT},IAR_ATMEGA323>:${CMAKE_CURRENT_LIST_DIR}/IAR/ATMega323> 923 $<$<STREQUAL:${FREERTOS_PORT},IAR_AVR_AVRDX>:${CMAKE_CURRENT_LIST_DIR}/IAR/AVR_AVRDx> 924 $<$<STREQUAL:${FREERTOS_PORT},IAR_AVR_MEGA0>:${CMAKE_CURRENT_LIST_DIR}/IAR/AVR_Mega0> 925 926 # Microchip (formerly Atmel) AVR32 port for IAR Embedded Workbench for AVR32 927 $<$<STREQUAL:${FREERTOS_PORT},IAR_AVR32_UC3>:${CMAKE_CURRENT_LIST_DIR}/IAR/AVR32_UC3> 928 929 # Texas Instruments MSP430 ports for IAR Embedded Workbench for MSP430 930 $<$<STREQUAL:${FREERTOS_PORT},IAR_MSP430>:${CMAKE_CURRENT_LIST_DIR}/IAR/MSP430> 931 $<$<STREQUAL:${FREERTOS_PORT},IAR_MSP430X>:${CMAKE_CURRENT_LIST_DIR}/IAR/MSP430X> 932 933 # RISC-V architecture port for IAR Embedded Workbench for RISC-V 934 $<$<STREQUAL:${FREERTOS_PORT},IAR_RISC_V>: 935 ${CMAKE_CURRENT_LIST_DIR}/IAR/RISC-V 936 ${CMAKE_CURRENT_LIST_DIR}/IAR/RISC-V/chip_specific_extensions/RV32I_CLINT_no_extensions> 937 938 # Renesas RL78 port for IAR EWRL78 939 $<$<STREQUAL:${FREERTOS_PORT},IAR_RL78>:${CMAKE_CURRENT_LIST_DIR}/IAR/RL78> 940 941 # Renesas RX architecture ports for IAR EWRX 942 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX100>:${CMAKE_CURRENT_LIST_DIR}/IAR/RX100> 943 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX600>:${CMAKE_CURRENT_LIST_DIR}/IAR/RX600> 944 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX700_V3_DPFPU>:${CMAKE_CURRENT_LIST_DIR}/IAR/RX700v3_DPFPU> 945 $<$<STREQUAL:${FREERTOS_PORT},IAR_RX_V2>:${CMAKE_CURRENT_LIST_DIR}/IAR/RXv2> 946 947 # Renesas (formerly NEC) V850ES port for IAR EWV850 948 $<$<STREQUAL:${FREERTOS_PORT},IAR_V850ES_FX3>:${CMAKE_CURRENT_LIST_DIR}/IAR/V850ES> 949 $<$<STREQUAL:${FREERTOS_PORT},IAR_V850ES_HX3>:${CMAKE_CURRENT_LIST_DIR}/IAR/V850ES> 950 951 # ARM Cortex-M4F port for the MikroElektronika MikroC compiler 952 $<$<STREQUAL:${FREERTOS_PORT},MIKROC_ARM_CM4F>:${CMAKE_CURRENT_LIST_DIR}/MikroC/ARM_CM4F> 953 954 # Microchip PIC18 8-bit MCU port for MPLAB XC8 955 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC18F>:${CMAKE_CURRENT_LIST_DIR}/MPLAB/PIC18F> 956 957 # Microchip PIC24 16-bit MCU port for MPLAB XC16 958 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC24>:${CMAKE_CURRENT_LIST_DIR}/MPLAB/PIC24_dsPIC> 959 960 # Microchip MIPS 32-Bit MCU ports for MPLAB XC32 961 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC32MEC14XX>:${CMAKE_CURRENT_LIST_DIR}/MPLAB/PIC32MEC14xx> 962 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC32MX>:${CMAKE_CURRENT_LIST_DIR}/MPLAB/PIC32MX> 963 $<$<STREQUAL:${FREERTOS_PORT},MPLAB_PIC32MZ>:${CMAKE_CURRENT_LIST_DIR}/MPLAB/PIC32MZ> 964 965 # Windows Simulator for Microsoft Visual C Compiler and MinGW GCC 966 $<$<STREQUAL:${FREERTOS_PORT},MSVC_MINGW>:${CMAKE_CURRENT_LIST_DIR}/MSVC-MingW> 967 968 # 16 bit DOS ports for Open Watcom 969 $<$<STREQUAL:${FREERTOS_PORT},OWATCOM_16BIT_DOS_FLSH186>: 970 ${CMAKE_CURRENT_LIST_DIR}/oWatcom/16BitDOS/common 971 ${CMAKE_CURRENT_LIST_DIR}/oWatcom/16BitDOS/Flsh186> 972 $<$<STREQUAL:${FREERTOS_PORT},OWATCOM_16BIT_DOS_PC>: 973 ${CMAKE_CURRENT_LIST_DIR}/oWatcom/16BitDOS/common 974 ${CMAKE_CURRENT_LIST_DIR}/oWatcom/16BitDOS/PC> 975 976 $<$<STREQUAL:${FREERTOS_PORT},PARADIGM_TERN_EE_LARGE>:${CMAKE_CURRENT_LIST_DIR}/Paradigm/Tern_EE/large_untested> 977 $<$<STREQUAL:${FREERTOS_PORT},PARADIGM_TERN_EE_SMALL>:${CMAKE_CURRENT_LIST_DIR}/Paradigm/Tern_EE/small> 978 979 # Renesas RX mcu ports for Renesas CC-RX 980 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX100>:${CMAKE_CURRENT_LIST_DIR}/Renesas/RX100> 981 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX200>:${CMAKE_CURRENT_LIST_DIR}/Renesas/RX200> 982 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX600>:${CMAKE_CURRENT_LIST_DIR}/Renesas/RX600> 983 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX600_V2>:${CMAKE_CURRENT_LIST_DIR}/Renesas/RX600v2> 984 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_RX700_V3_DPFPU>:${CMAKE_CURRENT_LIST_DIR}/Renesas/RX700v3_DPFPU> 985 986 # Renesas (formerly Hitach) SHA2 SuperH port for the Renesas SH C Compiler 987 $<$<STREQUAL:${FREERTOS_PORT},RENESAS_SH2A_FPU>:${CMAKE_CURRENT_LIST_DIR}/Renesas/SH2A_FPU> 988 989 # Texas Instruments MSP430 port for Rowley CrossWorks 990 $<$<STREQUAL:${FREERTOS_PORT},ROWLEY_MSP430F449>:${CMAKE_CURRENT_LIST_DIR}/Rowley/MSP430F449> 991 992 # ARMv7-A Cortex-A9 port for ARM RVDS / armcc 993 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CA9>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM_CA9> 994 995 # ARMv6-M port for ARM RVDS / armcc 996 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM0>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM_CM0> 997 998 # ARMv7-M port for ARM RVDS / armcc 999 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM3>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM_CM3> 1000 1001 # ARMv7E-M ports for ARM RVDS / armcc 1002 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM4_MPU>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM_CM4_MPU> 1003 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM4F>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM_CM4F> 1004 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM_CM7>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM_CM7/r0p1> 1005 1006 # ARMv4T / ARM7TDMI LPC21XX port for ARM RVDS / armcc 1007 $<$<STREQUAL:${FREERTOS_PORT},RVDS_ARM7_LPC21XX>:${CMAKE_CURRENT_LIST_DIR}/RVDS/ARM7_LPC21xx> 1008 1009 # Cygnal c8051 port for SDCC (Small Device C Compiler) 1010 $<$<STREQUAL:${FREERTOS_PORT},SDCC_CYGNAL>:${CMAKE_CURRENT_LIST_DIR}/SDCC/Cygnal> 1011 1012 # Infineon (formerly Fujitsu, Spansion, Cypress) MB9x ports for Softune C Compiler 1013 $<$<STREQUAL:${FREERTOS_PORT},SOFTUNE_MB91460>:${CMAKE_CURRENT_LIST_DIR}/Softune/MB91460> 1014 $<$<STREQUAL:${FREERTOS_PORT},SOFTUNE_MB96340>:${CMAKE_CURRENT_LIST_DIR}/Softune/MB96340> 1015 1016 # ARMv7E-M (Cortex-M4F) port for TASKING VX-toolset for ARM 1017 $<$<STREQUAL:${FREERTOS_PORT},TASKING_ARM_CM4F>:${CMAKE_CURRENT_LIST_DIR}/Tasking/ARM_CM4F> 1018 1019 # Port for C-SKY T-HEAD CK802 1020 $<$<STREQUAL:${FREERTOS_PORT},CDK_THEAD_CK802>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/CDK/T-HEAD_CK802> 1021 1022 # Tensilica Xtensa port for XCC 1023 $<$<STREQUAL:${FREERTOS_PORT},XCC_XTENSA>:${CMAKE_CURRENT_LIST_DIR}/ThirdParty/XCC/Xtensa> 1024 1025 # Microchip PIC18 port for WIZ-C 1026 $<$<STREQUAL:${FREERTOS_PORT},WIZC_PIC18>:${CMAKE_CURRENT_LIST_DIR}/WizC/PIC18> 1027) 1028 1029if(FREERTOS_PORT STREQUAL GCC_POSIX) 1030 find_package(Threads REQUIRED) 1031endif() 1032 1033target_link_libraries(freertos_kernel_port 1034 PUBLIC 1035 $<$<STREQUAL:${FREERTOS_PORT},GCC_RP2040>:pico_base_headers> 1036 $<$<STREQUAL:${FREERTOS_PORT},GCC_XTENSA_ESP32>:idf::esp32> 1037 PRIVATE 1038 freertos_kernel_include 1039 $<$<STREQUAL:${FREERTOS_PORT},GCC_POSIX>:Threads::Threads> 1040 "$<$<STREQUAL:${FREERTOS_PORT},GCC_RP2040>:hardware_clocks;hardware_exception>" 1041 $<$<STREQUAL:${FREERTOS_PORT},MSVC_MINGW>:winmm> # Windows library which implements timers 1042) 1043