Diego Biurrun <[email protected]> writes:

> On Wed, May 04, 2011 at 12:04:09PM +0100, Måns Rullgård wrote:
>> Diego Biurrun <[email protected]> writes:
>> 
>> > On Wed, May 04, 2011 at 11:23:16AM +0100, Måns Rullgård wrote:
>> >> Diego Biurrun <[email protected]> writes:
>> >> 
>> >> > On Wed, May 04, 2011 at 10:23:17AM +0100, Måns Rullgård wrote:
>> >> >> Diego Biurrun <[email protected]> writes:
>> >> >> 
>> >> >> > On some (BSD) systems _POSIX_C_SOURCE masks function definitions in
>> >> >> > system header files.  Avoid the #define in that case.
>> >> >> > This allows eliminating some BSD-specific hacks.
>> >> >> >
>> >> >> > --- a/configure
>> >> >> > +++ b/configure
>> >> >> > @@ -2310,7 +2310,9 @@ if test "$?" != 0; then
>> >> >> >  
>> >> >> > -add_cppflags -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112
>> >> >> > +add_cppflags -D_ISOC99_SOURCE
>> >> >> > +check_func_headers unistd.h swab -D_POSIX_C_SOURCE=200112 &&
>> >> >> > +    add_cppflags -D_POSIX_C_SOURCE=200112
>> >> >> 
>> >> >> We need to be more careful here since this will omit the define on any
>> >> >> system lacking that function entirely.  This could be any non-POSIX
>> >> >> system or a POSIX system without the X/Open extensions.  Defining
>> >> >> _POSIX_C_SOURCE for non-POSIX systems is of course a bit odd.
>> >> >
>> >> > What about running a two-staged test then: Pick some function to test
>> >> > for and see if it is available without but not available with the
>> >> > POSIX flag set.  If both of these conditions trigger, skip adding
>> >> > the POSIX flag to our CPPFLAGS.
>> >> 
>> >> That's what I was thinking.  Perhaps something slightly less obscure
>> >> than swab() could be chosen though.  Pick something with an XSI label
>> >> from 
>> >> http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/unistd.h.html
>> >> gethostid, lockf, nice, or sync might be good choices.
>> >
>> > None of these are actually used in Libav either.  I don't see any
>> > better choice right now though.  Do you have a suggestion which
>> > one of those four is the most common and thus least likely to
>> > be missing on some strange system?
>> 
>> Do a google code search: http://www.google.com/codesearch
>
> This is practically useless since it does not allow regular expressions.

But it does.

-- 
Måns Rullgård
[email protected]
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to