| Submitter | Shane Wang |
|---|---|
| Date | Dec. 23, 2011, 4:35 p.m. |
| Message ID | <4921013d7801b45c81d7063dabeac31cf751c9d4.1324657801.git.shane.wang@intel.com> |
| Download | mbox | patch |
| Permalink | /patch/17565/ |
| State | New |
| Headers | show |
Comments
Op 23 dec. 2011, om 17:35 heeft Shane Wang het volgende geschreven: > Signed-off-by: Shane Wang <shane.wang@intel.com> > --- > .../gst-ffmpeg-0.10.13/configure-fix.patch | 20 ++++++++++++++++++++ > .../lower-rank.diff | 0 > ...gst-ffmpeg_0.10.11.bb => gst-ffmpeg_0.10.13.bb} | 19 ++++++++++++------- > 3 files changed, 32 insertions(+), 7 deletions(-) > create mode 100644 meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch > rename meta/recipes-multimedia/gstreamer/{gst-ffmpeg-0.10.11 => gst-ffmpeg-0.10.13}/lower-rank.diff (100%) > rename meta/recipes-multimedia/gstreamer/{gst-ffmpeg_0.10.11.bb => gst-ffmpeg_0.10.13.bb} (58%) > > diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch > new file mode 100644 > index 0000000..81029ca > --- /dev/null > +++ b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch > @@ -0,0 +1,20 @@ > +Disable yasm for libav when --disable-yasm > + > +Upstream-Status: Inappropriate [configuration] > + > +Signed-off-by: Shane Wang <shane.wang@intel.com> > + > +diff -r f2f8f74c6e30 configure.ac > +--- a/configure.ac Thu Dec 22 23:56:09 2011 +0800 > ++++ b/configure.ac Thu Dec 22 23:57:37 2011 +0800 > +@@ -325,6 +325,10 @@ > + --enable-gpl" > + fi > + > ++ if test "x$disable_yasm" != "xyes"; then > ++ embffmpeg_configure_args="$embffmpeg_configure_args --disable-yasm" > ++ fi > ++ > + # if we are cross-compiling, tell ffmpeg so > + target_os=`echo $host_os | sed 's/-gnu//'` > + if test "x$cross_compiling" = xyes; then > diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff > similarity index 100% > rename from meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff > rename to meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff > diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb > similarity index 58% > rename from meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb > rename to meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb > index c3512e1..a1b7cbb 100644 > --- a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb > +++ b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb > @@ -5,11 +5,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ > file://ext/libpostproc/gstpostproc.c;beginline=1;endline=18;md5=5896e445e41681324381f5869ee33d38 \ > file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \ > file://ext/ffmpeg/gstffmpeg.h;beginline=1;endline=18;md5=ff65467b0c53cdfa98d0684c1bc240a9 \ > - file://gst-libs/ext/ffmpeg/LICENSE;md5=524b5ee4bdbbf755ebbb76727ba80b0d \ > - file://gst-libs/ext/ffmpeg/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ > - file://gst-libs/ext/ffmpeg/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ > - file://gst-libs/ext/ffmpeg/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79d7bd3a379 \ > - file://gst-libs/ext/ffmpeg/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" > + file://gst-libs/ext/libav/LICENSE;md5=abc3b8cb02856aa7823bbbd162d16232 \ > + file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ > + file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ > + file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79d7bd3a379 \ > + file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" What changed? > HOMEPAGE = "http://www.gstreamer.net/" > DEPENDS = "gstreamer gst-plugins-base zlib" > > @@ -17,15 +17,20 @@ inherit autotools pkgconfig > > SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \ > file://lower-rank.diff \ > + file://configure-fix.patch \ > " > > -SRC_URI[md5sum] = "0d23197ba7ac06ea34fa66d38469ebe5" > -SRC_URI[sha256sum] = "ff36a138e5af4ed8dcc459d6d6521fe66ed31ec29ba9a924dc3675c6749a692e" > +SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4" > +SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62" > > PR = "r0" > > EXTRA_OECONF = "--with-ffmpeg-extra-configure=\"--target-os=linux\" " > > +# yasm not found, use --disable-yasm for a crippled build for libav > +EXTRA_OECONF_append_x86-64 = " --disable-yasm " > +EXTRA_OECONF_append_x86 = " --disable-yasm " Since yasm is x86 only it should be safe go globally disable it, no? And a related question: why isn't this bulding against an external libav like OE-classic does?
Koen Kooi wrote onĀ 2011-12-24: > > Op 23 dec. 2011, om 17:35 heeft Shane Wang het volgende geschreven: > >> Signed-off-by: Shane Wang <shane.wang@intel.com> --- >> .../gst-ffmpeg-0.10.13/configure-fix.patch | 20 >> ++++++++++++++++++++ .../lower-rank.diff >> | 0 ...gst-ffmpeg_0.10.11.bb => gst-ffmpeg_0.10.13.bb} | 19 >> ++++++++++++------- 3 files changed, 32 insertions(+), 7 deletions(-) >> create mode 100644 > meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patc > h >> rename meta/recipes-multimedia/gstreamer/{gst-ffmpeg-0.10.11 => >> gst-ffmpeg-0.10.13}/lower-rank.diff (100%) rename >> meta/recipes-multimedia/gstreamer/{gst-ffmpeg_0.10.11.bb => >> gst-ffmpeg_0.10.13.bb} (58%) >> >> diff --git > a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.pa > tch > b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.pa > tch >> new file mode 100644 >> index 0000000..81029ca >> --- /dev/null >> +++ > b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.pa > tch >> @@ -0,0 +1,20 @@ +Disable yasm for libav when --disable-yasm + >> +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Shane >> Wang <shane.wang@intel.com> + +diff -r f2f8f74c6e30 configure.ac +--- >> a/configure.ac Thu Dec 22 23:56:09 2011 +0800 ++++ b/configure.ac Thu >> Dec 22 23:57:37 2011 +0800 +@@ -325,6 +325,10 @@ + >> --enable-gpl" + fi + ++ if test "x$disable_yasm" != "xyes"; then ++ >> embffmpeg_configure_args="$embffmpeg_configure_args --disable-yasm" >> ++ fi ++ + # if we are cross-compiling, tell ffmpeg so + >> target_os=`echo $host_os | sed 's/-gnu//'` + if test >> "x$cross_compiling" = xyes; then diff --git > a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff > b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff >> similarity index 100% rename from >> meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff >> rename to >> meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff >> diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb >> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb similarity >> index 58% rename from >> meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb rename to >> meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb index >> c3512e1..a1b7cbb 100644 --- >> a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb +++ >> b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb @@ -5,11 >> +5,11 @@ LIC_FILES_CHKSUM = >> "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ >> > file://ext/libpostproc/gstpostproc.c;beginline=1;endline=18;md5=5896e445 > e41681324381f5869ee33d38 \ >> >> file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \ >> > file://ext/ffmpeg/gstffmpeg.h;beginline=1;endline=18;md5=ff65467b0c53cd > fa98d0684c1bc240a9 \ >> - > file://gst-libs/ext/ffmpeg/LICENSE;md5=524b5ee4bdbbf755ebbb76727ba80 > b0d \ >> - > file://gst-libs/ext/ffmpeg/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fd > af4a4263 \ >> - > file://gst-libs/ext/ffmpeg/COPYING.GPLv3;md5=d32239bcb673463ab874e80 > d47fae504 \ >> - > file://gst-libs/ext/ffmpeg/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd > 79d7bd3a379 \ >> - > file://gst-libs/ext/ffmpeg/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983 > 680233ad02" >> + > file://gst-libs/ext/libav/LICENSE;md5=abc3b8cb02856aa7823bbbd162d1623 > 2 \ >> + > file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf > 4a4263 \ >> + > file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d4 > 7fae504 \ >> + > file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79 > d7bd3a379 \ >> + > file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d98368 > 0233ad02" > > What changed? > For the five, ffmpeg doesn't exist, so I used libav, four of them are the same. For LICENSE, the diff is: ================================== 1,2c1,2 < FFmpeg: < ------- --- > Libav: > ------ 4c4 < Most files in FFmpeg are under the GNU Lesser General Public License version 2.1 --- > Most files in Libav are under the GNU Lesser General Public License version 2.1 7c7 < FFmpeg. --- > Libav. 9c9 < Some optional parts of FFmpeg are licensed under the GNU General Public License --- > Some optional parts of Libav are licensed under the GNU General Public License 12c12 < configure to activate them. In this case, FFmpeg's license changes to GPL v2+. --- > configure to activate them. In this case, Libav's license changes to GPL v2+. 14c14 < Specifically, the GPL parts of FFmpeg are --- > Specifically, the GPL parts of Libav are 17,18d16 < - optional MMX optimizations for YUV to RGB colorspace conversion in < libswscale/x86/yuv2rgb_template.c 20,21d17 < libavcodec/x86/h264_deblock_sse2.asm < libavcodec/x86/h264_idct_sse2.asm 40c36 < conjunction with FFmpeg. They require --enable-gpl to be passed to configure --- > conjunction with Libav. They require --enable-gpl to be passed to configure 45c41 < those licenses. So to combine the OpenCORE libraries with FFmpeg, the license --- > those licenses. So to combine the OpenCORE libraries with Libav, the license 48c44 < The nonfree external library libfaac can be hooked up in FFmpeg. You need to --- > The nonfree external library libfaac can be hooked up in Libav. You need to 50c46 < as FFmpeg then becomes nonfree and unredistributable. --- > as Libav then becomes nonfree and unredistributable. ================================== >> HOMEPAGE = "http://www.gstreamer.net/" >> DEPENDS = "gstreamer gst-plugins-base zlib" >> >> @@ -17,15 +17,20 @@ inherit autotools pkgconfig >> >> SRC_URI = > "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \ >> file://lower-rank.diff \ >> + file://configure-fix.patch \ >> " >> >> -SRC_URI[md5sum] = "0d23197ba7ac06ea34fa66d38469ebe5" >> -SRC_URI[sha256sum] = > "ff36a138e5af4ed8dcc459d6d6521fe66ed31ec29ba9a924dc3675c6749a692 > e" >> +SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4" >> +SRC_URI[sha256sum] = > "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb6 > 2" >> >> PR = "r0" >> >> EXTRA_OECONF = "--with-ffmpeg-extra-configure=\"--target-os=linux\" " >> >> +# yasm not found, use --disable-yasm for a crippled build for libav >> +EXTRA_OECONF_append_x86-64 = " --disable-yasm " >> +EXTRA_OECONF_append_x86 = " --disable-yasm " > > Since yasm is x86 only it should be safe go globally disable it, no? And a > related question: why isn't this bulding against an external libav like > OE-classic does? Libav recipe in OE doesn't disable yasm globally. So I didn't. The answer for the second question: the tar bar for the new version of gst-ffmpeg contains libav code and its configure in ffmpeg's configure.ac -- Shane
Patch
diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch new file mode 100644 index 0000000..81029ca --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch @@ -0,0 +1,20 @@ +Disable yasm for libav when --disable-yasm + +Upstream-Status: Inappropriate [configuration] + +Signed-off-by: Shane Wang <shane.wang@intel.com> + +diff -r f2f8f74c6e30 configure.ac +--- a/configure.ac Thu Dec 22 23:56:09 2011 +0800 ++++ b/configure.ac Thu Dec 22 23:57:37 2011 +0800 +@@ -325,6 +325,10 @@ + --enable-gpl" + fi + ++ if test "x$disable_yasm" != "xyes"; then ++ embffmpeg_configure_args="$embffmpeg_configure_args --disable-yasm" ++ fi ++ + # if we are cross-compiling, tell ffmpeg so + target_os=`echo $host_os | sed 's/-gnu//'` + if test "x$cross_compiling" = xyes; then diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff similarity index 100% rename from meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.11/lower-rank.diff rename to meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/lower-rank.diff diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb similarity index 58% rename from meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb rename to meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb index c3512e1..a1b7cbb 100644 --- a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.11.bb +++ b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb @@ -5,11 +5,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ file://ext/libpostproc/gstpostproc.c;beginline=1;endline=18;md5=5896e445e41681324381f5869ee33d38 \ file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \ file://ext/ffmpeg/gstffmpeg.h;beginline=1;endline=18;md5=ff65467b0c53cdfa98d0684c1bc240a9 \ - file://gst-libs/ext/ffmpeg/LICENSE;md5=524b5ee4bdbbf755ebbb76727ba80b0d \ - file://gst-libs/ext/ffmpeg/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://gst-libs/ext/ffmpeg/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ - file://gst-libs/ext/ffmpeg/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79d7bd3a379 \ - file://gst-libs/ext/ffmpeg/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" + file://gst-libs/ext/libav/LICENSE;md5=abc3b8cb02856aa7823bbbd162d16232 \ + file://gst-libs/ext/libav/COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://gst-libs/ext/libav/COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ + file://gst-libs/ext/libav/COPYING.LGPLv2.1;md5=e344c8fa836c3a41c4cbd79d7bd3a379 \ + file://gst-libs/ext/libav/COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" HOMEPAGE = "http://www.gstreamer.net/" DEPENDS = "gstreamer gst-plugins-base zlib" @@ -17,15 +17,20 @@ inherit autotools pkgconfig SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \ file://lower-rank.diff \ + file://configure-fix.patch \ " -SRC_URI[md5sum] = "0d23197ba7ac06ea34fa66d38469ebe5" -SRC_URI[sha256sum] = "ff36a138e5af4ed8dcc459d6d6521fe66ed31ec29ba9a924dc3675c6749a692e" +SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4" +SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62" PR = "r0" EXTRA_OECONF = "--with-ffmpeg-extra-configure=\"--target-os=linux\" " +# yasm not found, use --disable-yasm for a crippled build for libav +EXTRA_OECONF_append_x86-64 = " --disable-yasm " +EXTRA_OECONF_append_x86 = " --disable-yasm " + FILES_${PN} += "${libdir}/gstreamer-0.10/*.so" FILES_${PN}-dbg += "${libdir}/gstreamer-0.10/.debug" FILES_${PN}-dev += "${libdir}/gstreamer-0.10/*.la ${libdir}/gstreamer-0.10/*.a"
Signed-off-by: Shane Wang <shane.wang@intel.com> --- .../gst-ffmpeg-0.10.13/configure-fix.patch | 20 ++++++++++++++++++++ .../lower-rank.diff | 0 ...gst-ffmpeg_0.10.11.bb => gst-ffmpeg_0.10.13.bb} | 19 ++++++++++++------- 3 files changed, 32 insertions(+), 7 deletions(-) create mode 100644 meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/configure-fix.patch rename meta/recipes-multimedia/gstreamer/{gst-ffmpeg-0.10.11 => gst-ffmpeg-0.10.13}/lower-rank.diff (100%) rename meta/recipes-multimedia/gstreamer/{gst-ffmpeg_0.10.11.bb => gst-ffmpeg_0.10.13.bb} (58%)