CMAKE_MACHINE and CMAKE_SYSTEM_PROCESSOR - 2025.1 English - UG1647

Porting Guide for embeddedsw Components System Device Tree Based Build Flow (UG1647)

Document ID
UG1647
Release Date
2025-06-11
Version
2025.1 English

To differentiate a platform or a processor specific piece of code in CMAKE, CMAKE_MACHINE and CMAKE_SYSTEM_PROCESSOR variables can be used. A list of available CMAKE_MACHINE values is shown in the following table:

Platform Name CMAKE_MACHINE
AMD Zynq™ 7000 devices Zynq
AMD Zynq™ UltraScale+™ MPSoCs ZynqMP
AMD Versal™ adaptive SoCs Versal
Kintex or MicroBlaze™ boards Name depends on family of the design. It can be kintex7, kintexu, virtex, etc.
VersalNet and Versal 2VE_2VM devices VersalNet

A list of available CMAKE_SUBMACHINE values is shown in the following table:

Platform Name CMAKE_SUBMACHINE
VersalNet devices VersalNet
Versal 2VE and 2VM Devices Versal_2VE_2VM

A list of available CMAKE_SYSTEM_PROCESSOR values is shown in the following table:

Processor Name CMAKE_SYSTEM_PROCESSOR (value)
Soft MicroBlaze microblaze
Soft RISCV MicroBlaze microblaze_riscv
PMU MicroBlaze pmu_microblaze
PSM MicroBlaze microblaze
PLM MicroBlaze plm_microblaze
Arm® Cortex®-A53 cortexa53
Arm Cortex-R5F cortexr5
Arm Cortex-A72 cortexa72
Arm Cortex A9 cortexa9
Arm Cortex-A78 cortexa78
Arm Cortex-R52 cortexr52