Commit Graph

2335 Commits

Author SHA1 Message Date
Diego Biurrun dc4d726bab build: Add separate hidden config option for the intrax8 code
This allows for slightly cleaner dependency specification.
2014-01-15 15:23:46 +01:00
Janne Grunau b7b17ed66e aarch64: add cpuflags support for NEON and VFP
NEON and VFP are currently mandatory for all ARMv8 profiles. Both are
handled as extensions as far as cpuflags are concerned. This is
consistent with handling x86_64 which always has SSE2, but still
handles it as an extension.
2014-01-15 12:05:09 +01:00
Janne Grunau 032d4da8af aarch64: configure: set arch dependent features
Stack is always 16 byte aligned and clz, 64bit operations and unaligned
memory access are fast in aarch64 mode on ARMv8.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-01-14 22:19:27 +01:00
Robert Krüger d8e763fda7 vf_yadif: Relicense from GPL to LGPL
All copyright holders have agreed to the relicensing.
2014-01-14 00:04:59 +01:00
Martin Storsjö 99e2012523 x86/arm: Add clobber tests to libavresample
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-13 14:13:27 +02:00
Martin Storsjö 44a0a98f92 arm: Add an option for making sure NEON registers aren't clobbered
This is pretty much based on the same test for XMM registers.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-11 00:03:00 +02:00
Maxim Polijakowski e6f0bb6527 ATRAC3+ decoder
Cleanup by Diego Biurrun.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2014-01-09 19:33:07 +01:00
Martin Storsjö 9409c9bdbf configure: Disable networking if winsock2.h is available but winsock functions aren't
Previously, if neither of the checks for the closesocket function
succeeded, we still kept winsock2.h and networking in general
enabled.

When targeting the WinRT API subset, the winsock2.h header is
available (making the check for it succeed, giving the impression
that winsock is available), but tests that actually try to use
such a function will fail. In this case, disable the winsock2.h
feature and networking in general, as if the winsock2.h header
test would have failed in the first place.

Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-06 18:55:04 +02:00
Luca Barbato e61b8fa560 configure: Update freetype check to follow upstream
The freetype tutorial suggests to use #include FT_FREETYPE_H.

Bug-Id: 616
2014-01-06 11:44:10 +01:00
Diego Biurrun 52ccc4a0ec configure: Support preprocessor macros as header names
New versions of FreeType have moved the location of their API
header(s) and hide the location behind a macro.

Since the location changes between versions and no other way
to know the location exists, this workaround becomes necessary.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-01-05 11:48:13 +01:00
Diego Biurrun bd0fba8797 configure: Explicitly disable w32threads if the test for it fails
This avoids false positive enabling of w32threads if explicitly
requested on the command line, but dependencies are missing.
2013-12-25 13:00:49 +01:00
Justin Ruggles be7c323176 Add a libwebp encoder 2013-12-21 17:01:42 -05:00
Diego Biurrun 8558595a59 configure: Express atomics/thread deps through the dependency system 2013-12-19 20:53:56 +01:00
Diego Biurrun 11bb5e10c3 build: Define __printf__ to __gnu_printf__ on MinGW*/gcc
This is necessary to avoid GCC assuming MS style printf arguments.
2013-12-16 15:21:42 +01:00
Diego Biurrun 5db4e88ecd configure: Detect Solaris libc in an OpenIndiana/illumos compatible way 2013-12-14 14:09:40 +01:00
Luca Barbato a5a3b398fd configure: Reorder pthreads checks
Some pthreads symbols might be present in libc (as shown on various *BSD)
but not all of them, leading to false positives.

