done
AC_SUBST(LIBTALLOC_OBJ0)
+m4_include(../lib/tevent/libtevent.m4)
+
+LIBTEVENT_OBJ0=""
+for obj in ${TEVENT_OBJ}; do
+ LIBTEVENT_OBJ0="${LIBTEVENT_OBJ0} ${teventdir}/${obj}"
+done
+AC_SUBST(LIBTEVENT_OBJ0)
+LIBS="${LIBS} ${TEVENT_LIBS}"
+
# TODO: These should come from m4_include(lib/tdb/libtdb.m4)
# but currently this fails: things have to get merged from s4.
tdbdir="../lib/tdb"
SAMBA_CPPFLAGS="-Iinclude -I${srcdir-.}/include -I. -I${srcdir-.}"
SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/../lib/replace"
SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} ${TALLOC_CFLAGS}"
+SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} ${TEVENT_CFLAGS}"
SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} ${TDB_CFLAGS}"
SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/libaddns"
SAMBA_CPPFLAGS="${SAMBA_CPPFLAGS} -I${srcdir-.}/librpc"
)
dnl Checks for programs.
+merged_build_possible=yes
AC_PROG_INSTALL
AC_PROG_AWK
-AC_PATH_PROG(PERL, perl)
+# Check for GNU make
+m4_include(../m4/check_make.m4)
+AC_SAMBA_GNU_MAKE([true], [merged_build_possible=no])
+
+# Check for perl
+m4_include(../m4/check_perl.m4)
+AC_SAMBA_PERL([true], [merged_build_possible=no])
AC_CHECK_TOOL(AR, ar)
dnl Add modules that have to be built by default here
dnl These have to be built static:
-default_static_modules="pdb_smbpasswd pdb_tdbsam rpc_lsarpc rpc_samr rpc_winreg rpc_initshutdown rpc_dssetup rpc_wkssvc rpc_svcctl2 rpc_ntsvcs2 rpc_netlogon rpc_netdfs rpc_srvsvc rpc_spoolss rpc_eventlog2 auth_sam auth_unix auth_winbind auth_server auth_domain auth_builtin auth_netlogond vfs_default nss_info_template"
+default_static_modules="pdb_smbpasswd pdb_tdbsam rpc_lsarpc rpc_samr rpc_winreg rpc_initshutdown rpc_dssetup rpc_wkssvc rpc_svcctl rpc_ntsvcs rpc_netlogon rpc_netdfs rpc_srvsvc rpc_spoolss rpc_eventlog2 auth_sam auth_unix auth_winbind auth_server auth_domain auth_builtin auth_netlogond vfs_default nss_info_template"
dnl These are preferably build shared, and static if dlopen() is not available
-default_shared_modules="vfs_recycle vfs_audit vfs_extd_audit vfs_full_audit vfs_netatalk vfs_fake_perms vfs_default_quota vfs_readonly vfs_cap vfs_expand_msdfs vfs_shadow_copy vfs_shadow_copy2 charset_CP850 charset_CP437 auth_script vfs_readahead vfs_xattr_tdb vfs_streams_xattr vfs_acl_xattr vfs_acl_tdb vfs_smb_traffic_analyzer"
+default_shared_modules="vfs_recycle vfs_audit vfs_extd_audit vfs_full_audit vfs_netatalk vfs_fake_perms vfs_default_quota vfs_readonly vfs_cap vfs_expand_msdfs vfs_shadow_copy vfs_shadow_copy2 charset_CP850 charset_CP437 auth_script vfs_readahead vfs_xattr_tdb vfs_streams_xattr vfs_streams_depot vfs_acl_xattr vfs_acl_tdb vfs_smb_traffic_analyzer"
if test "x$developer" = xyes; then
default_static_modules="$default_static_modules rpc_rpcecho"
fi
LIBS="$save_LIBS"
+printf "%s" "checking for GPFS libs (with 3.2.1 PTF8 available as GPL)... "
+save_LIBS="$LIBS"
+LIBS="$LIBS -lgpfs"
+AC_TRY_LINK([#include <gpfs.h>],
+ [gpfs_set_share(0,GPFS_SHARE_READ,GPFS_DENY_NONE)],
+ samba_cv_HAVE_GPFS=yes,
+ samba_cv_HAVE_GPFS=no)
+echo $samba_cv_HAVE_GPFS
+if test x"$samba_cv_HAVE_GPFS" = x"yes"; then
+ AC_DEFINE(HAVE_GPFS,1,[Whether GPFS GPL libs are available])
+ default_shared_modules="$default_shared_modules vfs_gpfs"
+fi
+LIBS="$save_LIBS"
+
+#############################################
+# check if building on Isilon OneFS
+printf "%s" "checking for Isilon OneFS... "
+save_LIBS="$LIBS"
+LIBS="$LIBS -lisi_version"
+AC_TRY_LINK([#include <isi_version/isi_version.h>],
+ [get_isilon_copyright()],
+ samba_cv_HAVE_ONEFS=yes,
+ samba_cv_HAVE_ONEFS=no)
+echo $samba_cv_HAVE_ONEFS
+if test x"$samba_cv_HAVE_ONEFS" = x"yes"; then
+ AC_DEFINE(HAVE_ONEFS,1,[Whether building on Isilon OneFS])
+ default_shared_modules="$default_shared_modules vfs_onefs"
+ ONEFS_LIBS="-lisi_acl"
+fi
+AC_SUBST(ONEFS_LIBS)
+LIBS="$save_LIBS"
+
# Note that all the libunwind symbols in the API are defined to internal
# platform-specific version, so we must include libunwind.h before checking
# any of them.
AC_MSG_RESULT(no)
)
+#################################################
+# check for custom syslog facility
+AC_MSG_CHECKING(whether to use a custom syslog facility)
+AC_ARG_WITH(syslog-facility,
+[AS_HELP_STRING([--with-syslog-facility], [Use a custom syslog facility (default=none)])],
+[
+ if test "$withval" = "no" ; then
+ AC_MSG_ERROR([argument to --with-syslog-facility must be a string])
+ else
+ if test "$withval" != "yes" ; then
+ syslog_facility="$withval"
+ AC_DEFINE_UNQUOTED(SYSLOG_FACILITY,$syslog_facility, [syslog facility to log to])
+ fi
+ fi
+])
+
#################################################
# check for experimental disk-quotas support
SMB_LIBRARY(netapi, 0)
SMB_LIBRARY(smbclient, 0)
SMB_LIBRARY(smbsharemodes, 0)
+SMB_LIBRARY(lua, 0)
SMB_LIBRARY(addns, 0, no, [undefined API])
# Define the winbind shared library name and any specific linker flags
# it needs to be built with.
-WINBIND_NSS="nsswitch/libnss_winbind.$SHLIBEXT"
-WINBIND_WINS_NSS="nsswitch/libnss_wins.$SHLIBEXT"
+WINBIND_NSS="../nsswitch/libnss_winbind.$SHLIBEXT"
+WINBIND_WINS_NSS="../nsswitch/libnss_wins.$SHLIBEXT"
WINBIND_NSS_LDSHFLAGS=$LDSHFLAGS
NSSSONAMEVERSIONSUFFIX=""
WINBIND_NSS_PTHREAD=""
case "$host_os" in
*linux*)
NSSSONAMEVERSIONSUFFIX=".2"
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_linux.o"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_linux.o"
;;
*freebsd[[5-9]]*)
# FreeBSD winbind client is implemented as a wrapper around
# the Linux version.
NSSSONAMEVERSIONSUFFIX=".1"
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_freebsd.o \
- nsswitch/winbind_nss_linux.o"
- WINBIND_NSS="nsswitch/nss_winbind.$SHLIBEXT"
- WINBIND_WINS_NSS="nsswitch/nss_wins.$SHLIBEXT"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_freebsd.o \
+ ../nsswitch/winbind_nss_linux.o"
+ WINBIND_NSS="../nsswitch/nss_winbind.$SHLIBEXT"
+ WINBIND_WINS_NSS="../nsswitch/nss_wins.$SHLIBEXT"
;;
*netbsd*[[3-9]]*)
#
if test x"$ac_cv_func_getpwent_r" = x"yes"; then
WINBIND_NSS_EXTRA_OBJS="\
- nsswitch/winbind_nss_netbsd.o \
- nsswitch/winbind_nss_linux.o"
- WINBIND_NSS="nsswitch/nss_winbind.$SHLIBEXT"
- WINBIND_WINS_NSS="nsswitch/nss_wins.$SHLIBEXT"
+ ../nsswitch/winbind_nss_netbsd.o \
+ ../nsswitch/winbind_nss_linux.o"
+ WINBIND_NSS="../nsswitch/nss_winbind.$SHLIBEXT"
+ WINBIND_WINS_NSS="../nsswitch/nss_wins.$SHLIBEXT"
else
HAVE_WINBIND=no
winbind_no_reason=", getpwent_r is missing on $host_os so winbind is unsupported"
;;
*irix*)
# IRIX has differently named shared libraries
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_irix.o"
- WINBIND_NSS="nsswitch/libns_winbind.$SHLIBEXT"
- WINBIND_WINS_NSS="nsswitch/libns_wins.$SHLIBEXT"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_irix.o"
+ WINBIND_NSS="../nsswitch/libns_winbind.$SHLIBEXT"
+ WINBIND_WINS_NSS="../nsswitch/libns_wins.$SHLIBEXT"
;;
*solaris*)
# Solaris winbind client is implemented as a wrapper around
# the Linux version.
NSSSONAMEVERSIONSUFFIX=".1"
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_solaris.o \
- nsswitch/winbind_nss_linux.o"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_solaris.o \
+ ../nsswitch/winbind_nss_linux.o"
WINBIND_NSS_EXTRA_LIBS="${LIBREPLACE_NETWORK_LIBS}"
PAM_WINBIND_EXTRA_LIBS="${LIBREPLACE_NETWORK_LIBS}"
;;
*hpux11*)
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_solaris.o"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_solaris.o"
;;
*aix*)
# AIX has even differently named shared libraries. No
# WINS support has been implemented yet.
- WINBIND_NSS_EXTRA_OBJS="nsswitch/winbind_nss_aix.o"
+ WINBIND_NSS_EXTRA_OBJS="../nsswitch/winbind_nss_aix.o"
WINBIND_NSS_LDSHFLAGS="-Wl,-bexpall,-bM:SRE,-ewb_aix_init"
- WINBIND_NSS="nsswitch/WINBIND"
+ WINBIND_NSS="../nsswitch/WINBIND"
WINBIND_WINS_NSS=""
;;
*)
SMB_MODULE(rpc_initshutdown, \$(RPC_INITSHUTDOWN_OBJ), "bin/librpc_initshutdown.$SHLIBEXT", RPC)
SMB_MODULE(rpc_dssetup, \$(RPC_DSSETUP_OBJ), "bin/librpc_dssetup.$SHLIBEXT", RPC)
SMB_MODULE(rpc_wkssvc, \$(RPC_WKS_OBJ), "bin/librpc_wkssvc.$SHLIBEXT", RPC)
-SMB_MODULE(rpc_svcctl2, \$(RPC_SVCCTL_OBJ), "bin/librpc_svcctl2.$SHLIBEXT", RPC)
-SMB_MODULE(rpc_ntsvcs2, \$(RPC_NTSVCS_OBJ), "bin/librpc_ntsvcs2.$SHLIBEXT", RPC)
+SMB_MODULE(rpc_svcctl, \$(RPC_SVCCTL_OBJ), "bin/librpc_svcctl.$SHLIBEXT", RPC)
+SMB_MODULE(rpc_ntsvcs, \$(RPC_NTSVCS_OBJ), "bin/librpc_ntsvcs.$SHLIBEXT", RPC)
SMB_MODULE(rpc_netlogon, \$(RPC_NETLOG_OBJ), "bin/librpc_NETLOGON.$SHLIBEXT", RPC)
SMB_MODULE(rpc_netdfs, \$(RPC_DFS_OBJ), "bin/librpc_netdfs.$SHLIBEXT", RPC)
SMB_MODULE(rpc_srvsvc, \$(RPC_SVC_OBJ), "bin/librpc_svcsvc.$SHLIBEXT", RPC)
SMB_MODULE(vfs_acl_xattr, \$(VFS_ACL_XATTR_OBJ), "bin/acl_xattr.$SHLIBEXT", VFS)
SMB_MODULE(vfs_acl_tdb, \$(VFS_ACL_TDB_OBJ), "bin/acl_tdb.$SHLIBEXT", VFS)
SMB_MODULE(vfs_smb_traffic_analyzer, \$(VFS_SMB_TRAFFIC_ANALYZER_OBJ), "bin/smb_traffic_analyzer.$SHLIBEXT", VFS)
+SMB_MODULE(vfs_onefs, \$(VFS_ONEFS), "bin/onefs.$SHLIBEXT", VFS)
SMB_SUBSYSTEM(VFS,smbd/vfs.o)
m4_include(../lib/zlib/zlib.m4)
if test x$enable_merged_build = xauto; then
- merged_build_possible=yes
-
- # Check for GNU make
- m4_include(../source4/build/m4/check_make.m4)
- AC_SAMBA_GNU_MAKE([true], [merged_build_possible=no])
-
- # Check for perl
- m4_include(../source4/build/m4/check_perl.m4)
- AC_SAMBA_PERL([true], [merged_build_possible=no])
-
# Check for python
m4_include(../source4/build/m4/check_python.m4)
AC_SAMBA_PYTHON_DEVEL([true], [merged_build_possible=no])
do
ZLIB_OBJS="$ZLIB_OBJS ../lib/zlib/$o"
done
- CFLAGS="$CFLAGS -I../lib/zlib"
+ CFLAGS="-I../lib/zlib $CFLAGS"
])
dnl Remove -L/usr/lib/? from LDFLAGS and LIBS