Now that we're using gnulib in earnest, any manual definition
would provoke a redefinition warning.
* fish/fish.c (_GNU_SOURCE): Don't define.
* fish/destpaths.c (_GNU_SOURCE): Likewise.
* src/guestfs.c (_GNU_SOURCE): Likewise.
* bootstrap (modules): Add asprintf, strchrnul, strerror, strndup
and vasprintf.
* fish/fish.c (main): Set argv[0] to sanitized program_name, so
functions like getopt_long that use argv[0] use the clean name.
(cd daemon && mkdir -p tests lib && ../$gnulib_tool --update)
modules='
+asprintf
closeout
gitlog-to-changelog
gnu-make
maintainer-makefile
manywarnings
progname
-warnings
+strchrnul
+strerror
+strndup
+vasprintf
vc-list-files
+warnings
'
$gnulib_tool \
#include <config.h>
-#define _GNU_SOURCE // for strndup, asprintf
-
#include <stdio.h>
#include <stdlib.h>
#include <stddef.h>
#include <config.h>
-#define _GNU_SOURCE // for strchrnul
-
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <config.h>
#define _BSD_SOURCE /* for mkdtemp, usleep */
-#define _GNU_SOURCE /* for vasprintf, GNU strerror_r, strchrnul */
#include <stdio.h>
#include <stdlib.h>