* lib/emacs/autoconf-mode.el, lib/emacs/autotest-mode.el: New.

* configure.ac: Adjust.
This commit is contained in:
Akim Demaille 2001-09-28 11:56:26 +00:00
parent f656cde734
commit e16f9eefe0
16 changed files with 641 additions and 12 deletions

View File

@ -1,3 +1,8 @@
2001-09-28 Akim Demaille <akim@epita.fr>
* lib/emacs/autoconf-mode.el, lib/emacs/autotest-mode.el: New.
* configure.ac: Adjust.
2001-09-28 Akim Demaille <akim@epita.fr>
* lib/autotest/general.m4 (AT_VICTIMS): Rename as...

3
NEWS
View File

@ -23,6 +23,9 @@
@builddir@, @top_builddir@, @srcpath@, @top_srcpath@, @buildpath@,
@top_buildpath@.
** Emacs
Autoconf and Autotest modes are provided.
** autom4te
New executable, used by the Autoconf suite to cache and speed up
most processing.

1
aclocal.m4 vendored
View File

@ -4,6 +4,7 @@ m4_include([m4/depend.m4])
m4_include([m4/init.m4])
m4_include([m4/install-sh.m4])
m4_include([m4/m4.m4])
m4_include([m4/lispdir.m4])
m4_include([m4/missing.m4])
m4_include([m4/sanity.m4])
m4_include([m4/strip.m4])

101
configure vendored
View File

