2006-01-10 Roland McGrath <roland@redhat.com>
[glibc.git] / aclocal.m4
blob4efa41ee923a04c4da305cc3a7b3bd6f378f454f
1 dnl We define the macro GLIBC_PROVIDES to do an AC_PROVIDE for each macro
2 dnl which appears in configure.in before the sysdep configure scripts are run.
3 dnl Each sysdep configure.in does GLIBC_PROVIDES first, to avoid any
4 dnl AC_REQUIREs or AC_BEFOREs duplicating their code.
5 dnl
6 define([GLIBC_PROVIDES], [dnl
7 AC_PROVIDE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
8 AC_PROVIDE([_AS_ECHO_N_PREPARE])dnl
9 AC_PROVIDE([_AS_CR_PREPARE])dnl
10 AC_PROVIDE([_AS_TR_SH_PREPARE])dnl
11 AC_PROVIDE([AC_PROG_INSTALL])dnl
12 AC_PROVIDE([AC_PROG_RANLIB])dnl
13 AC_PROVIDE([AC_PROG_CC])dnl
14 AC_PROVIDE([AC_PROG_CPP])dnl
15 AC_PROVIDE([_AS_PATH_SEPARATOR_PREPARE])dnl
16 AC_PROVIDE([_AS_TEST_PREPARE])dnl
17 define([AS_MESSAGE_LOG_FD],5)dnl
18 define([AS_MESSAGE_FD],6)dnl
19 dnl Ripped out of AS_INIT, which does more cruft we do not want.
20 m4_wrap([m4_divert_pop([BODY])[]])
21 m4_divert_push([BODY])[]dnl
22 dnl End of ripped out of AS_INIT.
23 # This file is generated from configure.in by Autoconf.  DO NOT EDIT!
24 define([_AC_LANG], [C])dnl
25 ])dnl
26 dnl
27 dnl Check for a symbol
28 dnl
29 AC_DEFUN([AC_CHECK_SYMBOL], [dnl
30 AC_MSG_CHECKING(for $1)
31 AC_CACHE_VAL(ac_cv_check_symbol_$1, [dnl
32 AC_TRY_LINK(,
33 changequote(,)dnl
34 extern char *$1[]; puts(*$1);,
35 changequote([,])dnl
36             ac_cv_check_symbol_$1=yes, ac_cv_check_symbol_$1=no)])
37 if test "$ac_cv_check_symbol_$1" = yes; then
38 changequote(,)dnl
39   ac_tr_symbol=`echo $1 | tr '[a-z]' '[A-Z]'`
40 changequote([,])dnl
41   AC_DEFINE_UNQUOTED(HAVE_${ac_tr_symbol})
43 AC_MSG_RESULT($ac_cv_check_symbol_$1)])dnl
44 dnl
46 dnl Locate a program and check that its version is acceptable.
47 dnl AC_PROG_CHECK_VER(var, namelist, version-switch,
48 dnl                   [version-extract-regexp], version-glob [, do-if-fail])
49 AC_DEFUN([AC_CHECK_PROG_VER],
50 [AC_CHECK_PROGS([$1], [$2])
51 if test -z "[$]$1"; then
52   ac_verc_fail=yes
53 else
54   # Found it, now check the version.
55   AC_MSG_CHECKING([version of [$]$1])
56 changequote(<<,>>)dnl
57   ac_prog_version=`<<$>>$1 $3 2>&1 ifelse(<<$4>>,,,
58                    <<| sed -n 's/^.*patsubst(<<$4>>,/,\/).*$/\1/p'>>)`
59   case $ac_prog_version in
60     '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
61     <<$5>>)
62 changequote([,])dnl
63        ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
64     *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
66   esac
67   AC_MSG_RESULT([$ac_prog_version])
69 ifelse([$6],,,
70 [if test $ac_verc_fail = yes; then
71   $6
72 fi])
75 dnl These modifications are to allow for an empty cross compiler tree.
76 define([_AC_COMPILER_EXEEXT], [EXEEXT=
79 AC_DEFUN([LIBC_PROG_FOO_GNU],
80 [# Most GNU programs take a -v and spit out some text including
81 # the word 'GNU'.  Some try to read stdin, so give them /dev/null.
82 if $1 -o conftest -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
83   $2
84 else
85   $3
87 rm -fr contest*])
89 AC_DEFUN([LIBC_PROG_BINUTILS],
90 [# Was a --with-binutils option given?
91 if test -n "$path_binutils"; then
92     # Make absolute; ensure a single trailing slash.
93     path_binutils=`(cd $path_binutils; pwd) | sed 's%/*$%/%'`
94     CC="$CC -B$path_binutils"
96 AS=`$CC -print-prog-name=as`
97 LD=`$CC -print-prog-name=ld`
98 AR=`$CC -print-prog-name=ar`
99 AC_SUBST(AR)
100 OBJDUMP=`$CC -print-prog-name=objdump`
101 AC_SUBST(OBJDUMP)
103 # ranlib has to be treated a bit differently since it might not exist at all.
104 ac_ranlib=`$CC -print-prog-name=ranlib`
105 if test "x$ac_ranlib" = xranlib; then
106 # This extra check has to happen since gcc simply echos the parameter in
107 # case it cannot find the value in its own directories.
108 AC_CHECK_TOOL(RANLIB, ranlib, :)
109 else
110   RANLIB=$ac_ranlib
112 AC_SUBST(RANLIB)
114 # Determine whether we are using GNU binutils.
115 AC_CACHE_CHECK(whether $AS is GNU as, libc_cv_prog_as_gnu,
116 [LIBC_PROG_FOO_GNU($AS, libc_cv_prog_as_gnu=yes, libc_cv_prog_as_gnu=no)])
117 rm -f a.out
118 gnu_as=$libc_cv_prog_as_gnu
120 AC_CACHE_CHECK(whether $LD is GNU ld, libc_cv_prog_ld_gnu,
121 [LIBC_PROG_FOO_GNU($LD, libc_cv_prog_ld_gnu=yes, libc_cv_prog_ld_gnu=no)])
122 gnu_ld=$libc_cv_prog_ld_gnu