1850 Commits

Author SHA1 Message Date
Mans Rullgard
3f8040db3e configure: improve pkg-config support
This adds helper functions for checking packages with pkg-config
and managing the associated flags.

Note that pkg-config use is still discouraged due to widespread
poor practices resulting in broken flags in many situations.  A
few badly designed packages require flags only obtainable using
pkg-config, and these functions are intended for those cases.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-11 20:13:26 +00:00
Mans Rullgard
edaf1ae276 configure: allow checking multiple functions in check_func_headers()
This makes it possible to pass a space-separated list of functions
to check_func_headers and check_lib2.  If any function is missing,
none are enabled as available, so this should only be used for
all-or-nothing sets, i.e. groups in which none will be used if any
one is missing.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-11 20:13:22 +00:00
Philip Langdale
b33fa8a1cd CrystalHD decoder support v7
The Broadcom CrystalHD decoder chips provide hardware video
decoding for a number of video formats. It does so using a
memory:memory interface where a compressed bitstream is fed
in and decompressed pictures are copied out. As such, it works
independent of any graphics hardware in the system.

Features supported in this initial version:
* Support for Linux (using current drivers/library from git.wilsonet.com)
* Support for 70015 hardware
* Formats: MPEG2, MPEG4 Part 2, H.264, VC1 and DivX 3.11 (untested)
* Progressive content
* Non-H.264 Interlaced content
* H.264 MBAFF content

Features missing in this initial version:
* Support for OSX (might work - untested)
* Support for Windows
* Support for 70012 hardware
* H.264 PAFF content

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-03-10 20:17:19 +01:00
Stefano Sabatini
1a204f0760 framebuffer device demuxer 2011-03-08 17:33:23 +01:00
Mans Rullgard
42ccd2fcf8 Use --sysroot flag for clang
Although not documented, clang does support the --sysroot flag, and it
does the right thing.  Use this flag intead of -isysroot which only
applies to header file searches, not the linker.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 00ba041cb396f88f68a1bf7907e7c98ded3760ab)
2011-03-01 13:55:54 +01:00
Mans Rullgard
00ba041cb3 Use --sysroot flag for clang
Although not documented, clang does support the --sysroot flag, and it
does the right thing.  Use this flag intead of -isysroot which only
applies to header file searches, not the linker.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-28 02:55:50 +00:00
Reimar Döffinger
bbd289aa18 configure: document FATE_SAMPLES env var in --help text
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 52b3cc6047e2b93e8a798734c65904243c1a7be3)
2011-02-28 00:34:38 +01:00
Mans Rullgard
1a9fc2b93b fate: get samples location from env var if not explicitly set
Use the FATE_SAMPLES environment variable if samples location
is not set with the --samples configure option or on the make
command line.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit aa3805a486831d9c9e40cc9e897c048d60b51c1a)
2011-02-28 00:34:38 +01:00
Reimar Döffinger
52b3cc6047 configure: document FATE_SAMPLES env var in --help text
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-26 12:52:13 +00:00
Mans Rullgard
aa3805a486 fate: get samples location from env var if not explicitly set
Use the FATE_SAMPLES environment variable if samples location
is not set with the --samples configure option or on the make
command line.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-26 11:51:55 +00:00
Dave Yeo
f183cfeb99 OS/2: lxlite should use stdout
This causes lxlite to use stdout instead of vioXXX
functions. This improves fate and build logs readability.
Affects OS/2 only.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit cc4e9d2a24a9ca79d4e912df21053426411aa14b)
2011-02-26 03:16:06 +01:00
Dave Yeo
cc4e9d2a24 OS/2: lxlite should use stdout
This causes lxlite to use stdout instead of vioXXX
functions. This improves fate and build logs readability.
Affects OS/2 only.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-25 19:48:19 +00:00
Stefano Sabatini
bd8e750300 Port drawtext filter by Hemanth from the libavfilter soc repo, with
the following additions:
* support to anti-aliased glyph rendering
* support to UTF-8 text and Unicode chars rendering
* support for RGB packed formats

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-02-22 01:49:45 +01:00
Mans Rullgard
cdeba2de82 x86: check for AVX support
This adds configure and runtime checks for AVX support on x86 CPUs.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 87f1355f9b4fc11414d0e6a91404203c2745f89f)
2011-02-20 19:05:47 +01:00
Mans Rullgard
87f1355f9b x86: check for AVX support
This adds configure and runtime checks for AVX support on x86 CPUs.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-20 13:20:42 +00:00
Reinhard Tartler
7ffe76e540 Merge libavcore into libavutil
Done to keep ABI compatible. Otherwise this is just silly
2011-02-16 23:00:30 +01:00
Reinhard Tartler
737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Mans Rullgard
e0099fdaac configure: fix non-standard regex used with expr
The colon operator of expr always anchors the pattern at the start
of the string.  An explicit ^ in the pattern has unspecified
behaviour, so remove it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 3ad464bfc7df6d0f68c7df9c907089b84d92ab75)
2011-02-14 23:58:20 +01:00
Mans Rullgard
48e0556739 configure: report full gcc version string
This makes the cc_ident value, which is used in FATE reports, include
all interesting parts of the gcc version string.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 5d57846bba7010dc6ee65c3503dd06600e5441a5)
2011-02-14 23:58:20 +01:00
Mans Rullgard
8429368d22 configure: add cleanws() function
This function removes leading and trailing spaces and collapses
multiple spaces into one.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit bb7a22b5840e56c034227ad596b1165c03f2da27)
2011-02-14 23:58:19 +01:00
Mans Rullgard
3ad464bfc7 configure: fix non-standard regex used with expr
The colon operator of expr always anchors the pattern at the start
of the string.  An explicit ^ in the pattern has unspecified
behaviour, so remove it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13 21:00:03 +00:00
Mans Rullgard
5d57846bba configure: report full gcc version string
This makes the cc_ident value, which is used in FATE reports, include
all interesting parts of the gcc version string.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13 16:22:14 +00:00
Mans Rullgard
bb7a22b584 configure: add cleanws() function
This function removes leading and trailing spaces and collapses
multiple spaces into one.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-13 16:22:14 +00:00
Mans Rullgard
3ae4484cdf configure: remove early check_deps $ARCH_EXT_LIST
The early disabling of irrelevant arch extensions is no longer
required, and removing it makes dependencies involving these
work as expected.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 4b884207eb7319577f8ceb94a56f42c5ac0ab294)
2011-02-13 00:52:51 +01:00
Mans Rullgard
4b884207eb configure: remove early check_deps $ARCH_EXT_LIST
The early disabling of irrelevant arch extensions is no longer
required, and removing it makes dependencies involving these
work as expected.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-11 18:45:21 +00:00
François Revol
68b2336d13 Fix HOSTLIBS on Haiku
Haiku does not have a separate libm, so do not try to link to it.

