Commit Graph

2128 Commits

Author SHA1 Message Date
Mans Rullgard
d4f8cecc86 configure: fix automatic processing of _extralibs in check_deps
This fixes the automatic use of $foo_extralibs when feature foo
is enabled indirectly through a _select or _suggest.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-09 21:20:58 +00:00
Diego Biurrun
998c1ee10c configure: Have protocols select network code instead of depending on it 2012-12-09 14:56:12 +01:00
Paul B Mahol
57231e4d5b tak: demuxer, parser, and decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-12-07 16:15:02 -05:00
Mans Rullgard
b57c1da81e arm: detect cpu features at runtime on Linux
This allows compiling optimised functions for features not enabled
in the core build and selecting these at runtime if the system has
the necessary support.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:04 +00:00
Mans Rullgard
b326755989 arm: rename ARMVFP config symbol to VFP
This is consistent with usual ARM nomenclature as well as with the
VFPV3 and NEON symbols which both lack the ARM prefix.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:04 +00:00
Mans Rullgard
637606de2d configure: arm: make _inline arch ext symbols depend on inline_asm
This makes --disable-inline-asm work as expected.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
7f2b3dcabd configure: arm: check inline and external asm support for extensions
This tests instruction set support in both inline and external asm.
If both fail, the base config option is disabled.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
c6ebc9faa2 configure: add check_insn function
The check_insn function tests an instruction in both inline asm and
standalone assembly, and sets _external/_inline config properties
accordingly.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
7fd90119bb configure: clean up check_inline_asm and check_as functions
The check_inline_asm function should check the actual C compiler,
not the one used for assembly files.  Usually these are the same,
but they might be different, typically when using a compiler other
than gcc.

The check_as should, as its name suggests, test the type of input
the AS command is used with, i.e. a standalond assembly (.S) file.

Finally, check for gnu assembler using the modified check_as as
this reflects actual usage.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
f0fe245bc3 configure: arm: set fast_clz and fast_unaligned in cpuflags section
These are properties of the targeted core and do not depend on
specific assembly support in the toolchain which if missing will
render the controlling options here disabled.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
1234c66a31 configure: arm: detect toolchain default arch version
Probe for the toolchain default architecture version if no --cpu flag
is present or an unknown cpu is specified.  Works with gcc, clang and
armcc.

This allows configuring based on the arch version even if it is not
explicitly specified to configure.  It also causes an explicit -march
flag to be added to CFLAGS and ASFLAGS, which in turn lets us do
proper instruction set tests with the assembler.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Mans Rullgard
9ebd45c2d5 configure: do not bypass cpuflags section if --cpu not given
This will allow arch-specific ways of determining the target
variant when none is specified on the command line.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-07 16:54:03 +00:00
Luca Barbato
1944d532a8 ppc: always use pic for shared libraries
CC: libav-stable@libav.org
2012-12-03 22:53:30 +01:00
Martin Storsjö
eb7018d2fc configure: Strip ordinals from mingw generated def files
The def files are used for generating import libraries for
other toolchains (in particular, for generating import libraries
for MSVC for DLLs built with mingw).

The def files produced by mingw/gcc contains ordinals for each
exported function. When MSVC tools generate import libraries
from such a def file, MSVC links to the DLL by the ordinals
instead of linking by name.

Since the def files aren't maintained by hand, the ordinal
numbers are assigned (more or less) randomly and any caller
linking to the libs by ordinals will break as soon as the libraries
export more/fewer functions.

Therefore, strip out the ordinals from the generated def files,
to make users link to the libraries by name.