Check for the most common compiler flags before the plain symbol check
to avoid known pitfalls.
2013-12-13 23:53:30 +01:00
Luca Barbato 7cbe1ea9df configure: Move the bz2 and zlib checks below phtreads
There are alternate implementations of those libraries that use pthreads.
2013-12-13 23:53:30 +01:00
Diego Biurrun 7c3388711b configure: Add -D__USE_MINGW_ANSI_STDIO=1 to CPPFLAGS on MinGW32
This enables a more C99-compliant implementation of printf et al.
2013-12-13 16:47:49 +01:00
Diego Biurrun bdc111a162 configure: Detect newer (>=4.1) versions of MinGW32
The MinGW32 project is deprecating its old version macros.
2013-12-13 16:47:49 +01:00
Diego Biurrun a1d7d55247 build: Do not add -g to HOSTCFLAGS
The flag is not unconditionally added to CFLAGS either and the
programs built on the host do not get habitually fed to a debugger.
2013-12-13 16:47:49 +01:00
Diego Biurrun 3bb91a1b5c configure: Add -D__USE_MINGW_ANSI_STDIO=1 to CPPFLAGS on MinGW64
This enables a more POSIX-compliant printf implementation, that
allows using length modifiers like 'z'.
2013-12-11 20:25:28 +01:00
Diego Biurrun 1a5fdf9519 configure: Move log2 dependency declaration to a place it takes effect
It was incorrectly moved in c869fcdeac.
2013-12-10 10:25:12 +01:00
Diego Biurrun 2756516466 configure: Split host and target libc detection 2013-12-09 18:41:37 +01:00
Diego Biurrun c869fcdeac configure: Move toolchain dependency declarations to a more appropriate place 2013-12-09 18:41:13 +01:00
Diego Biurrun d64341e498 configure: Prefix libc-related variables with "libc_"
Simplifies host/target libc detection splitting.
2013-12-09 11:47:43 +01:00
Sean McGovern 61b203ffe6 configure: detect Solaris libc
Add preprocessor flags for API availability as necessary.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2013-12-09 11:46:44 +01:00
d s f0b234ab9e avformat: AviSynth demuxer rewrite
Directly loads AviSynth through LoadLibrary instead of relying on
Video for Windows, and supports using AvxSynth (via dlopen) to
open scripts on Linux and OS X.

Error messages from AviSynth/AvxSynth are now reported through
av_log and exit, rather than the traditional behavior of generating
an error video that the user would need to watch to diagnose.

The main rewrite was authored by d s <avxsynth.testing@gmail.com>
from the AvxSynth team, with additional contributions by

Oka Motofumi <chikuzen.mo@gmail.com>
Stephen Hutchinson <qyot27@gmail.com>
Diego Biurrun <diego@biurrun.de>
Anton Khirnov <anton@khirnov.net>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-12-08 21:54:50 +01:00
Diego Biurrun 19c20a0a1a configure: Move adding of compat objects out of libc detection 2013-12-08 21:09:02 +01:00
Diego Biurrun 120797e2ef configure: Separate MinGW32 and MinGW64 libc handling 2013-12-08 01:00:36 +01:00
Diego Biurrun bd8b6185f6 configure: Detect msvcrt libc with a CPP check instead of a link check
Simplifies host/target libc detection splitting.
2013-12-04 11:50:59 -05:00
Diego Biurrun 5ec4673281 configure: Add detected C library and host compiler to informative output 2013-12-04 09:53:58 -05:00
Luca Barbato f058f384a0 configure: Do not use pthread_create to check for pthread
Certain instrumentation addons leads to a false positive in configure
and link failures at the end of the build phase.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-11-30 13:01:35 +01:00
Vittorio Giovara 0673ede985 configure: add strip flags checks
This will check if -wN '..@*' is available and fall back on -x if not;
when none are available, do not run strip at all to prevent removing
functions that might be actually needed.
2013-11-28 15:37:10 +01:00
Andreas Unterweger 10421bcf0a Add an audio transcoding example.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-11-27 09:20:05 +01:00
Diego Biurrun 92f0abb27f build: Check for pod2man instead of perl for manual page generation
Some systems provide Perl without pod2man.
2013-11-26 13:49:06 -08:00
Diego Biurrun 4da3f410d1 configure: Restore doc option to disable building the documentation
Also add appropriate dependency declarations for perl and texi2html.
2013-11-26 13:49:06 -08:00
Diego Biurrun ab81f24ad4 build: Integrate multilibrary examples into the build system
This includes moving libavformat/output-example to doc/examples/output.
2013-11-25 11:57:29 -08:00
Derek Buitenhuis dedfa00107 build: Import makedef script from c99-to-c89
This allows MSVC 2013 and ICL to build with no external
dependencies.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-11-24 19:36:09 +00:00
Diego Biurrun f187557ab4 build: more fine-grained dependencies for documentation build tools
Perl is needed to build the manual pages, texi2html for the HTML pages.
2013-11-23 09:45:06 -08:00
Anton Khirnov 7671dd7cd7 avconv: add support for VDPAU decoding 2013-11-23 11:55:53 +01:00
Martin Storsjö ea9f7173ae configure: Avoid requiring c99wrap for working around msys path issues
Msys is unable to convert unix style absolute paths to windows style
paths when combined with certain multichar MSVC options such as
-Fo<file>. We used to work around this issue by passing them as two
separate parameters separated by a space to c99wrap, which then mapped
them back to the actual parameter format that MSVC uses.

