From d6ff9d2179b4d8aeb722a0465e0e44169e2ac6f1 Mon Sep 17 00:00:00 2001 From: Jianzhong Xu Date: Mon, 24 Sep 2018 20:59:35 +0000 Subject: dsplib: build DSPLIB C66x/C674x/C64x+ from source Remove DSPLIB recipe that downloads pre-built DSPLIB from ti.com. Add new recipe to build DSPLIB for C66x, C674x, or C64x+ from source code. Signed-off-by: Jianzhong Xu Signed-off-by: Jacob Stiffler Signed-off-by: Denys Dmytriyenko --- recipes-ti/dsplib/dsplib-c64xp_git.bb | 6 +++ recipes-ti/dsplib/dsplib-c66x.inc | 30 ------------- recipes-ti/dsplib/dsplib-c66x_3.4.0.0.bb | 9 ---- recipes-ti/dsplib/dsplib-c66x_git.bb | 8 ++++ recipes-ti/dsplib/dsplib-c674x_git.bb | 8 ++++ recipes-ti/dsplib/dsplib.inc | 73 ++++++++++++++++++++++++++++++++ recipes-ti/includes/ti-paths.inc | 6 +-- 7 files changed, 98 insertions(+), 42 deletions(-) create mode 100644 recipes-ti/dsplib/dsplib-c64xp_git.bb delete mode 100644 recipes-ti/dsplib/dsplib-c66x.inc delete mode 100644 recipes-ti/dsplib/dsplib-c66x_3.4.0.0.bb create mode 100644 recipes-ti/dsplib/dsplib-c66x_git.bb create mode 100644 recipes-ti/dsplib/dsplib-c674x_git.bb create mode 100644 recipes-ti/dsplib/dsplib.inc diff --git a/recipes-ti/dsplib/dsplib-c64xp_git.bb b/recipes-ti/dsplib/dsplib-c64xp_git.bb new file mode 100644 index 00000000..1550a538 --- /dev/null +++ b/recipes-ti/dsplib/dsplib-c64xp_git.bb @@ -0,0 +1,6 @@ +include dsplib.inc + +MATHLIB_INSTALL_DIR = "${MATHLIB_C64P_INSTALL_DIR}/packages" +DSPLIB_INSTALL_DIR_RECIPE = "${DSPLIB_C64P_INSTALL_DIR_RECIPE}" +DSPLIB_INSTALL_DIR = "${DSPLIB_C64P_INSTALL_DIR}" +DSPLIB_BUILD_TARGET = "c64Px" diff --git a/recipes-ti/dsplib/dsplib-c66x.inc b/recipes-ti/dsplib/dsplib-c66x.inc deleted file mode 100644 index 7ff99c2e..00000000 --- a/recipes-ti/dsplib/dsplib-c66x.inc +++ /dev/null @@ -1,30 +0,0 @@ -DESCRIPTION = "DSPLIB contains optimized general-purpose signal-processing routines for TI DSPs" -HOMEPAGE = "http://www.ti.com/tool/sprc265" -SECTION = "devel" -LICENSE = "BSD-3-Clause" - -require ../includes/ti-paths.inc -require ../includes/ti-staging.inc -require ../includes/ti-unpack.inc - -COMPATIBLE_MACHINE = "omap-a15|keystone" - -SRC_URI = "http://software-dl.ti.com/sdoemb/sdoemb_public_sw/dsplib/${PV}/exports/${BINFILE};name=dsplib" - -BINFILE = "dsplib_c66x_${PV}_Linux.bin" -TI_BIN_UNPK_ARGS = "--mode silent --prefix ${S}" -TI_BIN_UNPK_CMDS = "" - -do_install() { - CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership" - install -d ${D}${DSPLIB_C66_INSTALL_DIR_RECIPE} - cp ${CP_ARGS} ${S}/* ${D}${DSPLIB_C66_INSTALL_DIR_RECIPE} -} - -ALLOW_EMPTY_${PN} = "1" -FILES_${PN}-dev += "${DSPLIB_C66_INSTALL_DIR_RECIPE}" - -INHIBIT_PACKAGE_STRIP = "1" -INHIBIT_SYSROOT_STRIP = "1" -INHIBIT_PACKAGE_DEBUG_SPLIT = "1" -INSANE_SKIP_${PN}-dev = "arch" diff --git a/recipes-ti/dsplib/dsplib-c66x_3.4.0.0.bb b/recipes-ti/dsplib/dsplib-c66x_3.4.0.0.bb deleted file mode 100644 index f1273f3b..00000000 --- a/recipes-ti/dsplib/dsplib-c66x_3.4.0.0.bb +++ /dev/null @@ -1,9 +0,0 @@ -require dsplib-c66x.inc - -PV = "3_4_0_0" -PR = "r1" - -LIC_FILES_CHKSUM = "file://packages/ti/dsplib/dsplib.h;beginline=9;endline=35;md5=17733f9e1100f8a628512f47c4bf676a" - -SRC_URI[dsplib.md5sum] = "66785604729c153dcad5282097dee8bf" -SRC_URI[dsplib.sha256sum] = "e88909b6271ce6c4c62e2ab90181b7adb36c7f28f5c52836668eb35888785ce8" diff --git a/recipes-ti/dsplib/dsplib-c66x_git.bb b/recipes-ti/dsplib/dsplib-c66x_git.bb new file mode 100644 index 00000000..b28d8df6 --- /dev/null +++ b/recipes-ti/dsplib/dsplib-c66x_git.bb @@ -0,0 +1,8 @@ +include dsplib.inc + +MATHLIB_INSTALL_DIR = "${MATHLIB_C66_INSTALL_DIR}/packages" +DSPLIB_INSTALL_DIR_RECIPE = "${DSPLIB_C66_INSTALL_DIR_RECIPE}" +DSPLIB_INSTALL_DIR = "${DSPLIB_C66_INSTALL_DIR}" +DSPLIB_BUILD_TARGET = "c66x" + +DEPENDS += "mathlib-c66x" diff --git a/recipes-ti/dsplib/dsplib-c674x_git.bb b/recipes-ti/dsplib/dsplib-c674x_git.bb new file mode 100644 index 00000000..47974ea1 --- /dev/null +++ b/recipes-ti/dsplib/dsplib-c674x_git.bb @@ -0,0 +1,8 @@ +include dsplib.inc + +MATHLIB_INSTALL_DIR = "${MATHLIB_C674_INSTALL_DIR}/packages" +DSPLIB_INSTALL_DIR_RECIPE = "${DSPLIB_C674_INSTALL_DIR_RECIPE}" +DSPLIB_INSTALL_DIR = "${DSPLIB_C674_INSTALL_DIR}" +DSPLIB_BUILD_TARGET = "c674x" + +DEPENDS += "mathlib-c674x" diff --git a/recipes-ti/dsplib/dsplib.inc b/recipes-ti/dsplib/dsplib.inc new file mode 100644 index 00000000..7180c4af --- /dev/null +++ b/recipes-ti/dsplib/dsplib.inc @@ -0,0 +1,73 @@ +SUMMARY = "DSPLIB contains optimized signal processing functions for TI DSPs" +HOMEPAGE = "http://git.ti.com/ep-processor-libraries/dsplib" +LICENSE = "BSD-3-Clause" + +require ../includes/ti-paths.inc + +PV = "3_4_0_1" +PR = "r0" + +DEPENDS = "ti-cgt6x-native \ + ti-xdctools-native \ + ti-sysbios \ + doxygen-native \ + zip-native \ + swtools" + +S = "${WORKDIR}/git" + +SRC_URI = "git://git.ti.com/ep-processor-libraries/dsplib.git;protocol=git;branch=master" +SRCREV = "bf5a51cba462c5cb03ed20a6a1bb1bd16c0683e1" + +LIC_FILES_CHKSUM = "file://ti/dsplib/src/common/c66/lnk.cmd;beginline=1;endline=37;md5=0f0c9c4d51d8af75419781591ace190b" + +export DSPLIB_WORK_DIR="${S}" +export CGTOOLS_INSTALL_DIR = "${STAGING_DIR_NATIVE}/usr/share/ti/cgt-c6x" +export C64PCODEGENTOOL="${CGTOOLS_INSTALL_DIR}" +export C674CODEGENTOOL="${CGTOOLS_INSTALL_DIR}" +export C66CODEGENTOOL ="${CGTOOLS_INSTALL_DIR}" +export SWTOOLS_PATH = "${SWTOOLS_INSTALL_DIR}/ti/mas/swtools" +export XDCBUILDCFG="${SWTOOLS_PATH}/config.bld" +export INCDIR="${MATHLIB_INSTALL_DIR}/" + +PATH_append = ":${XDC_INSTALL_DIR}" + +XDCPATH.="${XDCCGROOT}/include;${XDC_INSTALL_DIR}/packages;${SYSBIOS_INSTALL_DIR}/packages;" +XDCPATH.="${SWTOOLS_INSTALL_DIR};${MATHLIB_INSTALL_DIR};${DSPLIB_WORK_DIR};" + +export XDCPATH + +DSPLIB_PACKAGE_NAME = "dsplib_${DSPLIB_BUILD_TARGET}_${PV}" + +do_compile() { + cd ${DSPLIB_WORK_DIR}/ti/dsplib; + xdc XDCARGS="${DSPLIB_BUILD_TARGET} bundle" XDCOPTIONS="-v" +} + +do_install() { + install -d ${D}${DSPLIB_INSTALL_DIR_RECIPE} + + find -name "${DSPLIB_PACKAGE_NAME}.zip" -exec unzip -o {} -d ${D}${DSPLIB_INSTALL_DIR_RECIPE} \; + mv ${D}${DSPLIB_INSTALL_DIR_RECIPE}/dsplib/* ${D}${DSPLIB_INSTALL_DIR_RECIPE} + mv ${D}${DSPLIB_INSTALL_DIR_RECIPE}/dsplib/.metadata ${D}${DSPLIB_INSTALL_DIR_RECIPE} + rm -r ${D}${DSPLIB_INSTALL_DIR_RECIPE}/dsplib +} + +inherit deploy +addtask deploy before do_build after do_install + +do_deploy() { + install -d ${DEPLOYDIR} + # zip up files in ${D}${DSPLIB_INSTALL_DIR_RECIPE} + # and place the zip file in ${DEPLOYDIR} + mkdir ./${DSPLIB_PACKAGE_NAME} + cp -r ${D}${DSPLIB_INSTALL_DIR_RECIPE}/* ./${DSPLIB_PACKAGE_NAME} + cp -r ${D}${DSPLIB_INSTALL_DIR_RECIPE}/.metadata ./${DSPLIB_PACKAGE_NAME} + zip -9 -y -r -q ${DEPLOYDIR}/${DSPLIB_PACKAGE_NAME}.zip ./${DSPLIB_PACKAGE_NAME} + rm -r ./${DSPLIB_PACKAGE_NAME} +} + +ALLOW_EMPTY_${PN} = "1" +FILES_${PN}-dev += "${DSPLIB_INSTALL_DIR_RECIPE}" + +INSANE_SKIP_${PN}-dev = "arch" diff --git a/recipes-ti/includes/ti-paths.inc b/recipes-ti/includes/ti-paths.inc index 6c2b2001..93494f08 100644 --- a/recipes-ti/includes/ti-paths.inc +++ b/recipes-ti/includes/ti-paths.inc @@ -17,7 +17,7 @@ export DMAI_INSTALL_DIR_RECIPE = "${installdir}/ti-dmai-tree" export DSP_BENCHMARK_INSTALL_DIR_RECIPE = "${installdir}/ti-dsp-benchmark-tree" export DSPLIB_C64P_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c64p-tree" export DSPLIB_C674_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c674x-tree" -export DSPLIB_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-tree" +export DSPLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c66x-tree" export DVSDK_DEMOS_INSTALL_DIR_RECIPE= "${installdir}/ti-dvsdk-demos-tree" export DVTB_INSTALL_DIR_RECIPE = "${installdir}/ti-dvtb-tree" export EDMA3_LLD_INSTALL_DIR_RECIPE = "${installdir}/ti-edma3lld-tree" @@ -49,7 +49,6 @@ export OSAL_INSTALL_DIR_RECIPE = "${installdir}/ti-osal-tree" export M4_TOOLCHAIN_INSTALL_DIR_RECIPE = "${installdir}/ti-cgt-arm" export GCC_ARM_NONE_TOOLCHAIN_RECIPE = "${installdir}/gcc-arm-none-eabi" export TI_CGT_PRU_INSTALL_DIR_RECIPE = "${installdir}/cgt-pru" -export DSPLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-dsplib-c66x-tree" export MATHLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-mathlib-c66x-tree" export MATHLIB_C674_INSTALL_DIR_RECIPE = "${installdir}/ti-mathlib-c674x-tree" export IMGLIB_C66_INSTALL_DIR_RECIPE = "${installdir}/ti-imglib-c66x-tree" @@ -74,7 +73,6 @@ export CODEGEN_ARM_INSTALL_DIR= "${STAGING_DIR_TARGET}${CODEGEN_ARM_INSTALL_DIR_ export CODEGEN_INSTALL_DIR = "${STAGING_DIR_TARGET}${CODEGEN_INSTALL_DIR_RECIPE}" export DMAI_INSTALL_DIR = "${STAGING_DIR_TARGET}${DMAI_INSTALL_DIR_RECIPE}" export DSP_BENCHMARK_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSP_BENCHMARK_INSTALL_DIR_RECIPE}" -export DSPLIB_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_INSTALL_DIR_RECIPE}" export EDMA3_LLD_INSTALL_DIR = "${STAGING_DIR_TARGET}${EDMA3_LLD_INSTALL_DIR_RECIPE}" export EDMA3_LLD_SYSBIOS_INSTALL_DIR = "${STAGING_DIR_TARGET}${EDMA3_LLD_SYSBIOS_INSTALL_DIR_RECIPE}" export FASTMATHLIB_C674P_INSTALL_DIR = "${STAGING_DIR_TARGET}${FASTMATHLIB_C674P_INSTALL_DIR_RECIPE}" @@ -100,6 +98,8 @@ export M4_TOOLCHAIN_INSTALL_DIR = "${STAGING_DIR_NATIVE}${M4_TOOLCHAIN_INSTAL export GCC_ARM_NONE_TOOLCHAIN = "${STAGING_DIR_NATIVE}${GCC_ARM_NONE_TOOLCHAIN_RECIPE}" export TI_CGT_PRU_INSTALL_DIR = "${STAGING_DIR_NATIVE}${TI_CGT_PRU_INSTALL_DIR_RECIPE}" export SWTOOLS_INSTALL_DIR = "${STAGING_DIR_TARGET}${SWTOOLS_INSTALL_DIR_RECIPE}" +export DSPLIB_C64P_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C64P_INSTALL_DIR_RECIPE}" +export DSPLIB_C674_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C674_INSTALL_DIR_RECIPE}" export DSPLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${DSPLIB_C66_INSTALL_DIR_RECIPE}" export MATHLIB_C66_INSTALL_DIR = "${STAGING_DIR_TARGET}${MATHLIB_C66_INSTALL_DIR_RECIPE}" export MATHLIB_C674_INSTALL_DIR = "${STAGING_DIR_TARGET}${MATHLIB_C674_INSTALL_DIR_RECIPE}" -- cgit v1.2.3-54-g00ecf