x86: fft: win64: fix stack alignment for memcpy() call
x86: cpu: whitespace (mostly) cosmetics

This adds whitespace around operators, aligns line continuation
backslashes, and breaks long lines.  Also fixes an ifdef halfway
through a statement.  The one line of duplication this saved is
not worth the ugliness.

Signed-off-by: Mans Rullgard <mans@mansr.com>
lavr: x86: merge some branches
log: Include io.h on windows

This is required for isatty, which exists on MSVC and is found by
configure, but is provided by io.h instead of unistd.h.

Signed-off-by: Martin Storsjö <martin@martin.st>
x86: fft: elf64: fix PIC build

In a 64-bit PIC build, external functions must be called
through the PLT.

Signed-off-by: Mans Rullgard <mans@mansr.com>
dxva2_h264: fix signaling of mbaff frames

The MBAFF flag may only be signaled if we're actually dealing with
a full frame, and not singular fields, as it can happen in mixed content.

Signed-off-by: Martin Storsjö <martin@martin.st>
network: Undefine existing gai_strerror definitions

This avoids warnings if there already exists a definition.

This is the case on windows, where the getaddrinfo isn't available
and linked to (and we use our fallbacks instead, which actually
try to use the proper getaddrinfo version if found at runtime),
but gai_strerror still exists as a define.
dxva2: include dxva.h if found

Apparently, some build environments require dxva.h even for dxva2,
while others lack this header entirely.  Including it conditionally
allows building in both cases.
file: Add fallback definitions for stat flags

Mingw headers provide similar defines already (unconditional #defines,
without any #undef or #ifdef around it), while MSVC doesn't have
them.

As an alternative, this could be moved to os_support.h, but then the
sys/stat.h include would have to be moved there.
random_seed: Only read /dev/*random if we have unistd.h

unistd.h is used for open/read/close, but if this header does not
exist, there's probably no use in trying to open /dev/*random
at all.
network: Include unistd.h from network.h

This heaader is required for close() for sockets in network
code. For winsock, the equivalent function is defined in the
winsock2.h header.

This avoids having the HAVE_UNISTD_H in all files dealing with
raw sockets.
file: Only include unistd.h if it exists

It is included for the open/read/write/close functions. On
MSVC, where this header does not exist, the same functions
are provided by io.h, which is already included.

If the HAVE_SETMODE for including io.h feels too vague, one
could also include it within a separate #ifdef _WIN32 block.
rtpdec: Include unistd.h only if found

This is required for gethostname. On windows, gethostname is
provided by winsock2.h, which is included by network.h.
libm: provide fallback definition for cbrtf() using powf()

This adds a fallback for cbrtf() using powf(x, 1/3).  Since
powf() with a non-integer exponent requires a non-negative
base, special handling of negative inputs is needed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
configure: Check for the math functions isnan, isinf

Add fallback implementations if they don't exist.
configure: Check for sys/time.h

Apparently this include is needed on some systems for building the
poll fallback (for the timeval struct for select?), but it isn't
available on all systems. Thus only include it if it exists.
configure: Check for the math function rint

Add a fallback implementation if it doesn't exist.
os_support: Undefine file IO functions before redefining

Mingw-w64 has similar defines already.

This avoids a number of warnings when building with mingw-w64.
network: Don't redefine error codes if they already exist in errno.h

Since the errno.h values don't match the error codes that winsock
returns, map the winsock error codes to the errno ones, to make
sure explicit checks against AVERROR(x) match.
network: Check for struct pollfd

We need to include winsock2.h here, to make sure we have the
real pollfd struct definition, if one exists, before defining the
fallback poll function.