@ -693,6 +693,11 @@ Optional Features:
--disable-dependency-tracking Speeds up one-time builds
--enable-dependency-tracking Do not reject slow dependency extractors
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
--with-lispdir Override the default lisp directory
Report bugs to <bug-autoconf@gnu.org>.
_ACEOF
fi
@ -1017,6 +1022,8 @@ ac_config_guess="$SHELL $ac_aux_dir/config.guess"
ac_config_sub="$SHELL $ac_aux_dir/config.sub"
ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
ac_config_files="$ac_config_files config/Makefile"
# Find a good install program. We prefer a C program (faster),
# so one script is as good as another. But avoid the broken or
# incompatible versions:
@ -1316,6 +1323,8 @@ if test -f $srcdir/tests/atlocal.in; then
fi
ac_config_files="$ac_config_files tests/Makefile"
ac_config_files="$ac_config_files tests/autoconf:tests/wrapsh.in"
ac_config_files="$ac_config_files tests/autoheader:tests/wrappl.in"
@ -1440,7 +1449,8 @@ fi
# This is needed because Automake does not seem to realize there is
# a AC-SUBST inside AC-PROG-GNU-M4. Grmph!
# Generating man pages.
# Man pages.
ac_config_files="$ac_config_files man/Makefile"
HELP2MAN=${HELP2MAN-"${am_missing_run}help2man"}
@ -1496,10 +1506,88 @@ echo "$as_me: error: Perl 5.005 or better is required" >&2;}
{ (exit 1); exit 1; }; }
}
# Emacs modes.
ac_config_files="$ac_config_files lib/emacs/Makefile"
# Check whether --with-lispdir or --without-lispdir was given.
if test "${with_lispdir+set}" = set; then
withval="$with_lispdir"
lispdir="$withval"
echo "$as_me:$LINENO: checking where .elc files should go" >&5
echo $ECHO_N "checking where .elc files should go... $ECHO_C" >&6
echo "$as_me:$LINENO: result: $lispdir" >&5
echo "${ECHO_T}$lispdir" >&6
else
# If set to t, that means we are running in a shell under Emacs.
# If you have an Emacs named "t", then use the full path.
test x"$EMACS" = xt && EMACS=
for ac_prog in emacs xemacs
do
# Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2
echo "$as_me:$LINENO: checking for $ac_word" >&5
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
if test "${ac_cv_prog_EMACS+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
if test -n "$EMACS"; then
ac_cv_prog_EMACS="$EMACS" # Let the user override the test.
else
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
IFS=$as_save_IFS
test -z "$as_dir" && as_dir=.
for ac_exec_ext in '' $ac_executable_extensions; do
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
ac_cv_prog_EMACS="$ac_prog"
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
break 2
fi
done
done
fi
fi
EMACS=$ac_cv_prog_EMACS
if test -n "$EMACS"; then
echo "$as_me:$LINENO: result: $EMACS" >&5
echo "${ECHO_T}$EMACS" >&6
else
echo "$as_me:$LINENO: result: no" >&5
echo "${ECHO_T}no" >&6
fi
test -n "$EMACS" && break
done
test -n "$EMACS" || EMACS="no"
if test $EMACS != "no"; then
if test x${lispdir+set} != xset; then
echo "$as_me:$LINENO: checking where .elc files should go" >&5
echo $ECHO_N "checking where .elc files should go... $ECHO_C" >&6
if test "${am_cv_lispdir+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
am_cv_lispdir=`$EMACS -batch -q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' | sed -n -e 's,/$,,' -e '/.*\/lib\/\(x\?emacs\/site-lisp\)$/{s,,${libdir}/\1,;p;q;}' -e '/.*\/share\/\(x\?emacs\/site-lisp\)$/{s,,${datadir}/\1,;p;q;}'`
if test -z "$am_cv_lispdir"; then
am_cv_lispdir='${datadir}/emacs/site-lisp'
fi
fi
echo "$as_me:$LINENO: result: $am_cv_lispdir" >&5
echo "${ECHO_T}$am_cv_lispdir" >&6
lispdir="$am_cv_lispdir"
fi
fi
fi;
# Automake can't see inner AC_SUBSTS (`aclocal' is bypassed), so we tag the
# AC_SUBSTS here too.
ac_config_files="$ac_config_files Makefile m4/Makefile man/Makefile doc/Makefile config/Makefile lib/Makefile lib/Autom4te/Makefile lib/autoscan/Makefile lib/m4sugar/Makefile lib/autoconf/Makefile lib/autotest/Makefile bin/Makefile tests/Makefile"
ac_config_files="$ac_config_files Makefile m4/Makefile doc/Makefile lib/Makefile lib/Autom4te/Makefile lib/autoscan/Makefile lib/m4sugar/Makefile lib/autoconf/Makefile lib/autotest/Makefile bin/Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -1942,7 +2030,9 @@ for ac_config_target in $ac_config_targets
do
case "$ac_config_target" in
# Handling of arguments.
"config/Makefile" ) CONFIG_FILES="$CONFIG_FILES config/Makefile" ;;
"tests/atlocal" ) CONFIG_FILES="$CONFIG_FILES tests/atlocal" ;;
"tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
"tests/autoconf" ) CONFIG_FILES="$CONFIG_FILES tests/autoconf:tests/wrapsh.in" ;;
"tests/autoheader" ) CONFIG_FILES="$CONFIG_FILES tests/autoheader:tests/wrappl.in" ;;
"tests/autom4te" ) CONFIG_FILES="$CONFIG_FILES tests/autom4te" ;;
@ -1950,11 +2040,11 @@ do
"tests/autoscan" ) CONFIG_FILES="$CONFIG_FILES tests/autoscan:tests/wrappl.in" ;;
"tests/autoupdate" ) CONFIG_FILES="$CONFIG_FILES tests/autoupdate" ;;
"tests/ifnames" ) CONFIG_FILES="$CONFIG_FILES tests/ifnames:tests/wrappl.in" ;;
"man/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/Makefile" ;;
"lib/emacs/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/emacs/Makefile" ;;
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
"m4/Makefile" ) CONFIG_FILES="$CONFIG_FILES m4/Makefile" ;;
"man/Makefile" ) CONFIG_FILES="$CONFIG_FILES man/Makefile" ;;
"doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
"config/Makefile" ) CONFIG_FILES="$CONFIG_FILES config/Makefile" ;;
"lib/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/Makefile" ;;
"lib/Autom4te/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/Autom4te/Makefile" ;;
"lib/autoscan/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/autoscan/Makefile" ;;
@ -1962,7 +2052,6 @@ do
"lib/autoconf/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/autoconf/Makefile" ;;
"lib/autotest/Makefile" ) CONFIG_FILES="$CONFIG_FILES lib/autotest/Makefile" ;;
"bin/Makefile" ) CONFIG_FILES="$CONFIG_FILES bin/Makefile" ;;
"tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;;
"tests/package.m4" ) CONFIG_COMMANDS="$CONFIG_COMMANDS tests/package.m4" ;;
"tests/atconfig" ) CONFIG_COMMANDS="$CONFIG_COMMANDS tests/atconfig" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
@ -2069,6 +2158,8 @@ s,@EXPR@,$EXPR,;t t
s,@M4@,$M4,;t t
s,@HELP2MAN@,$HELP2MAN,;t t
s,@PERL@,$PERL,;t t
s,@EMACS@,$EMACS,;t t
s,@lispdir@,$lispdir,;t t
CEOF
_ACEOF

