Subject: [PATCH] Set _ALL_SOURCE for AIX, but avoid its struct list.

From: Jason Riedy <[email-masked]>
Date: Mon, 15 Jan 2007 17:34:49 -0800

AIX 5.3 seems to need _ALL_SOURCE for struct addrinfo, but that
introduces a struct list in grp.h.

Signed-off-by: Jason Riedy <[email-masked]>
---
  Also, the AIX iconv is insufficent.  All tests pass if I build
  GNU libiconv, but using AIX's fails in many conversion tests.
  If you build with NO_ICONV, all the conversion tests fail as
  well.  I'm not sure if that should be changed, or if NO_ICONV
  should be removed...

 git-compat-util.h |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/git-compat-util.h b/git-compat-util.h
index 8781e8e..cbad411 100644
--- a/git-compat-util.h
+++ b/git-compat-util.h
@@ -15,6 +15,7 @@
 #define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */
 #define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */
 #endif
+#define _ALL_SOURCE
 #define _GNU_SOURCE
 #define _BSD_SOURCE
 
@@ -45,7 +46,9 @@
 #include <arpa/inet.h>
 #include <netdb.h>
 #include <pwd.h>
+#undef _ALL_SOURCE /* AIX 5.3L defines a struct list with _ALL_SOURCE. */
 #include <grp.h>
+#define _ALL_SOURCE
 
 #ifndef NO_ICONV
 #include <iconv.h>
-- 
1.5.0.rc1.gf4b6c