Commit Graph

2593 Commits

Author SHA1 Message Date
Martin Storsjö 1077d8c845 configure: Add -framework CoreVideo when building the avfoundation indev
This fixes builds with --disable-vda, which previously failed with
undefined references to CVImageBuffer* and CVPixelBuffer* functions.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-12-03 14:28:12 +02:00
Kylie McClain bf12a81cc6 configure: Replace `pr` since it is not provided by busybox
While pr is a valid POSIX.1 command, its usage in configure
is a little borderline and is possible to replace it with
printf.

Bug-Id: 913

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-12-02 23:49:10 +01:00
Luca Barbato cb49bb10ca build: Move -Wcast-qual to the extra_warnings
It amounts to about 1/2 of the warnings generated and does not help
spotting anything useful.
2015-12-02 23:49:10 +01:00
Alexandre Lision 4f979418c7 avfoundation: Simple capture
Originally based on the capture written by
Thilo Borgmann <thilo.borgmann@mail.de>.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-26 10:55:28 +01:00
Luca Barbato 9f57f134c1 configure: ObjC support
Assume that the default C compiler and the default ObjC compiler match
(default for OSX).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-11-26 10:39:15 +01:00
Luca Barbato afdff80081 configure: Clearly state that MSYS native builds are discouraged
MSYS, as per cygwin, by default uses a custom posix abstraction
in the form of a "msys2.dll". Programs build that way are harder to
distribute and use.

MSYS2 provides alternate launcher scripts that provide a MINGW
environment nearly out of box.
2015-11-21 22:18:57 +01:00
Luca Barbato a0562e5317 configure: Add a SONAME entry for the android target
In order to load libraries in Android they need to be unversioned.
The android target section was derived from the BSD ones, and they
that simply drop the SONAME

Android M requires to have a SONAME entry but unversioned.
2015-10-30 13:02:02 +01:00
Rémi Denis-Courmont d35d0c723e vdpau: remove dysfunctional H.263 support
The VDPAU API never explicitly supported H.263 in the first place.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-30 12:46:56 +01:00
Martin Storsjö 00b62968d0 os_support: Don't try to return the service name as a string in getnameinfo
Some systems may be lacking getservbyport; the previous ifdef wasn't
quite enough since it still assumed that struct servent was defined,
as pointed out by Clément Gregoire.

Simply remove the possibility to return non-numeric services in
getnameinfo; no caller of getnameinfo within libavformat
currently try to use getnameinfo for retrieving the port number without
NI_NUMERICSERV, and falling back on getservbyport may be non-threadsafe.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-10-30 10:03:58 +02:00
Martin Storsjö 567ca14295 configure: Add -D_CRT_NONSTDC_NO_WARNINGS when building with msvc
This silences warnings like this one:
libavformat/file.c(62) : warning C4996: 'read': The POSIX name for this
item is deprecated. Instead, use the ISO C++ conformant name: _read.
See online help for details.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-10-29 16:17:15 +02:00
Vittorio Giovara 533a619850 innoHeim/Rsupport Screen Capture Codec decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-23 14:56:43 +02:00
Arttu Ylä-Outinen 233d2fa044 kvazaar: Add libkvazaar HEVC encoder
Signed-off-by: Arttu Ylä-Outinen <arttu.yla-outinen@tut.fi>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-10-23 11:59:27 +02:00
Sean McGovern c1aac39eac build: add Solaris symbol versioning
The versioning facility in the Solaris linker differs from Linux in 3 ways:

1. It does not support globs in linker scripts for
symbol versioning -- this is a GNU extension.

2. The linker argument is '-M', instead of '--version-script'.

3. It is picky about line endings.
Each symbol or directive must be on a line of it's own.

