318 lines
9.7 KiB
Plaintext
318 lines
9.7 KiB
Plaintext
dnl Autoconf script for AUCTeX
|
|
|
|
dnl Maintainer: auctex-devel@gnu.org
|
|
|
|
dnl Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
|
|
|
|
dnl This file is part of AUCTeX.
|
|
|
|
dnl AUCTeX is free software; you can redistribute it and/or modify it
|
|
dnl under the terms of the GNU General Public License as published by
|
|
dnl the Free Software Foundation; either version 3, or (at your option)
|
|
dnl any later version.
|
|
|
|
dnl AUCTeX is distributed in the hope that it will be useful, but
|
|
dnl WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
dnl General Public License for more details.
|
|
|
|
dnl You should have received a copy of the GNU General Public License
|
|
dnl along with AUCTeX; see the file COPYING. If not, write to the Free
|
|
dnl Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
|
dnl MA 02110-1301, USA.
|
|
|
|
AC_INIT(auctex,11.91,bug-auctex@gnu.org)
|
|
|
|
AC_CHECK_PROGS_REQUIRED(MAKECMD, make, [make not found, aborting!])
|
|
AC_PROG_MAKE_SET
|
|
AC_PROG_INSTALL
|
|
|
|
AC_DATE_VERSION_FROM_CHANGELOG(AUCTEXDATE,AUCTEXVERSION,ChangeLog.1)
|
|
AC_SUBST(AUCTEXDATE)
|
|
AC_SUBST(AUCTEXVERSION)
|
|
|
|
AC_DATE_VERSION_FROM_CHANGELOG(PREVIEWDATE,PREVIEWVERSION,ChangeLog-preview)
|
|
AC_SUBST(PREVIEWDATE)
|
|
AC_SUBST(PREVIEWVERSION)
|
|
|
|
EMACS_PROG_EMACS
|
|
|
|
if test ${EMACS_FLAVOR} = xemacs
|
|
then
|
|
EMACS_CHECK_VERSION(21,4)
|
|
else
|
|
EMACS_CHECK_VERSION(21,1)
|
|
fi
|
|
|
|
EMACS_CHECK_MULE
|
|
|
|
# The Debian package uses `--disable-build-dir-test'; normal users should
|
|
# never need to modify the default behavior.
|
|
AC_ARG_ENABLE([build-dir-test],
|
|
[ --enable-build-dir-test test for build directory inside `load-path'
|
|
(on by default)],
|
|
[if ! [[ "X-${enableval}" = "X-no" ]]
|
|
then VALID_BUILD_DIR
|
|
fi],
|
|
[VALID_BUILD_DIR])
|
|
|
|
AC_ARG_ENABLE(preview,
|
|
[ --disable-preview disable inclusion of preview-latex],
|
|
[preview_enabled="$enableval"],
|
|
[preview_enabled="yes"])
|
|
AC_SUBST(preview_enabled)
|
|
|
|
if test ${EMACS_FLAVOR} = "xemacs" ; then
|
|
EMACS_PATH_PACKAGEDIR
|
|
PLAT_LISP=prv-xemacs.el
|
|
else
|
|
packagedir=no
|
|
PLAT_LISP=prv-emacs.el
|
|
fi
|
|
|
|
if test "X${packagedir}" = Xno
|
|
then
|
|
EMACS_PATH_LISPDIR
|
|
AC_MSG_CHECKING(what file to use for auctex startup)
|
|
AC_ARG_WITH(auctexstartfile,
|
|
[[ --with-auctexstartfile=FILE What file to use for auctex startup.]],
|
|
[[ auctexstartfile="${withval}" ]],
|
|
[ _tmpdir_="${lispdir}"
|
|
AC_FULL_EXPAND(_tmpdir_)
|
|
if test -d "${_tmpdir_}/site-start.d"
|
|
then
|
|
auctexstartfile="${lispdir}/site-start.d/auctex.el"
|
|
else
|
|
auctexstartfile="${lispdir}/auctex.el"
|
|
fi])
|
|
AC_MSG_RESULT([[${auctexstartfile}]])
|
|
|
|
AC_MSG_CHECKING(what file to use for preview startup)
|
|
AC_ARG_WITH(previewstartfile,
|
|
[[ --with-previewstartfile=FILE What file to use for preview startup.]],
|
|
[[ previewstartfile="${withval}" ]],
|
|
[ _tmpdir_="${lispdir}"
|
|
AC_FULL_EXPAND(_tmpdir_)
|
|
if test -d "${_tmpdir_}/site-start.d"
|
|
then
|
|
previewstartfile="${lispdir}/site-start.d/preview-latex.el"
|
|
else
|
|
previewstartfile="${lispdir}/preview-latex.el"
|
|
fi])
|
|
AC_MSG_RESULT([[${previewstartfile}]])
|
|
|
|
packagelispdir="${lispdir}/auctex"
|
|
packagedatadir="${packagelispdir}"
|
|
texsitedir="${lispdir}"
|
|
else
|
|
#lispdir is only used for determining relative files.
|
|
lispdir="${packagedir}"
|
|
packagelispdir="${packagedir}/lisp/auctex"
|
|
texsitedir="$packagelispdir"
|
|
auctexstartfile="${packagelispdir}"/auto-autoloads.el
|
|
previewstartfile="${packagelispdir}"/auto-autoloads.el
|
|
packagedatadir="${packagedir}/etc/auctex"
|
|
infodir="${packagedir}/info"
|
|
INSTALL_INFO=:
|
|
fi
|
|
|
|
AC_SUBST(auctexstartfile)
|
|
AC_SUBST(previewstartfile)
|
|
AC_SUBST(PLAT_LISP)
|
|
|
|
AC_MSG_CHECKING([where the package lisp files go])
|
|
AC_ARG_WITH(packagelispdir,
|
|
[[ --with-packagelispdir=DIR
|
|
Directory for the package lisp files.]],
|
|
[packagelispdir=["${withval}"]])
|
|
AC_LISPIFY_DIR(packagelispdir,[["${texsitedir}/tex-site.el"]])
|
|
AC_MSG_RESULT([[${packagelispdir}]])
|
|
|
|
AC_MSG_CHECKING([where the data files go])
|
|
AC_ARG_WITH(packagedatadir,
|
|
[[ --with-packagedatadir=DIR Where the data files go.]],
|
|
[packagedatadir=["${withval}"]])
|
|
AC_LISPIFY_DIR(packagedatadir,[["${texsitedir}/tex-site.el"]])
|
|
AC_MSG_RESULT([[${packagedatadir}]])
|
|
|
|
AC_LISPIFY_DIR(texsite,[["${auctexstartfile}"]],tex-site.el)
|
|
|
|
AC_MSG_CHECKING(where the info files go)
|
|
AC_MSG_RESULT([[${infodir}]])
|
|
|
|
AC_SUBST(packagedir)
|
|
|
|
if test $EMACS_FLAVOR = "xemacs" -a "$infodir" = '${prefix}/info'; then
|
|
if test $packagedir != 'no'; then
|
|
infodir='${packagedir}/info'
|
|
fi
|
|
fi
|
|
|
|
AUCTEX_AUTO_DIR
|
|
AC_LISPIFY_DIR(autodir,"${texsitedir}/tex-site.el")
|
|
|
|
AC_PATH_PROG(TEX, tex, :)
|
|
AC_PATH_PROG(PDFTEX, pdftex, :)
|
|
AC_PATH_PROG(DVIPS, dvips, :)
|
|
|
|
|
|
dnl Preview related options.
|
|
if test "X${preview_enabled}" = Xyes
|
|
then
|
|
AC_ARG_VAR(GS,[Ghostscript executable for batch operation])
|
|
AC_CHECK_PROGS(GS, gs GSWIN32C.EXE, NONE)
|
|
|
|
EMACS_LISP([[lispGS]],[[(if (member dir (list \"NONE\" (if (eq system-type 'windows-nt) \"GSWIN32C.EXE\" \"gs\"))) \"\" \`(defvar preview-gs-command ,dir))]],-no-site-file,[[dir]],[["${GS}"]])
|
|
AC_SUBST(lispGS)
|
|
|
|
dnl check to see if GS supports -dTextAlphaBits and -dGraphicsAlphaBits
|
|
dnl Check to see if specific drivers are built in.
|
|
dnl Need table of mappings, with priority
|
|
|
|
AC_PATH_PROG_REQUIRED(LATEX, latex, [LaTeX not found, aborting!
|
|
You must install LaTeX for preview to work.])
|
|
|
|
AC_PATH_PROG(PDFLATEX, pdflatex)
|
|
|
|
# Determine which latex-style components to install
|
|
# To match .sty, .def, .cfg, but _not_ .drv
|
|
TEXMFGEN=[`sed -n 's/^%<installer>.*file[{]\\([^}.]*\\.[sdc][tef][yfg]\\)[}].*/\\1/p' latex/preview.dtx`]
|
|
# Replace newlines with spaces.
|
|
TEXMFGEN="`echo ${TEXMFGEN}`"
|
|
AC_SUBST(TEXMFGEN)
|
|
|
|
AC_PATH_PROG_REQUIRED(TEX, tex, NONE)
|
|
|
|
TEX_PATH_TEXMFDIR
|
|
|
|
if test "x${texmfdir}" = "xno"
|
|
then
|
|
packagetexstyles="${packagedatadir}/latex"
|
|
AC_LISPIFY_DIR(packagetexstyles,"${previewstartfile}")
|
|
lisppackagetexstyles="(defvar preview-TeX-style-dir ${lisppackagetexstyles})"
|
|
test "X${TEXHASH}" = X && TEXHASH=:
|
|
else
|
|
lisppackagetexstyles=
|
|
fi
|
|
AC_SUBST(lisppackagetexstyles)
|
|
|
|
# Be very careful about assuming things about the available hash programs
|
|
# MiKTeX comes with a braindead link to mktexlsr, apparently, so first
|
|
# try the regular utility from them.
|
|
AC_ARG_VAR(TEXHASH,[command to update the TeX filename database.
|
|
Set to : to skip updating the database on installation.
|
|
This is the default for --without-texmf-dir])
|
|
|
|
if test "X${TEXHASH}" = "X"
|
|
then
|
|
AC_PATH_PROG(TEXHASH, texhash)
|
|
AC_CHECK_PROG(TEXHASH, initexmf, initexmf -u)
|
|
if test "X${TEXHASH}" = X
|
|
then
|
|
AC_PATH_PROGS(TEXHASH, mktexlsr MakeTeXls-R, :)
|
|
fi
|
|
fi
|
|
|
|
AC_MSG_CHECKING([[for glaring installation conflicts]])
|
|
exppackagelispdir="$packagelispdir"
|
|
AC_FULL_EXPAND(exppackagelispdir)
|
|
exppreviewstartfile="$previewstartfile"
|
|
AC_FULL_EXPAND(exppreviewstartfile)
|
|
|
|
EMACS_LISP(shadows,[[
|
|
(concat
|
|
(and (setq tmp (locate-library \"preview.elc\"))
|
|
(not (string= (file-truename tmp)
|
|
(file-truename (expand-file-name \"preview.elc\"
|
|
packagelispdir))))
|
|
(format \"Conflicting previous installation in \`%s' found!\n\"
|
|
(file-name-directory tmp)))
|
|
(and (setq tmp (locate-library \"preview-latex.el\"))
|
|
(not (string= (file-truename tmp)
|
|
(file-truename previewstartfile)))
|
|
(format \"Conflicting previous startup file \`%s' found!\n\" tmp)))]],,
|
|
[[packagelispdir previewstartfile]],[["${exppackagelispdir}" "${exppreviewstartfile}"]])
|
|
if test "NONE${shadows}" != NONE
|
|
then
|
|
conflictsmsg="Conflicts with previous installations have been detected.
|
|
Please fix them before continuing.
|
|
"
|
|
AC_MSG_RESULT([[ouch!
|
|
]])
|
|
AC_MSG_WARN([[${shadows}
|
|
]])
|
|
else
|
|
conflictsmsg=
|
|
AC_MSG_RESULT([[probably none]])
|
|
fi
|
|
|
|
AC_SHELL_QUOTIFY(texmfdir)
|
|
AC_SHELL_QUOTIFY(exec_prefix)
|
|
AC_SHELL_QUOTIFY(libdir)
|
|
AC_SHELL_QUOTIFY(previewtexmfdir)
|
|
AC_SHELL_QUOTIFY(previewdocdir)
|
|
AC_SHELL_QUOTIFY(previewstartfile)
|
|
AC_SHELL_QUOTIFY(auctexdir)
|
|
AC_SHELL_QUOTIFY(datadir)
|
|
AC_SHELL_QUOTIFY(GS)
|
|
AC_SHELL_QUOTIFY(TEXHASH)
|
|
AC_SHELL_QUOTIFY(LATEX)
|
|
AC_SHELL_QUOTIFY(PDFLATEX)
|
|
fi
|
|
|
|
AC_ARG_VAR(PERL,[Perl executable. If set to :, some documentation
|
|
cannot be regenerated, but installation of an unmodified tarball will
|
|
succeed.])
|
|
|
|
if test "x$PERL" = x
|
|
then
|
|
AC_PATH_PROG(PERL, perl, :)
|
|
fi
|
|
|
|
AC_ARG_VAR(MAKEINFO,[Makeinfo executable. If set to :, some documentation
|
|
cannot be regenerated, but installation of an unmodified tarball will
|
|
succeed.])
|
|
|
|
AC_PATH_PROG(MAKEINFO, makeinfo, :)
|
|
AC_PATH_PROG(TEXI2HTML, texi2html, :)
|
|
AC_PATH_PROG(TEXI2DVI, texi2dvi, :)
|
|
AC_PATH_PROG(TEXI2PDF, texi2pdf, :)
|
|
|
|
AC_ARG_VAR(INSTALL_INFO, [install-info executable. Set to : to skip making a dir file. This is the default when installing into an XEmacs package.])
|
|
|
|
if test "X${INSTALL_INFO}" = X
|
|
then
|
|
AC_PATH_PROG(INSTALL_INFO, install-info, :, ${PATH} /usr/sbin /sbin)
|
|
fi
|
|
|
|
AC_SHELL_QUOTIFY(prefix)
|
|
AC_SHELL_QUOTIFY(localstatedir)
|
|
AC_SHELL_QUOTIFY(packagedir)
|
|
AC_SHELL_QUOTIFY(packagelispdir)
|
|
AC_SHELL_QUOTIFY(packagedatadir)
|
|
AC_SHELL_QUOTIFY(lispdir)
|
|
AC_SHELL_QUOTIFY(infodir)
|
|
AC_SHELL_QUOTIFY(datadir)
|
|
AC_SHELL_QUOTIFY(autodir)
|
|
AC_SHELL_QUOTIFY(auctexstartfile)
|
|
AC_SHELL_QUOTIFY(EMACS)
|
|
AC_SHELL_QUOTIFY(INSTALL_INFO)
|
|
AC_SHELL_QUOTIFY(PERL)
|
|
AC_SHELL_QUOTIFY(MAKEINFO)
|
|
AC_SHELL_QUOTIFY(TEX)
|
|
AC_SHELL_QUOTIFY(PDFTEX)
|
|
AC_SHELL_QUOTIFY(DVIPS)
|
|
AC_SHELL_QUOTIFY(TEXI2HTML)
|
|
AC_SHELL_QUOTIFY(TEXI2DVI)
|
|
AC_SHELL_QUOTIFY(TEXI2PDF)
|
|
|
|
AC_OUTPUT(Makefile tex-site.el.out:tex-site.el.in doc/Makefile auctex.el preview.el latex/Makefile)
|
|
|
|
|
|
cat >&2 <<EOF
|
|
|
|
Congratulations! Configuration of AUCTeX is complete.
|
|
|
|
Type "make" at the prompt to build.
|
|
EOF
|