Signed-off-by: François Revol <revol@free.fr>
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit f59c4bd625839dbe1e099c6a8b38988108883623)
2011-02-09 03:33:55 +01:00
Anssi Hannula
5fb06ffac7 configure: check yasm/nasm for working pextrd opcode
NASM versions older than 2.08 fail to build ffmpeg with several
"error: operation size not specified" errors but this is not caught in
configure.

Fix that by checking if "pextrd [eax], xmm0, 1" works in configure.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 48545a8f724247853c5b1d4e0a24e3ea3ee06515)
2011-02-09 03:30:01 +01:00
François Revol
f59c4bd625 Fix HOSTLIBS on Haiku
Haiku does not have a separate libm, so do not try to link to it.

Signed-off-by: François Revol <revol@free.fr>
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-08 21:16:02 +00:00
Anssi Hannula
48545a8f72 configure: check yasm/nasm for working pextrd opcode
NASM versions older than 2.08 fail to build ffmpeg with several
"error: operation size not specified" errors but this is not caught in
configure.

Fix that by checking if "pextrd [eax], xmm0, 1" works in configure.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-02-06 11:43:35 -05:00
Mans Rullgard
9873463c2f Enable native build on QNX/x86
(cherry picked from commit d33ed7b36762bf26694bdfa18e0d811e26c996f8)
2011-01-31 18:25:40 +01:00
Mans Rullgard
d33ed7b367 Enable native build on QNX/x86 2011-01-30 01:05:39 +00:00
Mans Rullgard
744c166422 armcc: filter out non-gcc options from ASFLAGS
This allows passing armcc-specific flags with --extra-cflags without
choking the assembler.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit d0f0f6287c7fd29474e58fe1b86db2885f20c457)
2011-01-26 03:43:31 +01:00
Mans Rullgard
9c5c348eef configure: add filter_out() function
This adds a function to filter out words matching a pattern
from a list.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 9d201b260627aacdb00e4a54622849aca11d85ee)
2011-01-26 03:43:31 +01:00
Daniel Verkamp
121053b2d6 configure: move network tests before results are needed
This moves network_extralibs setup before use so that the link tests
for network functions work correctly.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 54fe299b885109556c72538977f9eefb969a0d87)
2011-01-26 03:43:30 +01:00
Mans Rullgard
a98ffb2bc8 Add CFLAGS needed by PathScale compiler
The PathScale compiler miscompiles wrapping arithmetic without
these flags.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 5f3b8314a4a9120e0c6d6f153168c37eb849dbe8)
2011-01-26 03:43:28 +01:00
Mans Rullgard
355d05280a Disable symbol versioning on some BSDs
Dragonfly, NetBSD, and OpenBSD do not support symbol versioning
although our link test passes.  Disable it explicitly for these
systems.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit a1e4b3f6d322f61fc8ccae6ecd2586e04ceb7026)
2011-01-26 03:43:28 +01:00
Mans Rullgard
d0f0f6287c armcc: filter out non-gcc options from ASFLAGS
This allows passing armcc-specific flags with --extra-cflags without
choking the assembler.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-25 20:32:08 +00:00
Mans Rullgard
9d201b2606 configure: add filter_out() function
This adds a function to filter out words matching a pattern
from a list.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-25 20:32:08 +00:00
Daniel Verkamp
54fe299b88 configure: move network tests before results are needed
This moves network_extralibs setup before use so that the link tests
for network functions work correctly.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-25 13:42:15 +00:00
Mans Rullgard
5f3b8314a4 Add CFLAGS needed by PathScale compiler
The PathScale compiler miscompiles wrapping arithmetic without
these flags.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-24 01:59:15 +00:00
Mans Rullgard
a1e4b3f6d3 Disable symbol versioning on some BSDs
Dragonfly, NetBSD, and OpenBSD do not support symbol versioning
although our link test passes.  Disable it explicitly for these
systems.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-23 21:33:31 +00:00
Mans Rullgard
c7892b418b Fix libavformat version extraction in configure
This fixes shared library builds broken by
50196a982bf7c8be9b41053fa0975473c217e709

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 4ad66441c9fdd2d33d59e36a897a45828f3062f3)
2011-01-23 19:32:07 +01:00
Mans Rullgard
727a20cb60 configure: better test for mktemp
Some variants of mktemp require a template, so provide one when
checking for the command.  We already supply a template in the
subsequent uses of mktemp.