Let's use make_sunver.pl from GCC to generate a version script that works
correctly with the Solaris linker. It's function is to correctly expand the
globs in the original generated version script.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-10-11 15:42:36 +02:00
Luca Barbato d7a5a178c2 configure: When disabling a library disable all the related components
This way is sufficient to use the component specific configure variable
and not guard against the global library configure variable in code
that is outside it (e.g. checkasm).
2015-10-07 18:45:50 +02:00
Luca Barbato 8ae1d87a24 build: Add support for known custom allocators
Makes slightly easier to use jemalloc and tcmalloc.

The two are quite common choices for profiling and debugging.
2015-09-30 21:42:26 +02:00
Vittorio Giovara 9a3202a98b Screenpresso SPV1 decoder
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-09-30 16:45:11 +02:00
Vicente Olivert Riera 3f1f605301 configure: address a copy-paste typo
The correct instruction for mips32r1 is addi.

Signed-off-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-09-29 18:31:20 +02:00
Luca Barbato 1016a75cf3 configure: mips: Support mips r6, r2 and r1
Detect the different MIPS architecture variants.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-09-29 11:10:37 +02:00
Luca Barbato 678f788fea configure: Set the initial ldflags to match the cflags
Some gcc-based toolchain would fail to link if the abi set by the
cpuflags does not match the default.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-09-29 11:10:37 +02:00
Vittorio Giovara c45fcf30cf DXV decoder
Support all DXDI and DXD3 normal quality videos.
2015-09-02 22:22:02 +02:00
Luca Barbato 0c7707610f lavc: Add a lzf decompressor
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-09-02 21:56:22 +02:00
Luca Barbato e176639bcb webm: Explicitly select libvpx, libopus and libvorbis encoders
And update the preference for the newer codecs now that the libraries
seem stable and widespread enough.

Bug-Id: 695
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-08-25 19:47:43 +02:00
Martin Storsjö cb2dbe2c76 configure: arm: Assume softfp ABI on darwin
Don't try to detect the float ABI by checking at the toolchain
name or by trying to assemble and link files with eabi_attributes.

This fixes the float ABI detection when building using clang
with -fembed-bitcode, where the current eabi_attributes check
accidentally passes.

This issue was pointed out by James Howe <james.howe@hp.com>.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-08-16 00:17:22 +03:00
Shiz b197f78329 configure: Silence error messages when probing compiler
On Xcode's clang on OS X, $cc --version will output a 'Configured with:'
line to stderr, which clobbers the configure script output. As this line
serves no further purpose, it should be silenced.

The same applies to apple-gcc 4.2.1, which complains that it can not
understand the kernel version it is running on.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-08-04 12:19:27 +02:00
Martin Storsjö c6e0829e36 configure: Don't force _WIN32_WINNT to an older version if targeting winphone/winrt
This avoids having to manually set _WIN32_WINNT in --extra-cflags
when targeting these API families, which only was necessary to
work around configure setting _WIN32_WINNT to an older version
by default.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-28 19:37:49 +03:00
Martin Storsjö d75b55635a dxva2/d3d11va: Set _WIN32_WINNT to 0x0602 instead of 0x0600
If _WIN32_WINNT is unset, we force it to a new enough value to
make sure the necessary definitions are visible.

When targeting Windows Phone or Windows RT, _WIN32_WINNT should
be at least 0x0602 - otherwise the windows headers themselves
can cause errors (which technically are bugs in the headers).

