inherit pkgconfig cmake LICENSE = "Proprietary" LICFILENAME = "license.txt" LIC_FILES_CHKSUM = "file://${S}/${LICFILENAME};md5=39ab6ab638f4d1836ba994ec6852de94" # We should move to an actual SRCREV eventually include conf/xilinx/esw-srcrev.inc SRCREV ?= "${AUTOREV}" PV = "${XILINX_RELEASE_VERSION}+git${SRCPV}" REPO ?= "git://github.com/xilinx/embeddedsw.git;protocol=https" BRANCH ?= "master" SRC_URI = "${REPO};branch=${BRANCH}" SRCREV_FORMAT = "src_decouple" S = "${WORKDIR}/git" B = "${WORKDIR}/build" OECMAKE_SOURCEPATH = "${S}/${ESW_COMPONENT_SRC}" SPECFILE_PATH_arm = "${S}/scripts/specs/arm/Xilinx.spec" SPECFILE_PATH_aarch64 = "${S}/scripts/specs/arm/Xilinx.spec" SPECFILE_PATH_microblaze = "${S}/scripts/specs/microblaze/Xilinx.spec" ESW_CFLAGS += "-specs=${SPECFILE_PATH}" inherit ccmake COMPATIBLE_HOST = ".*-elf" COMPATIBLE_HOST_arm = "[^-]*-[^-]*-eabi" DTBFILE ?= "${RECIPE_SYSROOT}/boot/devicetree/system-top.dtb" def get_xlnx_cmake_machine(fam, d): cmake_machine = fam if (fam == 'zynqmp'): cmake_machine = 'ZynqMP' elif (fam == 'versal'): cmake_machine = 'Versal' elif (fam == 'zynq'): cmake_machine = 'Zynq' return cmake_machine def get_xlnx_cmake_processor(tune, machine, d): cmake_processor = tune if tune.startswith('microblaze'): if (machine == 'microblaze-pmu'): cmake_processor = 'pmu_microblaze' elif (machine == 'microblaze-plm'): cmake_processor = 'plm_microblaze' else: cmake_processor = 'microblaze' elif (tune in [ 'cortexr5', 'cortexr5f' ]): cmake_processor = 'cortexr5' elif tune.startswith('cortexa9'): cmake_processor = 'cortexa9' elif (tune in [ 'cortexa53', 'cortexa72-cortexa53' ]): cmake_processor = 'cortexa53' elif tune == 'cortexa72': cmake_processor = 'cortexa72' return cmake_processor XLNX_CMAKE_MACHINE = "${@get_xlnx_cmake_machine(d.getVar('SOC_FAMILY'), d)}" XLNX_CMAKE_PROCESSOR = "${@get_xlnx_cmake_processor(d.getVar('DEFAULTTUNE'), d.getVar('MACHINE'), d)}" XLNX_CMAKE_SYSTEM_NAME ?= "Generic" cmake_do_generate_toolchain_file_append() { cat >> ${WORKDIR}/toolchain.cmake <