Rename configure.in to configure.ac.

Fixes: debbugs:11603
This commit is contained in:
Paul Eggert 2012-07-08 21:52:49 -07:00
parent f1f924b619
commit c4444d16dc
26 changed files with 87 additions and 45 deletions

View file

@ -1,3 +1,15 @@
2012-07-09 Paul Eggert <eggert@cs.ucla.edu>
Rename configure.in to configure.ac (Bug#11603).
The name 'configure.in' has been obsolescent for quite some time,
and the next release of Autoconf will generate warnings for it.
* configure.ac: Rename from configure.in.
* INSTALL, INSTALL.BZR, README, make-dist:
* Makefile.in (AUTOCONF_INPUTS):
* autogen.sh (autoconf_min):
* autogen/update_autogen (sources):
Adjust to reflect new name.
2012-07-08 Paul Eggert <eggert@cs.ucla.edu>
Restore deprecation warnings, except for older libpng.

View file

@ -683,9 +683,9 @@ changing the s/*.h and m/*.h files.
corresponding `Makefile.in' files. This isn't so hard, just a matter
of editing in appropriate substitutions for the @...@ constructs.
The `configure' script is built from `configure.in' by the `autoconf'
The `configure' script is built from `configure.ac' by the `autoconf'
program. You need at least the version of autoconf specified in the
AC_PREREQ(...) command to rebuild `configure' from `configure.in'.
AC_PREREQ(...) command to rebuild `configure' from `configure.ac'.
BUILDING GNU EMACS BY HAND

View file

@ -8,7 +8,7 @@ Building Emacs from Bazaar requires some tools that are not needed
when building from a release. You will need:
autoconf - at least the version specified near the start of
configure.in (in the AC_PREREQ command).
configure.ac (in the AC_PREREQ command).
automake - we recommend at least version 1.11.
makeinfo - not strictly necessary, but highly recommended, so that
you can build the manuals.

View file

@ -281,7 +281,7 @@ all: ${SUBDIR}
removenullpaths=sed -e 's/^://g' -e 's/:$$//g' -e 's/::/:/g'
# Generate epaths.h from epaths.in. This target is invoked by `configure'.
# See comments in configure.in for why it is done this way, as opposed
# See comments in configure.ac for why it is done this way, as opposed
# to just letting configure generate epaths.h from epaths.in in a
# similar way to how Makefile is made from Makefile.in.
epaths-force: FRC
@ -364,7 +364,7 @@ config.status: ${srcdir}/configure ${srcdir}/lisp/version.el
./configure $(CONFIGURE_FLAGS); \
fi
AUTOCONF_INPUTS = $(srcdir)/configure.in $(srcdir)/aclocal.m4
AUTOCONF_INPUTS = $(srcdir)/configure.ac $(srcdir)/aclocal.m4
$(srcdir)/configure: $(AUTOCONF_INPUTS)
cd ${srcdir} && autoconf

6
README
View file

@ -37,12 +37,12 @@ oddities of your processor and operating system. It creates the file
process of building and installing Emacs. See INSTALL for more
detailed information.
The file `configure.in' is the input used by the autoconf program to
The file `configure.ac' is the input used by the autoconf program to
construct the `configure' script. Since Emacs has some configuration
requirements that autoconf can't meet directly, and for historical
reasons, `configure.in' uses an unholy marriage of custom-baked
reasons, `configure.ac' uses an unholy marriage of custom-baked
configuration code and autoconf macros. If you want to rebuild
`configure' from `configure.in', you will need to install a recent
`configure' from `configure.ac', you will need to install a recent
version of autoconf and GNU m4.
The file `Makefile.in' is a template used by `configure' to create

View file

@ -1,3 +1,10 @@
2012-07-09 Paul Eggert <eggert@cs.ucla.edu>
Rename configure.in to configure.ac (Bug#11603).
* admin.el (set-version):
* quick-install-emacs (VERSION):
Get version number from configure.ac, not configure.in.
2012-07-06 Paul Eggert <eggert@cs.ucla.edu>
Use c_strcasecmp for ASCII case-insensitive comparison (Bug#11786).

View file

@ -62,7 +62,7 @@ Root must be the root of an Emacs source tree."
(set-version-in-file root "README" version
(rx (and "version" (1+ space)
(submatch (1+ (in "0-9."))))))
(set-version-in-file root "configure.in" version
(set-version-in-file root "configure.ac" version
(rx (and "AC_INIT" (1+ (not (in ?,)))
?, (0+ space)
(submatch (1+ (in "0-9."))))))

View file

@ -171,9 +171,9 @@ test x"$prefix" = x && { prefix="`get_config_var prefix`" || exit 4 ; }
test x"$ARCH" = x && { ARCH="`get_config_var host`" || exit 4 ; }
VERSION=`
sed -n 's/^AC_INIT(emacs,[ ]*\([^ )]*\).*/\1/p' <$SRC/configure.in
sed -n 's/^AC_INIT(emacs,[ ]*\([^ )]*\).*/\1/p' <$SRC/configure.ac
` || exit 4
test -n "$VERSION" || { echo >&2 "$me: no version in configure.in"; exit 4; }
test -n "$VERSION" || { echo >&2 "$me: no version in configure.ac"; exit 4; }
DST_SHARE="$prefix/share/emacs/$VERSION"
DST_BIN="$prefix/bin"

View file

@ -34,7 +34,7 @@
progs="autoconf automake"
## Minimum versions we need:
autoconf_min=`sed -n 's/^ *AC_PREREQ(\([0-9\.]*\)).*/\1/p' configure.in`
autoconf_min=`sed -n 's/^ *AC_PREREQ(\([0-9\.]*\)).*/\1/p' configure.ac`
## FIXME how to determine this from the sources?
automake_min=1.11

View file

@ -3,7 +3,7 @@
## Helper script for those building Emacs from bzr without autoconf etc.
## This installs some pre-generated versions of the automatically
## generated files. It is highly recommended to install the necessary
## tools instead of using this. Note that if eg configure.in
## tools instead of using this. Note that if eg configure.ac
## is updated, the next time you run make it will attempt to
## regenerate configure and will fail if you do not have the required
## tools. You will have to run this script again.

View file

@ -79,7 +79,7 @@ lboot_flag=
## Parameters.
ldefs_in=lisp/loaddefs.el
ldefs_out=lisp/ldefs-boot.el
sources="configure.in lib/Makefile.am"
sources="configure.ac lib/Makefile.am"
genfiles="
configure aclocal.m4 src/config.in lib/Makefile.in
build-aux/compile build-aux/config.guess build-aux/config.sub

View file

@ -3820,5 +3820,3 @@ fi
])
AC_OUTPUT
dnl configure.in ends here

View file

@ -1,3 +1,9 @@
2012-07-09 Paul Eggert <eggert@cs.ucla.edu>
Rename configure.in to configure.ac (Bug#11603).
* ede.texi (Compiler and Linker objects, ede-proj-project)
(ede-step-project): Prefer the name configure.ac to configure.in.
2012-07-06 Michael Albinus <michael.albinus@gmx.de>
* tramp.texi (Multi-hops): Introduce

View file

@ -790,7 +790,7 @@ compilers that will be inserted into the Makefile.
Compiler instantiations must also insert variables specifying the
compiler it plans to use, in addition to creating Automake settings for
@file{configure.in} when appropriate.
@file{configure.ac} when appropriate.
Compiler objects are stored in the target objects as a list of
symbols, where the symbols value is the object. This enables the
@ -1557,7 +1557,7 @@ For project @var{THIS}, test that the file @var{FILE} exists, or create it.
@deffn Method ede-proj-setup-buildenvironment :AFTER this &optional force
Setup the build environment for project @var{THIS}.
Handles the Makefile, or a Makefile.am configure.in combination.
Handles the Makefile, or a Makefile.am configure.ac combination.
Optional argument @var{FORCE} will force items to be regenerated.
@end deffn
@ -1567,7 +1567,7 @@ These are removed with make clean.
@end deffn
@deffn Method ede-proj-configure-synchronize :AFTER this
Synchronize what we know about project @var{THIS} into configure.in.
Synchronize what we know about project @var{THIS} into configure.ac.
@end deffn
@deffn Method ede-proj-makefile-insert-variables-new :AFTER this
@ -1603,7 +1603,7 @@ Return the name of the Makefile with the DIST target in it for @var{THIS}.
@end deffn
@deffn Method ede-proj-configure-file :AFTER this
The configure.in script used by project @var{THIS}.
The configure.ac script used by project @var{THIS}.
@end deffn
@deffn Method ede-commit-project :AFTER proj
@ -1767,7 +1767,7 @@ Create a Makefile for all Makefile targets in @var{THIS} if needed.
@deffn Method ede-proj-setup-buildenvironment :AFTER this &optional force
Setup the build environment for project @var{THIS}.
Handles the Makefile, or a Makefile.am configure.in combination.
Handles the Makefile, or a Makefile.am configure.ac combination.
Optional argument @var{FORCE} will force items to be regenerated.
@end deffn

View file

@ -30,7 +30,7 @@ comments when you write it (sometime in 2198 as I recall).
P.S. You'll be pleased to know that since (time-forward N) still works
for N >= 0, we've used it to pre-emptively update configure.in.
for N >= 0, we've used it to pre-emptively update configure.ac.
Emacs now configures and builds on every platform that will ever
be made. It wasn't easy, but at least that's one problem out of
the way for good. If you'd like the patch, just ask.

View file

@ -1,3 +1,10 @@
2012-07-09 Paul Eggert <eggert@cs.ucla.edu>
Rename configure.in to configure.ac (Bug#11603).
* emacs-lisp/authors.el (authors-canonical-file-name):
* progmodes/autoconf.el (autoconf-mode):
Prefer configure.ac to configure.in.
2012-07-08 Chong Yidong <cyd@gnu.org>
* mouse.el (mouse-drag-line): Rewrite the track-mouse loop.

View file

@ -1,3 +1,13 @@
2012-07-09 Paul Eggert <eggert@cs.ucla.edu>
Rename configure.in to configure.ac (Bug#11603).
* ede/autoconf-edit.el (autoconf-find-query-for-program)
(autoconf-new-program):
* ede/emacs.el (ede-emacs-version):
* ede/proj.el (ede-proj-setup-buildenvironment):
* ede/project-am.el (project-am-autoconf-file-options):
Prefer configure.ac to configure.in.
2012-03-12 David Engster <deng@randomsample.de>
* semantic/db-find.el

View file

@ -31,7 +31,7 @@
(declare-function ede-srecode-insert "ede/srecode")
(defun autoconf-new-program (rootdir program testfile)
"Initialize a new configure.in in ROOTDIR for PROGRAM using TESTFILE.
"Initialize a new configure.ac in ROOTDIR for PROGRAM using TESTFILE.
ROOTDIR is the root directory of a given autoconf controlled project.
PROGRAM is the program to be configured.
TESTFILE is the file used with AC_INIT.
@ -325,7 +325,7 @@ Optional argument PARAM is the parameter to pass to the macro as one string."
"Position the cursor where PROG is queried.
PROG is the VARIABLE to use in autoconf to identify the program.
PROG excludes the _PROG suffix. Thus if PROG were EMACS, then the
variable in configure.in would be EMACS_PROG."
variable in configure.ac would be EMACS_PROG."
(let ((op (point))
(found t)
(builtin (assoc prog autoconf-program-builtin)))

View file

@ -74,13 +74,16 @@ DIR is the directory to search from."
"Find the Emacs version for the Emacs src in DIR.
Return a tuple of ( EMACSNAME . VERSION )."
(let ((buff (get-buffer-create " *emacs-query*"))
(configure_ac "configure.ac")
(emacs "Emacs")
(ver ""))
(with-current-buffer buff
(erase-buffer)
(setq default-directory (file-name-as-directory dir))
(or (file-exists-p configure_ac)
(setq configure_ac "configure.in"))
;(call-process "egrep" nil buff nil "-n" "-e" "^version=" "Makefile")
(call-process "egrep" nil buff nil "-n" "-e" "AC_INIT" "configure.in")
(call-process "egrep" nil buff nil "-n" "-e" "AC_INIT" configure_ac)
(goto-char (point-min))
;(re-search-forward "version=\\([0-9.]+\\)")
(cond
@ -100,7 +103,7 @@ emacs_beta_version=\\([0-9]+\\)")
;; Vaguely recent version of GNU Emacs?
(t
(insert-file-contents "configure.in")
(insert-file-contents configure_ac)
(goto-char (point-min))
(re-search-forward "AC_INIT(emacs,\\s-*\\([0-9.]+\\)\\s-*)")
(setq ver (match-string 1))

View file

@ -642,7 +642,7 @@ MFILENAME is the makefile to generate."
(defmethod ede-proj-setup-buildenvironment ((this ede-proj-project)
&optional force)
"Setup the build environment for project THIS.
Handles the Makefile, or a Makefile.am configure.in combination.
Handles the Makefile, or a Makefile.am configure.ac combination.
Optional argument FORCE will force items to be regenerated."
(if (not force)
(ede-proj-makefile-create-maybe this (ede-proj-dist-makefile this))

View file

@ -896,10 +896,10 @@ files in the project."
out))
;;; Configure.in queries.
;;; Configure.am queries.
;;
(defvar project-am-autoconf-file-options
'("configure.in" "configure.ac")
'("configure.ac" "configure.in")
"List of possible configure files to look in for project info.")
(defun project-am-autoconf-file (dir)
@ -948,7 +948,7 @@ Kill the Configure buffer if it was not already in a buffer."
(configfiles nil)
)
(cond
;; Try configure.in or configure.ac
;; Try configure.ac or configure.in
(conf-in
(project-am-with-config-current conf-in
(let ((aci (autoconf-parameters-for-macro "AC_INIT"))

View file

@ -702,7 +702,7 @@ or is on the list of removed files. Returns the non-directory part of
the file name. Only uses the LOG-FILE position POS and associated AUTHOR
to print a message if FILE is not found."
;; FILE should be re-checked in every different directory associated
;; with a LOG-FILE. Eg configure.in from src/ChangeLog is not the
;; with a LOG-FILE. Eg configure.ac from src/ChangeLog is not the
;; same as that from top-level/ChangeLog.
(let* ((fullname (expand-file-name file (file-name-directory log-file)))
(entry (assoc fullname authors-checked-files-alist))

View file

@ -732,7 +732,7 @@ Return nil if there is nothing appropriate in the buffer near point."
:parse-rule "\\$[^({]\\|\\.[_A-Z]*\\|[_a-zA-Z0-9-]+\\|##\\|\\+="
:doc-spec '(
;; "(automake)Macro Index" is autoconf macros used in
;; configure.in, not Makefile.am, so don't have that here.
;; configure.ac, not Makefile.am, so don't have that here.
("(automake)Variable Index" nil "^[ \t]*`" "'")
;; In automake 1.4 macros and variables were a combined node.
("(automake)Macro and Variable Index" nil "^[ \t]*`" "'")

View file

@ -1,4 +1,4 @@
;;; autoconf.el --- mode for editing Autoconf configure.in files
;;; autoconf.el --- mode for editing Autoconf configure.ac files
;; Copyright (C) 2000-2012 Free Software Foundation, Inc.
@ -23,15 +23,15 @@
;;; Commentary:
;; Provides fairly minimal font-lock, imenu and indentation support
;; for editing configure.in files. Only Autoconf syntax is processed.
;; for editing configure.ac files. Only Autoconf syntax is processed.
;; There is no attempt to deal with shell text -- probably that will
;; always lose.
;; This is specialized for configure.in files. It doesn't inherit the
;; This is specialized for configure.ac files. It doesn't inherit the
;; general M4 stuff from M4 mode.
;; There is also an autoconf-mode.el in existence. That appears to be
;; for editing the Autoconf M4 source, rather than configure.in files.
;; for editing the Autoconf M4 source, rather than configure.ac files.
;;; Code:
@ -49,7 +49,7 @@
`(("\\_<A[CHMS]_\\sw+" . font-lock-keyword-face)
(,autoconf-definition-regexp
3 font-lock-function-name-face)
;; Are any other M4 keywords really appropriate for configure.in,
;; Are any other M4 keywords really appropriate for configure.ac,
;; given that we do `dnl'?
("changequote" . font-lock-keyword-face)))
@ -78,7 +78,7 @@ searching backwards at another AC_... command."
;;;###autoload
(define-derived-mode autoconf-mode prog-mode "Autoconf"
"Major mode for editing Autoconf configure.in files."
"Major mode for editing Autoconf configure.ac files."
(set (make-local-variable 'parens-require-spaces) nil) ; for M4 arg lists
(set (make-local-variable 'defun-prompt-regexp)
"^[ \t]*A[CM]_\\(\\sw\\|\\s_\\)+")

View file

@ -147,7 +147,7 @@ fi
### Find out which version of Emacs this is.
version=`
sed -n 's/^AC_INIT(emacs,[ ]*\([^ )]*\).*/\1/p' <configure.in
sed -n 's/^AC_INIT(emacs,[ ]*\([^ )]*\).*/\1/p' <configure.ac
` || version=
if [ ! "${version}" ]; then
echo "${progname}: can't find current Emacs version in \`./src/emacs.c'" >&2
@ -230,13 +230,13 @@ fi
if [ $update = yes ]; then
## Make sure configure is newer than configure.in, etc.
## Make sure configure is newer than configure.ac, etc.
## It is better to let autoreconf do what is needed than
## for us to try and duplicate all its checks.
echo "Running autoreconf"
autoreconf -i -I m4 || { x=$?; echo Autoreconf FAILED! >&2; exit $x; }
## Make sure src/stamp-h.in is newer than configure.in.
## Make sure src/stamp-h.in is newer than configure.ac.
rm -f src/stamp-h.in
echo timestamp > src/stamp-h.in
@ -273,7 +273,7 @@ mkdir ${tempdir}
### README while the rest of the tar file is still unpacking. Whoopee.
echo "Making links to top-level files"
ln INSTALL README BUGS ${tempdir}
ln ChangeLog Makefile.in configure configure.in ${tempdir}
ln ChangeLog Makefile.in configure configure.ac ${tempdir}
ln config.bat make-dist .dir-locals.el ${tempdir}
ln aclocal.m4 ${tempdir}

View file

@ -94,14 +94,13 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* ============================================================ */
/* After adding support for a new system, modify the large case
statement in configure.in to recognize reasonable
statement in configure.ac to recognize reasonable
configuration names, and add a description of the system to
`etc/MACHINES'.
Check for any tests of $opsys in configure.in, and add an entry
Check for any tests of $opsys in configure.ac, and add an entry
for the new system if needed.
If you've just fixed a problem in an existing configuration file,
you should also check `etc/MACHINES' to make sure its descriptions
of known problems in that configuration should be updated. */