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 | |
---|
109 | GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_thread_depfiles" |
---|
110 | GDBSERVER_LIBS="$srv_libs -L../../../../../libxc/ -lxenctrl" |
---|
111 | |
---|
112 | AC_SUBST(GDBSERVER_DEPFILES) |
---|
113 | AC_SUBST(GDBSERVER_LIBS) |
---|
114 | AC_SUBST(USE_THREAD_DB) |
---|
115 | |
---|
116 | AC_OUTPUT(Makefile, |
---|
117 | [case x$CONFIG_HEADERS in |
---|
118 | xconfig.h:config.in) |
---|
119 | echo > stamp-h ;; |
---|
120 | esac |
---|
121 | ]) |
---|