View File

@ -20,15 +20,19 @@
# 02111-1307, USA.
# We need AC_CONFIG_TESTDIR.
AC_PREREQ(2.52d)
AC_PREREQ(2.52e)
AC_INIT(GNU Autoconf, 2.52e, bug-autoconf@gnu.org)
AC_CONFIG_SRCDIR(ChangeLog)
AC_CONFIG_AUX_DIR(config)
AC_CONFIG_FILES(config/Makefile)
AM_INIT_AUTOMAKE(autoconf, 2.52e)
# Initialize the test suite and build position independent wrappers.
AC_CONFIG_TESTDIR(tests)
AC_CONFIG_FILES(tests/Makefile)
AC_CONFIG_FILES([tests/autoconf:tests/wrapsh.in],
[chmod +x tests/autoconf])
AC_CONFIG_FILES([tests/autoheader:tests/wrappl.in],
@ -45,6 +49,7 @@ AC_CONFIG_FILES([tests/ifnames:tests/wrappl.in],
[chmod +x tests/ifnames])
AC_PATH_PROG(EXPR, expr)
# We use a path for GNU m4 so even if users have another m4 first in
# their path, the installer can configure with a path that has GNU m4
# first and get that path embedded in the installed autoconf and
@ -57,7 +62,8 @@ fi
# a AC-SUBST inside AC-PROG-GNU-M4. Grmph!
AC_SUBST(M4)
# Generating man pages.
# Man pages.
AC_CONFIG_FILES(man/Makefile)
AM_MISSING_PROG(HELP2MAN, help2man)
# We use a path for perl so the #! line in autoscan will work.
@ -70,18 +76,21 @@ $PERL -e 'require 5.005;' || {
AC_MSG_ERROR([Perl 5.005 or better is required])
}
# Emacs modes.
AC_CONFIG_FILES(lib/emacs/Makefile)
AM_PATH_LISPDIR
# Automake can't see inner AC_SUBSTS (`aclocal' is bypassed), so we tag the
# AC_SUBSTS here too.
AC_SUBST(PACKAGE_NAME)
AC_SUBST(PACKAGE)
AC_SUBST(VERSION)
AC_CONFIG_FILES(Makefile m4/Makefile man/Makefile doc/Makefile config/Makefile
AC_CONFIG_FILES(Makefile m4/Makefile doc/Makefile
lib/Makefile lib/Autom4te/Makefile lib/autoscan/Makefile
lib/m4sugar/Makefile
lib/autoconf/Makefile lib/autotest/Makefile
bin/Makefile
tests/Makefile)
bin/Makefile)
AC_OUTPUT
# Report the state of this version of Autoconf if this is a beta.

View File

@ -1,6 +1,6 @@
## Process this file with automake to create Makefile.in
SUBDIRS = Autom4te m4sugar autoconf autotest autoscan
SUBDIRS = Autom4te m4sugar autoconf autotest autoscan emacs
nodist_pkgdata_DATA = autom4te.cfg
EXTRA_DIST = autom4te.in

View File

@ -63,7 +63,7 @@ PACKAGE_NAME = @PACKAGE_NAME@
PERL = @PERL@
VERSION = @VERSION@
SUBDIRS = Autom4te m4sugar autoconf autotest autoscan
SUBDIRS = Autom4te m4sugar autoconf autotest autoscan emacs
nodist_pkgdata_DATA = autom4te.cfg
EXTRA_DIST = autom4te.in

2
lib/emacs/.cvsignore Normal file
View File

@ -0,0 +1,2 @@
Makefile
*.elc

20
lib/emacs/Makefile.am Normal file
View File

@ -0,0 +1,20 @@
## Process this file with automake to create Makefile.in
## Copyright 2001 Free Software Foundation, Inc.
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; either version 2, or (at your option)
## any later version.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
## You should have received a copy of the GNU General Public License
## along with this program; if not, write to the Free Software
## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
## 02111-1307, USA.
dist_lisp_LISP = autoconf-mode.el autotest-mode.el

227
lib/emacs/Makefile.in Normal file
View File

@ -0,0 +1,227 @@
# Makefile.in generated automatically by automake 1.5 from Makefile.am.
# Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001
# Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
SHELL = @SHELL@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
VPATH = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
sbindir = @sbindir@
libexecdir = @libexecdir@
datadir = @datadir@
sysconfdir = @sysconfdir@
sharedstatedir = @sharedstatedir@
localstatedir = @localstatedir@
libdir = @libdir@
infodir = @infodir@
mandir = @mandir@
includedir = @includedir@
oldincludedir = /usr/include
pkgdatadir = $(datadir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = ../..
ACLOCAL = @ACLOCAL@
AUTOCONF = @AUTOCONF@
AUTOMAKE = @AUTOMAKE@
AUTOHEADER = @AUTOHEADER@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_HEADER = $(INSTALL_DATA)
transform = @program_transform_name@
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
EXPR = @EXPR@
HELP2MAN = @HELP2MAN@
M4 = @M4@
PACKAGE = @PACKAGE@
PACKAGE_NAME = @PACKAGE_NAME@
PERL = @PERL@
VERSION = @VERSION@
dist_lisp_LISP = autoconf-mode.el autotest-mode.el
subdir = lib/emacs
mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs
CONFIG_CLEAN_FILES =
DIST_SOURCES =
LISP = $(dist_lisp_LISP)
ELCFILES = autoconf-mode.elc autotest-mode.elc
DIST_COMMON = $(dist_lisp_LISP) Makefile.am Makefile.in elisp-comp
all: all-am
.SUFFIXES:
.SUFFIXES: .el .elc
$(srcdir)/Makefile.in: Makefile.am $(top_srcdir)/configure.ac $(ACLOCAL_M4)
cd $(top_srcdir) && \
$(AUTOMAKE) --gnu lib/emacs/Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) && \
CONFIG_HEADERS= CONFIG_LINKS= \
CONFIG_FILES=$(subdir)/$@ $(SHELL) ./config.status
uninstall-info-am:
EMACS = @EMACS@
lispdir = @lispdir@
.el.elc:
@echo 'WARNING: Warnings can be ignored. :-)'
if test $(EMACS) != no; then \
EMACS=$(EMACS) $(SHELL) $(srcdir)/elisp-comp $<; \
else : ; fi
install-dist_lispLISP: $(dist_lisp_LISP) $(ELCFILES)
@$(NORMAL_INSTALL)
@if test -n "$(lispdir)"; then \
$(mkinstalldirs) $(DESTDIR)$(lispdir); \
list='$(dist_lisp_LISP)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
f="`echo $$p | sed -e 's|^.*/||'`"; \
echo " $(INSTALL_DATA) $$d$$p $(DESTDIR)$(lispdir)/$$f"; \
$(INSTALL_DATA) $$d$$p $(DESTDIR)$(lispdir)/$$f; \
if test -f $${p}c; then \
echo " $(INSTALL_DATA) $${p}c $(DESTDIR)$(lispdir)/$${f}c"; \
$(INSTALL_DATA) $${p}c $(DESTDIR)$(lispdir)/$${f}c; \
else : ; fi; \
done; \
else : ; fi
uninstall-dist_lispLISP:
@$(NORMAL_UNINSTALL)
@if test -n "$(lispdir)"; then \
list='$(dist_lisp_LISP)'; for p in $$list; do \
f="`echo $$p | sed -e 's|^.*/||'`"; \
echo " rm -f $(DESTDIR)$(lispdir)/$$f $(DESTDIR)$(lispdir)/$${f}c"; \
rm -f $(DESTDIR)$(lispdir)/$$f $(DESTDIR)$(lispdir)/$${f}c; \
done; \
else : ; fi
clean-lisp:
-test -z "$(ELCFILES)" || rm -f $(ELCFILES)
tags: TAGS
TAGS:
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
top_distdir = ../..
distdir = $(top_distdir)/$(PACKAGE)-$(VERSION)
distdir: $(DISTFILES)
@for file in $(DISTFILES); do \
if test -f $$file; then d=.; else d=$(srcdir); fi; \
dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \
if test "$$dir" != "$$file" && test "$$dir" != "."; then \
$(mkinstalldirs) "$(distdir)/$$dir"; \
fi; \
if test -d $$d/$$file; then \
cp -pR $$d/$$file $(distdir) \
|| exit 1; \
else \
test -f $(distdir)/$$file \
|| cp -p $$d/$$file $(distdir)/$$file \
|| exit 1; \
fi; \
done
check-am: all-am
check: check-am
all-am: Makefile $(LISP) $(ELCFILES)
installdirs:
$(mkinstalldirs) $(DESTDIR)$(lispdir)
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
`test -z '$(STRIP)' || \
echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
mostlyclean-generic:
clean-generic:
distclean-generic:
-rm -f Makefile $(CONFIG_CLEAN_FILES) stamp-h stamp-h[0-9]*
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-generic clean-lisp mostlyclean-am
distclean: distclean-am
distclean-am: clean-am distclean-generic
dvi: dvi-am
dvi-am:
info: info-am
info-am:
install-data-am: install-dist_lispLISP
install-exec-am:
install-info: install-info-am
install-man:
installcheck-am:
maintainer-clean: maintainer-clean-am
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic
uninstall-am: uninstall-dist_lispLISP uninstall-info-am
.PHONY: all all-am check check-am clean clean-generic clean-lisp \
distclean distclean-generic distdir dvi dvi-am info info-am \
install install-am install-data install-data-am \
install-dist_lispLISP install-exec install-exec-am install-info \
install-info-am install-man install-strip installcheck \
installcheck-am installdirs maintainer-clean \
maintainer-clean-generic mostlyclean mostlyclean-generic \
uninstall uninstall-am uninstall-dist_lispLISP \
uninstall-info-am
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -0,0 +1,82 @@
;;; autoconf-mode.el --- autoconf code editing commands for Emacs
;; Author: Martin Buchholz (martin@xemacs.org)
;; Maintainer: Martin Buchholz
;; Keywords: languages, faces, m4, configure
;; This file is part of Autoconf
;; Copyright 2001 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
;; 02111-1307, USA.
;; A major mode for editing autoconf input (like configure.in).
;; Derived from m4-mode.el by Andrew Csillag (drew@staff.prodigy.com)
;;; Code:
;;thank god for make-regexp.el!
(defvar autoconf-font-lock-keywords
`(("\\bdnl \\(.*\\)" 1 font-lock-comment-face t)
("\\$[0-9*#@]" . font-lock-variable-name-face)
("\\b\\(m4_\\)?\\(builtin\\|change\\(com\\|quote\\|word\\)\\|d\\(e\\(bug\\(file\\|mode\\)\\|cr\\|f\\(ine\\|n\\)\\)\\|iv\\(ert\\|num\\)\\|nl\\|umpdef\\)\\|e\\(rrprint\\|syscmd\\|val\\)\\|f\\(ile\\|ormat\\)\\|gnu\\|i\\(f\\(def\\|else\\)\\|n\\(c\\(lude\\|r\\)\\|d\\(ex\\|ir\\)\\)\\)\\|l\\(en\\|ine\\)\\|m\\(4\\(exit\\|wrap\\)\\|aketemp\\)\\|p\\(atsubst\\|opdef\\|ushdef\\)\\|regexp\\|s\\(hift\\|include\\|ubstr\\|ys\\(cmd\\|val\\)\\)\\|tra\\(ceo\\(ff\\|n\\)\\|nslit\\)\\|un\\(d\\(efine\\|ivert\\)\\|ix\\)\\)\\b" . font-lock-keyword-face)
("^\\(\\(m4_\\)?define\\|A._DEFUN\\)(\\[?\\([A-Za-z0-9_]+\\)" 3 font-lock-function-name-face)
"default font-lock-keywords")
)
(defvar autoconf-mode-syntax-table nil
"syntax table used in autoconf mode")
(setq autoconf-mode-syntax-table (make-syntax-table))
(modify-syntax-entry ?\" "\"" autoconf-mode-syntax-table)
;;(modify-syntax-entry ?\' "\"" autoconf-mode-syntax-table)
(modify-syntax-entry ?# "<\n" autoconf-mode-syntax-table)
(modify-syntax-entry ?\n ">#" autoconf-mode-syntax-table)
(modify-syntax-entry ?\( "()" autoconf-mode-syntax-table)
(modify-syntax-entry ?\) ")(" autoconf-mode-syntax-table)
(modify-syntax-entry ?\[ "(]" autoconf-mode-syntax-table)
(modify-syntax-entry ?\] ")[" autoconf-mode-syntax-table)
(modify-syntax-entry ?* "." autoconf-mode-syntax-table)
(modify-syntax-entry ?_ "_" autoconf-mode-syntax-table)
(defvar autoconf-mode-map
(let ((map (make-sparse-keymap)))
(define-key map "\C-c\C-c" 'comment-region)
map))
;;;###autoload
(defun autoconf-mode ()
"A major-mode to edit autoconf input files like configure.in
\\{autoconf-mode-map}
"
(interactive)
(kill-all-local-variables)
(use-local-map autoconf-mode-map)
(make-local-variable 'comment-start)
(setq comment-start "dnl")
(make-local-variable 'parse-sexp-ignore-comments)
(setq parse-sexp-ignore-comments t)
(make-local-variable 'font-lock-defaults)
(setq major-mode 'autoconf-mode)
(setq mode-name "Autoconf")
(setq font-lock-defaults `(autoconf-font-lock-keywords nil))
(set-syntax-table autoconf-mode-syntax-table)
(run-hooks 'autoconf-mode-hook))
(provide 'autoconf-mode)
;;; autoconf-mode.el ends here

View File

@ -0,0 +1,84 @@
;;; autotest-mode.el --- autotest code editing commands for Emacs
;; Author: Akim Demaille (akim@freefriends.org)
;; Keywords: languages, faces, m4, Autotest
;; This file is part of Autoconf
;; Copyright 2001 Free Software Foundation, Inc.
;;
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation; either version 2, or (at your option)
;; any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program; if not, write to the Free Software
;; Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
;; 02111-1307, USA.
;;; Commentary:
;; A major mode for editing autotest input (like testsuite.at).
;; Derived from autoconf-mode.el, by Martin Buchholz (martin@xemacs.org).
;;; Code:
(defvar autotest-font-lock-keywords
`(("\\bdnl\\b\\(.*\\)" 1 font-lock-comment-face t)
("\\$[0-9*#@]" . font-lock-variable-name-face)
("^\\(m4_define\\|m4_defun\\)(\\[*\\([A-Za-z0-9_]+\\)" 2 font-lock-function-name-face)
("^AT_SETUP(\\[+\\([^]]+\\)" 1 font-lock-function-name-face)
("^AT_DATA(\\[+\\([^]]+\\)" 1 font-lock-variable-name-face)
("\\b\\(_?m4_[_a-z0-9]*\\|_?A[ST]_[_A-Z0-9]+\\)\\b" . font-lock-keyword-face)
"default font-lock-keywords")
)
(defvar autotest-mode-syntax-table nil
"syntax table used in autotest mode")
(setq autotest-mode-syntax-table (make-syntax-table))
(modify-syntax-entry ?\" "\"" autotest-mode-syntax-table)
;;(modify-syntax-entry ?\' "\"" autotest-mode-syntax-table)
(modify-syntax-entry ?# "<\n" autotest-mode-syntax-table)
(modify-syntax-entry ?\n ">#" autotest-mode-syntax-table)
(modify-syntax-entry ?\( "()" autotest-mode-syntax-table)
(modify-syntax-entry ?\) ")(" autotest-mode-syntax-table)
(modify-syntax-entry ?\[ "(]" autotest-mode-syntax-table)
(modify-syntax-entry ?\] ")[" autotest-mode-syntax-table)
(modify-syntax-entry ?* "." autotest-mode-syntax-table)
(modify-syntax-entry ?_ "_" autotest-mode-syntax-table)
(defvar autotest-mode-map
(let ((map (make-sparse-keymap)))
(define-key map '[(control c) (\;)] 'comment-region)
map))
;;;###autoload
(defun autotest-mode ()
"A major-mode to edit Autotest input files like testsuite.at
\\{autotest-mode-map}
"
(interactive)
(kill-all-local-variables)
(use-local-map autotest-mode-map)
(make-local-variable 'comment-start)
(setq comment-start "# ")
(make-local-variable 'parse-sexp-ignore-comments)
(setq parse-sexp-ignore-comments t)
(make-local-variable 'font-lock-defaults)
(setq major-mode 'autotest-mode)
(setq mode-name "Autotest")
(setq font-lock-defaults `(autotest-font-lock-keywords nil))
(set-syntax-table autotest-mode-syntax-table)
(run-hooks 'autotest-mode-hook))
(provide 'autotest-mode)
;;; autotest-mode.el ends here

54
lib/emacs/elisp-comp Executable file
View File

@ -0,0 +1,54 @@
#!/bin/sh
# Copyright 1995 Free Software Foundation, Inc.
# François Pinard <pinard@iro.umontreal.ca>, 1995.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This script byte-compiles all `.el' files which are part of its
# arguments, using GNU Emacs, and put the resulting `.elc' files into
# the current directory, so disregarding the original directories used
# in `.el' arguments.
#
# This script manages in such a way that all Emacs LISP files to
# be compiled are made visible between themselves, in the event
# they require or load-library one another.
if test $# = 0; then
echo 1>&2 "No files given to $0"
exit 1
else
if test -z "$EMACS" || test "$EMACS" = "t"; then
# Value of "t" means we are running in a shell under Emacs.
# Just assume Emacs is called "emacs".
EMACS=emacs
fi
tempdir=elc.$$
mkdir $tempdir
cp $* $tempdir
cd $tempdir
echo "(setq load-path (cons nil load-path))" > script
$EMACS -batch -q -l script -f batch-byte-compile *.el
mv *.elc ..
cd ..
rm -fr $tempdir
fi

View File

@ -25,6 +25,7 @@ depend.m4 \
init.m4 \
install-sh.m4 \
m4.m4 \
lispdir.m4 \
missing.m4 \
sanity.m4 \
strip.m4

View File

@ -70,6 +70,7 @@ depend.m4 \
init.m4 \
install-sh.m4 \
m4.m4 \
lispdir.m4 \
missing.m4 \
sanity.m4 \
strip.m4

49
m4/lispdir.m4 Normal file
View File

@ -0,0 +1,49 @@
## ------------------------
## Emacs LISP file handling
## From Ulrich Drepper
## Almost entirely rewritten by Alexandre Oliva
## ------------------------
# Copyright 1996, 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# serial 3
AC_DEFUN([AM_PATH_LISPDIR],
[AC_ARG_WITH(lispdir,
[ --with-lispdir Override the default lisp directory ],
[ lispdir="$withval"
AC_MSG_CHECKING([where .elc files should go])
AC_MSG_RESULT([$lispdir])],
[
# If set to t, that means we are running in a shell under Emacs.
# If you have an Emacs named "t", then use the full path.
test x"$EMACS" = xt && EMACS=
AC_CHECK_PROGS(EMACS, emacs xemacs, no)
if test $EMACS != "no"; then
if test x${lispdir+set} != xset; then
AC_CACHE_CHECK([where .elc files should go], [am_cv_lispdir], [dnl
am_cv_lispdir=`$EMACS -batch -q -eval '(while load-path (princ (concat (car load-path) "\n")) (setq load-path (cdr load-path)))' | sed -n -e 's,/$,,' -e '/.*\/lib\/\(x\?emacs\/site-lisp\)$/{s,,${libdir}/\1,;p;q;}' -e '/.*\/share\/\(x\?emacs\/site-lisp\)$/{s,,${datadir}/\1,;p;q;}'`
if test -z "$am_cv_lispdir"; then
am_cv_lispdir='${datadir}/emacs/site-lisp'
fi
])
lispdir="$am_cv_lispdir"
fi
fi
])
AC_SUBST(lispdir)])