The only paths that actually are an issue are absolute unix style
paths, and the only place such absolute paths are used with the output
arguments (-Fo, -Fe, -Fi, -out:) are for the temp files within configure.

By setting TMPDIR to . for msvc/icl builds, we never need to use
absolute unix style paths for the file output, and we can use the
actual proper form of the file output parameters. This avoids requiring
the c99wrap wrapper for remapping the parameters for cases where the
c99 converter isn't invoked at all (MSVC2013 and ICL).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-11-21 12:35:24 +02:00
Derek Buitenhuis 03f6d4e0f1 win{32,64}: Hard disable symbol versioning
ICL doesn't return an error on unknown parameters, and will
always pass the symver_gnu_asm test, and since Windows
never has symbol versioning, just always disable it.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-11-19 21:30:13 +00:00
Martin Storsjö fa48be9b95 configure: Don't use symlinks for creating the out of tree makefile
On some platforms (such as msys), symlinks are (poorly) emulated
by simply creating a copy of the file.

This means that when building out of tree, the build tree gets
a copy of the original makefile, which can lead to unintuitive
build errors when the original makefile gets updated later.

Instead simply create a stub makefile which includes the real
one.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-11-19 10:12:58 +02:00
Ronald S. Bultje 72ca830f51 lavc: VP9 decoder
Originally written by Ronald S. Bultje <rsbultje@gmail.com> and
Clément Bœsch <u@pkh.me>

Further contributions by:
Anton Khirnov <anton@khirnov.net>
Diego Biurrun <diego@biurrun.de>
Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö <martin@martin.st>

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-11-15 10:16:28 +01:00
Martin Storsjö 16381923fb configure: Check whether MSVC requires using the C89-to-C99 converter
MSVC does support enough of C99 to work without the converter since
the 2013 version. Try to detect which version of the compiler in
the path needs to run the C99 converter or not. When the converter
is omitted, compilation time is reduced quite drastically.

Prior to this, users could still use --cc="c99conv -noconv cl"
when running MSVC 2013 to achieve the same.

This checks the version number instead of doing a normal compile
test, since this check needs to be done earlier in configure, before
the normal compile test helpers are usable.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-11-13 20:55:11 +02:00
Diego Biurrun 0338c39698 dsputil: Split off H.263 bits into their own H263DSPContext 2013-11-08 12:40:47 +01:00
Diego Biurrun 92352a94c1 configure: Move -Wno-maybe-uninitialized check into gcc section
As another example of bizarre compiler behavior clang groks the
-Wmaybe-uninitialized option, but not -Wno-maybe-uninitialized
and spews a warning for every file that gets compiled.
2013-11-05 12:22:48 +01:00
Martin Storsjö 435214a757 Add an HDS live fragmenting muxer
HDS fragments basically are FLV fragments wrapped in an ISO
media mdat atom.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-11-02 10:51:00 +02:00
Diego Biurrun 056fd4fe65 configure: Properly check for availability of -Wno-foo warning flags
For some weird reason gcc does not check if the -Wno disabling variants
of warning flags match existing warning flags. Instead it swallows them
silently. That is, unless other warning or error messages are generated,
because then - for some even more bizarre reason - a complaint about the
unknown disable warning flag is issued along with the error or warning
message.

Thus to check for the availability of a warning disabling option, one
needs to check for the enabling variant instead and then add the
disabling variant to CFLAGS.
2013-11-01 22:05:20 +01:00
Diego Biurrun 23157d72b5 configure: Split test_cflags function off from check_cflags
This is useful to test flags without directly adding them to CFLAGS.
2013-11-01 22:05:20 +01:00