* configure.in: Check whether we need to prototype strerror.
[deliverable/binutils-gdb.git] / gdb / gdbserver / configure.in
1 dnl Autoconf configure script for GDB server.
2 dnl Copyright 2000, 2002 Free Software Foundation, Inc.
3 dnl
4 dnl This file is part of GDB.
5 dnl
6 dnl This program is free software; you can redistribute it and/or modify
7 dnl it under the terms of the GNU General Public License as published by
8 dnl the Free Software Foundation; either version 2 of the License, or
9 dnl (at your option) any later version.
10 dnl
11 dnl This program is distributed in the hope that it will be useful,
12 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
13 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 dnl GNU General Public License for more details.
15 dnl
16 dnl You should have received a copy of the GNU General Public License
17 dnl along with this program; if not, write to the Free Software
18 dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19
20 dnl Process this file with autoconf to produce a configure script.
21
22 AC_INIT(server.c)
23 AC_CONFIG_HEADER(config.h:config.in)
24
25 AC_PROG_CC
26
27 AC_CANONICAL_SYSTEM
28
29 AC_PROG_INSTALL
30
31 AC_HEADER_STDC
32
33 AC_CHECK_HEADERS(sgtty.h termio.h termios.h sys/reg.h string.h dnl
34 proc_service.h sys/procfs.h thread_db.h linux/elf.h dnl
35 stdlib.h unistd.h)
36
37 BFD_NEED_DECLARATION(strerror)
38
39 . ${srcdir}/configure.srv
40
41 if test "${srv_linux_usrregs}" = "yes"; then
42 AC_DEFINE(HAVE_LINUX_USRREGS)
43 fi
44
45 if test "${srv_linux_regsets}" = "yes"; then
46 AC_MSG_CHECKING(for PTRACE_GETREGS)
47 AC_CACHE_VAL(gdbsrv_cv_have_ptrace_getregs,
48 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
49 [PTRACE_GETREGS;],
50 [gdbsrv_cv_have_ptrace_getregs=yes],
51 [gdbsrv_cv_have_ptrace_getregs=no])])
52 AC_MSG_RESULT($gdbsrv_cv_have_ptrace_getregs)
53 if test "${gdbsrv_cv_have_ptrace_getregs}" = "yes"; then
54 AC_DEFINE(HAVE_LINUX_REGSETS)
55 fi
56
57 AC_MSG_CHECKING(for PTRACE_GETFPXREGS)
58 AC_CACHE_VAL(gdbsrv_cv_have_ptrace_getfpxregs,
59 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
60 [PTRACE_GETFPXREGS;],
61 [gdbsrv_cv_have_ptrace_getfpxregs=yes],
62 [gdbsrv_cv_have_ptrace_getfpxregs=no])])
63 AC_MSG_RESULT($gdbsrv_cv_have_ptrace_getfpxregs)
64 if test "${gdbsrv_cv_have_ptrace_getfpxregs}" = "yes"; then
65 AC_DEFINE(HAVE_PTRACE_GETFPXREGS)
66 fi
67 fi
68
69 if test "$ac_cv_header_sys_procfs_h" = yes; then
70 BFD_HAVE_SYS_PROCFS_TYPE(lwpid_t)
71 BFD_HAVE_SYS_PROCFS_TYPE(psaddr_t)
72 BFD_HAVE_SYS_PROCFS_TYPE(prgregset_t)
73 BFD_HAVE_SYS_PROCFS_TYPE(prfpregset_t)
74
75 dnl Check for broken prfpregset_t type
76
77 dnl For Linux/i386, glibc 2.1.3 was released with a bogus
78 dnl prfpregset_t type (it's a typedef for the pointer to a struct
79 dnl instead of the struct itself). We detect this here, and work
80 dnl around it in gdb_proc_service.h.
81
82 if test $bfd_cv_have_sys_procfs_type_prfpregset_t = yes; then
83 AC_MSG_CHECKING(whether prfpregset_t type is broken)
84 AC_CACHE_VAL(gdb_cv_prfpregset_t_broken,
85 [AC_TRY_RUN([#include <sys/procfs.h>
86 int main ()
87 {
88 if (sizeof (prfpregset_t) == sizeof (void *))
89 return 1;
90 return 0;
91 }],
92 gdb_cv_prfpregset_t_broken=no,
93 gdb_cv_prfpregset_t_broken=yes,
94 gdb_cv_prfpregset_t_broken=yes)])
95 AC_MSG_RESULT($gdb_cv_prfpregset_t_broken)
96 if test $gdb_cv_prfpregset_t_broken = yes; then
97 AC_DEFINE(PRFPREGSET_T_BROKEN)
98 fi
99 fi
100
101 BFD_HAVE_SYS_PROCFS_TYPE(elf_fpregset_t)
102 fi
103
104 srv_thread_depfiles=
105 srv_libs=
106 USE_THREAD_DB=
107
108 if test "$srv_linux_thread_db" = "yes"; then
109 SRV_CHECK_THREAD_DB
110 if test "$srv_cv_thread_db" = no; then
111 AC_WARN([Could not find libthread_db.])
112 AC_WARN([Disabling thread support in gdbserver.])
113 srv_linux_thread_db=no
114 else
115 srv_libs="$srv_cv_thread_db"
116 fi
117 fi
118
119 if test "$srv_linux_thread_db" = "yes"; then
120 srv_thread_depfiles="thread-db.o proc-service.o"
121 USE_THREAD_DB="-DUSE_THREAD_DB"
122 fi
123
124 GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_thread_depfiles"
125 GDBSERVER_LIBS="$srv_libs"
126
127 AC_SUBST(GDBSERVER_DEPFILES)
128 AC_SUBST(GDBSERVER_LIBS)
129 AC_SUBST(USE_THREAD_DB)
130
131 AC_OUTPUT(Makefile,
132 [case x$CONFIG_HEADERS in
133 xconfig.h:config.in)
134 echo > stamp-h ;;
135 esac
136 ])
This page took 0.03352 seconds and 4 git commands to generate.