1 | # -*- Autoconf -*-
|
---|
2 | # Process this file with autoconf to produce a configure script.
|
---|
3 |
|
---|
4 | # Copyright (C) 1992, 1993, 1994, 1995, 1999, 2000, 2001, 2002, 2003,
|
---|
5 | # 2004, 2005, 2006 Free Software Foundation, Inc.
|
---|
6 |
|
---|
7 | # This program is free software; you can redistribute it and/or modify
|
---|
8 | # it under the terms of the GNU General Public License as published by
|
---|
9 | # the Free Software Foundation; either version 2, or (at your option)
|
---|
10 | # any later version.
|
---|
11 | #
|
---|
12 | # This program is distributed in the hope that it will be useful,
|
---|
13 | # but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
14 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
---|
15 | # GNU General Public License for more details.
|
---|
16 | #
|
---|
17 | # You should have received a copy of the GNU General Public License
|
---|
18 | # along with this program; if not, write to the Free Software
|
---|
19 | # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
---|
20 | # 02110-1301, USA.
|
---|
21 |
|
---|
22 | # We need AC_CONFIG_TESTDIR.
|
---|
23 | AC_PREREQ([2.59])
|
---|
24 |
|
---|
25 | AC_INIT([GNU Autoconf], [2.61], [bug-autoconf@gnu.org])
|
---|
26 | AC_SUBST([PACKAGE_NAME])dnl
|
---|
27 | AC_CONFIG_SRCDIR([ChangeLog])
|
---|
28 |
|
---|
29 | AC_CONFIG_AUX_DIR([build-aux])
|
---|
30 |
|
---|
31 | AM_INIT_AUTOMAKE([check-news 1.7.9 dist-bzip2 readme-alpha])
|
---|
32 |
|
---|
33 | # We use `/bin/sh -n script' to check that there are no syntax errors
|
---|
34 | # in the scripts. Although incredible, there are /bin/sh that go into
|
---|
35 | # endless loops with `-n', e.g., SunOS's:
|
---|
36 | #
|
---|
37 | # $ uname -a
|
---|
38 | # SunOS ondine 4.1.3 2 sun4m unknown
|
---|
39 | # $ cat endless.sh
|
---|
40 | # while false
|
---|
41 | # do
|
---|
42 | # :
|
---|
43 | # done
|
---|
44 | # exit 0
|
---|
45 | # $ time sh endless.sh
|
---|
46 | # sh endless.sh 0,02s user 0,03s system 78% cpu 0,064 total
|
---|
47 | # $ time sh -nx endless.sh
|
---|
48 | # ^Csh -nx endless.sh 3,67s user 0,03s system 63% cpu 5,868 total
|
---|
49 | #
|
---|
50 | # Also, some implementations of /bin/sh (e.g., Solaris 8) are soooo slow
|
---|
51 | # that they are unusable on large scripts like our testsuite.
|
---|
52 |
|
---|
53 | # So before using `/bin/sh -n' to check our scripts, we first check
|
---|
54 | # that `/bin/sh -n' is known to not have these problems.
|
---|
55 |
|
---|
56 | AC_CACHE_CHECK([whether /bin/sh -n is known to work], ac_cv_sh_n_works,
|
---|
57 | [if (
|
---|
58 | unset BASH_VERSION ZSH_VERSION
|
---|
59 | /bin/sh -c '
|
---|
60 | test -n "${BASH_VERSION+set}" || # Bash
|
---|
61 | test -n "${KSH_VERSION+set}" || # pdksh
|
---|
62 | test -n "${ZSH_VERSION+set}" || # zsh
|
---|
63 | test -n "${.sh.version}" # ksh93; put this last since its syntax is dodgy
|
---|
64 | '
|
---|
65 | ) 2>/dev/null
|
---|
66 | then ac_cv_sh_n_works=yes
|
---|
67 | else ac_cv_sh_n_works=no
|
---|
68 | fi
|
---|
69 | ])
|
---|
70 | AC_SUBST(ac_cv_sh_n_works)
|
---|
71 |
|
---|
72 | # Initialize the test suite.
|
---|
73 | AC_CONFIG_TESTDIR([tests])
|
---|
74 | AC_CONFIG_FILES([tests/Makefile tests/atlocal])
|
---|
75 | AC_PATH_PROG([EXPR], [expr])
|
---|
76 |
|
---|
77 |
|
---|
78 | ## ---- ##
|
---|
79 | ## M4. ##
|
---|
80 | ## ---- ##
|
---|
81 |
|
---|
82 | # We use an absolute name for GNU m4 so even if users have another m4 first in
|
---|
83 | # their path, the installer can configure with a path that has GNU m4
|
---|
84 | # first and get that path embedded in the installed autoconf and
|
---|
85 | # autoheader scripts.
|
---|
86 | AC_PROG_GNU_M4
|
---|
87 | if test x"$ac_cv_prog_gnu_m4" != xyes; then
|
---|
88 | AC_MSG_ERROR([GNU M4 1.4 is required])
|
---|
89 | fi
|
---|
90 |
|
---|
91 | ## ----------- ##
|
---|
92 | ## Man pages. ##
|
---|
93 | ## ----------- ##
|
---|
94 |
|
---|
95 | AC_CONFIG_FILES(man/Makefile)
|
---|
96 | AM_MISSING_PROG(HELP2MAN, help2man)
|
---|
97 |
|
---|
98 |
|
---|
99 | ## ------ ##
|
---|
100 | ## Perl. ##
|
---|
101 | ## ------ ##
|
---|
102 |
|
---|
103 | # We use an absolute name for perl so the #! line in autoscan will work.
|
---|
104 | AC_PATH_PROG([PERL], perl, no)
|
---|
105 | AC_SUBST([PERL])dnl
|
---|
106 | if test "$PERL" = no; then
|
---|
107 | AC_MSG_ERROR([perl is not found])
|
---|
108 | fi
|
---|
109 | $PERL -e 'require 5.005_03;' || {
|
---|
110 | AC_MSG_ERROR([Perl 5.005_03 or better is required])
|
---|
111 | }
|
---|
112 |
|
---|
113 |
|
---|
114 | ## ------- ##
|
---|
115 | ## Emacs. ##
|
---|
116 | ## ------- ##
|
---|
117 |
|
---|
118 | AC_CONFIG_FILES([lib/emacs/Makefile])
|
---|
119 | TEST_EMACS=$EMACS
|
---|
120 | test x"$TEST_EMACS" = xt && TEST_EMACS=
|
---|
121 | AC_CHECK_PROGS([TEST_EMACS], [emacs xemacs], [no])
|
---|
122 |
|
---|
123 | # autoconf-mode.el and autotest-mode.el do not work with older version of
|
---|
124 | # Emacs (i.e. 18.x.x). During byte-compilation, Emacs complains:
|
---|
125 | # "Variable (broken nil) seen on pass 2 of byte compiler but not pass 1"
|
---|
126 | # We detect this problem here.
|
---|
127 | AS_IF([test "$TEST_EMACS" != no],
|
---|
128 | [AC_CACHE_CHECK([whether $TEST_EMACS is sufficiently recent],
|
---|
129 | [ac_cv_prog_emacs_ok],
|
---|
130 | [# Note: The quoted "EOF" is intentional. It protects the ` in the text.
|
---|
131 | cat >conftest.el << "EOF"
|
---|
132 | (defvar broken)
|
---|
133 | (defun broken-mode () (setq broken-defaults `(broken nil)))
|
---|
134 | EOF
|
---|
135 | AS_IF([AC_RUN_LOG(
|
---|
136 | [$TEST_EMACS -batch -q -f batch-byte-compile conftest.el 1>&2])],
|
---|
137 | [ac_cv_prog_emacs_ok=yes], [ac_cv_prog_emacs_ok=no])
|
---|
138 | rm -f conftest.el conftest.elc])
|
---|
139 | AS_IF([test $ac_cv_prog_emacs_ok = no], [TEST_EMACS=no])])
|
---|
140 |
|
---|
141 | AC_SUBST([EMACS], [$TEST_EMACS])
|
---|
142 |
|
---|
143 | AM_PATH_LISPDIR
|
---|
144 |
|
---|
145 |
|
---|
146 | ## ------------ ##
|
---|
147 | ## Grep & sed. ##
|
---|
148 | ## ------------ ##
|
---|
149 | AC_PROG_GREP
|
---|
150 | AC_PROG_EGREP
|
---|
151 | AC_PROG_SED
|
---|
152 |
|
---|
153 |
|
---|
154 | ## ------------ ##
|
---|
155 | ## Conclusion. ##
|
---|
156 | ## ------------ ##
|
---|
157 |
|
---|
158 | AC_CONFIG_FILES([Makefile doc/Makefile
|
---|
159 | lib/Makefile lib/Autom4te/Makefile lib/autoscan/Makefile
|
---|
160 | lib/m4sugar/Makefile
|
---|
161 | lib/autoconf/Makefile lib/autotest/Makefile
|
---|
162 | bin/Makefile])
|
---|
163 |
|
---|
164 | AC_OUTPUT
|
---|
165 | # Report the state of this version of Autoconf if this is a beta.
|
---|
166 | m4_bmatch(m4_defn([AC_PACKAGE_VERSION]), [[a-z]],
|
---|
167 | [ cat <<EOF
|
---|
168 |
|
---|
169 | You are about to use an experimental version of Autoconf. Be sure to
|
---|
170 | read the relevant mailing lists, most importantly <autoconf@gnu.org>.
|
---|
171 |
|
---|
172 | Below you will find information on the status of this version of Autoconf.
|
---|
173 |
|
---|
174 |
|
---|
175 | EOF
|
---|
176 | sed -n '/^\* Status/,$p' $srcdir/BUGS
|
---|
177 | ])
|
---|