diff options
author | Andrew Tridgell <tridge@samba.org> | 2005-01-17 04:07:33 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 13:08:56 -0500 |
commit | 4d7e4c80580f9902339680cecee457460fe85218 (patch) | |
tree | f0f952e0ea3d8225aefcca97f11190844616abf6 /source4/build/m4 | |
parent | 6717dcca765e5286a36d89eebc5da2d167bcbef2 (diff) | |
download | samba-4d7e4c80580f9902339680cecee457460fe85218.tar.gz samba-4d7e4c80580f9902339680cecee457460fe85218.tar.bz2 samba-4d7e4c80580f9902339680cecee457460fe85218.zip |
r4794: - disabled the ntacl command line utilities until they are rewritten to use the same
acl format as we use in pvfs (and hopefully use common code too)
- removed a lot of old cruft from our autoconf tests. This may well break some builds,
but then we can fix them properly instead of the "if solaris version 5.1.2" crap
This was prompted by someone sending me solaris 10 patches that
patched the configure script with if statements for several more
versions of solaris to check for and do special stuff. That is just
silly.
(This used to be commit 1ea59d1146f041e9befbb435e901c6d7d497c52c)
Diffstat (limited to 'source4/build/m4')
-rw-r--r-- | source4/build/m4/rewrite.m4 | 624 |
1 files changed, 20 insertions, 604 deletions
diff --git a/source4/build/m4/rewrite.m4 b/source4/build/m4/rewrite.m4 index 8d68c4cc74..c906af8b10 100644 --- a/source4/build/m4/rewrite.m4 +++ b/source4/build/m4/rewrite.m4 @@ -7,223 +7,48 @@ AC_SUBST(SHLIBEXT) AC_SUBST(LDSHFLAGS) AC_SUBST(SONAMEFLAG) AC_SUBST(PICFLAG) + +AH_VERBATIM([_GNU_SOURCE], +[/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE +#endif]) + +AC_SYS_LARGEFILE + # # Config CPPFLAG settings for strange OS's that must be set # before other tests. # case "$host_os" in # Try to work out if this is the native HPUX compiler that uses the -Ae flag. - *hpux*) - + *hpux*) AC_PROG_CC_FLAG(Ae) # mmap on HPUX is completely broken... AC_DEFINE(MMAP_BLACKLIST, 1, [Whether MMAP is broken]) if test $ac_cv_prog_cc_Ae = yes; then CPPFLAGS="$CPPFLAGS -Ae" fi -# -# Defines needed for HPUX support. -# HPUX has bigcrypt but (sometimes?) doesn't use it for -# password hashing - hence the USE_BOTH_CRYPT_CALLS define. -# - case `uname -r` in - *9*|*10*) - CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_POSIX_SOURCE -D_ALIGNMENT_REQUIRED=1 -D_MAX_ALIGNMENT=4 -DMAX_POSITIVE_LOCK_OFFSET=0x1ffffffffffLL" - AC_DEFINE(USE_BOTH_CRYPT_CALLS, 1, [Whether to use both of HPUX' crypt calls]) - AC_DEFINE(_HPUX_SOURCE, 1, [Whether to use HPUX extensions]) - AC_DEFINE(_POSIX_SOURCE, 1, [Whether to use POSIX compatible functions]) - AC_DEFINE(_ALIGNMENT_REQUIRED,1,[Required alignment]) - AC_DEFINE(_MAX_ALIGNMENT,4,[Maximum alignment]) - ;; - *11*) - CPPFLAGS="$CPPFLAGS -D_HPUX_SOURCE -D_POSIX_SOURCE -D_LARGEFILE64_SOURCE -D_ALIGNMENT_REQUIRED=1 -D_MAX_ALIGNMENT=4 -DMAX_POSITIVE_LOCK_OFFSET=0x1ffffffffffLL" - AC_DEFINE(USE_BOTH_CRYPT_CALLS, 1, [Whether to use both of HPUX' crypt calls]) - AC_DEFINE(_HPUX_SOURCE, 1, [Whether to use HPUX extensions]) - AC_DEFINE(_POSIX_SOURCE, 1, [Whether to use POSIX compatible functions]) - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to use large file support]) - AC_DEFINE(_ALIGNMENT_REQUIRED, 1, [Required alignment]) - AC_DEFINE(_MAX_ALIGNMENT, 4, [Maximum alignment]) - ;; - esac - DYNEXP="-Wl,-E" - ;; - -# -# CRAY Unicos has broken const handling - *unicos*) - AC_MSG_RESULT([disabling const]) - CPPFLAGS="$CPPFLAGS -Dconst=" - ;; - -# -# AIX4.x doesn't even admit to having large -# files *at all* unless the -D_LARGE_FILE or -D_LARGE_FILE_API flags are set. -# - *aix4*) - AC_MSG_RESULT([enabling large file support]) - CPPFLAGS="$CPPFLAGS -D_LARGE_FILES" - AC_DEFINE(_LARGE_FILES, 1, [Whether to enable large file support]) - ;; -# -# Defines needed for Solaris 2.6/2.7 aka 7.0 to make it admit -# to the existance of large files.. -# Note that -D_LARGEFILE64_SOURCE is different from the Sun -# recommendations on large file support, however it makes the -# compile work using gcc 2.7 and 2.8, whereas using the Sun -# recommendation makes the compile fail on gcc2.7. JRA. -# - *solaris*) - case `uname -r` in - 5.0*|5.1*|5.2*|5.3*|5.5*) - AC_MSG_RESULT([no large file support]) - ;; - 5.*) - AC_MSG_RESULT([enabling large file support]) - if test "$ac_cv_prog_gcc" = yes; then - ${CC-cc} -v >conftest.c 2>&1 - ac_cv_gcc_compiler_version_number=`grep 'gcc version' conftest.c` - rm -fr conftest.c - case "$ac_cv_gcc_compiler_version_number" in - *"gcc version 2.6"*|*"gcc version 2.7"*) - CPPFLAGS="$CPPFLAGS -D_LARGEFILE64_SOURCE" - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support]) - ;; - *) - CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support]) - AC_DEFINE(_FILE_OFFSET_BITS, 64, [File offset bits]) - ;; - esac - else - CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support]) - AC_DEFINE(_FILE_OFFSET_BITS, 64, [File offset bits]) - fi - ;; - esac - ;; + ;; # # VOS may need to have POSIX support and System V compatibility enabled. # *vos*) - case "$CPPFLAGS" in - *-D_POSIX_C_SOURCE*) + case "$CPPFLAGS" in + *-D_POSIX_C_SOURCE*) ;; *) CPPFLAGS="$CPPFLAGS -D_POSIX_C_SOURCE=200112L" AC_DEFINE(_POSIX_C_SOURCE, 200112L, [Whether to enable POSIX support]) ;; - esac - case "$CPPFLAGS" in - *-D_SYSV*|*-D_SVID_SOURCE*) + esac + case "$CPPFLAGS" in + *-D_SYSV*|*-D_SVID_SOURCE*) ;; - *) + *) CPPFLAGS="$CPPFLAGS -D_SYSV" AC_DEFINE(_SYSV, 1, [Whether to enable System V compatibility]) - esac - ;; -# -# Tests needed for SINIX large file support. -# - *sysv4*) - if test $host = mips-sni-sysv4 ; then - AC_MSG_CHECKING([for LFS support]) - old_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="-D_LARGEFILE64_SOURCE $CPPFLAGS" - AC_TRY_RUN([ -#include <unistd.h> -main () { -#if _LFS64_LARGEFILE == 1 -exit(0); -#else -exit(1); -#endif -}], [SINIX_LFS_SUPPORT=yes], [SINIX_LFS_SUPPORT=no], [SINIX_LFS_SUPPORT=cross]) - CPPFLAGS="$old_CPPFLAGS" - if test x$SINIX_LFS_SUPPORT = xyes ; then - CPPFLAGS="-D_LARGEFILE64_SOURCE $CPPFLAGS" - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support]) - CFLAGS="`getconf LFS64_CFLAGS` $CFLAGS" - LDFLAGS="`getconf LFS64_LDFLAGS` $LDFLAGS" - LIBS="`getconf LFS64_LIBS` $LIBS" - fi - AC_MSG_RESULT([$SINIX_LFS_SUPPORT]) - fi - ;; - -# Tests for linux LFS support. Need kernel 2.4 and glibc2.2 or greater support. -# - *linux*) - AC_MSG_CHECKING([for LFS support]) - old_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE $CPPFLAGS" - AC_TRY_RUN([ -#include <unistd.h> -#include <sys/utsname.h> -#include <string.h> -#include <stdlib.h> -main() { -#if _LFS64_LARGEFILE == 1 - struct utsname uts; - char *release; - int major, minor; - - /* Ensure this is glibc 2.2 or higher */ -#if defined(__GLIBC__) && defined(__GLIBC_MINOR__) - int libc_major = __GLIBC__; - int libc_minor = __GLIBC_MINOR__; - - if (libc_major < 2) - exit(1); - if (libc_minor < 2) - exit(1); -#endif - - /* Ensure this is kernel 2.4 or higher */ - - uname(&uts); - release = uts.release; - major = atoi(strsep(&release, ".")); - minor = atoi(strsep(&release, ".")); - - if (major > 2 || (major == 2 && minor > 3)) - exit(0); - exit(1); -#else - exit(1); -#endif -} -], [LINUX_LFS_SUPPORT=yes], [LINUX_LFS_SUPPORT=no], [LINUX_LFS_SUPPORT=cross]) - CPPFLAGS="$old_CPPFLAGS" - if test x$LINUX_LFS_SUPPORT = xyes ; then - CPPFLAGS="-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE $CPPFLAGS" - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support]) - AC_DEFINE(_FILE_OFFSET_BITS, 64, [File offset bits]) - AC_DEFINE(_GNU_SOURCE, 1, [Whether to use GNU libc extensions]) - fi - AC_MSG_RESULT([$LINUX_LFS_SUPPORT]) - ;; - - *hurd*) - AC_MSG_CHECKING([for LFS support]) - old_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="-D_LARGEFILE64_SOURCE -D_GNU_SOURCE $CPPFLAGS" - AC_TRY_RUN([ -#include <unistd.h> -main () { -#if _LFS64_LARGEFILE == 1 -exit(0); -#else -exit(1); -#endif -}], [GLIBC_LFS_SUPPORT=yes], [GLIBC_LFS_SUPPORT=no], [GLIBC_LFS_SUPPORT=cross]) - CPPFLAGS="$old_CPPFLAGS" - if test x$GLIBC_LFS_SUPPORT = xyes ; then - CPPFLAGS="-D_LARGEFILE64_SOURCE -D_GNU_SOURCE $CPPFLAGS" - AC_DEFINE(_LARGEFILE64_SOURCE, 1, [Whether to enable large file support]) - AC_DEFINE(_GNU_SOURCE, 1, [Whether to use GNU libc extensions]) - fi - AC_MSG_RESULT([$GLIBC_LFS_SUPPORT]) + esac ;; esac @@ -242,21 +67,6 @@ AC_CHECK_HEADERS(sys/termio.h sys/statfs.h sys/dustat.h sys/statvfs.h stdarg.h s AC_CHECK_HEADERS(security/pam_modules.h security/_pam_macros.h dlfcn.h) AC_CHECK_HEADERS(sys/syslog.h syslog.h) AC_CHECK_HEADERS(stdint.h locale.h) - -# -# HPUX has a bug in that including shadow.h causes a re-definition of MAXINT. -# This causes configure to fail to detect it. Check for shadow separately on HPUX. -# -case "$host_os" in - *hpux*) - AC_TRY_COMPILE([#include <shadow.h>],[struct spwd testme], - ac_cv_header_shadow_h=yes,ac_cv_header_shadow_h=no) - if test x"$ac_cv_header_shadow_h" = x"yes"; then - AC_DEFINE(HAVE_SHADOW_H,1,[Whether we have shadow.h]) - fi - ;; -esac - AC_CHECK_HEADERS(shadow.h netinet/ip.h netinet/tcp.h netinet/in_systm.h netinet/in_ip.h) AC_CHECK_HEADERS(nss.h nss_common.h ns_api.h sys/security.h security/pam_appl.h security/pam_modules.h) AC_CHECK_HEADERS(stropts.h) @@ -344,27 +154,6 @@ AC_HAVE_DECL(vasprintf, [#include <stdio.h>]) AC_HAVE_DECL(vsnprintf, [#include <stdio.h>]) AC_HAVE_DECL(snprintf, [#include <stdio.h>]) -# and glibc has setresuid under linux but the function does -# nothing until kernel 2.1.44! very dumb. -AC_CACHE_CHECK([for real setresuid],samba_cv_have_setresuid,[ - AC_TRY_RUN([#include <errno.h> -main() { setresuid(1,1,1); setresuid(2,2,2); exit(errno==EPERM?0:1);}], - samba_cv_have_setresuid=yes,samba_cv_have_setresuid=no,samba_cv_have_setresuid=cross)]) -if test x"$samba_cv_have_setresuid" = x"yes"; then - AC_DEFINE(HAVE_SETRESUID,1,[Whether the system has setresuid]) -fi - -# Do the same check for setresguid... -# -AC_CACHE_CHECK([for real setresgid],samba_cv_have_setresgid,[ - AC_TRY_RUN([#include <unistd.h> -#include <errno.h> -main() { errno = 0; setresgid(1,1,1); exit(errno != 0 ? (errno==EPERM ? 0 : 1) : 0);}], - samba_cv_have_setresgid=yes,samba_cv_have_setresgid=no,samba_cv_have_setresgid=cross)]) -if test x"$samba_cv_have_setresgid" = x"yes"; then - AC_DEFINE(HAVE_SETRESGID,1,[Whether the system has setresgid]) -fi - AC_FUNC_MEMCMP # The following test taken from the cvs sources @@ -401,17 +190,6 @@ if test x"$ac_cv_func_connect" = x"no"; then fi fi -############################################### -# test for where we get yp_get_default_domain() from -AC_SEARCH_LIBS(yp_get_default_domain, [nsl]) -AC_CHECK_FUNCS(yp_get_default_domain) - -# Check if we have execl, if not we need to compile smbrun. -AC_CHECK_FUNCS(execl) -if test x"$ac_cv_func_execl" = x"no"; then - EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/smbrun\$(EXEEXT)" -fi - AC_CHECK_FUNCS(dlopen dlclose dlsym dlerror waitpid getcwd strdup strndup strnlen strtoul strtoull strtouq strerror chown fchown chmod fchmod chroot link mknod mknod64) AC_CHECK_FUNCS(fstat strchr utime utimes getrlimit fsync bzero memset strlcpy strlcat setpgid) AC_CHECK_FUNCS(memmove vsnprintf snprintf asprintf vasprintf setsid glob strpbrk pipe crypt16 getauthuid) @@ -421,11 +199,7 @@ AC_CHECK_FUNCS(setpriv setgidx setuidx setgroups sysconf mktime rename ftruncate AC_CHECK_FUNCS(setluid getpwanam setlinebuf) AC_CHECK_FUNCS(srandom random srand rand setenv usleep strcasecmp fcvt fcvtl symlink readlink) AC_CHECK_FUNCS(syslog vsyslog getgrouplist timegm backtrace) -# setbuffer, shmget, shm_open are needed for smbtorture -AC_CHECK_FUNCS(setbuffer shmget shm_open) - -# syscall() is needed for smbwrapper. -AC_CHECK_FUNCS(syscall) +AC_CHECK_FUNCS(setbuffer) AC_CHECK_FUNCS(getdents) AC_CHECK_FUNCS(pread pwrite) @@ -433,52 +207,10 @@ AC_CHECK_FUNCS(pread pwrite) # needed for lib/charcnv.c AC_CHECK_FUNCS(setlocale) -# -# stat64 family may need <sys/stat.h> on some systems, notably ReliantUNIX -# - -if test x$ac_cv_func_stat64 = xno ; then - AC_MSG_CHECKING([for stat64 in <sys/stat.h>]) - AC_TRY_LINK([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <sys/stat.h> -], [struct stat64 st64; exit(stat64(".",&st64));], [ac_cv_func_stat64=yes]) - AC_MSG_RESULT([$ac_cv_func_stat64]) - if test x$ac_cv_func_stat64 = xyes ; then - AC_DEFINE(HAVE_STAT64,1,[Whether stat64() is available]) - fi -fi - ##################################### # we might need the resolv library on some systems AC_CHECK_LIB(resolv, dn_expand) -# -# Check for the functions putprpwnam, set_auth_parameters, -# getspnam, bigcrypt and getprpwnam in -lsec and -lsecurity -# Needed for OSF1 and HPUX. -# - -AC_LIBTESTFUNC(security, putprpwnam) -AC_LIBTESTFUNC(sec, putprpwnam) - -AC_LIBTESTFUNC(security, set_auth_parameters) -AC_LIBTESTFUNC(sec, set_auth_parameters) - -# UnixWare 7.x has its getspnam in -lgen -AC_LIBTESTFUNC(gen, getspnam) - -AC_LIBTESTFUNC(security, getspnam) -AC_LIBTESTFUNC(sec, getspnam) - -AC_LIBTESTFUNC(security, bigcrypt) -AC_LIBTESTFUNC(sec, bigcrypt) - -AC_LIBTESTFUNC(security, getprpwnam) -AC_LIBTESTFUNC(sec, getprpwnam) - # Assume non-shared by default and override below BLDSHARED="false" @@ -670,120 +402,6 @@ if test $ac_cv_shlib_works = no; then fi fi -# -# Check if the compiler supports the LL prefix on long long integers. -# AIX needs this. - -AC_CACHE_CHECK([for LL suffix on long long integers],samba_cv_compiler_supports_ll, [ - AC_TRY_COMPILE([#include <stdio.h>],[long long i = 0x8000000000LL], - samba_cv_compiler_supports_ll=yes,samba_cv_compiler_supports_ll=no)]) -if test x"$samba_cv_compiler_supports_ll" = x"yes"; then - AC_DEFINE(COMPILER_SUPPORTS_LL,1,[Whether the compiler supports the LL prefix on long long integers]) -fi - - -AC_CACHE_CHECK([for 64 bit off_t],samba_cv_SIZEOF_OFF_T,[ -AC_TRY_RUN([#include <stdio.h> -#include <sys/stat.h> -main() { exit((sizeof(off_t) == 8) ? 0 : 1); }], -samba_cv_SIZEOF_OFF_T=yes,samba_cv_SIZEOF_OFF_T=no,samba_cv_SIZEOF_OFF_T=cross)]) -if test x"$samba_cv_SIZEOF_OFF_T" = x"yes"; then - AC_DEFINE(SIZEOF_OFF_T,8,[The size of the 'off_t' type]) -fi - -AC_CACHE_CHECK([for off64_t],samba_cv_HAVE_OFF64_T,[ -AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <stdio.h> -#include <sys/stat.h> -main() { struct stat64 st; off64_t s; if (sizeof(off_t) == sizeof(off64_t)) exit(1); exit((lstat64("/dev/null", &st)==0)?0:1); }], -samba_cv_HAVE_OFF64_T=yes,samba_cv_HAVE_OFF64_T=no,samba_cv_HAVE_OFF64_T=cross)]) -if test x"$samba_cv_HAVE_OFF64_T" = x"yes"; then - AC_DEFINE(HAVE_OFF64_T,1,[Whether off64_t is available]) -fi - -AC_CACHE_CHECK([for 64 bit ino_t],samba_cv_SIZEOF_INO_T,[ -AC_TRY_RUN([#include <stdio.h> -#include <sys/stat.h> -main() { exit((sizeof(ino_t) == 8) ? 0 : 1); }], -samba_cv_SIZEOF_INO_T=yes,samba_cv_SIZEOF_INO_T=no,samba_cv_SIZEOF_INO_T=cross)]) -if test x"$samba_cv_SIZEOF_INO_T" = x"yes"; then - AC_DEFINE(SIZEOF_INO_T,8,[The size of the 'ino_t' type]) -fi - -AC_CACHE_CHECK([for ino64_t],samba_cv_HAVE_INO64_T,[ -AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <stdio.h> -#include <sys/stat.h> -main() { struct stat64 st; ino64_t s; if (sizeof(ino_t) == sizeof(ino64_t)) exit(1); exit((lstat64("/dev/null", &st)==0)?0:1); }], -samba_cv_HAVE_INO64_T=yes,samba_cv_HAVE_INO64_T=no,samba_cv_HAVE_INO64_T=cross)]) -if test x"$samba_cv_HAVE_INO64_T" = x"yes"; then - AC_DEFINE(HAVE_INO64_T,1,[Whether the 'ino64_t' type is available]) -fi - -AC_CACHE_CHECK([for dev64_t],samba_cv_HAVE_DEV64_T,[ -AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <stdio.h> -#include <sys/stat.h> -main() { struct stat64 st; dev64_t s; if (sizeof(dev_t) == sizeof(dev64_t)) exit(1); exit((lstat64("/dev/null", &st)==0)?0:1); }], -samba_cv_HAVE_DEV64_T=yes,samba_cv_HAVE_DEV64_T=no,samba_cv_HAVE_DEV64_T=cross)]) -if test x"$samba_cv_HAVE_DEV64_T" = x"yes"; then - AC_DEFINE(HAVE_DEV64_T,1,[Whether the 'dev64_t' type is available]) -fi - -AC_CACHE_CHECK([for struct dirent64],samba_cv_HAVE_STRUCT_DIRENT64,[ -AC_TRY_COMPILE([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <sys/types.h> -#include <dirent.h>], -[struct dirent64 de;], -samba_cv_HAVE_STRUCT_DIRENT64=yes,samba_cv_HAVE_STRUCT_DIRENT64=no)]) -if test x"$samba_cv_HAVE_STRUCT_DIRENT64" = x"yes" && test x"$ac_cv_func_readdir64" = x"yes"; then - AC_DEFINE(HAVE_STRUCT_DIRENT64,1,[Whether the 'dirent64' struct is available]) -fi - -AC_CACHE_CHECK([for major macro],samba_cv_HAVE_DEVICE_MAJOR_FN,[ -AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <sys/types.h> -main() { dev_t dev; int i = major(dev); return 0; }], -samba_cv_HAVE_DEVICE_MAJOR_FN=yes,samba_cv_HAVE_DEVICE_MAJOR_FN=no,samba_cv_HAVE_DEVICE_MAJOR_FN=cross)]) -if test x"$samba_cv_HAVE_DEVICE_MAJOR_FN" = x"yes"; then - AC_DEFINE(HAVE_DEVICE_MAJOR_FN,1,[Whether the major macro for dev_t is available]) -fi - -AC_CACHE_CHECK([for minor macro],samba_cv_HAVE_DEVICE_MINOR_FN,[ -AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <sys/types.h> -main() { dev_t dev; int i = minor(dev); return 0; }], -samba_cv_HAVE_DEVICE_MINOR_FN=yes,samba_cv_HAVE_DEVICE_MINOR_FN=no,samba_cv_HAVE_DEVICE_MINOR_FN=cross)]) -if test x"$samba_cv_HAVE_DEVICE_MINOR_FN" = x"yes"; then - AC_DEFINE(HAVE_DEVICE_MINOR_FN,1,[Whether the minor macro for dev_t is available]) -fi - -AC_CACHE_CHECK([for unsigned char],samba_cv_HAVE_UNSIGNED_CHAR,[ -AC_TRY_RUN([#include <stdio.h> -main() { char c; c=250; exit((c > 0)?0:1); }], -samba_cv_HAVE_UNSIGNED_CHAR=yes,samba_cv_HAVE_UNSIGNED_CHAR=no,samba_cv_HAVE_UNSIGNED_CHAR=cross)]) -if test x"$samba_cv_HAVE_UNSIGNED_CHAR" = x"yes"; then - AC_DEFINE(HAVE_UNSIGNED_CHAR,1,[Whether the 'unsigned char' type is available]) -fi - AC_CACHE_CHECK([for sin_len in sock],samba_cv_HAVE_SOCK_SIN_LEN,[ AC_TRY_COMPILE([#include <sys/types.h> #include <sys/socket.h> @@ -794,15 +412,6 @@ if test x"$samba_cv_HAVE_SOCK_SIN_LEN" = x"yes"; then AC_DEFINE(HAVE_SOCK_SIN_LEN,1,[Whether the sockaddr_in struct has a sin_len property]) fi -AC_CACHE_CHECK([whether seekdir returns void],samba_cv_SEEKDIR_RETURNS_VOID,[ -AC_TRY_COMPILE([#include <sys/types.h> -#include <dirent.h> -void seekdir(DIR *d, long loc) { return; }],[return 0;], -samba_cv_SEEKDIR_RETURNS_VOID=yes,samba_cv_SEEKDIR_RETURNS_VOID=no)]) -if test x"$samba_cv_SEEKDIR_RETURNS_VOID" = x"yes"; then - AC_DEFINE(SEEKDIR_RETURNS_VOID,1,[Whether seekdir returns void]) -fi - AC_CACHE_CHECK([for __FUNCTION__ macro],samba_cv_HAVE_FUNCTION_MACRO,[ AC_TRY_COMPILE([#include <stdio.h>], [printf("%s\n", __FUNCTION__);], samba_cv_HAVE_FUNCTION_MACRO=yes,samba_cv_HAVE_FUNCTION_MACRO=no)]) @@ -868,17 +477,6 @@ if test x"$samba_cv_HAVE_C99_VSNPRINTF" = x"yes"; then AC_DEFINE(HAVE_C99_VSNPRINTF,1,[Whether there is a C99 compliant vsnprintf]) fi -AC_CACHE_CHECK([for broken readdir],samba_cv_HAVE_BROKEN_READDIR,[ -AC_TRY_RUN([#include <sys/types.h> -#include <dirent.h> -main() { struct dirent *di; DIR *d = opendir("."); di = readdir(d); -if (di && di->d_name[-2] == '.' && di->d_name[-1] == 0 && -di->d_name[0] == 0) exit(0); exit(1);} ], -samba_cv_HAVE_BROKEN_READDIR=yes,samba_cv_HAVE_BROKEN_READDIR=no,samba_cv_HAVE_BROKEN_READDIR=cross)]) -if test x"$samba_cv_HAVE_BROKEN_READDIR" = x"yes"; then - AC_DEFINE(HAVE_BROKEN_READDIR,1,[Whether readdir() is broken]) -fi - AC_CACHE_CHECK([for utimbuf],samba_cv_HAVE_UTIMBUF,[ AC_TRY_COMPILE([#include <sys/types.h> #include <utime.h>], @@ -1059,15 +657,6 @@ 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 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)]) -if test x"$samba_cv_HAVE_ROOT" = x"yes"; then - AC_DEFINE(HAVE_ROOT,1,[Whether current user is root]) -else - AC_MSG_WARN(running as non-root will disable some tests) -fi - ################## # look for a method of finding the list of network interfaces iface=no; @@ -1125,55 +714,6 @@ if test x"$samba_cv_FTRUNCATE_NEEDS_ROOT" = x"yes"; then AC_DEFINE(FTRUNCATE_NEEDS_ROOT,1,[Whether ftruncate() needs root]) fi -AC_CACHE_CHECK([for fcntl locking],samba_cv_HAVE_FCNTL_LOCK,[ -AC_TRY_RUN([#include "${srcdir-.}/build/tests/fcntl_lock.c"], - samba_cv_HAVE_FCNTL_LOCK=yes,samba_cv_HAVE_FCNTL_LOCK=no,samba_cv_HAVE_FCNTL_LOCK=cross)]) -if test x"$samba_cv_HAVE_FCNTL_LOCK" = x"yes"; then - AC_DEFINE(HAVE_FCNTL_LOCK,1,[Whether fcntl locking is available]) -fi - -AC_CACHE_CHECK([for broken (glibc2.1/x86) 64 bit fcntl locking],samba_cv_HAVE_BROKEN_FCNTL64_LOCKS,[ -AC_TRY_RUN([#include "${srcdir-.}/build/tests/fcntl_lock64.c"], - samba_cv_HAVE_BROKEN_FCNTL64_LOCKS=yes,samba_cv_HAVE_BROKEN_FCNTL64_LOCKS=no,samba_cv_HAVE_BROKEN_FCNTL64_LOCKS=cross)]) -if test x"$samba_cv_HAVE_BROKEN_FCNTL64_LOCKS" = x"yes"; then - AC_DEFINE(HAVE_BROKEN_FCNTL64_LOCKS,1,[Whether fcntl64 locks are broken]) - -else - -dnl -dnl Don't check for 64 bit fcntl locking if we know that the -dnl glibc2.1 broken check has succeeded. -dnl - - AC_CACHE_CHECK([for 64 bit fcntl locking],samba_cv_HAVE_STRUCT_FLOCK64,[ - AC_TRY_RUN([ -#if defined(HAVE_UNISTD_H) -#include <unistd.h> -#endif -#include <stdio.h> -#include <stdlib.h> - -#ifdef HAVE_FCNTL_H -#include <fcntl.h> -#endif - -#ifdef HAVE_SYS_FCNTL_H -#include <sys/fcntl.h> -#endif -main() { struct flock64 fl64; -#if defined(F_SETLKW64) && defined(F_SETLK64) && defined(F_GETLK64) -exit(0); -#else -exit(1); -#endif -}], - samba_cv_HAVE_STRUCT_FLOCK64=yes,samba_cv_HAVE_STRUCT_FLOCK64=no,samba_cv_HAVE_STRUCT_FLOCK64=cross)]) - - if test x"$samba_cv_HAVE_STRUCT_FLOCK64" = x"yes"; then - AC_DEFINE(HAVE_STRUCT_FLOCK64,1,[Whether the flock64 struct is available]) - fi -fi - AC_CACHE_CHECK([for st_blocks in struct stat],samba_cv_HAVE_STAT_ST_BLOCKS,[ AC_TRY_COMPILE([#include <sys/types.h> #include <sys/stat.h> @@ -1425,28 +965,7 @@ if test $space = no; then fi fi -# -# As a gating factor for large file support, in order to -# use <4GB files we must have the following minimal support -# available. -# long long, and a 64 bit off_t or off64_t. -# If we don't have all of these then disable large -# file support. -# -AC_MSG_CHECKING([if large file support can be enabled]) -AC_TRY_COMPILE([ -#if defined(HAVE_LONGLONG) && (defined(HAVE_OFF64_T) || (defined(SIZEOF_OFF_T) && (SIZEOF_OFF_T == 8))) -#include <sys/types.h> -#else -__COMPILE_ERROR_ -#endif -], -[int i], -samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT=yes,samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT=no) -if test x"$samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT" = x"yes"; then - AC_DEFINE(HAVE_EXPLICIT_LARGEFILE_SUPPORT,1,[Whether large file support can be enabled]) -fi -AC_MSG_RESULT([$samba_cv_HAVE_EXPLICIT_LARGEFILE_SUPPORT]) + ####################################### # Check for comparison_fn_t @@ -1465,106 +984,3 @@ if test x"$samba_cv_HAVE_COMPARISON_FN_T" = x"yes"; then AC_DEFINE(HAVE_COMPARISON_FN_T,1,[Whether or not we have comparison_fn_t]) fi -################################################# -# check for ACL support - -AC_MSG_CHECKING(whether to support ACLs) -AC_ARG_WITH(acl-support, -[ --with-acl-support Include ACL support (default=no)], -[ case "$withval" in - yes) - - case "$host_os" in - *sysv5*) - AC_MSG_RESULT(Using UnixWare ACLs) - AC_DEFINE(HAVE_UNIXWARE_ACLS,1,[Whether UnixWare ACLs are available]) - ;; - *solaris*) - AC_MSG_RESULT(Using solaris ACLs) - AC_DEFINE(HAVE_SOLARIS_ACLS,1,[Whether solaris ACLs are available]) - ;; - *hpux*) - AC_MSG_RESULT(Using HPUX ACLs) - AC_DEFINE(HAVE_HPUX_ACLS,1,[Whether HPUX ACLs are available]) - ;; - *irix*) - AC_MSG_RESULT(Using IRIX ACLs) - AC_DEFINE(HAVE_IRIX_ACLS,1,[Whether IRIX ACLs are available]) - ;; - *aix*) - AC_MSG_RESULT(Using AIX ACLs) - AC_DEFINE(HAVE_AIX_ACLS,1,[Whether AIX ACLs are available]) - ;; - *osf*) - AC_MSG_RESULT(Using Tru64 ACLs) - AC_DEFINE(HAVE_TRU64_ACLS,1,[Whether Tru64 ACLs are available]) - ACL_LIBS="$ACL_LIBS -lpacl" - ;; - *freebsd5*) - AC_MSG_RESULT(Using FreeBSD posix ACLs) - AC_DEFINE(HAVE_POSIX_ACLS,1,[Whether FreeBSD POSIX ACLs are available]) - AC_DEFINE(HAVE_ACL_GET_PERM_NP,1,[Whether acl_get_perm_np() is available]) - ;; - *linux*) - AC_CHECK_LIB(attr,getxattr,[ACL_LIBS="$ACL_LIBS -lattr"]) - AC_CHECK_LIB(acl,acl_get_file,[ACL_LIBS="$ACL_LIBS -lacl"]) - AC_CACHE_CHECK([for ACL support],samba_cv_HAVE_POSIX_ACLS,[ - acl_LIBS=$LIBS - LIBS="$LIBS -lacl" - AC_TRY_LINK([#include <sys/types.h> -#include <sys/acl.h>], -[ acl_t acl; int entry_id; acl_entry_t *entry_p; return acl_get_entry( acl, entry_id, entry_p);], -samba_cv_HAVE_POSIX_ACLS=yes,samba_cv_HAVE_POSIX_ACLS=no) - LIBS=$acl_LIBS]) - if test x"$samba_cv_HAVE_POSIX_ACLS" = x"yes"; then - AC_MSG_RESULT(Using posix ACLs) - AC_DEFINE(HAVE_POSIX_ACLS,1,[Whether POSIX ACLs are available]) - AC_CACHE_CHECK([for acl_get_perm_np],samba_cv_HAVE_ACL_GET_PERM_NP,[ - acl_LIBS=$LIBS - LIBS="$LIBS -lacl" - AC_TRY_LINK([#include <sys/types.h> -#include <sys/acl.h>], -[ acl_permset_t permset_d; acl_perm_t perm; return acl_get_perm_np( permset_d, perm);], -samba_cv_HAVE_ACL_GET_PERM_NP=yes,samba_cv_HAVE_ACL_GET_PERM_NP=no) - LIBS=$acl_LIBS]) - if test x"$samba_cv_HAVE_ACL_GET_PERM_NP" = x"yes"; then - AC_DEFINE(HAVE_ACL_GET_PERM_NP,1,[Whether acl_get_perm_np() is available]) - fi - fi - ;; - *) - AC_CHECK_LIB(acl,acl_get_file,[ACL_LIBS="$ACL_LIBS -lacl"]) - AC_CACHE_CHECK([for ACL support],samba_cv_HAVE_POSIX_ACLS,[ - acl_LIBS=$LIBS - LIBS="$LIBS -lacl" - AC_TRY_LINK([#include <sys/types.h> -#include <sys/acl.h>], -[ acl_t acl; int entry_id; acl_entry_t *entry_p; return acl_get_entry( acl, entry_id, entry_p);], -samba_cv_HAVE_POSIX_ACLS=yes,samba_cv_HAVE_POSIX_ACLS=no) - LIBS=$acl_LIBS]) - if test x"$samba_cv_HAVE_POSIX_ACLS" = x"yes"; then - AC_MSG_RESULT(Using posix ACLs) - AC_DEFINE(HAVE_POSIX_ACLS,1,[Whether POSIX ACLs are available]) - AC_CACHE_CHECK([for acl_get_perm_np],samba_cv_HAVE_ACL_GET_PERM_NP,[ - acl_LIBS=$LIBS - LIBS="$LIBS -lacl" - AC_TRY_LINK([#include <sys/types.h> -#include <sys/acl.h>], -[ acl_permset_t permset_d; acl_perm_t perm; return acl_get_perm_np( permset_d, perm);], -samba_cv_HAVE_ACL_GET_PERM_NP=yes,samba_cv_HAVE_ACL_GET_PERM_NP=no) - LIBS=$acl_LIBS]) - if test x"$samba_cv_HAVE_ACL_GET_PERM_NP" = x"yes"; then - AC_DEFINE(HAVE_ACL_GET_PERM_NP,1,[Whether acl_get_perm_np() is available]) - fi - fi - ;; - esac - ;; - *) - AC_MSG_RESULT(no) - AC_DEFINE(HAVE_NO_ACLS,1,[Whether no ACLs support is available]) - ;; - esac ], - AC_DEFINE(HAVE_NO_ACLS,1,[Whether no ACLs support should be built in]) - AC_MSG_RESULT(no) -) |