r14999: Remove more unused autoconf code
[samba.git] / source / configure.in
index 32b600dc3bcf201dcb76e8cb6f58d119a38dc0d4..9e5f97ca5c3526a1e4070ef98b45a2b284fe230d 100644 (file)
@@ -4,276 +4,56 @@ 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(include/includes.h)
-AC_CONFIG_HEADER(include/config.h)
+AC_INIT([samba],[],[samba-technical@samba.org])
 
-AC_DISABLE_STATIC
-AC_ENABLE_SHARED
-
-SMB_VERSION_STRING=`cat include/version.h | grep 'SAMBA_VERSION_OFFICIAL_STRING' | cut -d '"' -f2`
-echo "SAMBA VERSION: ${SMB_VERSION_STRING}"
-
-#################################################
-# Directory handling stuff to support both the
-# legacy SAMBA directories and FHS compliant
-# ones...
-AC_PREFIX_DEFAULT(/usr/local/samba)
-
-AC_ARG_WITH(fhs, 
-[  --with-fhs              Use FHS-compliant paths (default=no)],
-    configdir="${sysconfdir}/samba"
-    lockdir="\${VARDIR}/cache/samba"
-    piddir="\${VARDIR}/run/samba"
-    logfilebase="\${VARDIR}/log/samba"
-    privatedir="\${CONFIGDIR}/private"
-    libdir="\${prefix}/lib/samba"
-    swatdir="\${DATADIR}/samba/swat",
-    configdir="\${LIBDIR}"
-    logfilebase="\${VARDIR}"
-    lockdir="\${VARDIR}/locks"
-    piddir="\${VARDIR}/locks"
-    privatedir="\${prefix}/private"
-    swatdir="\${prefix}/swat")
-
-#################################################
-# set private directory location
-AC_ARG_WITH(privatedir,
-[  --with-privatedir=DIR   Where to put smbpasswd ($ac_default_prefix/private)],
-[ case "$withval" in
-  yes|no)
-  #
-  # Just in case anybody calls it without argument
-  #
-    AC_MSG_WARN([--with-privatedir called without argument - will use default])
-  ;;
-  * )
-    privatedir="$withval"
-    ;;
-  esac])
-
-#################################################
-# set lock directory location
-AC_ARG_WITH(lockdir,
-[  --with-lockdir=DIR      Where to put lock files ($ac_default_prefix/var/locks)],
-[ case "$withval" in
-  yes|no)
-  #
-  # Just in case anybody calls it without argument
-  #
-    AC_MSG_WARN([--with-lockdir called without argument - will use default])
-  ;;
-  * )
-    lockdir="$withval"
-    ;;
-  esac])
-
-#################################################
-# set pid directory location
-AC_ARG_WITH(piddir,
-[  --with-piddir=DIR       Where to put pid files ($ac_default_prefix/var/locks)],
-[ case "$withval" in
-  yes|no)
-  #
-  # Just in case anybody calls it without argument
-  #
-    AC_MSG_WARN([--with-piddir called without argument - will use default])
-  ;;
-  * )
-    piddir="$withval"
-    ;;
-  esac])
-
-#################################################
-# set configuration directory location
-AC_ARG_WITH(configdir,
-[  --with-configdir=DIR    Where to put configuration files (\$libdir)],
-[ case "$withval" in
-  yes|no)
-  #
-  # Just in case anybody does it
-  #
-    AC_MSG_WARN([--with-configdir called without argument - will use default])
-  ;;
-  * )
-    configdir="$withval"
-    ;;
-  esac])
-
-#################################################
-# set log directory location
-AC_ARG_WITH(logfilebase,
-[  --with-logfilebase=DIR  Where to put log files (\$(VARDIR))],
-[ case "$withval" in
-  yes|no)
-  #
-  # Just in case anybody does it
-  #
-    AC_MSG_WARN([--with-logfilebase called without argument - will use default])
-  ;;
-  * )
-    logfilebase="$withval"
-    ;;
-  esac])
-
-AC_SUBST(configdir)
-AC_SUBST(lockdir)
-AC_SUBST(piddir)
-AC_SUBST(logfilebase)
-AC_SUBST(privatedir)
-AC_SUBST(bindir)
-AC_SUBST(sbindir)
-
-dnl Unique-to-Samba variables we'll be playing with.
-AC_SUBST(SHELL)
-AC_SUBST(LDSHFLAGS)
-AC_SUBST(SONAMEFLAG)
-AC_SUBST(SHLD)
-AC_SUBST(HOST_OS)
-AC_SUBST(PICFLAG)
-AC_SUBST(PICSUFFIX)
-AC_SUBST(POBAD_CC)
-AC_SUBST(SHLIBEXT)
-AC_SUBST(INSTALLCLIENTCMD_SH)
-AC_SUBST(INSTALLCLIENTCMD_A)
-AC_SUBST(LIBSMBCLIENT_SHARED)
-AC_SUBST(LIBSMBCLIENT)
-AC_SUBST(PRINTLIBS)
-AC_SUBST(AUTHLIBS)
-AC_SUBST(ACLLIBS)
-AC_SUBST(SHLIB_PROGS)
-AC_SUBST(SMBWRAPPER)
-AC_SUBST(EXTRA_BIN_PROGS)
-AC_SUBST(EXTRA_SBIN_PROGS)
-AC_SUBST(EXTRA_ALL_TARGETS)
-
-debug=no
-AC_ARG_ENABLE(debug, 
-[  --enable-debug          Turn on compiler debugging information (default=no)],
-    [if eval "test x$enable_debug = xyes"; then
-        debug=yes
-       CFLAGS="${CFLAGS} -g"
-    fi])
-
-developer=no
-AC_ARG_ENABLE(developer, [  --enable-developer      Turn on developer warnings and debugging (default=no)],
-    [if eval "test x$enable_developer = xyes"; then
-        developer=yes
-       CFLAGS="${CFLAGS} -g -Wall -Wshadow -Wstrict-prototypes -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -DDEBUG_PASSWORD -DDEVELOPER"
-    fi])
-
-AC_ARG_ENABLE(krb5developer, [  --enable-krb5developer  Turn on developer warnings and debugging, except -Wstrict-prototypes (default=no)],
-    [if eval "test x$enable_krb5developer = xyes"; then
-        developer=yes
-       CFLAGS="${CFLAGS} -g -Wall -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -DDEBUG_PASSWORD -DDEVELOPER"
-    fi])
-
-experimental=no
-AC_ARG_ENABLE(experimental, [  --enable-experimental Turn on experimental features (default=no)],
-    [if eval "test x$enable_experimental = xyes"; then
-        experimental=yes
-    fi])
+AC_CONFIG_SRCDIR([include/includes.h])
+AC_CONFIG_HEADER(include/config_tmp.h)
 
