--- ./source3/configure.in.orig 2010-01-18 11:38:09.000000000 +0000 +++ ./source3/configure.in 2010-02-06 12:37:49.000000000 +0000 @@ -210,16 +210,6 @@ fi fi -AC_ARG_ENABLE(dmalloc, [AS_HELP_STRING([--enable-dmalloc], [Enable heap debugging [default=no]])]) - -if test "x$enable_dmalloc" = xyes -then - AC_DEFINE(ENABLE_DMALLOC, 1, [Define to turn on dmalloc debugging]) - AC_DEFINE(DMALLOC_FUNC_CHECK, 1, - [Define to check invariants around some common functions]) - LIBS="$LIBS -ldmalloc" -fi - ################################################# # check for a shared memory profiling support AC_MSG_CHECKING(whether to use profiling) @@ -781,10 +771,10 @@ if test "x$CUPS_CONFIG" != x; then - ac_save_CFLAGS=$CFLAGS - ac_save_LDFLAGS=$LDFLAGS + ac_save_PRINT_CPPFLAGS=$CPPFLAGS + ac_save_PRINT_LDFLAGS=$LDFLAGS ac_save_PRINT_LIBS=$PRINT_LIBS - CFLAGS="$CFLAGS `$CUPS_CONFIG --cflags`" + CPPFLAGS="$CPPFLAGS `$CUPS_CONFIG --cflags`" LDFLAGS="$LDFLAGS `$CUPS_CONFIG --ldflags`" PRINT_LIBS="$PRINT_LIBS `$CUPS_CONFIG --libs`" AC_CHECK_HEADERS(cups/cups.h cups/language.h) @@ -794,8 +784,8 @@ samba_cv_HAVE_CUPS=yes else AC_MSG_WARN([cups-config around but cups-devel not installed]) - CFLAGS=$ac_save_CFLAGS - LDFLAGS=$ac_save_LDFLAGS + CPPFLAGS=$ac_save_PRINT_CPPFLAGS + LDFLAGS=$ac_save_PRINT_LDFLAGS PRINT_LIBS=$ac_save_PRINT_LIBS fi @@ -1747,9 +1737,6 @@ AC_MSG_CHECKING([PICFLAG]) AC_MSG_RESULT([$PICFLAG]) -AC_MSG_CHECKING([NSSSONAMEVERSIONSUFFIX]) -AC_MSG_RESULT([$NSSSONAMEVERSIONSUFFIX]) - AC_CACHE_CHECK([whether building shared libraries actually works], [ac_cv_shlib_works],[ # try building a trivial shared library @@ -3959,10 +3946,10 @@ ################################################################ # first test for Active Directory support being enabled - #if test x"$with_ads_support" = x"no"; then - # AC_MSG_ERROR(Active Directory support is required to enable DNS Update support) - # with_dnsupdate_support=no - #fi + if test x"$with_ads_support" = x"no"; then + AC_MSG_ERROR(Active Directory support is required to enable DNS Update support) + with_dnsupdate_support=no + fi ################################################################## # then test for uuid.h (necessary to generate unique DNS keynames # (uuid.h is required for this test) @@ -4179,15 +4166,51 @@ x"$ac_cv_header_pam_pam_modules_h" = x"no" ; then if test x"${try_pam}" = x"yes";then AC_MSG_ERROR([--with-pam=yes but pam_modules.h not found]) - fi + fi create_pam_modules=no - fi + fi if test x"$use_pam" = x"yes"; then - AC_DEFINE(WITH_PAM,1,[Whether to include PAM support]) + AC_DEFINE(WITH_PAM,1,[Whether to include PAM support]) AC_DEFINE(HAVE_LIBPAM,1,[Whether libpam is available]) AUTH_LIBS="$AUTH_LIBS $PAM_LIBS" - with_pam_for_crypt=yes + with_pam_for_crypt=yes + + AC_VERIFY_C_PROTOTYPE( + [int pam_get_data(const pam_handle_t *pamh, const char *module_data_name, const void **data)], + [return 0;], + [AC_DEFINE(PAM_GET_DATA_ARG3_CONST_VOID_PP, 1, [Whether pam_get_data 3 argument is a const pointer to pointer])], + [ + dnl Old OpenPAM declaration + AC_VERIFY_C_PROTOTYPE( + [int pam_get_data(pam_handle_t *pamh, const char *module_data_name, void **data)], + [return 0;], + [AC_DEFINE(PAM_GET_DATA_ARG3_VOID_PP, 1, [Whether pam_get_data 3 argument is a void pointer to pointer])], + [], [ + #include + #if HAVE_SECURITY_PAM_APPL_H + #include + #endif + #if HAVE_PAM_PAM_APPL_H + #include + #endif + #if HAVE_SECURITY_PAM_MODULES_H + #include + #endif + ] + )],[ + #include + #if HAVE_SECURITY_PAM_APPL_H + #include + #endif + #if HAVE_PAM_PAM_APPL_H + #include + #endif + #if HAVE_SECURITY_PAM_MODULES_H + #include + #endif + ] + ) if test x"$create_pam_modules" = x"yes"; then AC_DEFINE(WITH_PAM_MODULES,1,[Whether to include PAM MODULES support]) @@ -4197,7 +4220,7 @@ AC_CHECK_HEADERS(pam/pam_ext.h pam/_pam_macros.h) AC_CHECK_FUNC_EXT(pam_vsyslog,$PAM_LIBS) else - AC_MSG_WARN([PAM support detected but PAM MODULES support is missing]) + AC_MSG_WARN([PAM support detected but PAM MODULES support is missing]) fi fi AC_MSG_CHECKING(whether to use PAM support) @@ -5794,6 +5817,7 @@ NSSSONAMEVERSIONSUFFIX=".1" WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_freebsd.o \ ../nsswitch/winbind_nss_linux.o" + WINBIND_WINS_NSS_EXTRA_OBJS="nsswitch/wins_freebsd.o" WINBIND_NSS="../nsswitch/nss_winbind.$SHLIBEXT" WINBIND_WINS_NSS="../nsswitch/nss_wins.$SHLIBEXT" ;; @@ -5886,17 +5910,10 @@ AC_DEFINE(WITH_WINBIND,1,[Whether to link to wbclient]) EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/wbinfo\$(EXEEXT)" else - if test x"$enable_developer" = x"yes" -a x"$LINK_LIBWBCLIENT" = x"STATIC" ; then - BUILD_LIBWBCLIENT_SHARED=no - else - BUILD_LIBWBCLIENT_SHARED=yes - fi - LIBWBCLIENT_SHARED_TARGET=bin/libwbclient.$SHLIBEXT LIBWBCLIENT_STATIC_TARGET=bin/libwbclient.a LIBWBCLIENT_SOVER=0 if test $BLDSHARED = true -a x"$HAVE_WINBIND" = x"yes" -a x"$BUILD_LIBWBCLIENT_SHARED" = x"yes"; then - NSS_MODULES="${WINBIND_NSS} ${WINBIND_WINS_NSS}" ## Only worry about libwbclient if we have shared # library support LIBWBCLIENT_SHARED=$LIBWBCLIENT_SHARED_TARGET @@ -5918,26 +5935,34 @@ EXTRA_BIN_PROGS="$EXTRA_BIN_PROGS bin/wbinfo\$(EXEEXT)" EXTRA_SBIN_PROGS="$EXTRA_SBIN_PROGS bin/winbindd\$(EXEEXT)" - if test $BLDSHARED = true -a x"$create_pam_modules" = x"yes"; then + if test $BLDSHARED = true; then + NSS_MODULES="${WINBIND_NSS} ${WINBIND_WINS_NSS}" + if test x"$create_pam_modules" = x"yes"; then PAM_MODULES="$PAM_MODULES pam_winbind" INSTALL_PAM_MODULES="installpammodules" UNINSTALL_PAM_MODULES="uninstallpammodules" + fi fi else AC_MSG_RESULT(no$winbind_no_reason) fi -AC_CHECK_LIB(pthread, pthread_mutex_lock, [WINBIND_NSS_PTHREAD="-lpthread" +AC_MSG_CHECKING([NSSSONAMEVERSIONSUFFIX]) +AC_MSG_RESULT([$NSSSONAMEVERSIONSUFFIX]) + +AC_CHECK_LIB(pthread, pthread_mutex_lock, [WINBIND_NSS_PTHREAD="${PTHREAD_LIBS}" AC_DEFINE(HAVE_PTHREAD, 1, [whether pthread exists])]) AC_SUBST(WINBIND_NSS_PTHREAD) AC_SUBST(WINBIND_NSS) -AC_SUBST(WINBIND_WINS_NSS) AC_SUBST(WINBIND_NSS_LDSHFLAGS) AC_SUBST(WINBIND_NSS_EXTRA_OBJS) AC_SUBST(WINBIND_NSS_EXTRA_LIBS) -AC_SUBST(NSSSONAMEVERSIONSUFFIX) AC_SUBST(PAM_WINBIND_EXTRA_LIBS) +AC_SUBST(WINBIND_WINS_NSS) +AC_SUBST(WINBIND_WINS_NSS_EXTRA_OBJS) +AC_SUBST(WINBIND_WINS_NSS_EXTRA_LIBS) +AC_SUBST(NSSSONAMEVERSIONSUFFIX) AC_SUBST(WINBIND_KRB5_LOCATOR) @@ -6129,13 +6154,21 @@ # Start AC_CHECK_FUNC(getmntent) -AC_CHECK_HEADERS(sys/statfs.h) +AC_CHECK_HEADERS(sys/statfs.h sys/mount.h) AC_MSG_CHECKING([vfs_fileid: checking for statfs() and struct statfs.f_fsid)]) AC_CACHE_VAL(vfsfileid_cv_statfs,[ AC_TRY_RUN([ #include + #ifdef HAVE_SYS_PARAM_H + #include + #endif + #ifdef HAVE_SYS_MOUNT_H + #include + #endif + #ifdef HAVE_SYS_STATFS_H #include + #endif int main(void) { struct statfs fsd; @@ -6447,6 +6480,16 @@ CFLAGS="-I../lib/zlib $CFLAGS" ]) +AC_ARG_ENABLE(dmalloc, [AS_HELP_STRING([--enable-dmalloc], [Enable heap debugging [default=no]])]) + +if test "x$enable_dmalloc" = xyes +then + AC_DEFINE(ENABLE_DMALLOC, 1, [Define to turn on dmalloc debugging]) + AC_DEFINE(DMALLOC_FUNC_CHECK, 1, + [Define to check invariants around some common functions]) + LIBS="$LIBS -ldmalloc" +fi + dnl Remove -L/usr/lib/? from LDFLAGS and LIBS LIB_REMOVE_USR_LIB(LDFLAGS) LIB_REMOVE_USR_LIB(LIBS)