1 dnl Autoconf configure script for GDB server.
2 dnl Copyright (C) 2000, 2002, 2003, 2004, 2005, 2006, 2007, 2008
3 dnl Free Software Foundation, Inc.
5 dnl This file is part of GDB.
7 dnl This program is free software; you can redistribute it and/or modify
8 dnl it under the terms of the GNU General Public License as published by
9 dnl the Free Software Foundation; either version 3 of the License, or
10 dnl (at your option) any later version.
12 dnl This program is distributed in the hope that it will be useful,
13 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
14 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 dnl GNU General Public License for more details.
17 dnl You should have received a copy of the GNU General Public License
18 dnl along with this program. If not, see <http://www.gnu.org/licenses/>.
20 dnl Process this file with autoconf to produce a configure script.
25 AC_CONFIG_HEADER(config.h:config.in)
26 AC_CONFIG_LIBOBJ_DIR(../gnulib)
39 AC_CHECK_HEADERS(sgtty.h termio.h termios.h sys/reg.h string.h dnl
40 proc_service.h sys/procfs.h thread_db.h linux/elf.h dnl
42 errno.h fcntl.h signal.h sys/file.h malloc.h dnl
43 sys/ioctl.h netinet/in.h sys/socket.h netdb.h dnl
44 netinet/tcp.h arpa/inet.h sys/wait.h)
45 AC_CHECK_FUNCS(pread pwrite pread64)
46 AC_REPLACE_FUNCS(memmem)
49 AC_MSG_CHECKING(for errno)
53 #endif], [static int x; x = errno;],
54 [AC_MSG_RESULT(yes - in errno.h); AC_DEFINE(HAVE_ERRNO, 1, [Define if errno is available]) have_errno=yes])
55 if test $have_errno = no; then
59 #endif], [extern int errno; static int x; x = errno;],
60 [AC_MSG_RESULT(yes - must define); AC_DEFINE(HAVE_ERRNO, 1, [Define if errno is available]) AC_DEFINE(MUST_DEFINE_ERRNO, 1, [Checking if errno must be defined])],
64 AC_CHECK_DECLS([strerror, perror, memmem])
66 AC_CHECK_TYPES(socklen_t, [], [],
67 [#include <sys/types.h>
68 #include <sys/socket.h>
72 ACX_BUGURL([http://www.gnu.org/software/gdb/bugs/])
73 AC_DEFINE_UNQUOTED([PKGVERSION], ["$PKGVERSION"], [Additional package description])
74 AC_DEFINE_UNQUOTED([REPORT_BUGS_TO], ["$REPORT_BUGS_TO"], [Bug reporting address])
76 . ${srcdir}/configure.srv
78 if test "${srv_mingwce}" = "yes"; then
80 elif test "${srv_mingw}" = "yes"; then
81 LIBS="$LIBS -lwsock32"
82 elif test "${srv_qnx}" = "yes"; then
86 if test "${srv_mingw}" = "yes"; then
87 AC_DEFINE(USE_WIN32API, 1,
88 [Define if we should use the Windows API, instead of the
89 POSIX API. On Windows, we use the Windows API when
90 building for MinGW, but the POSIX API when building
94 if test "${srv_linux_usrregs}" = "yes"; then
95 AC_DEFINE(HAVE_LINUX_USRREGS, 1,
96 [Define if the target supports PTRACE_PEEKUSR for register ]
100 if test "${srv_linux_regsets}" = "yes"; then
101 AC_DEFINE(HAVE_LINUX_REGSETS, 1,
102 [Define if the target supports register sets.])
104 AC_MSG_CHECKING(for PTRACE_GETREGS)
105 AC_CACHE_VAL(gdbsrv_cv_have_ptrace_getregs,
106 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
108 [gdbsrv_cv_have_ptrace_getregs=yes],
109 [gdbsrv_cv_have_ptrace_getregs=no])])
110 AC_MSG_RESULT($gdbsrv_cv_have_ptrace_getregs)
111 if test "${gdbsrv_cv_have_ptrace_getregs}" = "yes"; then
112 AC_DEFINE(HAVE_PTRACE_GETREGS, 1,
113 [Define if the target supports PTRACE_GETREGS for register ]
117 AC_MSG_CHECKING(for PTRACE_GETFPXREGS)
118 AC_CACHE_VAL(gdbsrv_cv_have_ptrace_getfpxregs,
119 [AC_TRY_COMPILE([#include <sys/ptrace.h>],
120 [PTRACE_GETFPXREGS;],
121 [gdbsrv_cv_have_ptrace_getfpxregs=yes],
122 [gdbsrv_cv_have_ptrace_getfpxregs=no])])
123 AC_MSG_RESULT($gdbsrv_cv_have_ptrace_getfpxregs)
124 if test "${gdbsrv_cv_have_ptrace_getfpxregs}" = "yes"; then
125 AC_DEFINE(HAVE_PTRACE_GETFPXREGS, 1,
126 [Define if the target supports PTRACE_GETFPXREGS for extended ]
131 if test "$ac_cv_header_sys_procfs_h" = yes; then
132 BFD_HAVE_SYS_PROCFS_TYPE(lwpid_t)
133 BFD_HAVE_SYS_PROCFS_TYPE(psaddr_t)
134 BFD_HAVE_SYS_PROCFS_TYPE(prgregset_t)
135 BFD_HAVE_SYS_PROCFS_TYPE(elf_fpregset_t)
142 if test "$srv_linux_thread_db" = "yes"; then
144 old_LDFLAGS="$LDFLAGS"
145 LDFLAGS="$LDFLAGS -rdynamic"
146 AC_TRY_LINK([], [], [RDYNAMIC=-rdynamic], [RDYNAMIC=])
148 LDFLAGS="$old_LDFLAGS"
150 srv_thread_depfiles="thread-db.o proc-service.o"
151 USE_THREAD_DB="-DUSE_THREAD_DB"
152 AC_CACHE_CHECK([for TD_VERSION], gdbsrv_cv_have_td_version,
153 [AC_TRY_COMPILE([#include <thread_db.h>], [TD_VERSION;],
154 [gdbsrv_cv_have_td_version=yes],
155 [gdbsrv_cv_have_td_version=no])])
156 if test $gdbsrv_cv_have_td_version = yes; then
157 AC_DEFINE(HAVE_TD_VERSION, 1, [Define if TD_VERSION is available.])
161 if test "$srv_xmlfiles" != ""; then
162 srv_xmlbuiltin="xml-builtin.o"
163 AC_DEFINE(USE_XML, 1, [Define if an XML target description is available.])
165 tmp_xmlfiles=$srv_xmlfiles
167 for f in $tmp_xmlfiles; do
168 srv_xmlfiles="$srv_xmlfiles \$(XML_DIR)/$f"
172 GDBSERVER_DEPFILES="$srv_regobj $srv_tgtobj $srv_hostio_err_objs $srv_thread_depfiles"
173 GDBSERVER_LIBS="$srv_libs"
175 AC_SUBST(GDBSERVER_DEPFILES)
176 AC_SUBST(GDBSERVER_LIBS)
177 AC_SUBST(USE_THREAD_DB)
178 AC_SUBST(srv_xmlbuiltin)
179 AC_SUBST(srv_xmlfiles)
182 [case x$CONFIG_HEADERS in