1
0
mirror of https://git.yoctoproject.org/meta-ti synced 2026-01-12 01:20:20 +00:00

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 <xuj@ti.com>
Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
Signed-off-by: Denys Dmytriyenko <denys@ti.com>
This commit is contained in:
Jianzhong Xu
2018-09-24 20:59:35 +00:00
committed by Denys Dmytriyenko
parent b2bfeb31e6
commit d6ff9d2179
7 changed files with 98 additions and 42 deletions

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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"

View File

@@ -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}"