> From: Cyril Brulebois <[email protected]> > Date: Sun, 19 Dec 2010 18:43:49 +0100 > > asprintf is a GNU extension and one needs to define _GNU_SOURCE before > including stdio.h. Otherwise, the build breaks this way with > > --- > src/process.c | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/src/process.c b/src/process.c > index 58c6894..bdeeb7f 100644 > --- a/src/process.c > +++ b/src/process.c > @@ -29,6 +29,12 @@ Author: Ralph Mor, X Consortium > #ifdef HAVE_CONFIG_H > #include <config.h> > #endif > + > +#ifdef HAVE_ASPRINTF > +#define _GNU_SOURCE > +#include <stdio.h> > +#endif
Generally speaking it is a bad idea to put things like this _GNU_SOURCE define somewhere in the middle of a source code file. It is important to do so before any include files, and do it unconditionally. I believe there is an autoconf macro that adds _GNU_SOURCE when appropriate to config.h. It also makes sure the autoconf tests are run with _GNU_SOURCE defined such that the results of the tests are consistent with _GNU_SOURCE being defined. As long as config.h is guaranteed to always be included first, that is probably the way to go. _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
