Diego Biurrun <di...@biurrun.de> writes: > On Sat, Apr 30, 2011 at 04:39:29PM +0000, Diogo Franco wrote: >> 2011/4/30 Måns Rullgård <m...@mansr.com> >> > The correct solution is to not define those things in the first place on >> > BSD. >> >> Yeah, I mentioned that (more complex) alternative on the first mail. >> The problem is that configure unconditionally defines the conformance >> flags. See configure lines 1666 and 2313 on git revision 7089265 >> (current HEAD). > > Please test the preliminary work-in-progress patch I attached. > I do not consider it fit for master yet, but I would appreciate > if you could test that it works as expected. > > Diego > > From aa2c316b1db86cf31273b84a59b9d771bdc33f25 Mon Sep 17 00:00:00 2001 > From: Diego Biurrun <di...@biurrun.de> > Date: Sun, 1 May 2011 21:57:06 +0200 > Subject: [PATCH] configure: Do not Add _POSIX_C_SOURCE unconditionally to > CPPFLAGS. > > On some (BSD) systems _POSIX_C_SOURCE masks function definitions in > system header files. Avoid the #define in that case. > --- > configure | 24 +++++++++++++++++++++++- > 1 files changed, 23 insertions(+), 1 deletions(-) > > diff --git a/configure b/configure > index 2b5aeab..c83b353 100755 > --- a/configure > +++ b/configure > @@ -723,6 +723,26 @@ check_func_headers(){ > } | check_ld "$@" && enable $funcs && enable_safe $headers > } > > +check_func_headers_definitions(){ > + log check_func_headers_definitions "$@" > + definitions=$1 > + headers=$2 > + funcs=$3 > + shift 3 > + { > + for def in $definitions; do > + echo "#define $def" > + done > + for hdr in $headers; do > + echo "#include <$hdr>" > + done > + for func in $funcs; do > + echo "long check_$func(void) { return (long) $func; }" > + done > + echo "int main(void) { return 0; }" > + } | check_ld "$@" && enable $funcs && enable_safe $headers > +}
Not needed, see below. > check_cpp_condition(){ > log check_cpp_condition "$@" > header=$1 > @@ -2310,7 +2330,9 @@ if test "$?" != 0; then > die "C compiler test failed." > fi > > -add_cppflags -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 > +add_cppflags -D_ISOC99_SOURCE > +check_func_headers_definitions _POSIX_C_SOURCE=200112 arpa/inet.h inet_aton > && > + add_cppflags -D_POSIX_C_SOURCE=200112 check_func_headers foo.h foo -DSTUFF && add_cppflags -DSTUFF -- Måns Rullgård m...@mansr.com _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel