3 DESCRIPTION = "Codec Engine for TI ARM/DSP processors"
5 DEPENDS = "virtual/kernel perl-native"
6 RDEPENDS = "update-modules"
10 # tconf from xdctools dislikes '.' in pwd :/
14 # Get CE tarball from TI website, place in sources and calculate
16 # Look for tarball at https://www-a.ti.com/downloads/sds_support/targetcontent/CE/index.html
18 SRC_URI = "http://install.tarball.in.source.dir/codec_engine_2_21.tar.gz \
19 file://cmem-class-device-27-and-sched-include-fix.patch;patch=1 \
20 file://dsplink-semaphore-27.patch;patch=1 \
21 file://lpm-device-create-and-semaphore-include-fix.patch;patch=1 \
22 file://lpm-make-symbol-warnings-fix.patch;patch=1 \
23 file://Makefile-dsplink-gpp \
24 file://Makefile-dsplink-dsp \
27 S = "${WORKDIR}/codec_engine_2_21"
31 export DSPLINK="${S}/cetools/packages/dsplink"
35 # the include files on top define do_compile for the submodules
39 # Fix paths to arm crosstools, c6x codegen and x86 gcc
40 # Also disable uclibc and x86 builds
41 sed -i -e s:/db/toolsrc/library/tools/vendors/cs/arm/arm-2007q3:${CROSS_DIR}:g \
42 -e s:/db/toolsrc/library/tools/vendors/ti/c6x/6.0.16/Linux:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
43 -e s:/db/toolsrc/library/tools/vendors/opensource/gcc/4.1.0/Linux/gcc-4.1.0-glibc-2.3.6/i686-unknown-linux-gnu:/usr:g \
44 -e s:arm-none-linux-gnueabi-:${TARGET_PREFIX}:g \
45 -e 's:true, // build for uC Linux:false,:g' \
46 -e 's:true, // build for PC Linux:false,:g' \
47 ${S}/examples/user.bld
49 # For now, remove all targets, except dm6446 and omap3530
58 ${S}/examples/user.bld
60 # Fix path to c6x codegen
61 sed -i -e s:/db/toolsrc/library/tools/vendors/ti/c6x/6.0.16/Linux:${TITOOLSDIR}/${TICGTOOLSDIR}:g \
64 # Start building the CE examples: codecs, extensions, servers (codec bundles) and ARM side apps
65 # the DSP side uses CC to point to the c6x codegen, but would get the gcc tool
67 # Make clean doesn't do what you'd expect, it only cleans stuff you've enabled, so some cruft remains
68 for i in codecs extensions servers apps ; do
69 make -e -C ${S}/examples/ti/sdo/ce/examples/$i clean
70 make -e -C ${S}/examples/ti/sdo/ce/examples/$i
77 install -d ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/codecengine
78 cp -pPrf ${S}/* ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/codecengine/
79 ln -sf ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/codecengine/packages/ti/sdo/ce ${STAGING_DIR}/${MULTIMACH_TARGET_SYS}/codecengine/cetools/packages/ti/sdo/
82 INHIBIT_PACKAGE_STRIP = "1"
84 FILES_${PN} = "${base_sbindir}"
86 PACKAGE_ARCH = "${MACHINE_ARCH}"