Callers linking to the DLLs using the gcc provided import library
link by name as they should.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-12-03 13:39:47 +02:00
Mans Rullgard
66371c2851 configure: arm: detect default thumb state of compiler
This makes configure honour the compiler default if thumb is not
explicitly enabled or disabled.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-03 11:06:06 +00:00
Diego Biurrun
31f16dc1a1 build: Make the ISMV muxer select the MOV muxer
They share the same code, so building one w/o the other makes no sense.
2012-12-03 01:20:10 +01:00
Mans Rullgard
81dfa21ec9 configure: move arm arch extensions to a separate variable
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-03 00:15:19 +00:00
Diego Biurrun
d173ede1b7 configure: avplay now depends on avresample 2012-12-02 23:39:35 +01:00
Mans Rullgard
7e9e7cc236 configure: fix indentation in option parsing loop
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-12-01 23:16:23 +00:00
Martin Storsjö
3bbe63d1a4 configure: Use headers in the check for _beginthreadex for w32threads
When targeting the metro API subset, this function still exists in
the link libraries, but is excluded from the headers. This makes
sure w32threads is automatically disabled when targeting this API
subset (since not all the necessary functions for it are available).

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-11-30 16:57:02 +02:00
Martin Storsjö
7e6a11bcf7 avutil: Use a configure check to enable windows console functions
Not all versions or API subsets of windows have these functions.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-11-30 16:56:57 +02:00
Martin Storsjö
15caccb9be cmdutils: Use a configure check for enabling CommandLineToArgvW
This simplifies the condition to avoid hardcoding the systems
where the function exists. This also simplifies support for
newer Windows API subsets where this function doesn't exist,
such as Windows Phone 8 and the "metro" API subset of Windows 8.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-11-29 18:19:36 +02:00
Martin Storsjö
54fd593a0e configure: Enable avconv filter dependencies automatically
This makes sure minimal configurations such as
"--disable-everything --enable-avconv" will enable the filters
necessary for running avconv, instead of just keeping avconv
disabled (even if the user specified "--enable-avconv").

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-11-27 17:05:01 +02:00
Diego Biurrun
d89f2fa970 configure: Add separate list for libraries and use where appropriate 2012-11-26 22:46:07 +01:00
Sean McGovern
f2ce813e37 configure: suncc: Add compiler arch support for Nehalem & Sandy Bridge
GCC does not appear to have a -march= string for Westmere, which is a
bit surprising as it has a few more instructions than a Nehalem, but
a few less than a Sandy Bridge.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-11-25 14:15:30 +01:00
Mans Rullgard
33db40f8d3 configure: sort cpuflags section by architecture
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-23 12:07:23 +00:00
Mans Rullgard
457cc333b4 configure: properly support DEC/Compaq compiler
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-23 12:07:11 +00:00
Mans Rullgard
c262649291 build: add rules to generate preprocessed source files
This is useful for debugging.  Dependencies for these files are not
generated due to limitations in many compilers.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-23 12:03:32 +00:00
Diego Biurrun
3bd1eacd2a configure: Refactor CPPFLAGS settings for glibc/uclibc
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-18 12:00:18 +00:00
Mans Rullgard
5873b623a9 configure: add basic support for ARM AArch64
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-18 12:00:18 +00:00
Mans Rullgard
8f7b814f54 build: set -U__STRICT_ANSI__ for newlib
This is (erroneously) required to enable various things in the
newlib headers.  As cygwin uses newlib, it is covered by this.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-18 12:00:17 +00:00
Mans Rullgard
5af530f5a9 parisc: work around bug in gcc 4.3 and later
A bug in tail call optimisation in gcc 4.3 and later on parisc causes
numerous tests to fail.  Disabling this optimisation gives a working
build.  See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55023

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-17 17:54:28 +00:00
Martin Storsjö
9eded0fe41 configure: Check for -Werror parameters on clang
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-11-15 18:22:03 +02:00
Diego Biurrun
e28b7553ae configure: Add option to disable all command line programs 2012-11-14 23:03:36 +01:00
Mans Rullgard
7f1fcaf0e6 ppc: do not pass redundant compiler flags
The -mpowerpc64 and -mpowerpc-gfxopt flags are implicitly set by
-mcpu as needed.  Passing them explicitly is redundant and can
conflict with user-supplied flags.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-14 13:50:43 +00:00
Mans Rullgard
9eda2a85c6 configure: remove support for -n flag in print_enabled()
This flag is no longer used.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-11-12 10:30:02 +00:00
Diego Biurrun
b8e8a07c6c x86: Require an assembler able to cope with AVX instructions
All modern assemblers have this capability.  Older NASM versions
that lack the capability produce code that crashes at runtime,
so it's better to error out during the build process instead.

CC: libav-stable@libav.org
2012-11-11 20:43:28 +01:00
Anton Khirnov
e5e1a06e44 configure: add lavu dependency to lavr/lavfi .pc files 2012-11-11 15:45:18 +01:00
James Zern
12776d5d2a libvpxenc: Allow enabling constrained quality (CQ) mode
The CQ mode was introduced in libvpx 0.9.6.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-11-08 00:01:54 +02:00
Mans Rullgard
d16c4aebba configure: fix print_config() with broke awks
Some awk versions do not treat the result of unary + on a (numeric)
string as numeric, giving wrong results when used in a boolean context
Using unary - instead is logically equivalent works as expected.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-30 13:33:29 +00:00
Mans Rullgard
f454e87923 configure: rewrite print_config() function using awk
This is much faster with slow shells and noticeably faster even
with bash on a fast Linux system.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-30 10:28:25 +00:00
Martin Storsjö
9b500b8f6c avcodec: Add a RFC 3389 comfort noise codec
This isn't too useful as a normal codec, but can be used in
voip style applications. The decoder updates the noise
generator parameters when a packet is given to it for decoding,
but if called with an empty packet, it generates more noise
according to the last parameters.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-10-29 22:00:43 +02:00
Mans Rullgard
4cd217c065 configure: detect sparc64 automatically
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-27 18:24:55 +01:00
Mans Rullgard
1aa07aa21c configure: fix tests for 2-arg math functions
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-26 22:50:42 +01:00
Mans Rullgard
6aa93689ab configure: sanitise sparc vis check
It is wrong to force -mcpu=ultrasparc when checking for vis.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-26 12:29:03 +01:00
Michael Kostylev
eadfb0560a configure: recognise more sparc variants as --cpu argument
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-26 12:29:03 +01:00
Diego Biurrun
2a91ada828 avutil: Make LZO decoder code configure-time selectable 2012-10-25 11:49:49 +02:00
Mans Rullgard
a6e9d64977 configure: detect parisc64 automatically
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-24 16:26:51 +01:00
Mans Rullgard
56203596ae configure: detect ppc64 automatically
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-24 16:26:51 +01:00
Mans Rullgard
2acda282eb configure: detect mips64 automatically
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-10-24 16:26:51 +01:00