Tue Jul 4 14:08:28 2000 Andrew Cagney <cagney@b1.cygnus.com>
[binutils.git] / bfd / acinclude.m4
blobcac26e8e7dd58541861ccef3ae442631d4f02b82
1 dnl See whether we need to use fopen-bin.h rather than fopen-same.h.
2 AC_DEFUN(BFD_BINARY_FOPEN,
3 [AC_REQUIRE([AC_CANONICAL_SYSTEM])
4 case "${host}" in
5 changequote(,)dnl
6 *-*-msdos* | *-*-go32* | *-*-mingw32* | *-*-cygwin* | *-*-windows*)
7 changequote([,])dnl
8   AC_DEFINE(USE_BINARY_FOPEN, 1, [Use b modifier when opening binary files?]) ;;
9 esac])dnl
11 dnl Get a default for CC_FOR_BUILD to put into Makefile.
12 AC_DEFUN(BFD_CC_FOR_BUILD,
13 [# Put a plausible default for CC_FOR_BUILD in Makefile.
14 if test -z "$CC_FOR_BUILD"; then
15   if test "x$cross_compiling" = "xno"; then
16     CC_FOR_BUILD='$(CC)'
17   else
18     CC_FOR_BUILD=gcc
19   fi
21 AC_SUBST(CC_FOR_BUILD)
22 # Also set EXEEXT_FOR_BUILD.
23 if test "x$cross_compiling" = "xno"; then
24   EXEEXT_FOR_BUILD='$(EXEEXT)'
25 else
26   AC_CACHE_CHECK([for build system executable suffix], bfd_cv_build_exeext,
27     [rm -f conftest*
28      echo 'int main () { return 0; }' > conftest.c
29      bfd_cv_build_exeext=
30      ${CC_FOR_BUILD} -o conftest conftest.c 1>&5 2>&5
31      for file in conftest.*; do
32        case $file in
33        *.c | *.o | *.obj | *.ilk | *.pdb) ;;
34        *) bfd_cv_build_exeext=`echo $file | sed -e s/conftest//` ;;
35        esac
36      done
37      rm -f conftest*
38      test x"${bfd_cv_build_exeext}" = x && bfd_cv_build_exeext=no])
39   EXEEXT_FOR_BUILD=""
40   test x"${bfd_cv_build_exeext}" != xno && EXEEXT_FOR_BUILD=${bfd_cv_build_exeext}
42 AC_SUBST(EXEEXT_FOR_BUILD)])dnl
44 dnl See whether we need a declaration for a function.
45 AC_DEFUN(BFD_NEED_DECLARATION,
46 [AC_MSG_CHECKING([whether $1 must be declared])
47 AC_CACHE_VAL(bfd_cv_decl_needed_$1,
48 [AC_TRY_COMPILE([
49 #include <stdio.h>
50 #ifdef HAVE_STRING_H
51 #include <string.h>
52 #else
53 #ifdef HAVE_STRINGS_H
54 #include <strings.h>
55 #endif
56 #endif
57 #ifdef HAVE_STDLIB_H
58 #include <stdlib.h>
59 #endif
60 #ifdef HAVE_UNISTD_H
61 #include <unistd.h>
62 #endif],
63 [char *(*pfn) = (char *(*)) $1],
64 bfd_cv_decl_needed_$1=no, bfd_cv_decl_needed_$1=yes)])
65 AC_MSG_RESULT($bfd_cv_decl_needed_$1)
66 if test $bfd_cv_decl_needed_$1 = yes; then
67   AC_DEFINE([NEED_DECLARATION_]translit($1, [a-z], [A-Z]), 1,
68             [Define if $1 is not declared in system header files.])
70 ])dnl
72 dnl Check for existence of a type $1 in sys/procfs.h
74 AC_DEFUN(BFD_HAVE_SYS_PROCFS_TYPE,
75 [AC_MSG_CHECKING([for $1 in sys/procfs.h])
76  AC_CACHE_VAL(bfd_cv_have_sys_procfs_type_$1,
77    [AC_TRY_COMPILE([#include <sys/procfs.h>],
78       [$1 avar],
79       bfd_cv_have_sys_procfs_type_$1=yes,
80       bfd_cv_have_sys_procfs_type_$1=no
81    )])
82  if test $bfd_cv_have_sys_procfs_type_$1 = yes; then
83    AC_DEFINE([HAVE_]translit($1, [a-z], [A-Z]), 1,
84              [Define if <sys/procfs.h> has $1.])
85  fi
86  AC_MSG_RESULT($bfd_cv_have_sys_procfs_type_$1)
90 dnl Check for existence of member $2 in type $1 in sys/procfs.h
92 AC_DEFUN(BFD_HAVE_SYS_PROCFS_TYPE_MEMBER,
93 [AC_MSG_CHECKING([for $1.$2 in sys/procfs.h])
94  AC_CACHE_VAL(bfd_cv_have_sys_procfs_type_member_$1_$2,
95    [AC_TRY_COMPILE([#include <sys/procfs.h>],
96       [$1 avar; void* aref = (void*) &avar.$2],
97       bfd_cv_have_sys_procfs_type_member_$1_$2=yes,
98       bfd_cv_have_sys_procfs_type_member_$1_$2=no
99    )])
100  if test $bfd_cv_have_sys_procfs_type_member_$1_$2 = yes; then
101    AC_DEFINE([HAVE_]translit($1, [a-z], [A-Z])[_]translit($2, [a-z], [A-Z]), 1,
102              [Define if <sys/procfs.h> has $1.$2.])
103  fi
104  AC_MSG_RESULT($bfd_cv_have_sys_procfs_type_member_$1_$2)