diff options
Diffstat (limited to 'source4/configure.ac')
-rw-r--r-- | source4/configure.ac | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/source4/configure.ac b/source4/configure.ac new file mode 100644 index 0000000000..9d5119c523 --- /dev/null +++ b/source4/configure.ac @@ -0,0 +1,136 @@ +dnl -*- mode: m4-mode -*- +dnl Process this file with autoconf to produce a configure script. + +dnl disabled 2.53 requirement - we do work with 2.52 on suse 7.3 for example +dnl AC_PREREQ(2.53) + +AC_INIT([samba],[],[samba-technical@samba.org]) + +AC_CONFIG_SRCDIR([include/includes.h]) +AC_CONFIG_HEADER(include/config_tmp.h) + +# Configuration rules. +sinclude(build/m4/env.m4) +sinclude(lib/replace/config.m4) +sinclude(lib/replace/win32/config.m4) +sinclude(lib/replace/repdir/config.m4) +sinclude(lib/smbreadline/readline.m4) +sinclude(include/system/config.m4) +sinclude(build/m4/rewrite.m4) +sinclude(heimdal_build/config.m4) +sinclude(lib/util/fsusage.m4) +sinclude(lib/util/capability.m4) +sinclude(lib/util/time.m4) +sinclude(lib/popt/config.m4) +sinclude(lib/charset/config.m4) +sinclude(lib/socket/config.m4) +sinclude(lib/netif/config.m4) +sinclude(lib/talloc/config.m4) +sinclude(lib/tdb/config.m4) +sinclude(lib/ldb/sqlite3.m4) +sinclude(lib/ldb/config.m4) +sinclude(lib/tls/config.m4) +sinclude(lib/events/config.m4) + +dnl disabled until we support external heimdal again +dnl sinclude(auth/kerberos/config.m4) + +sinclude(auth/gensec/config.m4) +sinclude(smbd/process_model.m4) +sinclude(lib/registry/config.m4) +sinclude(scripting/swig/config.m4) +sinclude(gtk/config.m4) +sinclude(ntvfs/posix/config.m4) +sinclude(lib/socket_wrapper/config.m4) +sinclude(web_server/config.m4) +sinclude(auth/config.m4) +sinclude(kdc/config.m4) +sinclude(ntvfs/sysdep/config.m4) +sinclude(lib/appweb/config.m4) +sinclude(nsswitch/config.m4) +sinclude(libcli/config.m4) + +AC_ARG_ENABLE(dso, +[ --enable-dso Enable building internal libraries as DSO's (experimental)], +[ if test x$enable_dso != xyes; then + BLDSHARED=false + fi], +[BLDSHARED=false]) + +################################################# +# add *_CFLAGS only for the real build +CFLAGS="${CFLAGS} ${DEVELOPER_CFLAGS}" + +################################################# +# final configure stuff + +AC_MSG_CHECKING([configure summary]) +AC_TRY_RUN([#include "${srcdir-.}/build/tests/summary.c"], + AC_MSG_RESULT(yes), + AC_MSG_ERROR([summary failure. Aborting config]); exit 1;, + AC_MSG_WARN([cannot run when cross-compiling])) + +LIBS=`echo $LIBS | sed -e 's/ *//g'` +if test x"$LIBS" != x""; then + echo "LIBS: $LIBS" + AC_MSG_WARN([the global \$LIBS variable contains some libraries!]) + AC_MSG_WARN([this should not happen, please report to samba-technical@lists.samba.org!]) + AC_MSG_ERROR([only _EXT macros from aclocal.m4 should be used!]) +fi + +dnl Remove -L/usr/lib/? from LDFLAGS and LIBS +LIB_REMOVE_USR_LIB(LDFLAGS) +LIB_REMOVE_USR_LIB(LIBS) + +dnl Remove -I/usr/include/? from CFLAGS and CPPFLAGS +CFLAGS_REMOVE_USR_INCLUDE(CFLAGS) +CFLAGS_REMOVE_USR_INCLUDE(CPPFLAGS) + +AC_SUBST(ac_default_prefix) + +echo "configure: creating build/smb_build/config.pm" +cat >build/smb_build/config.pm<<CEOF +# config.pm - Autogenerate by configure. DO NOT EDIT! + +package config; +require Exporter; +@ISA = qw(Exporter); +@EXPORT_OK = qw(%enabled %config); +use strict; + +use vars qw(%enabled %config); + +%config = (AC_FOREACH([AC_Var], m4_defn([_AC_SUBST_VARS]), [ + AC_Var => '$AC_Var',]) +); + +$SMB_INFO_ENABLES +1; +CEOF + +echo "configure: creating config.mk" +cat >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( +[test "x$ac_abs_srcdir" != "x$ac_abs_builddir" && + (cd $builddir; + test -d heimdal || cp -r $srcdir/heimdal $builddir/ + test -d heimdal_build || cp -r $srcdir/heimdal_build $builddir/ + test -d build || samba_builddir="$builddir" samba_srcdir="$srcdir" $PERL $srcdir/script/buildtree.pl + test -f $builddir/include/smb.h || cp $srcdir/include/smb.h $builddir/include + ) +$PERL -I${builddir} -I${srcdir} -I${srcdir}/build ${srcdir}/build/smb_build/main.pl || exit $?],[ +PERL="$PERL";export PERL;export srcdir; export builddir; +]) +AC_OUTPUT + +cmp include/config_tmp.h include/config.h >/dev/null 2>&1 +CMP_RET=$? +if test $CMP_RET != 0; then + cp include/config_tmp.h include/config.h +fi |