+# Configuration rules.
+sinclude(build/m4/env.m4)
 sinclude(build/m4/rewrite.m4)
-
-dnl exclude these modules 
-AC_ARG_WITH(exclude-modules,
-[  --with-exclude-modules=MODULES Comma-seperated list of names of modules to exclude from build],
-[ if test $withval; then
-       for i in `echo $withval | sed -e's/,/ /g'`
-       do
-               eval SMB_MODULE_$i=NOT
-       done
-fi ])
-
-dnl Always built these modules shared
-AC_ARG_WITH(shared-modules,
-[  --with-shared-modules=MODULES  Comma-seperated list of names of modules to build shared],
-[ if test $withval; then
-       for i in `echo $withval | sed -e's/,/ /g'`
-       do
-               eval SMB_MODULE_$i=SHARED
-       done
-fi ])
-
-dnl Always built these modules static
-AC_ARG_WITH(static-modules,
-[  --with-static-modules=MODULES  Comma-seperated list of names of modules to statically link in],
-[ if test $withval; then
-       for i in `echo $withval | sed -e's/,/ /g'`
-       do
-               eval SMB_MODULE_$i=STATIC
-       done
-fi ])
-
-SMB_INCLUDE_M4(lib/popt/config.m4)
-SMB_INCLUDE_M4(lib/iconv.m4)
-SMB_INCLUDE_M4(lib/basic.m4)
-SMB_INCLUDE_M4(lib/tdb/config.m4)
-SMB_INCLUDE_M4(lib/ldb/config.m4)
-SMB_INCLUDE_M4(lib/cmdline/config.m4)
-SMB_INCLUDE_M4(param/config.m4)
-SMB_INCLUDE_M4(libcli/config.m4)
-SMB_INCLUDE_M4(librpc/config.m4)
-SMB_INCLUDE_M4(libcli/libsmb.m4)
-SMB_INCLUDE_M4(smbd/process_model.m4)
-SMB_INCLUDE_M4(smb_server/config.m4)
-SMB_INCLUDE_M4(auth/config.m4)
-SMB_INCLUDE_M4(ntvfs/config.m4)
-SMB_INCLUDE_M4(rpc_server/config.m4)
-SMB_INCLUDE_M4(lib/registry/config.m4)
-SMB_INCLUDE_M4(torture/config.m4)
-SMB_INCLUDE_M4(scripting/config.m4)
-
-ALLLIBS_LIBS="$LIBS"
-ALLLIBS_CFLAGS="$CFLAGS"
-ALLLIBS_CPPFLAGS="$CPPFLAGS"
-ALLLIBS_LDFLAGS="$LDFLAGS"
-
-SMB_EXT_LIB_ENABLE(ALLLIBS,YES)
-
-SMB_EXT_LIB(ALLLIBS,
-               [${ALLLIBS_LIBS}],
-               [${ALLLIBS_CFLAGS}],
-               [${ALLLIBS_CPPFLAGS}],
-               [${ALLLIBS_LDFLAGS}])
-
-SMB_INCLUDE_M4(smbd/config.m4)
-
-SMB_BINARY(smbclient, [ALL], [BIN], 
-       [client/client.o
-       client/clitar.o],
-       [],
-       [LIBSMB CONFIG LIBBASIC LIBCMDLINE])
-
-SMB_BINARY(ndrdump, [ALL], [BIN],
-       [utils/ndrdump.o],
-       [],
-       [LIBSMB CONFIG LIBBASIC LIBCMDLINE])
-
-SMB_BINARY(gentest, [ALL], [BIN],
-       [torture/gentest.o
-       torture/torture_util.o],
-       [],
-       [LIBSMB CONFIG LIBBASIC LIBCMDLINE])
-
-SMB_BINARY(masktest, [ALL], [BIN], 
-       [torture/masktest.o],
-       [],
-       [LIBSMB CONFIG LIBBASIC LIBCMDLINE])
-
-SMB_BINARY(locktest, [ALL], [BIN],
-       [torture/locktest.o],
-       [],
-       [LIBSMB CONFIG LIBBASIC LIBCMDLINE])
-
-AC_DEFINE_UNQUOTED(STRING_STATIC_MODULES, "$string_static_modules", [String list of builtin modules])
+sinclude(lib/replace/config.m4)
+sinclude(lib/replace/win32/config.m4)
+sinclude(lib/replace/repdir/config.m4)
+sinclude(heimdal_build/config.m4)
+sinclude(lib/util/fsusage.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(libcli/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)
+
+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])
 
 #################################################
-# do extra things if we are running insure
-
-if test "${ac_cv_prog_CC}" = "insure"; then
-       CPPFLAGS="$CPPFLAGS -D__INSURE__"
-fi
+# add *_CFLAGS only for the real build
+CFLAGS="${CFLAGS} ${DEVELOPER_CFLAGS}"
 
 #################################################
 # final configure stuff
@@ -284,8 +64,13 @@ AC_TRY_RUN([#include "${srcdir-.}/build/tests/summary.c"],
           AC_MSG_ERROR([summary failure. Aborting config]); exit 1;,
           AC_MSG_WARN([cannot run when cross-compiling]))
 
-builddir=`pwd`
-AC_SUBST(builddir)
+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)
@@ -295,4 +80,44 @@ dnl Remove -I/usr/include/? from CFLAGS and CPPFLAGS
 CFLAGS_REMOVE_USR_INCLUDE(CFLAGS)
 CFLAGS_REMOVE_USR_INCLUDE(CPPFLAGS)
 
-SMB_AC_OUTPUT(Makefile)
+AC_SUBST(ac_default_prefix)
+
+echo "configure: creating config.pm"
+cat >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(
+[$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