summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuqing Zhu <carol.zhu@nxp.com>2018-06-06 11:44:21 +0800
committerOtavio Salvador <otavio@ossystems.com.br>2018-06-06 11:25:51 -0300
commit733c19291d298d428fcd500ec1e6c4f51ce67dc6 (patch)
tree38c4b34e1271b536168b99ccb40cfee1388254dd
parent2ae871f021de04fb3aed22fbd7f76c1d6c6c2872 (diff)
downloadmeta-freescale-733c19291d298d428fcd500ec1e6c4f51ce67dc6.tar.gz
gstreamer1.0-plugins-bad: Use i.MX fork of GST for customizations
Create new gstreamer recipe with i.mx specific version. Switch to use i.MX fork of GST. Merge inc/bb. Signed-off-by: Yuqing Zhu <carol.zhu@nxp.com> Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> (cherry picked from commit 3cabafdaed1eb1fcb33eed6fc7761ae78bab21fc) Change-Id: I8eacee910d79c9db5e8003ef35e15a1efaf9b9bc
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch74
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.%.bbappend2
-rw-r--r--recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.imx.bb197
3 files changed, 271 insertions, 2 deletions
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
new file mode 100644
index 00000000..8d99dc6c
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad/0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
@@ -0,0 +1,74 @@
1From 7592e793b3906355d76ca9a59f8fea2749ea2a4e Mon Sep 17 00:00:00 2001
2From: Alexander Kanavin <alex.kanavin@gmail.com>
3Date: Tue, 27 Oct 2015 14:36:58 +0200
4Subject: [PATCH] Makefile.am: don't hardcode libtool name when running
5 introspection tools
6
7Upstream-Status: Pending [review on oe-core list]
8Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
9
10%% original patch: 0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch
11
12Signed-off-by: Maxin B. John <maxin.john@intel.com>
13---
14 gst-libs/gst/allocators/Makefile.am | 2 +-
15 gst-libs/gst/gl/Makefile.am | 2 +-
16 gst-libs/gst/insertbin/Makefile.am | 2 +-
17 gst-libs/gst/mpegts/Makefile.am | 2 +-
18 4 files changed, 4 insertions(+), 4 deletions(-)
19
20diff --git a/gst-libs/gst/allocators/Makefile.am b/gst-libs/gst/allocators/Makefile.am
21index e50d077..623f092 100644
22--- a/gst-libs/gst/allocators/Makefile.am
23+++ b/gst-libs/gst/allocators/Makefile.am
24@@ -37,7 +37,7 @@ GstBadAllocators-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstbadalloca
25 --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-@GST_API_VERSION@` \
26 --library=libgstbadallocators-@GST_API_VERSION@.la \
27 --include=Gst-@GST_API_VERSION@ \
28- --libtool="$(top_builddir)/libtool" \
29+ --libtool="$(LIBTOOL)" \
30 --pkg gstreamer-@GST_API_VERSION@ \
31 --pkg-export gstreamer-badallocators-@GST_API_VERSION@ \
32 --output $@ \
33diff --git a/gst-libs/gst/gl/Makefile.am b/gst-libs/gst/gl/Makefile.am
34index 2ae4773..dfa7a7d 100644
35--- a/gst-libs/gst/gl/Makefile.am
36+++ b/gst-libs/gst/gl/Makefile.am
37@@ -178,7 +178,7 @@ GstGL-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstgl-@GST_API_VERSION@
38 --include=Gst-@GST_API_VERSION@ \
39 --include=GstBase-@GST_API_VERSION@ \
40 --include=GstVideo-@GST_API_VERSION@ \
41- --libtool="$(top_builddir)/libtool" \
42+ --libtool="$(LIBTOOL)" \
43 --pkg gstreamer-@GST_API_VERSION@ \
44 --pkg gstreamer-base-@GST_API_VERSION@ \
45 --pkg gstreamer-video-@GST_API_VERSION@ \
46diff --git a/gst-libs/gst/insertbin/Makefile.am b/gst-libs/gst/insertbin/Makefile.am
47index 1f8ea30..4b98ef6 100644
48--- a/gst-libs/gst/insertbin/Makefile.am
49+++ b/gst-libs/gst/insertbin/Makefile.am
50@@ -45,7 +45,7 @@ GstInsertBin-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstinsertbin-@GS
51 --library=libgstinsertbin-@GST_API_VERSION@.la \
52 --include=Gst-@GST_API_VERSION@ \
53 --include=GstBase-@GST_API_VERSION@ \
54- --libtool="$(top_builddir)/libtool" \
55+ --libtool="$(LIBTOOL)" \
56 --pkg gstreamer-@GST_API_VERSION@ \
57 --pkg gstreamer-base-@GST_API_VERSION@ \
58 --pkg-export gstreamer-insertbin-@GST_API_VERSION@ \
59diff --git a/gst-libs/gst/mpegts/Makefile.am b/gst-libs/gst/mpegts/Makefile.am
60index aeea32e..929d9cc 100644
61--- a/gst-libs/gst/mpegts/Makefile.am
62+++ b/gst-libs/gst/mpegts/Makefile.am
63@@ -79,7 +79,7 @@ GstMpegts-@GST_API_VERSION@.gir: $(INTROSPECTION_SCANNER) libgstmpegts-@GST_API_
64 --add-include-path=`PKG_CONFIG_PATH="$(GST_PKG_CONFIG_PATH)" $(PKG_CONFIG) --variable=girdir gstreamer-video-@GST_API_VERSION@` \
65 --library=libgstmpegts-@GST_API_VERSION@.la \
66 --include=Gst-@GST_API_VERSION@ \
67- --libtool="$(top_builddir)/libtool" \
68+ --libtool="$(LIBTOOL)" \
69 --pkg gstreamer-@GST_API_VERSION@ \
70 --pkg gstreamer-video-@GST_API_VERSION@ \
71 --pkg-export gstreamer-mpegts-@GST_API_VERSION@ \
72--
732.4.0
74
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.%.bbappend
deleted file mode 100644
index 15a735d4..00000000
--- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.%.bbappend
+++ /dev/null
@@ -1,2 +0,0 @@
1PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
2PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.imx.bb b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.imx.bb
new file mode 100644
index 00000000..4343357d
--- /dev/null
+++ b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.12.imx.bb
@@ -0,0 +1,197 @@
1require recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc
2
3LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \
4 file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 "
5
6DEPENDS_append_imxgpu2d = " virtual/libg2d"
7DEPENDS_append_mx8 = " libdrm"
8
9PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}"
10PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}"
11
12PACKAGECONFIG_append_mx6q = " opencv"
13PACKAGECONFIG_append_mx6qp = " opencv"
14PACKAGECONFIG_append_mx8 = " opencv kms"
15PACKAGECONFIG_remove_mx6sl = " gles2"
16
17#revert poky fido commit:cdc2c8aeaa96b07dfc431a4cf0bf51ef7f8802a3: move EGL to Wayland
18PACKAGECONFIG[gles2] = "--enable-gles2 --enable-egl,--disable-gles2 --disable-egl,virtual/libgles2 virtual/egl"
19PACKAGECONFIG[wayland] = "--enable-wayland --disable-x11,--disable-wayland,wayland-native wayland wayland-protocols libdrm"
20
21# Disable introspection to fix [GstGL-1.0.gir] Error
22EXTRA_OECONF_append = " --disable-introspection"
23
24EXTRA_OECONF_remove = " --disable-sdl --disable-nas --disable-libvisual --disable-xvid --disable-mimic \
25 --disable-pvr --disable-sdltest --disable-wininet --disable-timidity \
26 --disable-linsys --disable-sndio --disable-apexsink --disable-libssh2 \
27"
28
29GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https"
30SRCBRANCH = "MM_04.03.04_1801_L4.9.51_MX8M_GA"
31
32SRC_URI = " \
33 ${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} \
34 file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \
35"
36
37SRCREV = "a755b8a4570265a041ec0867629c6bade338b4d9"
38
39# This remove "--exclude=autopoint" option from autoreconf argument to avoid
40# configure.ac:30: error: required file './ABOUT-NLS' not found
41EXTRA_AUTORECONF = ""
42
43# include fragment shaders
44FILES_${PN}-opengl += "/usr/share/*.fs"
45
46PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}"
47PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}"
48
49# Fix libgstbadion-1.0.so.0 which is under built directory cannot be found
50do_compile_prepend () {
51 export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/ion/.libs"
52}
53
54S = "${WORKDIR}/git"
55
56LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+"
57
58DEPENDS += "gstreamer1.0-plugins-base libpng jpeg"
59
60inherit gettext bluetooth
61
62# opengl packageconfig factored out to make it easy for distros
63# and BSP layers to pick either (desktop) opengl, gles2, or no GL
64PACKAGECONFIG_GL ?= "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2 egl', '', d)}"
65
66# gtk is not in the PACKAGECONFIG variable by default until
67# the transition to gtk+3 is finished
68PACKAGECONFIG ??= " \
69 ${GSTREAMER_ORC} \
70 ${PACKAGECONFIG_GL} \
71 ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \
72 ${@bb.utils.contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
73 ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \
74 bz2 curl dash dtls hls rsvg sbc smoothstreaming sndfile uvch264 webp \
75"
76PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass"
77PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}"
78PACKAGECONFIG[bz2] = "--enable-bz2,--disable-bz2,bzip2"
79PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl"
80PACKAGECONFIG[dash] = "--enable-dash,--disable-dash,libxml2"
81PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394"
82PACKAGECONFIG[directfb] = "--enable-directfb,--disable-directfb,directfb"
83PACKAGECONFIG[dtls] = "--enable-dtls,--disable-dtls,openssl"
84PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl"
85PACKAGECONFIG[faac] = "--enable-faac,--disable-faac,faac"
86PACKAGECONFIG[faad] = "--enable-faad,--disable-faad,faad2"
87PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa"
88PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth"
89PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2"
90PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3"
91PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=nettle,--disable-hls,nettle"
92PACKAGECONFIG[kms] = "--enable-kms,--disable-kms,libdrm"
93PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms"
94PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2"
95PACKAGECONFIG[modplug] = "--enable-modplug,--disable-modplug,libmodplug"
96PACKAGECONFIG[neon] = "--enable-neon,--disable-neon,neon"
97PACKAGECONFIG[openal] = "--enable-openal,--disable-openal,openal-soft"
98PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv"
99PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu"
100PACKAGECONFIG[openjpeg] = "--enable-openjpeg,--disable-openjpeg,openjpeg"
101# the opus encoder/decoder elements are now in the -base package,
102# but the opus parser remains in -bad
103PACKAGECONFIG[opusparse] = "--enable-opus,--disable-opus,libopus"
104PACKAGECONFIG[resindvd] = "--enable-resindvd,--disable-resindvd,libdvdread libdvdnav"
105PACKAGECONFIG[rsvg] = "--enable-rsvg,--disable-rsvg,librsvg"
106PACKAGECONFIG[rtmp] = "--enable-rtmp,--disable-rtmp,rtmpdump"
107PACKAGECONFIG[sbc] = "--enable-sbc,--disable-sbc,sbc"
108PACKAGECONFIG[schroedinger] = "--enable-schro,--disable-schro,schroedinger"
109PACKAGECONFIG[smoothstreaming] = "--enable-smoothstreaming,--disable-smoothstreaming,libxml2"
110PACKAGECONFIG[sndfile] = "--enable-sndfile,--disable-sndfile,libsndfile1"
111PACKAGECONFIG[srtp] = "--enable-srtp,--disable-srtp,libsrtp"
112PACKAGECONFIG[uvch264] = "--enable-uvch264,--disable-uvch264,libusb1 libgudev"
113PACKAGECONFIG[voaacenc] = "--enable-voaacenc,--disable-voaacenc,vo-aacenc"
114PACKAGECONFIG[voamrwbenc] = "--enable-voamrwbenc,--disable-voamrwbenc,vo-amrwbenc"
115PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm"
116PACKAGECONFIG[webp] = "--enable-webp,--disable-webp,libwebp"
117
118# these plugins have no corresponding library in OE-core or meta-openembedded:
119# openni2 winks direct3d directsound winscreencap acm apple_media iqa
120# android_media avc bs2b chromaprint daala dts fdkaac gme gsm kate ladspa libde265
121# lv2 mpeg2enc mplex msdk musepack nvenc ofa openh264 opensles soundtouch spandsp
122# spc teletextdec tinyalsa vdpau wasapi x265 zbar webrtcdsp
123
124# qt5 support is disabled, because it is not present in OE core, and requires more work than
125# just adding a packageconfig (it requires access to moc, uic, rcc, and qmake paths).
126# This is better done in a separate qt5 layer (which then should add a "qt5" packageconfig
127# in a gstreamer1.0-plugins-bad bbappend).
128
129EXTRA_OECONF += " \
130 --enable-decklink \
131 --enable-dvb \
132 --enable-fbdev \
133 --enable-netsim \
134 --enable-shm \
135 --enable-vcd \
136 --disable-acm \
137 --disable-android_media \
138 --disable-apple_media \
139 --disable-avc \
140 --disable-bs2b \
141 --disable-chromaprint \
142 --disable-cocoa \
143 --disable-daala \
144 --disable-direct3d \
145 --disable-directsound \
146 --disable-dts \
147 --disable-fdk_aac \
148 --disable-gme \
149 --disable-gsm \
150 --disable-iqa \
151 --disable-kate \
152 --disable-ladspa \
153 --disable-libde265 \
154 --disable-lv2 \
155 --disable-mpeg2enc \
156 --disable-mplex \
157 --disable-msdk \
158 --disable-musepack \
159 --disable-nvenc \
160 --disable-ofa \
161 --disable-openexr \
162 --disable-openh264 \
163 --disable-openni2 \
164 --disable-opensles \
165 --disable-qt \
166 --disable-soundtouch \
167 --disable-spandsp \
168 --disable-spc \
169 --disable-teletextdec \
170 --disable-tinyalsa \
171 --disable-vdpau \
172 --disable-vulkan \
173 --disable-wasapi \
174 --disable-webrtcdsp \
175 --disable-wildmidi \
176 --disable-winks \
177 --disable-winscreencap \
178 --disable-x265 \
179 --disable-zbar \
180 ${@bb.utils.contains("TUNE_FEATURES", "mx32", "--disable-yadif", "", d)} \
181"
182
183export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}"
184
185ARM_INSTRUCTION_SET_armv4 = "arm"
186ARM_INSTRUCTION_SET_armv5 = "arm"
187
188FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h"
189FILES_${PN}-freeverb += "${datadir}/gstreamer-${LIBV}/presets/GstFreeverb.prs"
190FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/${LIBV}/opencv*"
191FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-${LIBV}/presets/GstVoAmrwbEnc.prs"
192
193do_compile_prepend() {
194 export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/allocators/.libs"
195}
196
197COMPATIBLE_MACHINE = "(mx6|mx7|mx8)"