Commit Graph

3111 Commits

Author SHA1 Message Date
Michael Niedermayer
8c9df116cd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Avoid requiring c99wrap for working around msys path issues

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-21 12:10:15 +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
Michael Niedermayer
bb7f3ddd42 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  win{32,64}: Hard disable symbol versioning

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-20 04:21:36 +01: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
Michael Niedermayer
b31587af4b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Don't use symlinks for creating the out of tree makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-19 11:34:50 +01: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
Carl Eugen Hoyos
d4a6133ab8 Add decoder dependency to the HEVC parser.
Fixes compilation with --disable-everything --enable-parser=hevc
2013-11-18 17:48:17 +01: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
Michael Niedermayer
a7663ad9cf Merge commit '16381923fb7b9087ce559fb1cd3594469ac6788b'
* commit '16381923fb7b9087ce559fb1cd3594469ac6788b':
  configure: Check whether MSVC requires using the C89-to-C99 converter

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-14 02:34:34 +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
Clément Bœsch
dbb41f93c1 build: avoid stdin stall with GNU AS probing.
a758c5e added probing for various tools, such as AS. Unfortunately, GNU
AS is reading stdin with -v, and thus configure is stalled with
configure arguments such as --as=as.

Fixes Ticket #1898.
2013-11-09 12:38:12 +01:00
Michael Niedermayer
a30f7918b5 Merge commit '0338c396987c82b41d322630ea9712fe5f9561d6'
* commit '0338c396987c82b41d322630ea9712fe5f9561d6':
  dsputil: Split off H.263 bits into their own H263DSPContext

Conflicts:
	configure
	libavcodec/mpegvideo.h
	libavcodec/mpegvideo_enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-08 17:42:56 +01:00
Diego Biurrun
0338c39698 dsputil: Split off H.263 bits into their own H263DSPContext 2013-11-08 12:40:47 +01:00
Michael Niedermayer
6cfaf9cde8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Move -Wno-maybe-uninitialized check into gcc section

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-05 21:58:44 +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
Michael Niedermayer
641358addc Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add an HDS live fragmenting muxer

Conflicts:
	Changelog
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-02 10:38:03 +01:00
Michael Niedermayer
0db04ca01d Merge commit '056fd4fe65e70b4dbca97bcf7faf8b7ce3df993f'
* commit '056fd4fe65e70b4dbca97bcf7faf8b7ce3df993f':
  configure: Properly check for availability of -Wno-foo warning flags

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-02 10:04:07 +01:00
Michael Niedermayer
b4f95c96a5 Merge commit '23157d72b565e0228fec97f1eb059d4f8021a260'
* commit '23157d72b565e0228fec97f1eb059d4f8021a260':
  configure: Split test_cflags function off from check_cflags

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-11-02 09:55:47 +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
Guillaume Martres
064698d381 Add HEVC decoder
Initially written by Guillaume Martres <smarter@ubuntu.com> as a GSoC
project. Further contributions by the OpenHEVC project and other
developers, namely:

Mickaël Raulet <mraulet@insa-rennes.fr>
Seppo Tomperi <seppo.tomperi@vtt.fi>
Gildas Cocherel <gildas.cocherel@laposte.net>
Khaled Jerbi <khaled_jerbi@yahoo.fr>
Wassim Hamidouche <wassim.hamidouche@insa-rennes.fr>
Vittorio Giovara <vittorio.giovara@gmail.com>
Jan Ekström <jeebjp@gmail.com>
Anton Khirnov <anton@khirnov.net>
Martin Storsjö <martin@martin.st>
Luca Barbato <lu_zero@gentoo.org>
Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>
Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Diego Biurrun <diego@biurrun.de>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-31 20:19:59 +01:00
Michael Niedermayer
6c5f17e738 Merge commit 'e78913052263af80855590659fb0f705e8f13c8a'
* commit 'e78913052263af80855590659fb0f705e8f13c8a':
  configure: Provide an hardened toolchain option

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-29 19:50:03 +01:00
Michael Niedermayer
df69af4ee1 Merge commit 'dcd3eda6cb8884beeb67ef5eb61b4bb6b01d29ea'
* commit 'dcd3eda6cb8884beeb67ef5eb61b4bb6b01d29ea':
  configure: Move gcc-only -W option where it belongs

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-29 19:43:14 +01:00
Luca Barbato
e789130522 configure: Provide an hardened toolchain option 2013-10-29 11:36:00 +01:00
Luca Barbato
dcd3eda6cb configure: Move gcc-only -W option where it belongs 2013-10-29 11:36:00 +01:00
Michael Niedermayer
c985966a10 Merge commit 'de6061203e2d509579ab110fb1873aade34320f5'
* commit 'de6061203e2d509579ab110fb1873aade34320f5':
  configure: Disable -Wmaybe-uninitialized by default

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-28 11:32:22 +01:00
Luca Barbato
de6061203e configure: Disable -Wmaybe-uninitialized by default
It is by definition unreliable and causes pointless noise on valid
code.
2013-10-28 00:04:49 +01:00
Paul B Mahol
75b2bbe21d libavfilter/vf_noise: relicense to LGPL
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-10-27 20:29:07 +00:00
Lukasz Marek
99a4c86a32 configure: link with built libs when pc-uninstalled is used
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 14:06:40 +02:00
Kieran Kunhya
865b70bc5d Add AVX2 capable CPU detection. Patch based on x264's AVX2 detection
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-26 02:34:22 +02:00
Kieran Kunhya
4d6ee07255 libavutil: x86: Add AVX2 capable CPU detection.
Patch based on x264's AVX2 detection

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-10-25 19:36:55 +01:00
Michael Niedermayer
f5dae4894d configure: abort if threading without atomics is used
also provide a list of workarounds to the user

