Author: jpeach Date: 2006-05-05 05:39:57 +0000 (Fri, 05 May 2006) New Revision: 15448
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=15448 Log: New autoconf macro to test for sysconf variables. Modified: branches/SAMBA_3_0/source/aclocal.m4 branches/SAMBA_3_0/source/client/smbspool.c branches/SAMBA_3_0/source/configure.in branches/SAMBA_3_0/source/tdb/spinlock.c trunk/source/aclocal.m4 trunk/source/client/smbspool.c trunk/source/configure.in Changeset: Modified: branches/SAMBA_3_0/source/aclocal.m4 =================================================================== --- branches/SAMBA_3_0/source/aclocal.m4 2006-05-05 03:07:00 UTC (rev 15447) +++ branches/SAMBA_3_0/source/aclocal.m4 2006-05-05 05:39:57 UTC (rev 15448) @@ -770,3 +770,21 @@ 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 +]) Modified: branches/SAMBA_3_0/source/client/smbspool.c =================================================================== --- branches/SAMBA_3_0/source/client/smbspool.c 2006-05-05 03:07:00 UTC (rev 15447) +++ branches/SAMBA_3_0/source/client/smbspool.c 2006-05-05 05:39:57 UTC (rev 15448) @@ -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 Modified: branches/SAMBA_3_0/source/configure.in =================================================================== --- branches/SAMBA_3_0/source/configure.in 2006-05-05 03:07:00 UTC (rev 15447) +++ branches/SAMBA_3_0/source/configure.in 2006-05-05 05:39:57 UTC (rev 15448) @@ -2702,22 +2702,11 @@ 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 +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 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 - AC_CACHE_CHECK([for root],samba_cv_HAVE_ROOT,[ AC_TRY_RUN([main() { exit(getuid() != 0); }], samba_cv_HAVE_ROOT=yes,samba_cv_HAVE_ROOT=no,samba_cv_HAVE_ROOT=cross)]) Modified: branches/SAMBA_3_0/source/tdb/spinlock.c =================================================================== --- branches/SAMBA_3_0/source/tdb/spinlock.c 2006-05-05 03:07:00 UTC (rev 15447) +++ branches/SAMBA_3_0/source/tdb/spinlock.c 2006-05-05 05:39:57 UTC (rev 15448) @@ -268,11 +268,19 @@ 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 } /* Modified: trunk/source/aclocal.m4 =================================================================== --- trunk/source/aclocal.m4 2006-05-05 03:07:00 UTC (rev 15447) +++ trunk/source/aclocal.m4 2006-05-05 05:39:57 UTC (rev 15448) @@ -770,3 +770,21 @@ 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 +]) Modified: trunk/source/client/smbspool.c =================================================================== --- trunk/source/client/smbspool.c 2006-05-05 03:07:00 UTC (rev 15447) +++ trunk/source/client/smbspool.c 2006-05-05 05:39:57 UTC (rev 15448) @@ -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 Modified: trunk/source/configure.in =================================================================== --- trunk/source/configure.in 2006-05-05 03:07:00 UTC (rev 15447) +++ trunk/source/configure.in 2006-05-05 05:39:57 UTC (rev 15448) @@ -2702,22 +2702,11 @@ 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 +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 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 - AC_CACHE_CHECK([for root],samba_cv_HAVE_ROOT,[ AC_TRY_RUN([main() { exit(getuid() != 0); }], samba_cv_HAVE_ROOT=yes,samba_cv_HAVE_ROOT=no,samba_cv_HAVE_ROOT=cross)])