]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
r15448: New autoconf macro to test for sysconf variables.
authorJames Peach <jpeach@samba.org>
Fri, 5 May 2006 05:39:57 +0000 (05:39 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 16:16:46 +0000 (11:16 -0500)
(This used to be commit a19d4f2bb4aa94ab40e371efbad9f17e38e3bbc4)

source3/aclocal.m4
source3/client/smbspool.c
source3/configure.in
source3/tdb/spinlock.c

index 91611233ca5b2685672001b2d772a497455a766d..67b7017a91061b9a9b94af2e19da38b63d419240 100644 (file)
@@ -770,3 +770,21 @@ AC_DEFUN( [AC_TRY_RUN_STRICT],
        old_LDFLAGS="";
        export LDFLAGS;
 ])
+
+dnl SMB_CHECK_SYSCONF(varname)
+dnl Tests whether the sysconf(3) variable "varname" is available.
+AC_DEFUN([SMB_CHECK_SYSCONF],
+[
+    AC_CACHE_CHECK([for sysconf($1)],
+       samba_cv_SYSCONF$1,
+       [
+           AC_TRY_LINK([#include <unistd.h>],
+               [ return sysconf($1) == -1 ? 1 : 0; ],
+               [ samba_cv_SYSCONF$1=yes ],
+               [ samba_cv_SYSCONF$1=no ])
+       ])
+
+    if test x"$samba_cv_SYSCONF$1" = x"yes" ; then
+       AC_DEFINE(SYSCONF$1, 1, [Whether sysconf($1) is available])
+    fi
+])
index af2f7e9180c7eea2087b3001b62178ee2f94a4d0..20ce06a8daf902a245926d5762b10f97ab5446b6 100644 (file)
@@ -23,7 +23,6 @@
 
 #include "includes.h"
 
-#define PW_MAX_BUF_SIZE          sysconf(_SC_GETPW_R_SIZE_MAX)
 #define TICKET_CC_DIR            "/tmp"
 #define CC_PREFIX                "krb5cc_" /* prefix of the ticket cache */
 #define CC_MAX_FILE_LEN          24   
index fc5bad6dab3c22a264d34885d2576c005b581038..bf6841bdf4098630170d8adf6d8107e3ed89c819 100644 (file)
@@ -2702,21 +2702,10 @@ if test x"$samba_cv_REPLACE_READDIR" = x"yes"; then
        AC_DEFINE(REPLACE_READDIR,1,[replace readdir])
 fi
 
-AC_CACHE_CHECK([for sysconf(_SC_NGROUPS_MAX)],samba_cv_SYSCONF_SC_NGROUPS_MAX,[
-AC_TRY_RUN([#include <unistd.h>
-main() { exit(sysconf(_SC_NGROUPS_MAX) == -1 ? 1 : 0); }],
-samba_cv_SYSCONF_SC_NGROUPS_MAX=yes,samba_cv_SYSCONF_SC_NGROUPS_MAX=no,samba_cv_SYSCONF_SC_NGROUPS_MAX=cross)])
-if test x"$samba_cv_SYSCONF_SC_NGROUPS_MAX" = x"yes"; then
-    AC_DEFINE(SYSCONF_SC_NGROUPS_MAX,1,[Whether sysconf(_SC_NGROUPS_MAX) is available])
-fi
-
-AC_CACHE_CHECK([for sysconf(_SC_NPROC_ONLN)],samba_cv_SYSCONF_SC_NPROC_ONLN,[
-AC_TRY_RUN([#include <unistd.h>
-main() { exit(sysconf(_SC_NPROC_ONLN) == -1 ? 1 : 0); }],
-samba_cv_SYSCONF_SC_NPROC_ONLN=yes,samba_cv_SYSCONF_SC_NPROC_ONLN=no,samba_cv_SYSCONF_SC_NPROC_ONLN=cross)])
-if test x"$samba_cv_SYSCONF_SC_NPROC_ONLN" = x"yes"; then
-    AC_DEFINE(SYSCONF_SC_NPROC_ONLN,1,[Whether sysconf(_SC_NPROC_ONLN) is available])
-fi
+SMB_CHECK_SYSCONF(_SC_NGROUPS_MAX)
+SMB_CHECK_SYSCONF(_SC_NPROC_ONLN)
+SMB_CHECK_SYSCONF(_SC_NPROCESSORS_ONLN)
+SMB_CHECK_SYSCONF(_SC_PAGESIZE)
 
 AC_CACHE_CHECK([for root],samba_cv_HAVE_ROOT,[
 AC_TRY_RUN([main() { exit(getuid() != 0); }],
index a487ee2a1036ed3e5fdbe9a60622be304ed2deab..e6abb3a0bc8c43fe071df15e5317709fd0840bb9 100644 (file)
@@ -268,8 +268,16 @@ static void yield_cpu(void)
 
 static int this_is_smp(void)
 {
-#if defined(HAVE_SYSCONF) && defined(SYSCONF_SC_NPROC_ONLN)
+#if defined(HAVE_SYSCONF)
+
+#if defined(SYSCONF_SC_NPROC_ONLN)
         return (sysconf(_SC_NPROC_ONLN) > 1) ? 1 : 0;
+#elif defined(SYSCONF_SC_NPROCESSORS_ONLN)
+        return (sysconf(_SC_NPROCESSORS_ONLN) > 1) ? 1 : 0;
+#else
+       return 0;
+#endif
+
 #else
        return 0;
 #endif