2001-02-17 Philip Blundell <philb@gnu.org>
[binutils.git] / gas / aclocal.m4
blob338b221387fd11eb776b3da3508f285dc526ba8d
1 dnl aclocal.m4 generated automatically by aclocal 1.4
3 dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc.
4 dnl This file is free software; the Free Software Foundation
5 dnl gives unlimited permission to copy and/or distribute it,
6 dnl with or without modifications, as long as this notice is preserved.
8 dnl This program is distributed in the hope that it will be useful,
9 dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10 dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11 dnl PARTICULAR PURPOSE.
13 dnl GAS_CHECK_DECL_NEEDED(name, typedefname, typedef, headers)
14 AC_DEFUN(GAS_CHECK_DECL_NEEDED,[
15 AC_MSG_CHECKING(whether declaration is required for $1)
16 AC_CACHE_VAL(gas_cv_decl_needed_$1,
17 AC_TRY_LINK([$4],
19 typedef $3;
20 $2 x;
21 x = ($2) $1;
22 ], gas_cv_decl_needed_$1=no, gas_cv_decl_needed_$1=yes))dnl
23 AC_MSG_RESULT($gas_cv_decl_needed_$1)
24 if test $gas_cv_decl_needed_$1 = yes; then
25  AC_DEFINE([NEED_DECLARATION_]translit($1, [a-z], [A-Z]), 1,
26            [Define if $1 is not declared in system header files.])
28 ])dnl
29 dnl
30 dnl Some non-ANSI preprocessors botch requoting inside strings.  That's bad
31 dnl enough, but on some of those systems, the assert macro relies on requoting
32 dnl working properly!
33 dnl GAS_WORKING_ASSERT
34 AC_DEFUN(GAS_WORKING_ASSERT,
35 [AC_MSG_CHECKING([for working assert macro])
36 AC_CACHE_VAL(gas_cv_assert_ok,
37 AC_TRY_LINK([#include <assert.h>
38 #include <stdio.h>], [
39 /* check for requoting problems */
40 static int a, b, c, d;
41 static char *s;
42 assert (!strcmp(s, "foo bar baz quux"));
43 /* check for newline handling */
44 assert (a == b
45         || c == d);
46 ], gas_cv_assert_ok=yes, gas_cv_assert_ok=no))dnl
47 AC_MSG_RESULT($gas_cv_assert_ok)
48 test $gas_cv_assert_ok = yes || AC_DEFINE(BROKEN_ASSERT, 1, [assert broken?])
49 ])dnl
50 dnl
51 dnl Since many Bourne shell implementations lack subroutines, use this
52 dnl hack to simplify the code in configure.in.
53 dnl GAS_UNIQ(listvar)
54 AC_DEFUN(GAS_UNIQ,
55 [_gas_uniq_list="[$]$1"
56 _gas_uniq_newlist=""
57 dnl Protect against empty input list.
58 for _gas_uniq_i in _gas_uniq_dummy [$]_gas_uniq_list ; do
59   case [$]_gas_uniq_i in
60   _gas_uniq_dummy) ;;
61   *) case " [$]_gas_uniq_newlist " in
62        *" [$]_gas_uniq_i "*) ;;
63        *) _gas_uniq_newlist="[$]_gas_uniq_newlist [$]_gas_uniq_i" ;;
64      esac ;;
65   esac
66 done
67 $1=[$]_gas_uniq_newlist
68 ])dnl
70 sinclude(../libtool.m4)
71 dnl The lines below arrange for aclocal not to bring libtool.m4
72 dnl AM_PROG_LIBTOOL into aclocal.m4, while still arranging for automake
73 dnl to add a definition of LIBTOOL to Makefile.in.
74 ifelse(yes,no,[
75 AC_DEFUN([AM_PROG_LIBTOOL],)
76 AC_DEFUN([AC_CHECK_LIBM],)
77 AC_SUBST(LIBTOOL)
80 sinclude(../gettext.m4)
81 ifelse(yes,no,[
82 AC_DEFUN([CY_WITH_NLS],)
83 AC_SUBST(INTLLIBS)
86 #serial 1
87 # This test replaces the one in autoconf.
88 # Currently this macro should have the same name as the autoconf macro
89 # because gettext's gettext.m4 (distributed in the automake package)
90 # still uses it.  Otherwise, the use in gettext.m4 makes autoheader
91 # give these diagnostics:
92 #   configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX
93 #   configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX
95 undefine([AC_ISC_POSIX])
97 AC_DEFUN(AC_ISC_POSIX,
98   [
99     dnl This test replaces the obsolescent AC_ISC_POSIX kludge.
100     AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"])
101   ]
104 # Do all the work for Automake.  This macro actually does too much --
105 # some checks are only needed if your package does certain things.
106 # But this isn't really a big deal.
108 # serial 1
110 dnl Usage:
111 dnl AM_INIT_AUTOMAKE(package,version, [no-define])
113 AC_DEFUN(AM_INIT_AUTOMAKE,
114 [AC_REQUIRE([AC_PROG_INSTALL])
115 PACKAGE=[$1]
116 AC_SUBST(PACKAGE)
117 VERSION=[$2]
118 AC_SUBST(VERSION)
119 dnl test to see if srcdir already configured
120 if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then
121   AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
123 ifelse([$3],,
124 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
125 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package]))
126 AC_REQUIRE([AM_SANITY_CHECK])
127 AC_REQUIRE([AC_ARG_PROGRAM])
128 dnl FIXME This is truly gross.
129 missing_dir=`cd $ac_aux_dir && pwd`
130 AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir)
131 AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir)
132 AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir)
133 AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir)
134 AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
135 AC_REQUIRE([AC_PROG_MAKE_SET])])
138 # Check to make sure that the build environment is sane.
141 AC_DEFUN(AM_SANITY_CHECK,
142 [AC_MSG_CHECKING([whether build environment is sane])
143 # Just in case
144 sleep 1
145 echo timestamp > conftestfile
146 # Do `set' in a subshell so we don't clobber the current shell's
147 # arguments.  Must try -L first in case configure is actually a
148 # symlink; some systems play weird games with the mod time of symlinks
149 # (eg FreeBSD returns the mod time of the symlink's containing
150 # directory).
151 if (
152    set X `ls -Lt $srcdir/configure conftestfile 2> /dev/null`
153    if test "[$]*" = "X"; then
154       # -L didn't work.
155       set X `ls -t $srcdir/configure conftestfile`
156    fi
157    if test "[$]*" != "X $srcdir/configure conftestfile" \
158       && test "[$]*" != "X conftestfile $srcdir/configure"; then
160       # If neither matched, then we have a broken ls.  This can happen
161       # if, for instance, CONFIG_SHELL is bash and it inherits a
162       # broken ls alias from the environment.  This has actually
163       # happened.  Such a system could not be considered "sane".
164       AC_MSG_ERROR([ls -t appears to fail.  Make sure there is not a broken
165 alias in your environment])
166    fi
168    test "[$]2" = conftestfile
169    )
170 then
171    # Ok.
172    :
173 else
174    AC_MSG_ERROR([newly created file is older than distributed files!
175 Check your system clock])
177 rm -f conftest*
178 AC_MSG_RESULT(yes)])
180 dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY)
181 dnl The program must properly implement --version.
182 AC_DEFUN(AM_MISSING_PROG,
183 [AC_MSG_CHECKING(for working $2)
184 # Run test in a subshell; some versions of sh will print an error if
185 # an executable is not found, even if stderr is redirected.
186 # Redirect stdin to placate older versions of autoconf.  Sigh.
187 if ($2 --version) < /dev/null > /dev/null 2>&1; then
188    $1=$2
189    AC_MSG_RESULT(found)
190 else
191    $1="$3/missing $2"
192    AC_MSG_RESULT(missing)
194 AC_SUBST($1)])
196 # Like AC_CONFIG_HEADER, but automatically create stamp file.
198 AC_DEFUN(AM_CONFIG_HEADER,
199 [AC_PREREQ([2.12])
200 AC_CONFIG_HEADER([$1])
201 dnl When config.status generates a header, we must update the stamp-h file.
202 dnl This file resides in the same directory as the config header
203 dnl that is generated.  We must strip everything past the first ":",
204 dnl and everything past the last "/".
205 AC_OUTPUT_COMMANDS(changequote(<<,>>)dnl
206 ifelse(patsubst(<<$1>>, <<[^ ]>>, <<>>), <<>>,
207 <<test -z "<<$>>CONFIG_HEADERS" || echo timestamp > patsubst(<<$1>>, <<^\([^:]*/\)?.*>>, <<\1>>)stamp-h<<>>dnl>>,
208 <<am_indx=1
209 for am_file in <<$1>>; do
210   case " <<$>>CONFIG_HEADERS " in
211   *" <<$>>am_file "*<<)>>
212     echo timestamp > `echo <<$>>am_file | sed -e 's%:.*%%' -e 's%[^/]*$%%'`stamp-h$am_indx
213     ;;
214   esac
215   am_indx=`expr "<<$>>am_indx" + 1`
216 done<<>>dnl>>)
217 changequote([,]))])
220 dnl AM_PROG_LEX
221 dnl Look for flex, lex or missing, then run AC_PROG_LEX and AC_DECL_YYTEXT
222 AC_DEFUN(AM_PROG_LEX,
223 [missing_dir=ifelse([$1],,`cd $ac_aux_dir && pwd`,$1)
224 AC_CHECK_PROGS(LEX, flex lex, "$missing_dir/missing flex")
225 AC_PROG_LEX
226 AC_DECL_YYTEXT])
228 # Add --enable-maintainer-mode option to configure.
229 # From Jim Meyering
231 # serial 1
233 AC_DEFUN(AM_MAINTAINER_MODE,
234 [AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
235   dnl maintainer-mode is disabled by default
236   AC_ARG_ENABLE(maintainer-mode,
237 [  --enable-maintainer-mode enable make rules and dependencies not useful
238                           (and sometimes confusing) to the casual installer],
239       USE_MAINTAINER_MODE=$enableval,
240       USE_MAINTAINER_MODE=no)
241   AC_MSG_RESULT($USE_MAINTAINER_MODE)
242   AM_CONDITIONAL(MAINTAINER_MODE, test $USE_MAINTAINER_MODE = yes)
243   MAINT=$MAINTAINER_MODE_TRUE
244   AC_SUBST(MAINT)dnl
248 # Define a conditional.
250 AC_DEFUN(AM_CONDITIONAL,
251 [AC_SUBST($1_TRUE)
252 AC_SUBST($1_FALSE)
253 if $2; then
254   $1_TRUE=
255   $1_FALSE='#'
256 else
257   $1_TRUE='#'
258   $1_FALSE=
259 fi])