1dnl Process this file with autoconf to produce a configure script. 2AC_INIT(include/includes.h) 3AC_PREREQ(2.52) 4AC_CONFIG_HEADER(include/config.h) 5AC_CONFIG_AUX_DIR(../../../../config) 6# we want to be compatibe with older versions of Samba 7AC_PREFIX_DEFAULT(/usr/local/samba) 8AC_SYS_LARGEFILE 9 10dnl Unique-to-Samba variables we'll be playing with. 11AC_SUBST(SHELL) 12AC_SUBST(MPROGS) 13AC_SUBST(LDSHFLAGS) 14AC_SUBST(HOST_OS) 15AC_SUBST(WRAP) 16AC_SUBST(WRAP32) 17 18# compile with optimization and without debugging by default 19CFLAGS=${CFLAGS-"-O"} 20 21dnl Checks for programs. 22AC_PROG_CC 23AC_PROG_INSTALL 24AC_PROG_AWK 25AC_CHECK_TOOL(AR, ar, ar) 26 27dnl Check if C compiler understands -c and -o at the same time 28AC_PROG_CC_C_O 29if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = no"; then 30 BROKEN_CC= 31else 32 BROKEN_CC=# 33fi 34AC_SUBST(BROKEN_CC) 35 36AC_CANONICAL_HOST 37AC_VALIDATE_CACHE_SYSTEM_TYPE 38SAMBA_MAINTAINER_MODE 39 40AC_INLINE 41AC_HEADER_DIRENT 42AC_HEADER_TIME 43AC_CHECK_HEADERS(arpa/inet.h sys/fcntl.h sys/select.h fcntl.h sys/time.h sys/unistd.h) 44AC_CHECK_HEADERS(unistd.h utime.h sys/id.h limits.h memory.h net/if.h) 45AC_CHECK_HEADERS(compat.h rpc/rpc.h rpcsvc/nis.h rpcsvc/yp_prot.h rpcsvc/ypclnt.h) 46AC_CHECK_HEADERS(sys/param.h ctype.h sys/resource.h sys/ioctl.h sys/mode.h) 47AC_CHECK_HEADERS(sys/mman.h sys/filio.h sys/priv.h string.h strings.h sys/socket.h) 48AC_CHECK_HEADERS(sys/mount.h sys/vfs.h sys/fs/s5param.h sys/filsys.h) 49AC_CHECK_HEADERS(sys/statfs.h sys/dustat.h sys/statvfs.h stdarg.h sys/sockio.h) 50AC_CHECK_HEADERS(netinet/tcp.h netinet/in_systm.h netinet/in_ip.h) 51AC_CHECK_HEADERS(sys/security.h security/pam_appl.h) 52AC_CHECK_HEADERS(stropts.h poll.h syscall.h sys/syscall.h) 53AC_CHECK_HEADERS(sys/acl.h sys/cdefs.h) 54 55AC_CHECK_SIZEOF(int) 56AC_CHECK_SIZEOF(long) 57AC_CHECK_SIZEOF(short) 58AC_CHECK_SIZEOF(off_t) 59AC_CHECK_SIZEOF(ino_t) 60 61AC_C_CONST 62AC_C_INLINE 63AC_C_BIGENDIAN 64AC_C_CHAR_UNSIGNED 65 66AC_TYPE_SIGNAL 67AC_TYPE_UID_T 68AC_TYPE_MODE_T 69AC_TYPE_OFF_T 70AC_TYPE_SIZE_T 71AC_TYPE_PID_T 72AC_CHECK_TYPE(ino_t,unsigned) 73AC_CHECK_TYPE(loff_t,off_t) 74AC_CHECK_TYPE(offset_t,off_t) 75AC_CHECK_TYPE(ssize_t, int) 76 77# we need libdl for PAM and the new VFS code 78AC_CHECK_LIB(dl,main) 79 80# stupid glibc has the functions but no declaration. grrrr. 81AC_CACHE_CHECK([for crypt declaration],samba_cv_have_crypt_decl,[ 82 AC_TRY_COMPILE([#include <unistd.h>],[int i = (int)crypt], 83 samba_cv_have_crypt_decl=yes,samba_cv_have_crypt_decl=no)]) 84if test x"$samba_cv_have_crypt_decl" = x"yes"; then 85 AC_DEFINE(HAVE_CRYPT_DECL, 1, [Define if crypt() is declared]) 86fi 87 88AC_FUNC_MEMCMP 89 90############################################### 91# test for where we get crypt() from 92AC_CHECK_FUNCS(crypt) 93if test x"$ac_cv_func_crypt" = x"no"; then 94 AC_CHECK_LIB(crypt, crypt, [LIBS="$LIBS -lcrypt"; 95 AC_DEFINE(HAVE_CRYPT)]) 96fi 97 98 99# The following test taken from the cvs sources 100# If we can't find connect, try looking in -lsocket, -lnsl, and -linet. 101# The Irix 5 libc.so has connect and gethostbyname, but Irix 5 also has 102# libsocket.so which has a bad implementation of gethostbyname (it 103# only looks in /etc/hosts), so we only look for -lsocket if we need 104# it. 105AC_CHECK_FUNCS(connect) 106if test x"$ac_cv_func_connect" = x"no"; then 107 case "$LIBS" in 108 *-lnsl*) ;; 109 *) AC_CHECK_LIB(nsl_s, printf) ;; 110 esac 111 case "$LIBS" in 112 *-lnsl*) ;; 113 *) AC_CHECK_LIB(nsl, printf) ;; 114 esac 115 case "$LIBS" in 116 *-lsocket*) ;; 117 *) AC_CHECK_LIB(socket, connect) ;; 118 esac 119 case "$LIBS" in 120 *-linet*) ;; 121 *) AC_CHECK_LIB(inet, connect) ;; 122 esac 123 dnl We can't just call AC_CHECK_FUNCS(connect) here, because the value 124 dnl has been cached. 125 if test x"$ac_cv_lib_socket_connect" = x"yes" || 126 test x"$ac_cv_lib_inet_connect" = x"yes"; then 127 # ac_cv_func_connect=yes 128 # don't! it would cause AC_CHECK_FUNC to succeed next time configure is run 129 AC_DEFINE(HAVE_CONNECT) 130 fi 131fi 132 133AC_CHECK_FUNCS(waitpid getcwd strtoul chown chmod) 134AC_CHECK_FUNCS(fstat utime utimes getrlimit fsync memset) 135AC_CHECK_FUNCS(memmove vsnprintf snprintf setsid pipe crypt16 getauthuid) 136AC_CHECK_FUNCS(sigprocmask sigblock sigaction innetgr setnetgrent getnetgrent endnetgrent) 137AC_CHECK_FUNCS(initgroups select rdchk getgrnam pathconf) 138AC_CHECK_FUNCS(setpriv setgidx setuidx setgroups mktime rename) 139AC_CHECK_FUNCS(grantpt dup2 yp_get_default_domain getpwanam) 140AC_CHECK_FUNCS(srandom random srand rand setenv usleep strcasecmp) 141 142AC_CHECK_FUNCS(getdents) 143AC_CHECK_FUNCS(llseek) 144 145# 146# If no strcasecmp, check for it in some known places 147# It is in -lresolv on ReliantUNIX and UnixWare 148# -lresolve *must* follow -lnsl for name resolution to work properly 149# 150 151if test x$ac_cv_func_strcasecmp = xno ; then 152 AC_CHECK_LIB(resolv,strcasecmp,[LIBS="$LIBS -lresolv"] 153 AC_DEFINE(HAVE_STRCASECMP)) 154fi 155 156# 157# Check for the functions putprpwnam, set_auth_parameters, 158# getspnam, bigcrypt and getprpwnam in -lsec and -lsecurity 159# Needed for OSF1 and HPUX. 160# 161 162AC_LIBTESTFUNC(security, putprpwnam) 163AC_LIBTESTFUNC(sec, putprpwnam) 164 165AC_LIBTESTFUNC(security, set_auth_parameters) 166AC_LIBTESTFUNC(sec, set_auth_parameters) 167 168AC_LIBTESTFUNC(security, getspnam) 169AC_LIBTESTFUNC(sec, getspnam) 170 171AC_LIBTESTFUNC(security, bigcrypt) 172AC_LIBTESTFUNC(sec, bigcrypt) 173 174AC_LIBTESTFUNC(security, getprpwnam) 175AC_LIBTESTFUNC(sec, getprpwnam) 176 177# this bit needs to be modified for each OS that is suported by 178# smbwrapper. You need to specify how to created a shared library and 179# how to compile C code to produce PIC object files 180 181# these are the defaults, good for lots of systems 182HOST_OS="$host_os" 183LDSHFLAGS="-shared" 184 185# and these are for particular systems 186case "$host_os" in 187 *linux*) AC_DEFINE(LINUX, 1, [Define on Linux]);; 188 *solaris*) AC_DEFINE(SUNOS5, 1, [Define on SunOS 5 (Solaris)]) 189 LDSHFLAGS="-G" 190 ;; 191 *sunos*) AC_DEFINE(SUNOS4, 1, [Define on SunOS 4]) 192 LDSHFLAGS="" 193 ;; 194 *bsd*) LDSHFLAGS="-shared -Bshareable" 195 ;; 196 *irix*) AC_DEFINE(IRIX, 1, [Define on IRIX]) 197 case "$host_os" in 198 *irix6*) AC_DEFINE(IRIX6, 1, [Define on IRIX 6]) 199 ;; 200 esac 201 ATTEMPT_WRAP32_BUILD=yes 202 ;; 203 *aix*) AC_DEFINE(AIX, 1, [Define on AIX]);; 204 *hpux*) AC_DEFINE(HPUX, 1, [Define on HP-UX]);; 205 *qnx*) AC_DEFINE(QNX, 1, [Define on QNX]);; 206 *osf*) AC_DEFINE(OSF1, 1, [Define on OSF1]);; 207 *sco*) AC_DEFINE(SCO, 1, [Define on SCO]);; 208 *next2*) AC_DEFINE(NEXT2, 1, [Define on NeXT 2]);; 209 *dgux*) AC_CHECK_PROG( ROFF, groff, [groff -etpsR -Tascii -man]);; 210 *sysv4*) 211 case "$host" in 212 *-univel-*) if [ test "$GCC" != yes ]; then 213 AC_DEFINE(HAVE_MEMSET) 214 fi 215 LDSHFLAGS="-G" 216 ;; 217 esac 218 ;; 219 *sysv5*) 220 if [ test "$GCC" != yes ]; then 221 AC_DEFINE(HAVE_MEMSET) 222 fi 223 LDSHFLAGS="-G" 224 ;; 225esac 226 227################ 228 229AC_CACHE_CHECK([for long long],samba_cv_have_longlong,[ 230AC_TRY_RUN([ 231#include <stdio.h> 232#include <stdlib.h> 233main() { long long x = 1000000; x *= x; exit(((x/1000000) == 1000000)? 0: 1); }], 234samba_cv_have_longlong=yes,samba_cv_have_longlong=no,samba_cv_have_longlong=cross)]) 235if test x"$samba_cv_have_longlong" = x"yes"; then 236 AC_DEFINE(HAVE_LONGLONG, 1, [Define if long long is usable]) 237fi 238 239AC_CACHE_CHECK([for sin_len in sock],samba_cv_HAVE_SOCK_SIN_LEN,[ 240AC_TRY_COMPILE([#include <sys/types.h> 241#include <sys/socket.h> 242#include <netinet/in.h>], 243[struct sockaddr_in sock; sock.sin_len = sizeof(sock);], 244samba_cv_HAVE_SOCK_SIN_LEN=yes,samba_cv_HAVE_SOCK_SIN_LEN=no)]) 245if test x"$samba_cv_HAVE_SOCK_SIN_LEN" = x"yes"; then 246 AC_DEFINE(HAVE_SOCK_SIN_LEN, 1, [Define if struct sockaddr_in has sin_len field]) 247fi 248 249AC_CACHE_CHECK([for __FILE__ macro],samba_cv_HAVE_FILE_MACRO,[ 250AC_TRY_COMPILE([#include <stdio.h>], [printf("%s\n", __FILE__);], 251samba_cv_HAVE_FILE_MACRO=yes,samba_cv_HAVE_FILE_MACRO=no)]) 252if test x"$samba_cv_HAVE_FILE_MACRO" = x"yes"; then 253 AC_DEFINE(HAVE_FILE_MACRO, 1, [Define if __FILE__ macro is supported]) 254fi 255 256AC_CACHE_CHECK([for __FUNCTION__ macro],samba_cv_HAVE_FUNCTION_MACRO,[ 257AC_TRY_COMPILE([#include <stdio.h>], [printf("%s\n", __FUNCTION__);], 258samba_cv_HAVE_FUNCTION_MACRO=yes,samba_cv_HAVE_FUNCTION_MACRO=no)]) 259if test x"$samba_cv_HAVE_FUNCTION_MACRO" = x"yes"; then 260 AC_DEFINE(HAVE_FUNCTION_MACRO, 1, [Define if __FUNCTION__ macro is supported]) 261fi 262 263AC_CACHE_CHECK([if gettimeofday takes tz argument],samba_cv_HAVE_GETTIMEOFDAY_TZ,[ 264AC_TRY_RUN([ 265#include <sys/time.h> 266#include <unistd.h> 267#include <stdlib.h> 268main() { struct timeval tv; exit(gettimeofday(&tv, NULL));}], 269 samba_cv_HAVE_GETTIMEOFDAY_TZ=yes,samba_cv_HAVE_GETTIMEOFDAY_TZ=no,samba_cv_HAVE_GETTIMEOFDAY_TZ=cross)]) 270if test x"$samba_cv_HAVE_GETTIMEOFDAY_TZ" = x"yes"; then 271 AC_DEFINE(HAVE_GETTIMEOFDAY_TZ, 1, [Define if gettimeofday takes tz argument]) 272fi 273 274 275AC_CACHE_CHECK([for broken readdir],samba_cv_HAVE_BROKEN_READDIR,[ 276AC_TRY_RUN([ 277#include <sys/types.h> 278#include <stdlib.h> 279#include <dirent.h> 280main() { struct dirent *di; DIR *d = opendir("."); di = readdir(d); 281if (di && di->d_name[-2] == '.' && di->d_name[-1] == 0 && 282di->d_name[0] == 0) exit(0); exit(1);} ], 283samba_cv_HAVE_BROKEN_READDIR=yes,samba_cv_HAVE_BROKEN_READDIR=no,samba_cv_HAVE_BROKEN_READDIR=cross)]) 284if test x"$samba_cv_HAVE_BROKEN_READDIR" = x"yes"; then 285 AC_DEFINE(HAVE_BROKEN_READDIR, 1, [Define if readdir() is broken]) 286fi 287 288AC_CACHE_CHECK([for kernel oplock type definitions],samba_cv_HAVE_KERNEL_OPLOCKS,[ 289AC_TRY_COMPILE([#include <sys/types.h> 290#include <fcntl.h>], 291[oplock_stat_t t; t.os_state = OP_REVOKE; t.os_dev = 1; t.os_ino = 1;], 292samba_cv_HAVE_KERNEL_OPLOCKS=yes,samba_cv_HAVE_KERNEL_OPLOCKS=no)]) 293if test x"$samba_cv_HAVE_KERNEL_OPLOCKS" = x"yes"; then 294 AC_DEFINE(HAVE_KERNEL_OPLOCKS, 1, [Define to use kernel oplock capabilities]) 295fi 296 297# 298# Check for int16, uint16, int32 and uint32 in rpc/types.h included from rpc/rpc.h 299# This is *really* broken but some systems (DEC OSF1) do this.... JRA. 300# 301 302AC_CACHE_CHECK([for int16 typedef included by rpc/rpc.h],samba_cv_HAVE_INT16_FROM_RPC_RPC_H,[ 303AC_TRY_COMPILE([#include <sys/types.h> 304#if defined(HAVE_RPC_RPC_H) 305#include <rpc/rpc.h> 306#endif], 307[int16 testvar;], 308samba_cv_HAVE_INT16_FROM_RPC_RPC_H=yes,samba_cv_HAVE_INT16_FROM_RPC_RPC_H=no)]) 309if test x"$samba_cv_HAVE_INT16_FROM_RPC_RPC_H" = x"yes"; then 310 AC_DEFINE(HAVE_INT16_FROM_RPC_RPC_H, 1, [Define if rpc/rpc.h defines int16]) 311fi 312 313AC_CACHE_CHECK([for uint16 typedef included by rpc/rpc.h],samba_cv_HAVE_UINT16_FROM_RPC_RPC_H,[ 314AC_TRY_COMPILE([#include <sys/types.h> 315#if defined(HAVE_RPC_RPC_H) 316#include <rpc/rpc.h> 317#endif], 318[uint16 testvar;], 319samba_cv_HAVE_UINT16_FROM_RPC_RPC_H=yes,samba_cv_HAVE_UINT16_FROM_RPC_RPC_H=no)]) 320if test x"$samba_cv_HAVE_UINT16_FROM_RPC_RPC_H" = x"yes"; then 321 AC_DEFINE(HAVE_UINT16_FROM_RPC_RPC_H, 1, [Define if rpc/rpc.h defines uint16]) 322fi 323 324AC_CACHE_CHECK([for int32 typedef included by rpc/rpc.h],samba_cv_HAVE_INT32_FROM_RPC_RPC_H,[ 325AC_TRY_COMPILE([#include <sys/types.h> 326#if defined(HAVE_RPC_RPC_H) 327#include <rpc/rpc.h> 328#endif], 329[int32 testvar;], 330samba_cv_HAVE_INT32_FROM_RPC_RPC_H=yes,samba_cv_HAVE_INT32_FROM_RPC_RPC_H=no)]) 331if test x"$samba_cv_HAVE_INT32_FROM_RPC_RPC_H" = x"yes"; then 332 AC_DEFINE(HAVE_INT32_FROM_RPC_RPC_H, 1, [Define if rpc/rpc.h defines int32]) 333fi 334 335AC_CACHE_CHECK([for uint32 typedef included by rpc/rpc.h],samba_cv_HAVE_UINT32_FROM_RPC_RPC_H,[ 336AC_TRY_COMPILE([#include <sys/types.h> 337#if defined(HAVE_RPC_RPC_H) 338#include <rpc/rpc.h> 339#endif], 340[uint32 testvar;], 341samba_cv_HAVE_UINT32_FROM_RPC_RPC_H=yes,samba_cv_HAVE_UINT32_FROM_RPC_RPC_H=no)]) 342if test x"$samba_cv_HAVE_UINT32_FROM_RPC_RPC_H" = x"yes"; then 343 AC_DEFINE(HAVE_UINT32_FROM_RPC_RPC_H, 1, [Define if rpc/rpc.h defines uint32]) 344fi 345 346dnl 347dnl Some systems (SCO) have a problem including 348dnl <prot.h> and <rpc/rpc.h> due to AUTH_ERROR being defined 349dnl as a #define in <prot.h> and as part of an enum 350dnl in <rpc/rpc.h>. 351dnl 352 353AC_CACHE_CHECK([for conflicting AUTH_ERROR define in rpc/rpc.h],samba_cv_HAVE_RPC_AUTH_ERROR_CONFLICT,[ 354AC_TRY_COMPILE([#include <sys/types.h> 355#ifdef HAVE_SYS_SECURITY_H 356#include <sys/security.h> 357#include <prot.h> 358#endif /* HAVE_SYS_SECURITY_H */ 359#if defined(HAVE_RPC_RPC_H) 360#include <rpc/rpc.h> 361#endif], 362[int testvar;], 363samba_cv_HAVE_RPC_AUTH_ERROR_CONFLICT=no,samba_cv_HAVE_RPC_AUTH_ERROR_CONFLICT=yes)]) 364if test x"$samba_cv_HAVE_RPC_AUTH_ERROR_CONFLICT" = x"yes"; then 365 AC_DEFINE(HAVE_RPC_AUTH_ERROR_CONFLICT, 1, [Define if rpc/rpc.h defines AUTH_ERROR]) 366fi 367 368netmask=no; 369AC_CACHE_CHECK([for netmask ifconf],samba_cv_HAVE_NETMASK_IFCONF,[ 370AC_TRY_RUN([ 371#define HAVE_NETMASK_IFCONF 1 372#define AUTOCONF 1 373#include "confdefs.h" 374#include "${srcdir-.}/lib/netmask.c"], 375 samba_cv_HAVE_NETMASK_IFCONF=yes,samba_cv_HAVE_NETMASK_IFCONF=no,samba_cv_HAVE_NETMASK_IFCONF=cross)]) 376if test x"$samba_cv_HAVE_NETMASK_IFCONF" = x"yes"; then 377 netmask=yes;AC_DEFINE(HAVE_NETMASK_IFCONF, 1, [Define to use IFCONF style netmask]) 378fi 379 380if test $netmask = no; then 381AC_CACHE_CHECK([for netmask ifreq],samba_cv_HAVE_NETMASK_IFREQ,[ 382AC_TRY_RUN([ 383#define HAVE_NETMASK_IFREQ 1 384#define AUTOCONF 1 385#include "confdefs.h" 386#include "${srcdir-.}/lib/netmask.c"], 387 samba_cv_HAVE_NETMASK_IFREQ=yes,samba_cv_HAVE_NETMASK_IFREQ=no,samba_cv_HAVE_NETMASK_IFREQ=cross)]) 388if test x"$samba_cv_HAVE_NETMASK_IFREQ" = x"yes"; then 389 netmask=yes;AC_DEFINE(HAVE_NETMASK_IFREQ, 1, [Define to use IFREQ style netmask]) 390fi 391fi 392 393if test $netmask = no; then 394AC_CACHE_CHECK([for netmask AIX],samba_cv_HAVE_NETMASK_AIX,[ 395AC_TRY_RUN([ 396#define HAVE_NETMASK_AIX 1 397#define AUTOCONF 1 398#include "confdefs.h" 399#include "${srcdir-.}/lib/netmask.c"], 400 samba_cv_HAVE_NETMASK_AIX=yes,samba_cv_HAVE_NETMASK_AIX=no,samba_cv_HAVE_NETMASK_AIX=cross)]) 401if test x"$samba_cv_HAVE_NETMASK_AIX" = x"yes"; then 402 netmask=yes;AC_DEFINE(HAVE_NETMASK_AIX, 1, [Define to use AIX style netmask]) 403fi 404fi 405 406 407AC_CACHE_CHECK([for broken nisplus include files],samba_cv_BROKEN_NISPLUS_INCLUDE_FILES,[ 408AC_TRY_COMPILE([#include <sys/acl.h> 409#if defined(HAVE_RPCSVC_NIS_H) 410#include <rpcsvc/nis.h> 411#endif], 412[return 0;], 413samba_cv_BROKEN_NISPLUS_INCLUDE_FILES=no,samba_cv_BROKEN_NISPLUS_INCLUDE_FILES=yes)]) 414if test x"$samba_cv_BROKEN_NISPLUS_INCLUDE_FILES" = x"yes"; then 415 AC_DEFINE(BROKEN_NISPLUS_INCLUDE_FILES, 1, 416 [Define if sys/acl.h and rpcsvc/nis.h cannot be included together]) 417fi 418 419 420################################################# 421# check for a LDAP password database 422AC_MSG_CHECKING([whether to use LDAP password database]) 423AC_ARG_WITH(ldap, 424[ --with-ldap Include LDAP support 425 --without-ldap Don't include LDAP support (default)], 426[ case "$withval" in 427 yes) 428 AC_MSG_RESULT(yes) 429 AC_DEFINE(WITH_LDAP, 1, [Define to enable LDAP support]) 430 ;; 431 *) 432 AC_MSG_RESULT(no) 433 ;; 434 esac ], 435 AC_MSG_RESULT(no) 436) 437 438################################################# 439# check for a NISPLUS password database 440AC_MSG_CHECKING([whether to use NISPLUS password database]) 441AC_ARG_WITH(nisplus, 442[ --with-nisplus Include NISPLUS password database support 443 --without-nisplus Don't include NISPLUS password database support (default)], 444[ case "$withval" in 445 yes) 446 AC_MSG_RESULT(yes) 447 AC_DEFINE(WITH_NISPLUS, 1, [Define to enable NIS+ support]) 448 ;; 449 *) 450 AC_MSG_RESULT(no) 451 ;; 452 esac ], 453 AC_MSG_RESULT(no) 454) 455 456################################################# 457# check for a NISPLUS_HOME support 458AC_MSG_CHECKING([whether to use NISPLUS_HOME]) 459AC_ARG_WITH(nisplus-home, 460[ --with-nisplus-home Include NISPLUS_HOME support 461 --without-nisplus-home Don't include NISPLUS_HOME support (default)], 462[ case "$withval" in 463 yes) 464 AC_MSG_RESULT(yes) 465 AC_DEFINE(WITH_NISPLUS_HOME, 1, [Define to support NISPLUS_HOME variable]) 466 ;; 467 *) 468 AC_MSG_RESULT(no) 469 ;; 470 esac ], 471 AC_MSG_RESULT(no) 472) 473 474################################################# 475# check for the secure socket layer 476AC_MSG_CHECKING([whether to use SSL]) 477AC_ARG_WITH(ssl, 478[ --with-ssl Include SSL support 479 --without-ssl Don't include SSL support (default) 480 --with-sslinc=DIR Where the SSL includes are (defaults to /usr/local/ssl)], 481[ case "$withval" in 482 yes) 483 AC_MSG_RESULT(yes) 484 AC_DEFINE(WITH_SSL, 1, [Define to enable SSL support]) 485 withval="/usr/local/ssl" # default 486 487 if test "${with_sslinc+set}" = set; then 488 489 withval="$with_sslinc" 490 case "$withval" in 491 yes|no) 492 AC_MSG_WARN([--with-sslinc called without argument - will use default]) 493 CFLAGS="-I/usr/local/ssl/include $CFLAGS" 494 LIBS="-lssl -lcrypto $LIBS" 495 LDFLAGS="=L/usr/local/ssl/lib $LDFLAGS" 496 ;; 497 * ) 498 CFLAGS="-I${withval}/include $CFLAGS" 499 LIBS="-lssl -l crypto $LIBS" 500 LDFLAGS="-L${withval}/lib $LDFLAGS" 501 ;; 502 esac 503 504 else 505 506 CFLAGS="-I/usr/local/ssl/include $CFLAGS" 507 LIBS="-lssl -lcrypto $LIBS" 508 LDFLAGS="-L/usr/local/ssl/lib $LDFLAGS" 509 510 fi 511 512 if test ! -d ${withval}; then 513 AC_MSG_ERROR([called with --with-ssl, but ssl base directory ${withval} does not exist or is not a directory. Aborting config]) 514 fi 515 516 CFLAGS="-DHAVE_CRYPT_DECL $CFLAGS" # Damn, SSLeay defines its own 517 518 ;; 519 *) 520 AC_MSG_RESULT(no) 521 ;; 522 esac ], 523 AC_MSG_RESULT(no) 524) 525 526#################################################### 527# get variables from parent process (main configure) 528# set configuration directory location 529if test -n "$SMBCONFIGDIR"; then 530 configdir="$SMBCONFIGDIR" 531else 532 configdir="\$(LIBDIR)" 533fi 534# set codepage directory location 535if test -n "$SMBCODEPAGEDIR"; then 536 codepagedir="$SMBCODEPAGEDIR" 537elif test -n "$SMBCONFIGDIR"; then 538 codepagedir="$SMBCONFIGDIR/codepages" 539else 540 codepagedir="\$(LIBDIR)/codepages" 541fi 542#################################################### 543 544AC_MSG_CHECKING([configure summary]) 545AC_TRY_RUN([ 546#include <stdio.h> 547#include <stdlib.h> 548#include <unistd.h> 549 550main() 551{ 552#if !(defined(HAVE_NETMASK_IFCONF) || defined(HAVE_NETMASK_IFREQ) || defined(HAVE_NETMASK_AIX)) 553 printf("WARNING: No automated netmask determination - use an interfaces line\n"); 554#endif 555 556#if !((defined(HAVE_RANDOM) || defined(HAVE_RAND)) && (defined(HAVE_SRANDOM) || defined(HAVE_SRAND))) 557 printf("ERROR: No random or srandom routine!\n"); 558 exit(1); 559#endif 560 561 exit(0); 562} 563], 564 AC_MSG_RESULT(OK);, 565 AC_MSG_RESULT(failure) 566 AC_MSG_ERROR([Aborting config]),:) 567 568builddir=`pwd` 569AC_SUBST(builddir) 570AC_SUBST(configdir) 571AC_SUBST(codepagedir) 572 573AC_OUTPUT([include/stamp-h Makefile]) 574