[autoconf] GNU_SOURCE can be defined twice, through AC_FUNC_STRNLEN

2007-05-10 Paul Jakma <paul.jakma@sun.com>

	* configure.ac: Use AC_GNU_SOURCE to define _GNU_SOURCE, rather
	  than having lib/zebra.h do it.
	  AC_FUNC_STRNLEN has side-effects with latest autoconf, use
	  AC_CHECK_FUNC on strnlen instead.
	* lib/zebra.h: Don't try define _GNU_SOURCE, autoconf should do it.
diff --git a/configure.ac b/configure.ac
index f4966d8..fe127a4 100755
--- a/configure.ac
+++ b/configure.ac
@@ -163,10 +163,11 @@
 	]
 )
 
-dnl ---------
-dnl AIX check
-dnl ---------
+dnl -----------------
+dnl System extensions
+dnl -----------------
 AC_AIX
+AC_GNU_SOURCE
 
 dnl -------
 dnl libtool
@@ -640,7 +641,10 @@
 AC_FUNC_STAT
 AC_FUNC_SELECT_ARGTYPES
 AC_FUNC_STRFTIME
-AC_FUNC_STRNLEN
+dnl Avoid AC_FUNC_STRNLEN because it pulls in AC_SYSTEM_EXTENSIONS which
+dnl can lead to strange side effects.  So we just check for strnlen
+dnl directly, see below.
+dnlAC_FUNC_STRNLENdnl
 AC_FUNC_VPRINTF
 
 dnl -------------------------------
@@ -665,7 +669,7 @@
 dnl other functions
 dnl ---------------
 AC_CHECK_FUNCS([dup2 ftruncate getcwd gethostbyname getpagesize gettimeofday \
-	inet_ntoa inet_aton \
+	inet_ntoa inet_aton strnlen \
 	memchr memmove memset select socket \
 	strcasecmp strchr strcspn strdup strerror \
 	strncasecmp strndup strrchr strspn strstr \