gst1-libav: switch to unbundled

It avoids the crazy in handling all of the ffmpeg options here as well,
and potentially avoids target code duplication, hence resulting in a
size reduction.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
[Thomas: extend help text as suggested by Arnout.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Gustavo Zacarias 2016-03-30 16:36:39 -03:00 committed by Thomas Petazzoni
parent 58102865d6
commit 5dcb8aa0ba
2 changed files with 10 additions and 74 deletions

View File

@ -1,5 +1,7 @@
config BR2_PACKAGE_GST1_LIBAV config BR2_PACKAGE_GST1_LIBAV
bool "gst1-libav" bool "gst1-libav"
select BR2_PACKAGE_FFMPEG
select BR2_PACKAGE_FFMPEG_SWSCALE
select BR2_PACKAGE_GST1_PLUGINS_BASE select BR2_PACKAGE_GST1_PLUGINS_BASE
help help
GStreamer plugin (formerly gst-ffmpeg). GStreamer plugin (formerly gst-ffmpeg).
@ -7,4 +9,7 @@ config BR2_PACKAGE_GST1_LIBAV
This package contains GStreamer plugins based on This package contains GStreamer plugins based on
the libav project. the libav project.
The codecs, muxers, bitstreams and filters to build can be
selected in the ffmpeg package.
http://gstreamer.freedesktop.org/ http://gstreamer.freedesktop.org/

View File

@ -7,79 +7,10 @@
GST1_LIBAV_VERSION = 1.8.0 GST1_LIBAV_VERSION = 1.8.0
GST1_LIBAV_SOURCE = gst-libav-$(GST1_LIBAV_VERSION).tar.xz GST1_LIBAV_SOURCE = gst-libav-$(GST1_LIBAV_VERSION).tar.xz
GST1_LIBAV_SITE = http://gstreamer.freedesktop.org/src/gst-libav GST1_LIBAV_SITE = http://gstreamer.freedesktop.org/src/gst-libav
GST1_LIBAV_DEPENDENCIES = host-pkgconf gstreamer1 gst1-plugins-base GST1_LIBAV_CONF_OPTS = --with-system-libav
GST1_LIBAV_CONF_EXTRA_OPTS = --cross-prefix=$(TARGET_CROSS) --target-os=linux GST1_LIBAV_DEPENDENCIES = \
host-pkgconf ffmpeg gstreamer1 gst1-plugins-base \
ifeq ($(BR2_PACKAGE_ZLIB),y) $(if $(BR2_PACKAGE_BZIP2),bzip2) \
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-zlib $(if $(BR2_PACKAGE_XZ),xz)
GST1_LIBAV_DEPENDENCIES += zlib
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-zlib
endif
ifeq ($(BR2_PACKAGE_BZIP2),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-bzlib
GST1_LIBAV_DEPENDENCIES += bzip2
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-bzlib
endif
# Generic CPU setup for bundled ffmpeg
ifneq ($(call qstrip,$(BR2_GCC_TARGET_CPU)),)
GST1_LIBAV_CONF_EXTRA_OPTS += --cpu=$(BR2_GCC_TARGET_CPU)
else ifneq ($(call qstrip,$(BR2_GCC_TARGET_ARCH)),)
GST1_LIBAV_CONF_EXTRA_OPTS += --cpu=$(BR2_GCC_TARGET_ARCH)
endif
ifeq ($(BR2_X86_CPU_HAS_MMX),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-yasm
GST1_LIBAV_DEPENDENCIES += host-yasm
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-yasm
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-mmx
endif
ifeq ($(BR2_X86_CPU_HAS_SSE),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-sse
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-sse
endif
ifeq ($(BR2_X86_CPU_HAS_SSSE3),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-ssse3
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-ssse3
endif
# Explicitly disable everything that doesn't match for ARM
# FFMPEG "autodetects" by compiling an extended instruction via AS
# This works on compilers that aren't built for generic by default
ifeq ($(BR2_ARM_CPU_ARMV4),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-armv5te
endif
ifeq ($(BR2_ARM_CPU_ARMV6)$(BR2_ARM_CPU_ARMV7A),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-armv6
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-armv6 --disable-armv6t2
endif
ifeq ($(BR2_ARM_CPU_HAS_NEON),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-neon
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-neon
endif
ifeq ($(BR2_ARM_CPU_HAS_VFPV2),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-vfp
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-vfp
endif
ifeq ($(BR2_POWERPC_CPU_HASH_ALTIVEC),y)
GST1_LIBAV_CONF_EXTRA_OPTS += --enable-altivec
else
GST1_LIBAV_CONF_EXTRA_OPTS += --disable-altivec
endif
GST1_LIBAV_CONF_OPTS = \
--with-libav-extra-configure="$(GST1_LIBAV_CONF_EXTRA_OPTS)"
$(eval $(autotools-package)) $(eval $(autotools-package))