* automake.in (parse_arguments): Diagnose empty arguments, options
[automake.git] / configure.ac
blob2ee14103d882bbad97a14c1784587273a5103361
1 # Process this file with autoconf to produce a configure script.
3 # Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
4 # Free Software Foundation, Inc.
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2, or (at your option)
9 # any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
19 # 02111-1307, USA.
21 dnl Require Autoconf 2.59a for AC_REQUIRE_AUX_FILE.
22 AC_PREREQ(2.59a)
23 AC_INIT([GNU Automake], [1.9a], [bug-automake@gnu.org])
25 AC_CONFIG_SRCDIR(automake.in)
26 AC_CONFIG_AUX_DIR(lib)
28 AC_CANONICAL_BUILD
30 # Save the AUTOCONF setting before AM_INIT_AUTOMAKE overrides it; this
31 # way we can run Autoconf tests from configure (or from the test
32 # suite) without being bothered by `missing'.
33 AC_SUBST([am_AUTOCONF], ["${AUTOCONF-autoconf}"])
35 AM_INIT_AUTOMAKE([1.8a dist-bzip2 filename-length-max=99])
37 # The API version is the base version.  We must guarantee
38 # compatibility for all releases with the same API version.
39 # Our current rule is that:
40 # * All releases, including the prereleases, in an X.Y series
41 #   are compatible.  So 1.5.1c is compatible with 1.5.
42 # * Prereleases on the trunk are all incompatible -- 1.5b and 1.5c
43 #   aren't the same.
44 APIVERSION=`echo "$VERSION" | sed -e 's/^\([[0-9]]*\.[[0-9]]*[[a-z]]*\).*$/\1/'`
45 AC_SUBST(APIVERSION)
47 # A versioned directory, defined here for convenience.
48 AC_SUBST([pkgvdatadir], ["\${datadir}/$PACKAGE-$APIVERSION"])
50 # $AUTOMAKE and $ACLOCAL are always run after a `cd $top_srcdir',
51 # hence `.' is really what we want for perllibdir, libdir, and acdir.
52 ACLOCAL="perllibdir=`pwd`\"/lib$PATH_SEPARATOR./lib\" `pwd`/aclocal --acdir=m4"
53 AUTOMAKE="perllibdir=`pwd`\"/lib$PATH_SEPARATOR./lib\" `pwd`/automake --libdir=lib"
55 AC_PATH_PROG(PERL, perl)
56 if test -z "$PERL"; then
57    AC_MSG_ERROR([perl not found])
59 $PERL -e 'require 5.006;' || {
60    AC_MSG_ERROR(
61 [perl 5.6 or better is required.  If you have several perl
62 versions installed, select the one Automake should use using
63   ./configure PERL=/path/to/perl])
66 # The test suite will skip some tests if tex is absent.
67 AC_CHECK_PROG([TEX], [tex], [tex])
69 # Test for Autoconf.  We run Autoconf in a subdirectory to ease
70 # deletion of any files created (such as those added to
71 # autom4te.cache).  We used to perform only the last of the three
72 # following tests, but some users were unable to figure out that their
73 # installation was broken since --version appeared to work.
75 AC_CACHE_CHECK([whether autoconf is installed], [am_cv_autoconf_installed],
76 [if AM_RUN_LOG([eval $am_AUTOCONF --version]);
77 then
78   am_cv_autoconf_installed=yes
79 else
80   am_cv_autoconf_installed=no
81 fi])
82 if test "$am_cv_autoconf_installed" = no; then
83   AC_MSG_ERROR([Autoconf 2.58 or better is required.
84     Please make sure it is installed and in your PATH.])
87 AC_CACHE_CHECK([whether autoconf works], [am_cv_autoconf_works],
88 [mkdir conftest
89 echo 'AC''_INIT' > conftest/conftest.ac
90 if AM_RUN_LOG([cd conftest && eval $am_AUTOCONF -o /dev/null conftest.ac]);
91 then
92   am_cv_autoconf_works=yes
93 else
94   am_cv_autoconf_works=no
96 rm -rf conftest])
97 if test "$am_cv_autoconf_works" = no; then
98   AC_MSG_ERROR([The installed version of autoconf does not work.
99     Please check config.log for error messages before this one.])
102 AC_CACHE_CHECK([whether autoconf is recent enough], [am_cv_autoconf_version],
103 [mkdir conftest
104 echo 'AC''_PREREQ(2.58)' > conftest/conftest.ac
105 if AM_RUN_LOG([cd conftest && eval $am_AUTOCONF -o /dev/null conftest.ac]);
106 then
107   am_cv_autoconf_version=yes
108 else
109   am_cv_autoconf_version=no
111 rm -rf conftest])
112 if test "$am_cv_autoconf_version" = no; then
113   AC_MSG_ERROR([Autoconf 2.58 or better is required.])
116 # Test for ln.  We need use it to install the versioned binaries.
117 AC_MSG_CHECKING([whether ln works])
118 AC_CACHE_VAL([am_cv_prog_ln], [
119 rm -f conftest conftest.file
120 : >conftest.file
121 if ln conftest.file conftest 2>/dev/null; then
122   am_cv_prog_ln=ln
123 else
124   am_cv_prog_ln='cp -p'
126 rm -f conftest conftest.file])
127 AC_SUBST([LN], [$am_cv_prog_ln])
128 result=no
129 test "x$am_cv_prog_ln" = xln && result=yes
130 AC_MSG_RESULT([$result])
132 # The amount we should wait after modifying files depends on the platform.
133 # On Windows '95, '98 and ME, files modifications have 2-seconds
134 # granularity and can be up to 3 seconds in the future w.r.t. the
135 # system clock.  When it is important to ensure one file is older
136 # than another we wait at least 5 seconds between creations.
137 case $build in
138   *-pc-msdosdjgpp) MODIFICATION_DELAY=5;;
139   *)               MODIFICATION_DELAY=2;;
140 esac
141 AC_SUBST([MODIFICATION_DELAY])
143 # Test for things needed by the test suite.
144 AC_PROG_EGREP
145 AC_PROG_FGREP
147 AC_CONFIG_FILES([
148   Makefile
149   doc/Makefile
150   lib/Automake/Makefile
151   lib/Automake/tests/Makefile
152   lib/Makefile
153   lib/am/Makefile
154   m4/Makefile
155   tests/Makefile
156   tests/defs
158 AC_CONFIG_FILES([tests/aclocal-${APIVERSION}:tests/aclocal.in],
159                 [chmod +x tests/aclocal-${APIVERSION}],
160                 [APIVERSION=$APIVERSION])
161 AC_CONFIG_FILES([tests/automake-${APIVERSION}:tests/automake.in],
162                 [chmod +x tests/automake-${APIVERSION}])
164 AC_OUTPUT