diff options
author | Yuqing Zhu <carol.zhu@nxp.com> | 2018-06-06 11:44:21 +0800 |
---|---|---|
committer | Otavio Salvador <otavio@ossystems.com.br> | 2018-06-06 10:56:47 -0300 |
commit | 3cabafdaed1eb1fcb33eed6fc7761ae78bab21fc (patch) | |
tree | a32f2944de635e3dc7797aa895c536cd311057f1 | |
parent | ab7eda199bd3dbe4c7f14fda1421514723620cda (diff) | |
download | meta-freescale-3cabafdaed1eb1fcb33eed6fc7761ae78bab21fc.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>
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 @@ | |||
1 | From 7592e793b3906355d76ca9a59f8fea2749ea2a4e Mon Sep 17 00:00:00 2001 | ||
2 | From: Alexander Kanavin <alex.kanavin@gmail.com> | ||
3 | Date: Tue, 27 Oct 2015 14:36:58 +0200 | ||
4 | Subject: [PATCH] Makefile.am: don't hardcode libtool name when running | ||
5 | introspection tools | ||
6 | |||
7 | Upstream-Status: Pending [review on oe-core list] | ||
8 | Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> | ||
9 | |||
10 | %% original patch: 0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch | ||
11 | |||
12 | Signed-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 | |||
20 | diff --git a/gst-libs/gst/allocators/Makefile.am b/gst-libs/gst/allocators/Makefile.am | ||
21 | index 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 $@ \ | ||
33 | diff --git a/gst-libs/gst/gl/Makefile.am b/gst-libs/gst/gl/Makefile.am | ||
34 | index 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@ \ | ||
46 | diff --git a/gst-libs/gst/insertbin/Makefile.am b/gst-libs/gst/insertbin/Makefile.am | ||
47 | index 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@ \ | ||
59 | diff --git a/gst-libs/gst/mpegts/Makefile.am b/gst-libs/gst/mpegts/Makefile.am | ||
60 | index 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 | -- | ||
73 | 2.4.0 | ||
74 | |||
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 @@ | |||
1 | require recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc | ||
2 | |||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \ | ||
4 | file://COPYING.LIB;md5=21682e4e8fea52413fd26c60acb907e5 " | ||
5 | |||
6 | DEPENDS_append_imxgpu2d = " virtual/libg2d" | ||
7 | DEPENDS_append_mx8 = " libdrm" | ||
8 | |||
9 | PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}" | ||
10 | PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}" | ||
11 | |||
12 | PACKAGECONFIG_append_mx6q = " opencv" | ||
13 | PACKAGECONFIG_append_mx6qp = " opencv" | ||
14 | PACKAGECONFIG_append_mx8 = " opencv kms" | ||
15 | PACKAGECONFIG_remove_mx6sl = " gles2" | ||
16 | |||
17 | #revert poky fido commit:cdc2c8aeaa96b07dfc431a4cf0bf51ef7f8802a3: move EGL to Wayland | ||
18 | PACKAGECONFIG[gles2] = "--enable-gles2 --enable-egl,--disable-gles2 --disable-egl,virtual/libgles2 virtual/egl" | ||
19 | PACKAGECONFIG[wayland] = "--enable-wayland --disable-x11,--disable-wayland,wayland-native wayland wayland-protocols libdrm" | ||
20 | |||
21 | # Disable introspection to fix [GstGL-1.0.gir] Error | ||
22 | EXTRA_OECONF_append = " --disable-introspection" | ||
23 | |||
24 | EXTRA_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 | |||
29 | GST1.0-PLUGINS-BAD_SRC ?= "gitsm://source.codeaurora.org/external/imx/gst-plugins-bad.git;protocol=https" | ||
30 | SRCBRANCH = "MM_04.03.04_1801_L4.9.51_MX8M_GA" | ||
31 | |||
32 | SRC_URI = " \ | ||
33 | ${GST1.0-PLUGINS-BAD_SRC};branch=${SRCBRANCH} \ | ||
34 | file://0001-Makefile.am-don-t-hardcode-libtool-name-when-running.patch \ | ||
35 | " | ||
36 | |||
37 | SRCREV = "a755b8a4570265a041ec0867629c6bade338b4d9" | ||
38 | |||
39 | # This remove "--exclude=autopoint" option from autoreconf argument to avoid | ||
40 | # configure.ac:30: error: required file './ABOUT-NLS' not found | ||
41 | EXTRA_AUTORECONF = "" | ||
42 | |||
43 | # include fragment shaders | ||
44 | FILES_${PN}-opengl += "/usr/share/*.fs" | ||
45 | |||
46 | PACKAGE_ARCH_imxpxp = "${MACHINE_SOCARCH}" | ||
47 | PACKAGE_ARCH_mx8 = "${MACHINE_SOCARCH}" | ||
48 | |||
49 | # Fix libgstbadion-1.0.so.0 which is under built directory cannot be found | ||
50 | do_compile_prepend () { | ||
51 | export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/ion/.libs" | ||
52 | } | ||
53 | |||
54 | S = "${WORKDIR}/git" | ||
55 | |||
56 | LICENSE = "GPLv2+ & LGPLv2+ & LGPLv2.1+" | ||
57 | |||
58 | DEPENDS += "gstreamer1.0-plugins-base libpng jpeg" | ||
59 | |||
60 | inherit 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 | ||
64 | PACKAGECONFIG_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 | ||
68 | PACKAGECONFIG ??= " \ | ||
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 | " | ||
76 | PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass" | ||
77 | PACKAGECONFIG[bluez] = "--enable-bluez,--disable-bluez,${BLUEZ}" | ||
78 | PACKAGECONFIG[bz2] = "--enable-bz2,--disable-bz2,bzip2" | ||
79 | PACKAGECONFIG[curl] = "--enable-curl,--disable-curl,curl" | ||
80 | PACKAGECONFIG[dash] = "--enable-dash,--disable-dash,libxml2" | ||
81 | PACKAGECONFIG[dc1394] = "--enable-dc1394,--disable-dc1394,libdc1394" | ||
82 | PACKAGECONFIG[directfb] = "--enable-directfb,--disable-directfb,directfb" | ||
83 | PACKAGECONFIG[dtls] = "--enable-dtls,--disable-dtls,openssl" | ||
84 | PACKAGECONFIG[egl] = "--enable-egl,--disable-egl,virtual/egl" | ||
85 | PACKAGECONFIG[faac] = "--enable-faac,--disable-faac,faac" | ||
86 | PACKAGECONFIG[faad] = "--enable-faad,--disable-faad,faad2" | ||
87 | PACKAGECONFIG[flite] = "--enable-flite,--disable-flite,flite-alsa" | ||
88 | PACKAGECONFIG[fluidsynth] = "--enable-fluidsynth,--disable-fluidsynth,fluidsynth" | ||
89 | PACKAGECONFIG[gles2] = "--enable-gles2,--disable-gles2,virtual/libgles2" | ||
90 | PACKAGECONFIG[gtk] = "--enable-gtk3,--disable-gtk3,gtk+3" | ||
91 | PACKAGECONFIG[hls] = "--enable-hls --with-hls-crypto=nettle,--disable-hls,nettle" | ||
92 | PACKAGECONFIG[kms] = "--enable-kms,--disable-kms,libdrm" | ||
93 | PACKAGECONFIG[libmms] = "--enable-libmms,--disable-libmms,libmms" | ||
94 | PACKAGECONFIG[libssh2] = "--enable-libssh2,--disable-libssh2,libssh2" | ||
95 | PACKAGECONFIG[modplug] = "--enable-modplug,--disable-modplug,libmodplug" | ||
96 | PACKAGECONFIG[neon] = "--enable-neon,--disable-neon,neon" | ||
97 | PACKAGECONFIG[openal] = "--enable-openal,--disable-openal,openal-soft" | ||
98 | PACKAGECONFIG[opencv] = "--enable-opencv,--disable-opencv,opencv" | ||
99 | PACKAGECONFIG[opengl] = "--enable-opengl,--disable-opengl,virtual/libgl libglu" | ||
100 | PACKAGECONFIG[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 | ||
103 | PACKAGECONFIG[opusparse] = "--enable-opus,--disable-opus,libopus" | ||
104 | PACKAGECONFIG[resindvd] = "--enable-resindvd,--disable-resindvd,libdvdread libdvdnav" | ||
105 | PACKAGECONFIG[rsvg] = "--enable-rsvg,--disable-rsvg,librsvg" | ||
106 | PACKAGECONFIG[rtmp] = "--enable-rtmp,--disable-rtmp,rtmpdump" | ||
107 | PACKAGECONFIG[sbc] = "--enable-sbc,--disable-sbc,sbc" | ||
108 | PACKAGECONFIG[schroedinger] = "--enable-schro,--disable-schro,schroedinger" | ||
109 | PACKAGECONFIG[smoothstreaming] = "--enable-smoothstreaming,--disable-smoothstreaming,libxml2" | ||
110 | PACKAGECONFIG[sndfile] = "--enable-sndfile,--disable-sndfile,libsndfile1" | ||
111 | PACKAGECONFIG[srtp] = "--enable-srtp,--disable-srtp,libsrtp" | ||
112 | PACKAGECONFIG[uvch264] = "--enable-uvch264,--disable-uvch264,libusb1 libgudev" | ||
113 | PACKAGECONFIG[voaacenc] = "--enable-voaacenc,--disable-voaacenc,vo-aacenc" | ||
114 | PACKAGECONFIG[voamrwbenc] = "--enable-voamrwbenc,--disable-voamrwbenc,vo-amrwbenc" | ||
115 | PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,wayland-native wayland wayland-protocols libdrm" | ||
116 | PACKAGECONFIG[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 | |||
129 | EXTRA_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 | |||
183 | export OPENCV_PREFIX = "${STAGING_DIR_TARGET}${prefix}" | ||
184 | |||
185 | ARM_INSTRUCTION_SET_armv4 = "arm" | ||
186 | ARM_INSTRUCTION_SET_armv5 = "arm" | ||
187 | |||
188 | FILES_${PN}-dev += "${libdir}/gstreamer-${LIBV}/include/gst/gl/gstglconfig.h" | ||
189 | FILES_${PN}-freeverb += "${datadir}/gstreamer-${LIBV}/presets/GstFreeverb.prs" | ||
190 | FILES_${PN}-opencv += "${datadir}/gst-plugins-bad/${LIBV}/opencv*" | ||
191 | FILES_${PN}-voamrwbenc += "${datadir}/gstreamer-${LIBV}/presets/GstVoAmrwbEnc.prs" | ||
192 | |||
193 | do_compile_prepend() { | ||
194 | export GIR_EXTRA_LIBS_PATH="${B}/gst-libs/gst/allocators/.libs" | ||
195 | } | ||
196 | |||
197 | COMPATIBLE_MACHINE = "(mx6|mx7|mx8)" | ||
diff --git a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.%.bbappend b/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.%.bbappend deleted file mode 100644 index 15a735d4..00000000 --- a/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.%.bbappend +++ /dev/null | |||
@@ -1,2 +0,0 @@ | |||
1 | PACKAGECONFIG_GL_imxgpu2d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'opengl', '', d)}" | ||
2 | PACKAGECONFIG_GL_imxgpu3d = "${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gles2', '', d)}" | ||