From 05af8c010ea470d271672cc46aa996dbf9732bb0 Mon Sep 17 00:00:00 2001 From: Mark Hatle Date: Sat, 23 Jan 2021 16:35:15 -0600 Subject: Reorganize the various layer components Machines: Move baremetal machines to meta-xilinx-standalone Layers: - Add new meta-xilinx-standalone-experimental This layer may require components that may not yet be available to the general public. It will contain various experiemntal integration work. - meta-xilinx-standalone This layer should be functional and contain the necessary items to build a baremetal toolchain that can use libxil (replacement to libgloss) from the Xilinx embeddedsw components. (Note, libxil is NOT built as part of this work!) The layer also contains the buildable components for the various firmware components required to startup various Xilinx FPGAs. Signed-off-by: Mark Hatle --- .../freertos-lwip-tcp-perf-client_git.bb | 41 ++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb (limited to 'meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb') diff --git a/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb new file mode 100644 index 00000000..eb199d39 --- /dev/null +++ b/meta-xilinx-standalone-experimental/recipes-applications/freertos-lwip-tcp-perf-client/freertos-lwip-tcp-perf-client_git.bb @@ -0,0 +1,41 @@ +inherit esw deploy python3native + +ESW_COMPONENT_SRC = "/lib/sw_apps/freertos_lwip_tcp_perf_client/src/" + +DEPENDS += "dtc-native python3-dtc-native libxil lwip xiltimer device-tree python3-pyyaml-native freertos10-xilinx" + +do_configure_prepend() { + cd ${S} + nativepython3 ${S}/scripts/linker_gen.py -d ${DTBFILE} -o ${OECMAKE_SOURCEPATH} +} + +do_generate_app_data() { + # This script should also not rely on relative paths and such + cd ${S} + nativepython3 ${S}/scripts/lib_parser.py -d ${DTBFILE} -o ${OECMAKE_SOURCEPATH} +} +addtask do_generate_app_data before do_configure after do_prepare_recipe_sysroot +do_prepare_recipe_sysroot[rdeptask] = "do_unpack" + +do_install() { + install -d ${D}/${base_libdir}/firmware + # Note that we have to make the ELF executable for it to be stripped + install -m 0755 ${B}/freertos_lwip_tcp_perf_client* ${D}/${base_libdir}/firmware +} + +FREERTOS_LWIP_TCP_PERF_CLIENT_BASE_NAME ?= "${BPN}-${PKGE}-${PKGV}-${PKGR}-${MACHINE}-${DATETIME}" +FREERTOS_LWIP_TCP_PERF_CLIENT_BASE_NAME[vardepsexclude] = "DATETIME" + +do_deploy() { + + # We need to deploy the stripped elf, hence why not doing it from ${D} + install -Dm 0644 ${WORKDIR}/package/${base_libdir}/firmware/freertos_lwip_tcp_perf_client.elf ${DEPLOYDIR}/${FREERTOS_LWIP_TCP_PERF_CLIENT_BASE_NAME}.elf + ln -sf ${FREERTOS_LWIP_TCP_PERF_CLIENT_BASE_NAME}.elf ${DEPLOYDIR}/${BPN}-${MACHINE}.elf + ${OBJCOPY} -O binary ${WORKDIR}/package/${base_libdir}/firmware/freertos_lwip_tcp_perf_client.elf ${WORKDIR}/package/${base_libdir}/firmware/freertos_lwip_tcp_perf_client.bin + install -m 0644 ${WORKDIR}/package/${base_libdir}/firmware/freertos_lwip_tcp_perf_client.bin ${DEPLOYDIR}/${FREERTOS_LWIP_TCP_PERF_CLIENT_BASE_NAME}.bin + ln -sf ${FREERTOS_LWIP_TCP_PERF_CLIENT_BASE_NAME}.bin ${DEPLOYDIR}/${BPN}-${MACHINE}.bin +} + +addtask deploy before do_build after do_package + +FILES_${PN} = "${base_libdir}/firmware/freertos_lwip_tcp_perf_client*" -- cgit v1.2.3-54-g00ecf