diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 190 |
1 files changed, 190 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..6183e42 --- /dev/null +++ b/configure.ac @@ -0,0 +1,190 @@ +dnl configure.ac --- configuration setup for BBDB + +dnl Author: Didier Verna <didier@xemacs.org> +dnl Maintainer: Didier Verna <didier@xemacs.org>, Waider <waider@waider.ie> +dnl Created: Tue Nov 14 18:28:52 2000 + +dnl Copyright (C) 2000-2001 Didier Verna + +dnl BBDB is free software; you can redistribute it and/or modify +dnl it under the terms of the GNU Library General Public License as published +dnl by the Free Software Foundation; either version 2 of the License, or (at +dnl your option) any later version. + +dnl BBDB is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +dnl GNU Library General Public License for more details. + +dnl You should have received a copy of the GNU Library General Public License +dnl along with this program; if not, write to the Free Software Foundation, +dnl Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + + +dnl Process this file with autoconf to produce a new configure script + +AC_PREREQ(2.65) + +BBDB_PRE_INIT +AC_INIT([BBDB],[BBDB_VERSION],[bbdb-info@lists.sourceforge.net]) + +AC_COPYRIGHT([Copyright (C) 2000-2001 Didier Verna <didier@xemacs.org>.]) + +AC_CONFIG_SRCDIR([configure.ac]) +dnl We only have install-sh right now, so it's not worth adding an aux +dnl directory just for that file. +dnl AC_ CONFIG_AUX_DIR +dnl The following macro is incompatible with the current Automake, but we +dnl don't use it for now. +AC_CONFIG_FILES([Makefile + lisp/Makefile + texinfo/Makefile + tex/Makefile + utils/Makefile]) + +dnl Make sure we don't accidentally try to configure a testing directory if +dnl one doesn't exist. +if [[ -d testing ]] +then + AC_CONFIG_FILES([testing/Makefile]) +fi + +dnl Common system utilities checking: +AC_PROG_MAKE_SET +AC_PROG_INSTALL +AC_PROG_LN_S +AC_PATH_PROG(RM, rm, /bin/rm) +AC_PATH_PROG(GREP, grep, /bin/grep) + +dnl ah ah ah. +AC_MSG_CHECKING([for my keys]) +AC_MSG_RESULT([not found]) +echo "Damn! I'm locked outside :-(" + +dnl External programs checking: +BBDB_PROG_GNU_TAR +BBDB_PROG_COMPRESS +BBDB_PROG_MAKEINFO +BBDB_PROG_TEXI2DVI +BBDB_PROG_ETAGS +BBDB_PROG_EMACS + +dnl Some customizations: +BBDB_ARG_SUBST([GNUSDIR], [gnus-dir], [DIR], [set the location of Gnus to DIR], + [], [[ enable_gnus=gnus ]]) +BBDB_ARG_SUBST([MHEDIR], [mhe-dir], [DIR], [set the location of Mh-E to DIR], + [], [[ enable_mhe=mhe ]]) +BBDB_ARG_SUBST([VMDIR], [vm-dir], [DIR], [set the location of VM to DIR], + [], [[ enable_vm=vm ]]) + +# Various MTAs and other optional bits +# Default Gnus to on +enable_gnus=gnus + +# this seems far messier and more complex than I'd expect from autoconf... +AC_ARG_ENABLE([vm], + AS_HELP_STRING([--enable-vm],[enable VM hooks (default depends on --with-vm-dir)]), + [if test "x$enableval" = "xno"; then BBDB_VM=; enable_vm=; else BBDB_VM=vm; fi]) + +AC_ARG_ENABLE(rmail, + AS_HELP_STRING([--enable-rmail],[enable RMAIL hooks [[no]]]), + [if test "x$enableval" = "xno"; then BBDB_RMAIL=; enable_rmail=; else BBDB_RMAIL=rmail; fi], [BBDB_RMAIL=]) + +AC_ARG_ENABLE(gnus, + AS_HELP_STRING([--enable-gnus],[enable GNUS hooks [[yes]]]), + [if test "x$enableval" = "xno"; then BBDB_GNUS=; enable_gnus=; else BBDB_GNUS=gnus; fi], [BBDB_GNUS=]) + +AC_ARG_ENABLE(mhe, + AS_HELP_STRING([--enable-mhe],[enable MH-E hooks (default depends on --with-mhe-dir)]), + [if test "x$enableval" = "xno"; then BBDB_MHE=; enable_mhe=; else BBDB_MHE=mhe; fi], [BBDB_MHE=]) + +dnl All this does for now is allows you to see the compile commands +AC_ARG_ENABLE(developer, + AS_HELP_STRING([--enable-developer],[enable developer hooks [[no]]]), + [if test "x$enable" = "xno"; then HUSHMAKE=; fi], [HUSHMAKE=@]) + +BBDB_ARG_SUBST([OTHERDIRS], [other-dirs], [DIRS], + [set other needed directories (a list of space or colon separated paths)], + [], + dnl #### WARNING: pay attention to the quoting of ACTION if given !!!!! + [[ BBDB_COLON_TO_SPACE(withval) ]]) + +dnl Set up load path file +echo "(setq load-path (append (list " > ${ac_confdir}/loadpath.el +for dir in . "${VMDIR}" "${GNUSDIR}" "${MHEDIR}" "${OTHERDIRS}" +do + if test "x$dir" != "x" + then + echo "(expand-file-name \"$dir\") " >> ${ac_confdir}/loadpath.el + fi +done +echo ") load-path))" >> ${ac_confdir}/loadpath.el + +BBDB_LOADPATH="${ac_confdir}/loadpath.el" + +dnl if VM was requested, make sure we have access to the source +if test "x$enable_vm" != "x"; then + BBDB_VM=`${EMACS_PROG} --no-site-file --no-init-file -batch -q -l ${BBDB_LOADPATH} -eval "(if (locate-library \"vm-autoload\") (message \"vm\"))" 2>&1` + if test "x$BBDB_VM" = "x"; then + AC_MSG_ERROR([*** Cannot build VM support without VM's source.]) + fi +fi + +dnl Now go looking for auxilliary packages (supercite, reportmail and gnuserv) +BBDB_SC=`${EMACS_PROG} -no-site-file -no-init-file -batch -q -l ${BBDB_LOADPATH} -eval "(if (locate-library \"supercite\") (message \"bbdb-sc.elc\"))" 2>&1` +BBDB_REPORTMAIL=`${EMACS_PROG} -no-site-file -no-init-file -batch -q -l ${BBDB_LOADPATH} -eval "(if (locate-library \"reportmail\") (message \"bbdb-reportmail.elc\"))" 2>&1` +BBDB_SRV=`${EMACS_PROG} -no-site-file -no-init-file -batch -q -l ${BBDB_LOADPATH} -eval "(progn (or (fboundp (quote define-obsolete-variable-alias)) (if (locate-library \"gnuserv-compat\") (load \"gnuserv-compat\" t t))) (if (and (locate-library \"gnuserv\") (locate-library \"itimer\")) (message \"bbdb-srv.el\")))" 2>&1` + +AC_MSG_CHECKING([checking emacs-type of ${EMACS_PROG}]) +cat > conftest.el <<TEST +(princ (format "%s" (if (featurep 'xemacs ) 'xemacs 'emacs))) +TEST +EMACS_FLAVOR=`${EMACS_PROG} --no-site-file --batch -l conftest.el | ${GREP} .` +AC_MSG_RESULT([${EMACS_FLAVOR}]) + +dnl XEmacsery +dnl is there a sane way to set this to a useful default? +BBDB_ARG_SUBST([PACKAGEDIR], [package-dir], [DIR], + [set the XEmacs package directory to DIR], + [/usr/lib/xemacs/site-packages]) + +BBDB_ARG_SUBST([SYMLINKS], [symlinks], [], + [install BBDB by linking instead of copying], [no]) + +BBDB_ARG_SUBST([LINKPATH], [linkpath], [PATH], + [path to symlink from if `pwd' does not work]) + +# Switch on some targets +AC_SUBST([BBDB_RMAIL]) +AC_SUBST([BBDB_VM]) +AC_SUBST([BBDB_GNUS]) +AC_SUBST([BBDB_MHE]) +AC_SUBST([BBDB_LOADPATH]) +AC_SUBST([BBDB_SC]) +AC_SUBST([BBDB_REPORTMAIL]) +AC_SUBST([BBDB_SRV]) +AC_SUBST([HUSHMAKE]) +AC_SUBST([EMACS_FLAVOR]) + +dnl Hacky Hacky. If RM really /is/ rm (i.e. we're not on DOS, for example) +dnl then make it 'quiet'. +if test "${RM}" = "/bin/rm" -o "${RM}" = "/usr/bin/rm"; then + RM="${RM} -f" +fi + +dnl More Hacky. Figure out the correct way to get contextual grep. +dnl this should only be switched on for developers since it's +dnl only required by the test stuff. +if test "x$enable_developer" != "x"; then + if ${GREP} -C foo configure.ac > /dev/null 2>&1; then + GREPCONTEXT="-C" + else + GREPCONTEXT="-C5" + fi +fi + +AC_SUBST(GREPCONTEXT) + +AC_OUTPUT + +dnl configure.ac ends here |