Configure ffmpeg to use freetype and fontconfig
if those packages are selected.
ffmpeg freetype support require fenv.h, which is not available in uClibc or
musl, except for certain archs / depending on specific configuration
options, so only enable it for glibc.
[Peter: only enable on glibc, simplify logic]
Signed-off-by Stephen M. Kenton <skenton@ou.edu>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since a while, the semantic of BR2_PREFER_STATIC_LIB has been changed
from "prefer static libraries when possible" to "use only static
libraries". The former semantic didn't make much sense, since the user
had absolutely no control/idea of which package would use static
libraries, and which packages would not. Therefore, for quite some
time, we have been starting to enforce that BR2_PREFER_STATIC_LIB
should really build everything with static libraries.
As a consequence, this patch renames BR2_PREFER_STATIC_LIB to
BR2_STATIC_LIBS, and adjust the Config.in option accordingly.
This also helps preparing the addition of other options to select
shared, shared+static or just static.
Note that we have verified that this commit can be reproduced by
simply doing a global rename of BR2_PREFER_STATIC_LIB to
BR2_STATIC_LIBS plus adding BR2_PREFER_STATIC_LIB to Config.in.legacy.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
ffmpeg currently uses BR2_GCC_TARGET_TUNE as the --cpu option
value. However, there are multiple architectures for which
BR2_GCC_TARGET_TUNE is not used. After inspecting the ffmpeg configure
script, we concluded that using the BR2_GCC_TARGET_CPU value if
available, or the BR2_GCC_TARGET_ARCH value as a fallback was the
appropriate behavior.
This allows to remove the reference to BR2_GCC_TARGET_TUNE, which is
one step towards the removal of this option.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As noted by Arnout, not all ARMv6 have the VFP FPU, therefore instead
of using a condition on ARMv6 or ARMv7-A, this commit changes to use a
condition on BR2_ARM_CPU_HAS_VFPV2.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Instead of using the Config.in options for each individual ARM core,
use the newly introduced BR2_ARM_CPU_ARM* options, which exist per ARM
architecture.
This commit is a blind conversion from the per-core options to the
per-architecture. It has the benefit of enabling the ARMv6
optimizations on all ARMv7-A cores, not only A5, A8, A9 and
A15. However, it doesn't fix the condition for
--enable-vfp/--disable-vfp for ARMv6 cores that don't have a FPU, it
is fixed in a follow-up commit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
BR2_arm10 has been removed in commit
d60489a6e5 ("arch: remove BR2_arm10t"),
so there is no point in keeping a reference to it in the ffmpeg
package.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
A lot of packages ignored BR2_ENABLE_DEBUG. This patch simplifies the handling of
this option by adding the corresponding configure option to the global Makefile
for target packages.
For host packages --disable-debug is added to the global Makefile.
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS,
make the same change for FOO_CONF_OPT.
Sed command used:
find * -type f | xargs sed -i 's#_CONF_OPT\>#&S#g'
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Somewhere between 1.2.7 and 2.3.1 (version bump in bf76f43191)
the LICENSE file has been renamed to LICENSE.md, so `make legal-info`
is currently broken. Update to the current file name.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The ffmpeg does not understand the PKG_CONFIG env variable,
so it throws a line like this at the end of its configuration:
WARNING: .../output/host/usr/bin/arm-none-linux-gnueabi-pkg-config not found, library detection may fail.
Apparently, some of the indevs and outdevs need a pkg-config.
This patch adds the --pkg-config to let ffmpeg know where it
is.
[Thomas: remove unrelated formatting change.]
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Rather than hard-code --disable-debug, selectively enable
or disable based on BR2_ENABLE_DEBUG.
(Similar to gst1-libav.)
[Thomas: do not make other changes such as reformatting the
--prefix=/usr line.]
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Commit 62ab07ef76 added a bunch
of hard-coded options. Some of these options are then again
added (or negated) based on kconfig settings. This patch removes
the hard coded swscale and postproc settings, as they are enabled
or disabled later. It also moves the --disable-pic lower
as an else clause to the part that adds --enable-pic.
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- remove obsolete option --disable-vis
- add patch to fix compile error with uClibc
- add patch to fix compile error in freerdp
Compile-tested against all packages depending on ffmpeg using this defconfig:
BR2_TOOLCHAIN_EXTERNAL=y
BR2_PACKAGE_GSTREAMER=y
BR2_PACKAGE_GST_FFMPEG=y
BR2_PACKAGE_MPD=y
BR2_PACKAGE_MPD_FFMPEG=y
BR2_PACKAGE_XORG7=y
BR2_PACKAGE_FREERDP=y
BR2_PACKAGE_OPENCV=y
BR2_PACKAGE_OPENCV_WITH_FFMPEG=y
BR2_PACKAGE_MEDIASTREAMER=y
BR2_PACKAGE_MINIDLNA=y
VLC also compiled when the build of vlc-static is disabled in Makefiles,
otherwise this known error occurs:
http://autobuild.buildroot.net/results/022/022252176c051ff3365b2cb820f32aafc802803a/
Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The toolchain currently doesn't build for nommu ARM and is in need of
serious work.
Problem is there are no emulation targets and real ARM(7TDMI/720T/740T)
hardware that's capable of running linux (enough memory, having a
memory controller...) is VERY rare and uses very old versions to
make it usable.
The ARM nommu focus should go into Cortex M series processors that are
obtainable at reasonable cost on modern hardware that has external
memory controllers.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This reverts commit 4ec35e76b8.
Now that -mtext-section-literals is specified in the xtensa ABI this fix
is no longer needed.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This patch removes deprecated symbol BR2_HAVE_DOCUMENTATION and all its
usage. Additionally, it removes the now unused BR2_DEPRECATED_SINCE_2012_11.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Compile tested the following packages which depend on ffmpeg:
freerdp
mpd
gstreamer
For minidlna please see the separate patch for version bump to 1.1.1
Some compile options were taken from OpenELEC:
https://github.com/OpenELEC/OpenELEC.tv/blob/master/packages/multimedia/ffmpeg/build
[Peter: fix ARM VFP option, target tune, enable PIC for !static]
Signed-off-by: Bernd Kuhls <berndkuhls@hotmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The ffmpeg package generates libraries that are too large for the xtensa
default placement of literals in a dedicated section. Use
-mtext-section-literal to place literals in the text section.
Fixes
http://autobuild.buildroot.net/results/606/60670d35f16c3b8fe19debf7f8e40a046a579520/
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>