Fixes Ticket2363

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-25 16:55:57 +02:00
Lukasz Marek
759388aa71 lavd: add fbdev output device
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2013-10-24 08:16:17 +02:00
Clément Bœsch
e01fba5562 movenc: Add an F4V muxer
F4V is Adobe's mp4/iso media variant, with the most significant
addition/change being supporting other flash codecs than just
aac/h264.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-10-23 11:17:03 +03:00
Paul B Mahol
c655216939 make it possible to compile ffmpeg without swscale
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2013-10-21 13:57:00 +00:00
俞晓磊
4bfdd021c7 configure: remove \r from cc_ident,
This should fix cygwin + non-cygwin toolchain

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-19 00:15:33 +02:00
Guillaume Martres
c8dd048ab8 lavc: add a HEVC decoder.
Initially written by Guillaume Martres <smarter@ubuntu.com> as a GSoC
project. Further contributions by the OpenHEVC project and other
developers, namely:

Mickaël Raulet <mraulet@insa-rennes.fr>
Seppo Tomperi <seppo.tomperi@vtt.fi>
Gildas Cocherel <gildas.cocherel@laposte.net>
Khaled Jerbi <khaled_jerbi@yahoo.fr>
Wassim Hamidouche <wassim.hamidouche@insa-rennes.fr>
Vittorio Giovara <vittorio.giovara@gmail.com>
Jan Ekström <jeebjp@gmail.com>
Anton Khirnov <anton@khirnov.net>
Martin Storsjö <martin@martin.st>
Luca Barbato <lu_zero@gentoo.org>
Yusuke Nakamura <muken.the.vfrmaniac@gmail.com>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-15 22:13:02 +02:00
Michael Niedermayer
51df616909 configure: Warn when inline asm is disabled for ICL
See Ticket3048

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-15 16:34:29 +02:00
Michael Niedermayer
4ce82e6fa9 Merge commit '9e3946aadaef6f7d7ef15c31b5ff1e73d0ba79a1'
* commit '9e3946aadaef6f7d7ef15c31b5ff1e73d0ba79a1':
  build: Require yasm 0.8.0 or higher

Conflicts:
	configure

If someone wants to continue supporting older yasm/nasm versions, patches are of course welcome!

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-09 14:17:56 +02:00
Derek Buitenhuis
9e3946aada build: Require yasm 0.8.0 or higher
This is in preparation for removing a .rodata kludge
which was only required for older YASM versions.

The movbe instruction was introduced in 0.8.0, which already
had AVX, which was introduced in 0.7.0, and NASM introduced
movbe in 2.0.3, which is the same version which introduced
AVX support.

Also, make the failure message more accurate.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-10-09 07:44:19 -04:00
Lukasz Marek
361b56c379 lavd: pulse audio encoder
Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com>
Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-08 14:31:50 +02:00
Michael Niedermayer
3d5a995eac Merge commit 'e52567c2954f627d420b30f75f71af2f2e4afe80'
* commit 'e52567c2954f627d420b30f75f71af2f2e4afe80':
  build: Strip spurious labels

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-08 10:45:37 +02:00
Loren Merritt
e52567c295 build: Strip spurious labels
The implementation of 25cb0c1a involves lots of spurious labels.

The effect of keeping those labels around is making debugging harder.
Those labels are meaningless, and complicate the disassembly. Also,
gdb can't tell the difference between them and function entry points.

This new strip command is irrelevant to any usage of Libav that would
have used the old fully stripped version, because the old one was for
non-debug use.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2013-10-07 06:20:15 -04:00
Michael Niedermayer
efff7564d4 configure: filters should select the parts they need not use deps
otherwise enabling the filter would not work if the part hasnt been
enabled by other means already

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-06 16:43:34 +02:00
Michael Niedermayer
4b05906e84 configure: add --tempprefix option
With this and ccache configure execution time goes down from 3.9 to 2.4 seconds

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-05 18:43:21 +02:00
Michael Niedermayer
4c292d5c34 Merge remote-tracking branch 'rbultje/master'
* rbultje/master:
  Full-pixel MC functions.
  VP9 MC (ssse3) optimizations.
  Native VP9 decoder.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-03 13:56:52 +02:00
Ronald S. Bultje
848826f527 Native VP9 decoder.
Authors: Ronald S. Bultje <rsbultje gmail com>,
         Clement Boesch <u pkh me>
2013-10-02 21:03:11 -04:00
Michael Niedermayer
ad8fbddb94 Revert "Merge commit '61c31e4ee7ea79a9e74c0476b81244febf17e6d7'" (configure: Properly set zlib dependencies for all components)
The reverted commit introduced undefined behavior.
undefined in the sense that the evaluation order of the dependencies affects the results

Fixes Ticket2920

This reverts commit c32db6adab, reversing
changes made to 05f1b4e2ec.

Alternative solutions would be to change the dependency solver to handle non trivial
dependencies or to enable zlib by default before the dependency solver, this would
leave a zlib dependency in the libs though then even when no zlib is needed or used.
2013-10-01 23:52:20 +02:00
Thilo Borgmann
d3a03d90a3 configure: fix logic for threads in case of OpenCL is enabled. Fixes ticket 3004.
Signed-off-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-01 18:31:21 +02:00