blob: afcc59b0c771cbaa889157cbcf186de5a844123d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
DESCRIPTION = "GSTREAMER Plugin (gstreamer-ti) for TI ARM/DSP processors"
HOMEPAGE = "https://gforge.ti.com/gf/project/gstreamer_ti/"
SECTION = "multimedia"
LICENSE = "LGPL"
# TODO :: Replace omapl137 with official support in GST (currently linking to omapl138)
# TODO :: Codec Server Environment Variables shouldn't be required
# TODO :: Add (and check) rc scripts for all targets (just copied for now) (365,6467,omapl137)
# TODO :: Check if CPPFLAGS_append is still required
# TODO :: Remove ENCODE/DECODE combo exports - these are not used anymore (check?)
inherit autotools
inherit update-rc.d
require ti-paths.inc
require ti-staging.inc
# Rebuild on kernel change since it links statically to ti-dmai, ti-codec-engine, etc
PR = "r58+${MACHINE_KERNEL_PR}"
DEPENDS = "ti-dmai gstreamer gst-plugins-base"
# gstreamer_ti picks up some config variables from the environment
# - variables are used in the gstreamer makefile
# - PLATFORM, XDC_PLATFORM, XDC_TARGET, MVTOOL_DIR
# - others used by config.bld (which it gets from the dmai config.bld)
# - CROSS_COMPILE, PLATFORM_XDC
PLATFORM_dm6446 = "dm6446"
PLATFORM_dm6467 = "dm6467"
PLATFORM_dm6467t = "dm6467t"
PLATFORM_omap3 = "omap3530"
PLATFORM_dm355 = "dm355"
PLATFORM_dm365 = "dm365"
PLATFORM_omapl137 = "omapl137"
PLATFORM_omapl138 = "omapl138"
PLATFORM ?= "<UNDEFINED_PLATFORM>"
GST_TI_PLATFORM = ${PLATFORM}
XDC_PLATFORM_dm6446 = "ti.platforms.evmDM6446"
XDC_PLATFORM_dm6467 = "ti.platforms.evmDM6467"
XDC_PLATFORM_omap3 = "ti.platforms.evm3530"
XDC_PLATFORM_dm355 = "ti.platforms.evmDM355"
XDC_PLATFORM_dm365 = "ti.platforms.evmDM365"
XDC_PLATFORM_omapl137 = "ti.platforms.evmOMAPL137"
XDC_PLATFORM_omapl138 = "ti.platforms.evmOMAPL138"
XDC_PLATFORM ?= "<UNDEFINED_XDC_PLATFORM>"
export PLATFORM
export GST_TI_PLATFORM
export XDC_PLATFORM
export XDC_TARGET = "gnu.targets.arm.GCArmv5T"
export PLATFORM_XDC = ${XDC_PLATFORM}
export MVTOOL_DIR = "${TOOLCHAIN_PATH}"
export CROSS_COMPILE = "${TOOLCHAIN_PATH}/bin/${TARGET_PREFIX}"
export LINK_XDC_ROOT = "${LINK_INSTALL_DIR}"
# export codec combo (or server) locations
# Why do we need to do this?? - These will get picked up from CODEC_INSTALL_DIR?
# Sould only need this if we change from default server
export CODEC_SERVER = "${installdir}/ti-codecs-server/cs.x64P"
CPPFLAGS_append = " -DPlatform_${PLATFORM}"
do_install_prepend () {
install -d ${D}/${installdir}/gst/${PLATFORM}
# copy gstreamer demo scripts
cp -r ${WORKDIR}/gstreamer_ti/gstreamer_demo/shared ${D}/${installdir}/gst
# If we have loadmodule.sh in WORKDIR then give preference to this over
# the default gst-ti loadmdules.sh
if [ -f ${WORKDIR}/loadmodules.sh ]; then
cp ${WORKDIR}/loadmodules.sh ${D}/${installdir}/gst/${PLATFORM}
else
cp -r ${WORKDIR}/gstreamer_ti/gstreamer_demo/${PLATFORM} ${D}/${installdir}/gst
fi
# replace insmod with modprobe
sed -i 's/insmod/modprobe/g' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
sed -i 's/.ko//g' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
if [ "${PLATFORM}" = "omap3530" ]; then
echo "modprobe sdmak" >> ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
fi
# FIXME: add depmod -a after #!/bin/sh
sed -i '/#!\/bin\/sh/a\depmod -a' ${D}/${installdir}/gst/${PLATFORM}/loadmodules.sh
# delete .svn files
find ${D}/${installdir}/gst -name .svn -type d | xargs rm -rf
chmod 0755 ${D}/${installdir}/gst -R
install -d ${D}${sysconfdir}/init.d/
install -m 0755 ${WORKDIR}/gstreamer-ti-rc.sh ${D}${sysconfdir}/init.d/gstti-init
install -d ${D}${sysconfdir}/profile.d/
install -m 0755 ${WORKDIR}/gst-ti.sh ${D}${sysconfdir}/profile.d/
}
RRECOMMENDS_${PN}_append_dm6446 += "ti-codecs-dm6446-server ti-cmem-module ti-dsplink-module"
RRECOMMENDS_${PN}_append_dm6467 += "ti-codecs-dm6467 ti-cmem-module ti-dsplink-module"
RRECOMMENDS_${PN}_append_omap3 += "ti-codecs-omap3530-server ti-cmem-module ti-dsplink-module ti-lpm-module ti-sdma-module"
RRECOMMENDS_${PN}_append_dm355 += "ti-codecs-dm355 ti-cmem-module ti-dm355mm-module"
RRECOMMENDS_${PN}_append_dm365 += "ti-codecs-dm365 ti-cmem-module ti-dm365mm-module ti-edma-module ti-irq-module"
RRECOMMENDS_${PN}_append_omapl137 += "ti-codecs-omapl137-server ti-cmem-module ti-dsplink-module"
RRECOMMENDS_${PN}_append_omapl138 += "ti-codecs-omapl138-server ti-cmem-module ti-dsplink-module"
FILES_${PN} += "${libdir}/gstreamer-0.10/*.so ${sysconfdir} ${installdir}"
FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.a ${libdir}/gstreamer-0.10/*.la"
FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug"
pkg_postinst_${PN} () {
if [ -d ${installdir}/ti-codecs-server/ ]; then
ln -sf ${installdir}/ti-codecs-server/* ${installdir}/gst/${PLATFORM}/
fi
}
INITSCRIPT_NAME = "gstti-init"
INITSCRIPT_PARAMS = "start 30 5 2 . stop 40 0 1 6 ."
|