Merge branch 'maint'
[platform/upstream/automake.git] / configure.ac
1 # Process this file with autoconf to produce a configure script.
2
3 # Copyright (C) 1995-2012 Free Software Foundation, Inc.
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2, or (at your option)
8 # any later version.
9 #
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 # GNU General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
17
18 AC_PREREQ([2.69])
19 AC_INIT([GNU Automake], [1.12a], [bug-automake@gnu.org])
20
21 AC_CONFIG_SRCDIR([automake.in])
22 AC_CONFIG_AUX_DIR([lib])
23
24 AM_SILENT_RULES([yes])
25
26 AC_CANONICAL_HOST
27 AC_CANONICAL_BUILD
28
29 # Save the AUTOCONF setting before AM_INIT_AUTOMAKE overrides it; this
30 # way we can run Autoconf tests from configure (or from the test
31 # suite) without being bothered by 'missing'.  Likewise for autom4te,
32 # autoreconf, autoheader, and autoupdate.
33 AC_SUBST([am_AUTOCONF], ["${AUTOCONF-autoconf}"])
34 AC_SUBST([am_AUTOM4TE], ["${AUTOM4TE-autom4te}"])
35 AC_SUBST([am_AUTORECONF], ["${AUTORECONF-autoreconf}"])
36 AC_SUBST([am_AUTOHEADER], ["${AUTOHEADER-autoheader}"])
37 AC_SUBST([am_AUTOUPDATE], ["${AUTOUPDATE-autoupdate}"])
38
39 dnl We call AC_PROG_CC in an unusual way, and only for use in our
40 dnl testsuite, so also use 'no-dependencies' and 'no-define' among
41 dnl the automake options to avoid bloating and potential problems.
42 AM_INIT_AUTOMAKE([dist-xz filename-length-max=99 color-tests
43                   no-define no-dependencies])
44
45 ## Keep this on a line of its own, since it must be found and processed
46 ## by the 'update-copyright' rule in our Makefile.
47 RELEASE_YEAR=2012
48 AC_SUBST([RELEASE_YEAR])
49
50 # The API version is the base version.  We must guarantee
51 # compatibility for all releases with the same API version.
52 # Our current rule is that:
53 # * All releases, including the prereleases, in an X.Y series
54 #   are compatible.  So 1.5.1c is compatible with 1.5.
55 # * Prereleases on the trunk are all incompatible -- 1.5b and 1.5c
56 #   aren't the same.
57 APIVERSION=`echo "$VERSION" | sed -e 's/^\([[0-9]]*\.[[0-9]]*[[a-z]]*\).*$/\1/'`
58 AC_SUBST([APIVERSION])
59
60 AC_SUBST([pkgvdatadir], ["\${datadir}/$PACKAGE-$APIVERSION"])
61 AC_SUBST([scriptdir], ["\${pkgvdatadir}"])
62 AC_SUBST([amdir], ["\${pkgvdatadir}/am"])
63 AC_SUBST([automake_acdir], ["\${datadir}/aclocal-$APIVERSION"])
64 AC_SUBST([system_acdir], ["\${datadir}/aclocal"])
65
66 # $AUTOMAKE and $ACLOCAL are always run after a "cd $top_srcdir",
67 # hence '.' is really what we want for perllibdir, libdir, and acdir.
68 # Use '-I' with aclocal so that our own *.m4 files in m4/ gets included,
69 # not copied, in aclocal.m4.
70 ACLOCAL="\
71   perllibdir=\"`pwd`/lib$PATH_SEPARATOR./lib\" \"`pwd`/aclocal\" \
72   --automake-acdir=m4 --system-acdir=m4/acdir -I m4"
73 AUTOMAKE="\
74   perllibdir=\"`pwd`/lib$PATH_SEPARATOR./lib\" \"`pwd`/automake\" \
75   --libdir=lib"
76
77 AC_PATH_PROG([PERL], [perl])
78 if test -z "$PERL"; then
79    AC_MSG_ERROR([perl not found])
80 fi
81 # Save details about the selected perl interpreter in config.log.
82 AM_RUN_LOG([$PERL --version])
83 $PERL -e 'require 5.006;' || {
84    AC_MSG_ERROR(
85 [perl 5.6 or better is required; perl 5.8.2 or better
86 is recommended.  If you have several perl versions
87 installed, select the one Automake should use using
88   ./configure PERL=/path/to/perl])
89 }
90
91 # We require ithreads support, and version 5.7.2 for CLONE.
92 AC_CACHE_CHECK([whether $PERL supports ithreads], [am_cv_prog_PERL_ithreads],
93 [if $PERL -e '
94     require 5.007_002;
95     use Config;
96     if ($Config{useithreads})
97       {
98         require threads;
99         import threads;
100         require Thread::Queue;
101         import Thread::Queue;
102         exit 0;
103       }
104     exit 1;' >&AS_MESSAGE_LOG_FD 2>&1
105 then
106   am_cv_prog_PERL_ithreads=yes
107 else
108   am_cv_prog_PERL_ithreads=no
109 fi])
110 if test $am_cv_prog_PERL_ithreads = yes; then
111   PERL_THREADS=1;
112 else
113   PERL_THREADS=0;
114 fi
115 AC_SUBST([PERL_THREADS])
116
117 # The test suite will skip some tests if tex is absent.
118 AC_CHECK_PROG([TEX], [tex], [tex])
119 # Save details about the selected TeX program in config.log.
120 # Redirect input from /dev/null, as TeX might otherwise hang waiting
121 # for input from the terminal.
122 AM_RUN_LOG([$TEX --version </dev/null])
123
124 # The test suite will skip some tests if no lex or yacc program is
125 # available.
126 # We don't use AC_PROG_LEX nor AC_PROG_YACC here because:
127 #  1. we don't want flex (resp. bison) to be preferred to system lex
128 #     (resp. system yacc);
129 #  2. we don't want $LEX (resp. $YACC) to be defined to ':' (resp. 'yacc')
130 #     by default;
131 #  3. we prefer not to have the variables YFLAGS, LEX_OUTPUT_ROOT and
132 #     LEXLIB to be calculated and/or AC_SUBST'd;
133 #  4. we prefer that the YACC and LEX variables are not reported in the
134 #     configure help screen.
135 AC_CHECK_PROGS([YACC], [yacc byacc 'bison -y'], [false])
136 AC_CHECK_PROGS([LEX], [lex flex], [false])
137
138 # Test for Autoconf.  We run Autoconf in a subdirectory to ease
139 # deletion of any files created (such as those added to
140 # autom4te.cache).  We used to perform only the last of the three
141 # following tests, but some users were unable to figure out that their
142 # installation was broken since --version appeared to work.
143
144 required_autoconf_version=2.65
145 AC_CACHE_CHECK([whether autoconf is installed], [am_cv_autoconf_installed],
146 [if AM_RUN_LOG([$am_AUTOCONF --version]);
147 then
148   am_cv_autoconf_installed=yes
149 else
150   am_cv_autoconf_installed=no
151 fi])
152 if test "$am_cv_autoconf_installed" = no; then
153   AC_MSG_ERROR([Autoconf $required_autoconf_version or better is required.
154     Please make sure it is installed and in your PATH.])
155 fi
156
157 AC_CACHE_CHECK([whether autoconf works], [am_cv_autoconf_works],
158 [mkdir conftest
159 echo 'AC''_INIT' > conftest/conftest.ac
160 if AM_RUN_LOG([cd conftest && $am_AUTOCONF -o /dev/null conftest.ac]);
161 then
162   am_cv_autoconf_works=yes
163 else
164   am_cv_autoconf_works=no
165 fi
166 rm -rf conftest])
167 if test "$am_cv_autoconf_works" = no; then
168   AC_MSG_ERROR([The installed version of autoconf does not work.
169     Please check config.log for error messages before this one.])
170 fi
171
172 AC_CACHE_CHECK([whether autoconf is recent enough], [am_cv_autoconf_version],
173 [mkdir conftest
174 dnl Creative quoting required to avoid spurious expansion of AC_PREREQ macro
175 echo 'AC'"_PREREQ([[$required_autoconf_version]])" > conftest/conftest.ac
176 if AM_RUN_LOG([cd conftest && $am_AUTOCONF -o /dev/null conftest.ac]);
177 then
178   am_cv_autoconf_version=yes
179 else
180   am_cv_autoconf_version=no
181 fi
182 rm -rf conftest])
183 if test "$am_cv_autoconf_version" = no; then
184   AC_MSG_ERROR([Autoconf $required_autoconf_version or better is required.])
185 fi
186
187 # Test for ln.  We need use it to install the versioned binaries.
188 AC_MSG_CHECKING([whether ln works])
189 AC_CACHE_VAL([am_cv_prog_ln], [
190 rm -f conftest conftest.file
191 : >conftest.file
192 if ln conftest.file conftest 2>/dev/null; then
193   am_cv_prog_ln=ln
194 else
195   am_cv_prog_ln='cp -p'
196 fi
197 rm -f conftest conftest.file])
198 AC_SUBST([LN], [$am_cv_prog_ln])
199 result=no
200 test "x$am_cv_prog_ln" = xln && result=yes
201 AC_MSG_RESULT([$result])
202
203 # The amount we should wait after modifying files depends on the platform.
204 # On Windows '95, '98 and ME, files modifications have 2-seconds
205 # granularity and can be up to 3 seconds in the future w.r.t. the
206 # system clock.  When it is important to ensure one file is older
207 # than another we wait at least 5 seconds between creations.
208 case $build in
209   *-pc-msdosdjgpp) MODIFICATION_DELAY=5;;
210   *)               MODIFICATION_DELAY=2;;
211 esac
212 AC_SUBST([MODIFICATION_DELAY])
213
214 ## ------------------------------------------- ##
215 ##  Test for things needed by the test suite.  ##
216 ## ------------------------------------------- ##
217
218 AC_PROG_EGREP
219 AC_PROG_FGREP
220
221 dnl FIXME: could we extract this in a simpler way through autoconf
222 dnl FIXME: idioms or internals?
223 AC_DEFUN(
224   [_AM_INIT_BOURNE_COMPATIBLE_VAR],
225   [am_bourne_compatible="AS_ESCAPE(_m4_expand([AS_BOURNE_COMPATIBLE]))"])
226
227 dnl
228 dnl Arguments to this macro:
229 dnl
230 dnl   $1 - shell to test
231 dnl   $2 - description of the tested feature
232 dnl   $3 - shell code used to check the feature; to indicate success,
233 dnl        it can either exit with status 77, or have the last command
234 dnl        returning with exit status of zero
235 dnl   $4 - shell code to execute if the check on the shell is successful
236 dnl        (defaults to nothing)
237 dnl   $5 - shell code to execute if the check on the shell is not
238 dnl        successful (defaults to nothing)
239 dnl
240 AC_DEFUN([_AM_CHECK_SHELL_FEATURE],
241   [AC_REQUIRE([_AM_INIT_BOURNE_COMPATIBLE_VAR])
242   AC_MSG_CHECKING([whether $1 $2])
243   if { $1 -c "$am_bourne_compatible
244 AS_ESCAPE([$3])
245 test \$? -eq 0 || exit 1
246 # Use 77 to indicate success (rather than 0), in case some shell
247 # acts like Solaris 10's /bin/sh, exiting successfully on some
248 # syntax errors.
249 exit 77" >&AS_MESSAGE_LOG_FD 2>&1; test $? -eq 77; }
250   then
251     AC_MSG_RESULT([yes])
252     $4
253   else
254     AC_MSG_RESULT([no])
255     $5
256   fi])
257
258 # AM_CHECK_CANDIDATE_TEST_SHELL(SHELL-PATH)
259 # -----------------------------------------
260 #
261 # Check if the given shell is good enough to run our test scripts.
262 # Inspired to gnulib's 'tests/init.sh'.
263 #
264 # We require POSIX and XSI features (e.g., '$(...)' for command
265 # substitutions, '$((...))' for shell arithmetic, and support for
266 # '${var#...}' and '${var%...}' parameter expansions).
267 #
268 # We require that the shell can correctly trap EXIT when 'set -e' is in
269 # effect (OSF1/Tru64 sh failed to do so, see commit v1.10b-52-g9fe8259).
270 #
271 # We want to able to define shell aliases with the same name of shell
272 # builtins.
273 #
274 # We also prefer shells that, when 'set -x' is in effect, do not also
275 # redirect traces upon stderr redirections.  For example,
276 #  $ set -x; echo x 2>file
277 # would emit "+ echo x" into file with older zsh versions.  Similarly,
278 #   $ set -x; P=1 true 2>file
279 # would emit "P=1" into file with /usr/xpg4/bin/sh from Solaris 10 and
280 # /bin/sh from SunOS 5.11 and OpenBSD 4.7.
281 #
282 # Finally, we look for weird bugs and portability problems mentioned in
283 # the Autoconf manual, and reject shells that suffers from them. (TODO)
284 #
285 # Use '$am_score' to indicate the degree of acceptability of the shell.
286 # A score of "10" means that the shell is good enough for our needs;
287 # a score of "9" means that the shell has some minor bugs or limitation,
288 # but is still (barely) acceptable for our uses.  Any other score means
289 # that the shell is broken or unfit.
290 #
291 AC_DEFUN([_AM_CHECK_CANDIDATE_SHELL],
292   [am_score=10
293   while :; do
294
295     _AM_CHECK_SHELL_FEATURE([$1],
296       [supports \$(cmd)],
297       [test "$(echo x)" = x],
298       [], [am_score=1; break])
299
300     _AM_CHECK_SHELL_FEATURE([$1],
301       [supports \$((expr))],
302       [test $((1 + 2 * 3)) = 7],
303       [], [am_score=1; break])
304
305     _AM_CHECK_SHELL_FEATURE([$1],
306       [supports \${@%:@var}],
307       [zero='' one='x' twelve=' foobar baz!' \
308         && test ${@%:@zero} -eq 0 \
309         && test ${@%:@one} -eq 1 \
310         && test ${@%:@twelve} -eq 12],
311       [], [am_score=1; break])
312
313     _AM_CHECK_SHELL_FEATURE([$1],
314       [supports \${var@%:@glob} and \${var%glob}],
315       [v=a/b/c \
316         && test ${v@%:@*/} = b/c \
317         && test ${v@%:@@%:@*/} = c \
318         && test ${v%/*} = a/b \
319         && test ${v%%/*} = a],
320       [], [am_score=1; break])
321
322     _AM_CHECK_SHELL_FEATURE([$1],
323       [preserves exit traps with "set -e"],
324       [set -e; trap 'exit $?' 0; (exit 77); exit 77],
325       [], [am_score=1; break])
326
327     _AM_CHECK_SHELL_FEATURE([$1],
328       [can define exit traps in a shell function],
329       [fail=0 && foo() { trap 'fail=1' 0; } && foo && test $fail = 0],
330       [], [am_score=1; break])
331
332     _AM_CHECK_SHELL_FEATURE([$1],
333       [corrupts stderr with "set -x"],
334       [(set -x; P=1 true 2>&3) 3>&1 2>/dev/null | grep P=1],
335       [am_score=9], [])
336
337     echo 'return 34' > conftest-return.sh
338     echo 'ok=no' >> conftest-return.sh
339     _AM_CHECK_SHELL_FEATURE([$1],
340       [can return early from "dot-sourced" files],
341       [ok=yes; . ./conftest-return.sh; test $? -eq 34 && test $ok = yes],
342       [rm -f conftest-return.sh],
343       [rm -f conftest-return.sh; am_score=1; break])
344
345     echo 'alias false=echo' > conftest-alias.sh
346     echo 'false && test "$(false 97)" = 97' >> conftest-alias.sh
347     _AM_CHECK_SHELL_FEATURE([$1],
348       [supports alias named like shell builtins],
349       [. ./conftest-alias.sh],
350       [rm -f conftest-alias.sh],
351       [rm -f conftest-alias.sh; am_score=1; break])
352
353     _AM_CHECK_SHELL_FEATURE([$1],
354       [supports "test -e"],
355       [test -e config.log && test -e . && test ! -e nonesuch],
356       [], [am_score=1; break])
357
358     break
359   done])
360
361 # These messages only goes to the config.log file.
362 AC_MSG_NOTICE([will now look for a sturdy POSIX shell, for our testsuite])
363
364 AC_CACHE_VAL(
365   [ac_cv_AM_TEST_RUNNER_SHELL],
366   [if test "$AM_TEST_RUNNER_SHELL"; then
367     # Let the user override it.
368     ac_cv_AM_TEST_RUNNER_SHELL=$AM_TEST_RUNNER_SHELL
369   else
370     ac_cv_AM_TEST_RUNNER_SHELL=no
371     am_candidate_shells=${CONFIG_SHELL-}
372     # For the benefit of Solaris.
373     am_PATH=$PATH$PATH_SEPARATOR/usr/xpg6/bin$PATH_SEPARATOR/usr/xpg4/bin
374     for am_sh in sh sh5 dash ash bash zsh ksh pdksh; do
375       AC_PATH_PROG([am_candidate_sh], [$am_sh], [], [$am_PATH])
376       if test -n "$am_candidate_sh"; then
377         am_candidate_shells="$am_candidate_shells $am_candidate_sh"
378       fi
379       AM_SUBST_NOTMAKE([am_candidate_sh])
380       # Must nullify these in order not to interfere with the checks in
381       # the next loop.
382       AS_UNSET([am_candidate_sh])
383       AS_UNSET([ac_cv_path_am_candidate_sh])
384     done
385     AS_UNSET([am_PATH]) # Not required anymore
386     for am_sh in $am_candidate_shells; do
387       am_score=0
388       _AM_CHECK_CANDIDATE_SHELL([$am_sh])
389       if test $am_score -eq 9; then
390         # The shell is barely acceptable for our needs.  We might
391         # still find one that is even better, so continue looking.
392         AC_MSG_NOTICE([shell $am_sh is acceptable, but we might do better])
393         ac_cv_AM_TEST_RUNNER_SHELL=$am_sh
394       elif test $am_score -eq 10; then
395         AC_MSG_NOTICE([shell $am_sh is good enough, stop looking])
396         ac_cv_AM_TEST_RUNNER_SHELL=$am_sh
397         break
398       fi
399     done
400   fi
401   AM_TEST_RUNNER_SHELL=$ac_cv_AM_TEST_RUNNER_SHELL])
402
403 if test $AM_TEST_RUNNER_SHELL = no; then
404   AC_MSG_FAILURE([m4_normalize([no POSIX shell found that is good
405                                 enough to be used in our testsuite])])
406 else
407   AC_MSG_NOTICE([will use $AM_TEST_RUNNER_SHELL as the testsuite shell])
408 fi
409
410 AC_ARG_VAR([AM_TEST_RUNNER_SHELL],
411            [a sturdy POSIX shell for our testsuite])
412
413
414 ###########################################################################
415
416 # Look for C, C++ and fortran compilers to be used in the testsuite.
417
418 dnl We don't want to abort our configuration script if no C compiler is
419 dnl available, as such a compiler is only required to run part of the
420 dnl testsuite, not to build or install Automake.  Ditto for C++, Fortran
421 dnl and Fortran 77 compilers.  Unfortunately, autoconf does not offer an
422 dnl easy way to obtain this behaviour, so we'll need a few hacks.
423
424 dnl We want the body of this macro to expand as a single shell statement,
425 dnl thus we wrap it into { ... } brackets.
426 AC_DEFUN([_AM_WRAP_MSG_ERROR], [ {
427   AC_MSG_WARN([$1])
428   am__failed=yes
429   break
430 } ])
431
432 AC_DEFUN([_AM_COMPILER_CAN_FAIL], [
433   m4_pushdef([AC_MSG_FAILURE], m4_defn([_AM_WRAP_MSG_ERROR]))
434   m4_pushdef([AC_MSG_ERROR],   m4_defn([_AM_WRAP_MSG_ERROR]))
435   am__failed=no
436   while :; do
437      $1
438      break
439   done
440   AS_IF([test $am__failed = yes], [$2])
441   # We have to clear these cache variables, so that future checks on
442   # compilers for different languages won't be confused.
443   unset ac_cv_objext ac_cv_exeext
444   # We also need to meddle with the autoconf internals to ensure that
445   # checks to find object and executable extensions will be run anew.
446   # FIXME: In the long run, the better thing to do would be to fix
447   # FIXME: autoconf instead ...
448   m4_undefine([m4_provide(_AC_COMPILER_OBJEXT)])
449   m4_undefine([m4_provide(_AC_COMPILER_EXEEXT)])
450   m4_popdef([AC_MSG_FAILURE])
451   m4_popdef([AC_MSG_ERROR])
452 ])
453
454 AC_DEFUN([_AM_SKIP_COMP_TESTS],
455   [AC_MSG_NOTICE([tests requiring the $1 compiler will be skipped])])
456
457 # Prefer generic compilers to GNU ones when possible.  This will ensure
458 # more testsuite coverage "in the wild".
459 # Note that we don't look for the MSVC C/C++ compiler here.  This is
460 # deliberate; for more discussion and rationale, see:
461 # <http://lists.gnu.org/archive/html/automake-patches/2012-01/msg00130.html>
462
463 AC_MSG_NOTICE([will now look for generic compilers])
464
465 # C compiler.
466 _AM_COMPILER_CAN_FAIL(dnl
467   [AC_PROG_CC([cc gcc])],
468   [CC=false; _AM_SKIP_COMP_TESTS([C])])
469
470 AS_IF([test x"$GCC" = x"yes"], [am_CC_is_GNU=yes], [am_CC_is_GNU=no])
471
472 # On case-insensitive file systems (seen e.g. on Cygwin and Mac OS X)
473 # we must avoid looking for 'CC', because that would be the same as
474 # 'cc', and could cause $CXX to point to the C compiler, instead of
475 # to a C++ compiler as expected.  See automake bugs #11893 and #10766.
476 if test -f /bIn/rMdIr || test -f /uSr/bIn/rMdIr; then
477   # Case-insensitive file system, don't look for CC.
478   am_CC=
479 else
480   am_CC=CC
481 fi
482
483 # The list of C++ compilers here has been copied, pasted and edited
484 # from 'lib/autoconf/c.m4:AC_PROG_CXX' in the Autoconf distribution.
485 # Keep it in sync, or better again, find out a way to avoid this code
486 # duplication.
487 _AM_COMPILER_CAN_FAIL([AC_PROG_CXX(dnl
488   [aCC $am_CC FCC KCC RCC xlC_r xlC c++ cxx cc++ gpp g++])],
489   [CXX=false; _AM_SKIP_COMP_TESTS([C++])])
490
491 AS_IF([test x"$GXX" = x"yes"], [am_CXX_is_GNU=yes], [am_CXX_is_GNU=no])
492
493 # The lists of Fortran compilers here has been copied, pasted and edited
494 # from file 'lib/autoconf/fortran.m4' in the Autoconf distribution.
495 # Keep it in sync, or better again, find out a way to avoid this code
496 # duplication.
497
498 _AM_COMPILER_CAN_FAIL([AC_PROG_FC(dnl
499   [xlf95 f95 fort ifort ifc efc pgfortran pgf95 lf95 ftn nagfor] dnl
500   [xlf90 f90 pgf90 pghpf epcf90 g95 gfortran])],
501   [FC=false; _AM_SKIP_COMP_TESTS([Fortran])])
502
503 AS_IF([test x"$GFC" = x"yes"], [am_FC_is_GNU=yes], [am_FC_is_GNU=no])
504
505 _AM_COMPILER_CAN_FAIL([AC_PROG_F77(dnl
506   [xlf f77 frt pgf77 cf77 fort77 fl32 af77 g77 gfortran])],
507   [F77=false; _AM_SKIP_COMP_TESTS([Fortran 77])])
508
509 AS_IF([test x"$G77" = x"yes"], [am_F77_is_GNU=yes], [am_F77_is_GNU=no])
510
511 # Some tests will need the GNU compilers.  Searching for them here would
512 # be overkill, since our testsuite already handles their search and setup
513 # pretty well.  But in case the compilers already found are the GNU ones,
514 # we want to use them in the testsuite where GNU compilers are required.
515 # Also, in case the compilers detected above (at configure time) are not
516 # the GNU ones, we cannot use the values of CFLAGS, CXXFLAGS, FCFLAGS and
517 # FFLAGS detected for them with the GNU compilers too, since it's likely
518 # they won't be compatible.  So we allow the user to define variants of
519 # these variables for the GNU compilers separately.
520
521 AC_MSG_NOTICE([will now look for GNU compilers])
522
523 # GNU C compiler.
524 AC_ARG_VAR([GNU_CC],     [GNU C compiler])
525 AC_ARG_VAR([GNU_CFLAGS], [GNU C compiler flags])
526 if test $am_CC_is_GNU = yes; then
527   AC_MSG_NOTICE([$CC is already a GNU C compiler])
528   GNU_CC=$CC GNU_CFLAGS=${GNU_CFLAGS-$CFLAGS}
529 else
530   AC_CHECK_TOOLS([GNU_CC], [gcc], [false])
531 fi
532 AS_IF([AM_RUN_LOG([$GNU_CC --version && $GNU_CC -v])], [],
533       [AC_MSG_WARN([botched installation for GNU C compiler])
534        _AM_SKIP_COMP_TESTS([GNU C])])
535
536 # GNU C++ compiler.
537 AC_ARG_VAR([GNU_CXX],      [GNU C++ compiler])
538 AC_ARG_VAR([GNU_CXXFLAGS], [GNU C++ compiler flags])
539 if test $am_CXX_is_GNU = yes; then
540   AC_MSG_NOTICE([$CXX is already a GNU C++ compiler])
541   GNU_CXX=$CXX
542   GNU_CXXFLAGS=${GNU_CXXFLAGS-$CXXFLAGS}
543 else
544   AC_CHECK_TOOLS([GNU_CXX], [g++ gpp], [false])
545 fi
546 AS_IF([AM_RUN_LOG([$GNU_CXX --version && $GNU_CXX -v])], [],
547       [AC_MSG_WARN([botched installation for GNU C++ compiler])
548        _AM_SKIP_COMP_TESTS([GNU C++])])
549
550 # GNU Fortran compiler.
551 AC_ARG_VAR([GNU_FC],      [GNU Fortran compiler])
552 AC_ARG_VAR([GNU_FCFLAGS], [GNU Fortran compiler flags])
553 if test $am_FC_is_GNU = yes; then
554   AC_MSG_NOTICE([$FC is already a GNU Fortran compiler])
555   GNU_FC=$FC
556   GNU_FCFLAGS=${GNU_FCFLAGS-$FCFLAGS}
557 else
558   AC_CHECK_TOOLS([GNU_FC], [gfortran], [false])
559 fi
560 AS_IF([AM_RUN_LOG([$GNU_FC --version && $GNU_FC -v])], [],
561       [AC_MSG_WARN([botched installation for GNU Fortran compiler])
562        _AM_SKIP_COMP_TESTS([GNU Fortran])])
563
564 # GNU Fortran 77 compiler.
565 AC_ARG_VAR([GNU_F77],    [GNU Fortran 77 compiler])
566 AC_ARG_VAR([GNU_FFLAGS], [GNU Fortran 77 compiler flags])
567 if test $am_F77_is_GNU = yes; then
568   AC_MSG_NOTICE([$F77 is already a GNU Fortran 77 compiler])
569   GNU_F77=$F77
570   GNU_FFLAGS=${GNU_FFLAGS-$FFLAGS}
571 else
572   AC_CHECK_TOOLS([GNU_F77], [g77 gfortran], [false])
573 fi
574 AS_IF([AM_RUN_LOG([$GNU_F77 --version && $GNU_F77 -v])], [],
575       [AC_MSG_WARN([botched installation for GNU Fortran 77 compiler])
576       _AM_SKIP_COMP_TESTS([GNU Fortran 77])])
577
578 # GNU Java compiler.
579 AC_ARG_VAR([GNU_GCJ], [GNU Java compiler])
580 AC_ARG_VAR([GNU_GCJFLAGS], [GNU Java compiler flags])
581 AC_CHECK_TOOLS([GNU_GCJ], [gcj], [false])
582 AS_IF([AM_RUN_LOG([$GNU_GCJ --version && $GNU_GCJ -v])], [],
583       [AC_MSG_WARN([botched installation for GNU Java compiler])
584       _AM_SKIP_COMP_TESTS([GNU Java])])
585
586 # If we have been able to find at least a working compiler above, we
587 # know what the object and executable extensions for this platform are.
588 OBJEXT=${ac_cv_objext-UNKNOWN}
589 EXEEXT=${ac_cv_exeext-UNKNOWN}
590 AC_SUBST([OBJEXT])
591 AC_SUBST([EXEEXT])
592
593 ###########################################################################
594
595 ## ---------------------- ##
596 ##  Create output files.  ##
597 ## ---------------------- ##
598
599 AC_CONFIG_FILES([Makefile])
600
601 AC_CONFIG_LINKS([GNUmakefile:GNUmakefile])
602 AC_CONFIG_LINKS([defs:defs])
603
604 AC_CONFIG_FILES([t/wrap/aclocal-${APIVERSION}:t/wrap/aclocal.in],
605                 [chmod +x t/wrap/aclocal-${APIVERSION}],
606                 [APIVERSION=$APIVERSION])
607 AC_CONFIG_FILES([t/wrap/automake-${APIVERSION}:t/wrap/automake.in],
608                 [chmod +x t/wrap/automake-${APIVERSION}],
609                 [APIVERSION=$APIVERSION])
610
611 AC_OUTPUT
612
613 # Inform the user if this version of automake is a beta release or
614 # a development snapshot.
615 # According to HACKING, the version of a development snapshot should
616 # end with an "odd" letter (a, c, ...), the version of a test release
617 # should end wit an "even" letter (b, d, ...).
618
619 am_stable_version_rx='[[1-9]\.[0-9]+(\.[0-9]+)?]'
620 am_beta_version_rx="[$am_stable_version_rx[bdfhjlnprtvxz]]"
621
622 am_release_type=`AS_ECHO(["$PACKAGE_VERSION"]) | LC_ALL=C awk ["
623   /^$am_stable_version_rx$/ { print \"stable\"; exit(0); }
624   /^$am_beta_version_rx$/ { print \"beta version\"; exit(0); }
625   { print \"development snapshot\"; }"]`
626
627 test "$am_release_type" = stable || cat <<EOF
628
629 WARNING: You are about to use a $am_release_type of automake.
630 WARNING: It might easily suffer from new bugs or regressions.
631 WARNING: You are strongly advised not to use it in production code.
632
633 Please report bugs, problems and feedback to <AC_PACKAGE_BUGREPORT>.
634 EOF
635
636 AS_EXIT([0])