Thanks to Michael Kostylev.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit a210bce298281aa08516893580089d102afb2e4d)
2011-01-23 19:32:06 +01:00
Mans Rullgard
3df0297567 configure: simplify exit traps
This does the same thing and also fixes the trapping in
some (possibly broken) shells.

Suggested by Michael Kostylev.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 93bb9ff08e533e30ceec2fa53a25483faf63f633)
2011-01-23 19:32:06 +01:00
Michael Niedermayer
002bd34603 Fix out of source tree builds of libmpcodecs. 2011-01-23 16:58:32 +01:00
Mans Rullgard
4ad66441c9 Fix libavformat version extraction in configure
This fixes shared library builds broken by
50196a982bf7c8be9b41053fa0975473c217e709

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-21 21:51:06 +00:00
Mans Rullgard
a210bce298 configure: better test for mktemp
Some variants of mktemp require a template, so provide one when
checking for the command.  We already supply a template in the
subsequent uses of mktemp.

Thanks to Michael Kostylev.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-21 20:54:03 +00:00
Mans Rullgard
93bb9ff08e configure: simplify exit traps
This does the same thing and also fixes the trapping in
some (possibly broken) shells.

Suggested by Michael Kostylev.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-01-21 20:47:58 +00:00
Mans Rullgard
a091006d3d Make demuxers auto-select parsers they need
This makes configure --disable-everything --enable-demuxer=foo
work as expected.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit c2dd0e9eba1dfcba42c5c72654b7aac7f5935d3b)
2011-01-21 20:36:01 +01:00
Mans Rullgard
bb71141450 Make PNG test depend on PNG codec
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit f0f54c297f1283025d423c4aed817ae31ba549cb)
2011-01-21 20:36:00 +01:00