diff options
Diffstat (limited to 'source3/samba4.m4')
-rw-r--r-- | source3/samba4.m4 | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/source3/samba4.m4 b/source3/samba4.m4 new file mode 100644 index 0000000000..05d655217f --- /dev/null +++ b/source3/samba4.m4 @@ -0,0 +1,162 @@ +BLDSHARED=true +AC_SUBST(BLDSHARED) +smbtorture4_path=bin/smbtorture4 +m4_include(build/m4/public.m4) + +m4_include(build/m4/check_python.m4) + +m4_include(build/m4/ac_pkg_swig.m4) + +AC_PROG_SWIG(1.3.36) + +AC_SAMBA_PYTHON_DEVEL([ +SMB_EXT_LIB(EXT_LIB_PYTHON, [$PYTHON_LDFLAGS], [$PYTHON_CFLAGS]) +SMB_ENABLE(EXT_LIB_PYTHON,YES) +SMB_ENABLE(LIBPYTHON,YES) +],[ +AC_MSG_ERROR([Python not found. Please install Python 2.x and its development headers/libraries.]) +]) + +AC_MSG_CHECKING(python library directory) +pythondir=`$PYTHON -c "from distutils import sysconfig; print sysconfig.get_python_lib(1, 0, '\\${prefix}')"` +AC_MSG_RESULT($pythondir) + +AC_SUBST(pythondir) + +m4_include(lib/smbreadline/readline.m4) +m4_include(heimdal_build/internal.m4) +m4_include(../lib/util/fault.m4) +m4_include(../lib/util/signal.m4) +m4_include(../lib/util/util.m4) +m4_include(../lib/util/fsusage.m4) +m4_include(../lib/util/xattr.m4) +m4_include(../lib/util/capability.m4) +m4_include(../lib/util/time.m4) +m4_include(../lib/popt/samba.m4) +m4_include(lib/charset/config.m4) +m4_include(lib/socket/config.m4) +m4_include(nsswitch/nsstest.m4) +m4_include(../pidl/config.m4) +m4_include(../lib/zlib/zlib.m4) +AC_ZLIB([ +SMB_EXT_LIB(ZLIB, [${ZLIB_LIBS}]) +],[ +SMB_INCLUDE_MK(lib/zlib.mk) +]) + + +AC_CONFIG_FILES(../source4/lib/registry/registry.pc) +AC_CONFIG_FILES(../source4/librpc/dcerpc.pc) +AC_CONFIG_FILES(../librpc/ndr.pc) +AC_CONFIG_FILES(../source4/lib/torture/torture.pc) +AC_CONFIG_FILES(../source4/auth/gensec/gensec.pc) +AC_CONFIG_FILES(../source4/param/samba-hostconfig.pc) +AC_CONFIG_FILES(../source4/librpc/dcerpc_samr.pc) +AC_CONFIG_FILES(../source4/librpc/dcerpc_atsvc.pc) + +SMB_EXT_LIB_FROM_PKGCONFIG(LIBTALLOC, talloc >= 1.2.0, + [], + [ + SMB_INCLUDE_MK(../lib/talloc/config.mk) + ] +) + +SMB_EXT_LIB_FROM_PKGCONFIG(LIBTDB, tdb >= 1.1.3, + [], + [ + m4_include(../lib/tdb/libtdb.m4) + SMB_INCLUDE_MK(../lib/tdb/config.mk) + ] +) + +SMB_INCLUDE_MK(../lib/tdb/python.mk) + +SMB_EXT_LIB_FROM_PKGCONFIG(LIBLDB, ldb >= 0.9.1, + [ + SMB_INCLUDE_MK(lib/ldb/ldb_ildap/config.mk) + SMB_INCLUDE_MK(lib/ldb/tools/config.mk) + define_ldb_modulesdir=no + ], + [ + # Here we need to do some tricks + # with AC_CONFIG_COMMANDS_PRE + # as that's the deferrs the commands + # to location after $prefix and $exec_prefix + # have usefull values and directly before + # creating config.status. + # + # The 'eval eval echo' trick is used to + # actually get the raw absolute directory + # path as this is needed in config.h + define_ldb_modulesdir=yes + AC_CONFIG_COMMANDS_PRE([ + if test x"$define_ldb_modulesdir" = x"yes";then + LDB_MODULESDIR=`eval eval echo ${modulesdir}/ldb` + AC_DEFINE_UNQUOTED(LDB_MODULESDIR, "${LDB_MODULESDIR}" , [ldb Modules directory]) + fi + ]) + ldbdir="\$(abspath \$(srcdir)/../source4/lib/ldb)" + AC_SUBST(ldbdir) + m4_include(lib/ldb/sqlite3.m4) + m4_include(lib/ldb/libldb.m4) + SMB_INCLUDE_MK(lib/ldb/config.mk) + AC_CONFIG_FILES(../source4/lib/ldb/ldb.pc) + ] +) +SMB_INCLUDE_MK(lib/ldb/python.mk) + +# Not sure why we need this.. +SMB_ENABLE(swig_ldb,YES) + +m4_include(lib/tls/config.m4) +eventsdir="../source4/lib/events" +m4_include(lib/events/libevents.m4) + +dnl m4_include(auth/kerberos/config.m4) +m4_include(auth/gensec/config.m4) +m4_include(smbd/process_model.m4) +m4_include(ntvfs/posix/config.m4) +m4_include(ntvfs/unixuid/config.m4) +m4_include(auth/config.m4) +m4_include(kdc/config.m4) +m4_include(ntvfs/sysdep/config.m4) +m4_include(nsswitch/config.m4) + +dnl Samba 4 files +AC_SUBST(LD) +AC_LIBREPLACE_SHLD_FLAGS +SMB_WRITE_MAKEVARS(samba4-config.mk, [prefix exec_prefix CPPFLAGS LDSHFLAGS POPT_OBJ CFLAGS TALLOC_OBJ POPT_LIBS]) + +oldbuilddir="$builddir" +builddir="$builddir/../source4" +SMB_WRITE_PERLVARS(../source4/build/smb_build/config.pm) +builddir="$oldbuilddir" + +echo "configure: creating ../source4/config.mk" +cat >../source4/config.mk<<CEOF +# config.mk - Autogenerated by configure, DO NOT EDIT! +$SMB_INFO_EXT_LIBS +$SMB_INFO_SUBSYSTEMS +$SMB_INFO_LIBRARIES +CEOF + +AC_OUTPUT_COMMANDS([ +cd ${srcdir}/../source4 +USESHARED=false $PERL -I${builddir} -I${builddir}/build \ + -I. -Ibuild \ + build/smb_build/main.pl --output=../source3/samba4-data.mk main.mk || exit $? +cd ../source3 +],[ +srcdir="$srcdir" +builddir="$builddir" +PERL="$PERL" + +export PERL +export srcdir +export builddir +]) + +AC_CONFIG_COMMANDS([Makefile-samba4], [ +echo "include samba4.mk" >> ${builddir}/Makefile +]) + |