Glibc 2.20 onwards generates a deprecation warning for usage of _BSD_SOURCE and 
_SVID_SOURCE.
The solution from man feature_test_macros is to define both _DEFAULT_SOURCE and 
the old macros.
This change is done in configure while testing for Glibc. Doing it in source 
code
would require __UCLIBC__ checks, etc since uclibc also defines __GLIBC__ and 
__GLIBC_MINOR__,
so placing it in configure avoids the repeated checks.

Signed-off-by: Ganesh Ajjanagadde <gajjanaga...@gmail.com>
---
 configure | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/configure b/configure
index cd6f629..0cd0a6c 100755
--- a/configure
+++ b/configure
@@ -4520,6 +4520,12 @@ probe_libc(){
     elif check_${pfx}cpp_condition features.h "defined __GLIBC__"; then
         eval ${pfx}libc_type=glibc
         add_${pfx}cppflags -D_POSIX_C_SOURCE=200112 -D_XOPEN_SOURCE=600
+        # define _DEFAULT_SOURCE for glibc 2.20 onwards to silence deprecation
+        # warnings for _BSD_SOURCE and _SVID_SOURCE.
+        if check_${pfx}cpp_condition features.h "(__GLIBC__ == 2 && 
__GLIBC_MINOR__ >= 20) \
+            || (__GLIBC__ > 2)"; then
+            add_${pfx}cppflags -D_DEFAULT_SOURCE
+        fi
     # MinGW headers can be installed on Cygwin, so check for newlib first.
     elif check_${pfx}cpp_condition newlib.h "defined _NEWLIB_VERSION"; then
         eval ${pfx}libc_type=newlib
-- 
2.5.2

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to