Raising this value here shouldn't hurt; the alternative would
be to not touch it at all if WINAPI_FAMILY is set to phone/app,
or to force setting it to 0x0602 in configure if unset (for phone/app).

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-28 19:37:47 +03:00
Martin Storsjö 60a21b3d81 configure: Check for _M_ARMT to detect thumb when using MSVC
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-27 10:45:32 +03:00
Martin Storsjö 616b409c8f configure: Check MSVC defines for identifying hardfloat
This macro identifies whether VFPv3 is available; MSVC defaults
to hardfloat (except for older MSVC versions for CE, targeting
ARMv4).

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-27 10:45:15 +03:00
Martin Storsjö 2192ff84dd configure: Default to armasm for --toolchain=msvc when targeting arm
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-27 10:45:08 +03:00
Martin Storsjö e4015b00d4 configure: Simplify, remove an unnecessary intermediate variable
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-27 10:44:44 +03:00
Martin Storsjö 342b0ba5f9 configure: Only redirect strtoll to _strtoi64 if necessary
This isn't necessary any longer on MSVC 2013 Update 4.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-26 20:33:09 +03:00
Martin Storsjö 5fd553d312 configure: Only redefine inline to __inline for msvc if necessary
This isn't necessary on MSVC 2015 any longer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-26 20:33:01 +03:00
Martin Storsjö 0cff125200 configure: Only add -FIstdlib.h for msvc/icl if necessary
This is only necessary on MSVC 2010/2012 (and possibly on some
ICL versions). This both avoids an extra hack on newer MSVC
versions, and better documents what the extra compiler option
is used for.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-26 20:33:00 +03:00
Steve Lhomme 9b4b96c0de force WINAPI_FAMILY to WINAPI_FAMILY_DESKTOP_APP to be able to use dxva.h
The struct definitions in dxva.h, which are necessary in order to
actually use d3d11va, are hidden when WINAPI_FAMILY targets Windows Phone
or WindowsRT.

Building with WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP is disallowed
when targeting ARM. ("Compiling Desktop applications for the ARM
platform is not supported.") So we set _CRT_BUILD_DESKTOP_APP to 0
to tell the runtime not to detect some issues with this mismatching.

The same tweaks to detect if the API is available is done in dxva2_internal.h
when compiling each DXVA2/D3D11VA decoders.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-26 20:18:03 +03:00
Anton Khirnov 41d47ea85f lavc: add Intel libmfx-based HEVC decoder. 2015-07-25 17:37:01 +02:00
Anton Khirnov bf52f77391 lavc: add Intel libmfx-based MPEG2 decoder. 2015-07-25 17:36:59 +02:00
Steve Lhomme c9edbe4af9 use a wrapper script to call MS link.exe to avoid mixing with /usr/bin/link.exe
Fallback to "link" in the path if the one next to cl is not found.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-24 18:21:22 +03:00
Steve Lhomme a54e720e02 configure: force -nologo- when detecting MSVC
The -nologo- option is the inverse of -nologo, reenabling printing the
"logo" version header. This is useful if the compiler actually is a
wrapper that forces -nologo.

Signed-off-by: Martin Storsjö <martin@martin.st>
2015-07-23 22:28:08 +03:00
Vittorio Giovara f5ee23004d configure: Factor out g722dsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara a623aa0069 configure: Factor out wmv2dsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara d42191c78b configure: Factor out vp8dsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara d4aea1aa40 configure: Factor out vp56dsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara 5cb4bdb2a0 configure: Factor out rv34dsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara 575ec60e54 configure: Factor out mss34dsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara 2edc77dc7b configure: Factor out ividsp module 2015-07-17 18:46:24 +01:00
Vittorio Giovara b075869bc1 configure: Factor out flacdsp module 2015-07-17 18:46:23 +01:00
Dave Yeo 4da585ae47 OS/2: Cleanup slib_create_def_cmd
Export symbols by name rather then ordinal.
Remove PROTMODE directive as it does not make sense for 32 bit library.
Also silences a warning from some linkers.

Signed-off-by: Dave Yeo <dave.r.yeo@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-07-17 10:47:59 +02:00
Luca Barbato e1319aa1c1 libx264: Add support for the MPEG2 encoder 2015-07-17 10:47:48 +02:00
Anton Khirnov 650060dfb6 hevc_parser: parse and export some stream parameters
Particularly those that will be needed by the QSV decoder.
More can be added later as necessary.
2015-07-12 18:15:40 +02:00
Luca Barbato 84b223cc6d configure: Make the new qsv encoder depend on libmfx
Found-by: kropping
2015-07-09 00:20:27 +02:00