r22127: Wrap the AC_TRY_RUN detection for Linux getgrouplist in an
authorJames Peach <jpeach@samba.org>
Sat, 7 Apr 2007 21:13:29 +0000 (21:13 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:19:15 +0000 (12:19 -0500)
AC_CACHE_CHECK, so it can be cross-compiled.
(This used to be commit f9fb07d2f9f142b4bcef02b8b3fc40789a6995d7)

source3/configure.in

index 5df423832f2e3c59158ca362b19f5a9c73fb3bf1..810ab6bced4bd5c52d7e64d04d7e3fa0f2560d45 100644 (file)
@@ -1378,23 +1378,33 @@ AC_DEFINE(HAVE_PRCTL, 1, [Whether prctl is available]),[])
 case "$host_os" in
     *linux*)
        # glibc <= 2.3.2 has a broken getgrouplist
-       AC_TRY_RUN([
+    AC_CACHE_CHECK([for a broken Linux getgrouplist API],
+           linux_getgrouplist_ok,
+           [
+               AC_TRY_RUN([
 #include <unistd.h>
 #include <sys/utsname.h>
-main() {
-       /* glibc up to 2.3 has a broken getgrouplist */
+
+                   main() {
+                          /* glibc up to 2.3 has a broken getgrouplist */
 #if defined(__GLIBC__) && defined(__GLIBC_MINOR__)
-       int libc_major = __GLIBC__;
-       int libc_minor = __GLIBC_MINOR__;
+                          int libc_major = __GLIBC__;
+                          int libc_minor = __GLIBC_MINOR__;
 
-       if (libc_major < 2)
-              exit(1);
-       if ((libc_major == 2) && (libc_minor <= 3))
-              exit(1);
+                          if (libc_major < 2)
+                                 exit(1);
+                          if ((libc_major == 2) && (libc_minor <= 3))
+                                 exit(1);
 #endif
-       exit(0);
-}
-], [linux_getgrouplist_ok=yes], [linux_getgrouplist_ok=no])
+                          exit(0);
+                   }
+
+               ],
+               [linux_getgrouplist_ok=yes],
+               [linux_getgrouplist_ok=no],
+               [linux_getgrouplist_ok=cross])
+       ])
+
        if test x"$linux_getgrouplist_ok" = x"yes"; then
           AC_DEFINE(HAVE_GETGROUPLIST, 1, [Have good getgrouplist])
        fi