[OE-core] [PATCH V2] gstreamer: gst-ffmpeg: fix build issues for libav

Saul Wold sgw at linux.intel.com
Thu Aug 16 18:22:23 UTC 2012


On 08/08/2012 11:49 AM, Yao Zhao wrote:
> 1.The included libav configure is not generated by autotools
>    modify recipe to use correct toolchain wrapper with configure
>
> 2.add bzip2 dependency explicitly.
>    or configure will detect whether libbz2 is installed, if bzip2
> is triggered earlier then it will be detected, if not then won't
>
> 3.backport libav_e500mc.patch from upstream to patch configure to
> disable-altivec if it is e500mc.
>
> 4.move the GSTREAMER_DEBUG to libav's configure, it is not the
> option for the main configure.
>
> Signed-off-by: Yao Zhao <yao.zhao at windriver.com>
> ---
>   .../gst-ffmpeg-0.10.13/libav_e500mc.patch          |   21 ++++++++++++++++++++
>   .../gstreamer/gst-ffmpeg_0.10.13.bb                |   16 ++++++++++++---
>   2 files changed, 34 insertions(+), 3 deletions(-)
>   create mode 100644 meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/libav_e500mc.patch
>
> diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/libav_e500mc.patch b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/libav_e500mc.patch
> new file mode 100644
> index 0000000..eba4988
> --- /dev/null
> +++ b/meta/recipes-multimedia/gstreamer/gst-ffmpeg-0.10.13/libav_e500mc.patch
> @@ -0,0 +1,21 @@
> +diff --git a/gst-libs/ext/libav/configure b/gst-libs/ext/libav/configure
> +index 8473069..4f74952 100755
> +--- a/gst-libs/ext/libav/configure
> ++++ b/gst-libs/ext/libav/configure
> +Fix gst-ffmpeg build issues for libav on e500mc (fsl-p4080)
> +
> +Upstream-Status: Backport
> +
> +Signed-off-by: Yao Zhao <yao.zhao at windriver.com>
> +
> +@@ -2210,6 +2210,10 @@ elif enabled ppc; then
> +             cpuflags="-mcpu=cell"
> +             enable ldbrx
> +         ;;
> ++        e500mc)
> ++            cpuflags="-mcpu=e500mc"
> ++            disable altivec
> ++        ;;
> +         e500v2)
> +             cpuflags="-mcpu=8548 -mhard-float -mfloat-gprs=double"
> +             disable altivecsgw at linux.intel.com
> diff --git a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb
> index a166290..efab2cf 100644
> --- a/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb
> +++ b/meta/recipes-multimedia/gstreamer/gst-ffmpeg_0.10.13.bb
> @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
>                       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"
> +DEPENDS = "gstreamer gst-plugins-base zlib bzip2"
>
>   inherit autotools pkgconfig
>
> @@ -19,15 +19,25 @@ SRC_URI = "http://gstreamer.freedesktop.org/src/${BPN}/${BPN}-${PV}.tar.bz2 \
>              file://lower-rank.diff \
>              file://configure-fix.patch \
>              file://h264_qpel_mmx.patch \
> +           file://libav_e500mc.patch \
>   "
>
>   SRC_URI[md5sum] = "7f5beacaf1312db2db30a026b36888c4"
>   SRC_URI[sha256sum] = "76fca05b08e00134e3cb92fa347507f42cbd48ddb08ed3343a912def187fbb62"
>
> -PR = "r3"
> +PR = "r4"
>
>   GSTREAMER_DEBUG ?= "--disable-debug"
> -EXTRA_OECONF = "--with-ffmpeg-extra-configure=\"--target-os=linux\" ${GSTREAMER_DEBUG}"
> +
> +FFMPEG_EXTRA_CONFIGURE = "--with-ffmpeg-extra-configure"
> +FFMPEG_EXTRA_CONFIGURE_COMMON_ARG = "--target-os=linux \
> +  --cc='${CC}' --as='${CC}' --ld='${CC}' --nm='${NM}' --ar='${AR}' \
> +  --ranlib='${RANLIB}' \
> +  ${GSTREAMER_DEBUG}"
> +FFMPEG_EXTRA_CONFIGURE_COMMON = \
> +'${FFMPEG_EXTRA_CONFIGURE}="${FFMPEG_EXTRA_CONFIGURE_COMMON_ARG}"'
> +
> +EXTRA_OECONF = "${FFMPEG_EXTRA_CONFIGURE_COMMON}"
>
>   # yasm not found, use --disable-yasm for a crippled build for libav
>   EXTRA_OECONF_append_x86-64 = " --disable-yasm "
>

Merged into OE-Core

Thanks
	Sau!





More information about the Openembedded-core mailing list