Adding _POSIX_C_SOURCE to CPPFLAGS globally produces all sorts of problems
since it causes certain system functions to be hidden on some (BSD) systems.
The solution is to only add the flag on systems that really require it, i.e.
glibc-based ones.
This change makes BSD systems compile out-of-the-box without the need for
adding specific flags manually. It also allows dropping a number of flags
set manually on a file-per-file basis, but were only present to work around
breakage introduced by the presence of _POSIX_C_SOURCE.
Also add _XOPEN_SOURCE to CPPFLAGS for glibc systems. We use XSI extensions
in several places already, so it is preferable to define it globally instead
of littering source files with individual #defines only needed for glibc.
Mark bktr_init function as av_cold.
Tested to work by Michael Kostylev on the NetBSD FATE box.
Originally committed as revision 22487 to svn://svn.ffmpeg.org/ffmpeg/trunk
This make NetBSD compile out of the box at the cost of a hack, but a
locally contained one that is preferable to the one used in the wild.
Currently the NetBSD FATE box adds -D_NETBSD_SOURCE to CPPFLAGS to work
around broken system headers. Since it is unlikely for NetBSD to fix their
headers, it is better to use a standard flag instead of a system-specific one.
As a sideeffect, this allows getting rid of a local _NETBSD_SOURCE definition.
Originally committed as revision 22486 to svn://svn.ffmpeg.org/ffmpeg/trunk
NetBSD is unlikely to fix their headers and the FATE box passes it
as -D_NETBSD_SOURCE on the command line anyway. In this case, it's
better to keep the hack well-contained within this file.
Closes issue 886.
patch by Jorge Acereda, jacereda brainstorm es
Originally committed as revision 22164 to svn://svn.ffmpeg.org/ffmpeg/trunk
patch by Stefano Sabatini, stefano.sabatini-lala poste.it
along with some spelling/consistency fixes for the long names by me
Originally committed as revision 13649 to svn://svn.ffmpeg.org/ffmpeg/trunk