From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 7422 invoked by alias); 26 Mar 2012 18:43:01 -0000 Received: (qmail 7331 invoked by uid 22791); 26 Mar 2012 18:42:59 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW,RCVD_IN_SORBS_WEB X-Spam-Check-By: sourceware.org Received: from mail-gx0-f169.google.com (HELO mail-gx0-f169.google.com) (209.85.161.169) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 26 Mar 2012 18:42:41 +0000 Received: by ggeq1 with SMTP id q1so4830786gge.0 for ; Mon, 26 Mar 2012 11:42:40 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:subject:from:to:date:organization:content-type:x-mailer :content-transfer-encoding:mime-version:x-gm-message-state; bh=nM8AKZ5RKksv2OPBpp3OAzy/fCZq9beztCQQ8wU/UXY=; b=WEsKXJ800WQG7S4lAqrAr4VjKT5Uzq+S6KVj4vDpM0SHz9VufcHrO/ufrhAgjbW4Wb tVnggeOQo8zP9lruwDlUgiPf5Fsm1t332j4pmcQppzJM73tEKkeqPXPadXbJ15v1D+52 jCSrnA6vekgcOvMoJe0SrUBMEMcLephxdtMSE/74boE1KCO2mawWZmmtizSHWI6Mumci F7ZDBFQX/yWSxMuVepl18vrhAw+j+ARFafjTlnWdK2k1eCTFXg0C73qRnlE3QsHgkG6a XTk28FqGBcsS4WmYes9fCn4gJHwEOEA03MMHL5TxQVkZvpMx/9cvuYrIxdKXes7U8R61 rdQA== Received: by 10.236.109.198 with SMTP id s46mr23259329yhg.43.1332787360821; Mon, 26 Mar 2012 11:42:40 -0700 (PDT) Received: from [10.1.1.2] (189.26.33.225.dynamic.adsl.gvt.net.br. [189.26.33.225]) by mx.google.com with ESMTPS id o41sm49172627yhj.7.2012.03.26.11.42.38 (version=SSLv3 cipher=OTHER); Mon, 26 Mar 2012 11:42:39 -0700 (PDT) Message-ID: <1332787356.30339.4.camel@hactar> Subject: [RFC] Look for lwpid_t and psaddr_t in libthread_db.h. From: Thiago Jung Bauermann To: gdb-patches ml Date: Mon, 26 Mar 2012 18:43:00 -0000 Content-Type: text/plain; charset="ISO-8859-1" Content-Transfer-Encoding: 7bit Mime-Version: 1.0 X-Gm-Message-State: ALoCoQkZCwhs66gtzaHCX46WOdhzE++EvlXpMr4QyOlrC2bsyRSqCGSoWnu/7yEjaM0LX832bI00 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2012-03/txt/msg00875.txt.bz2 Hi, Android's bionic libc defines lwpid_t and psaddr_t in libthread_db.h. This patch makes gdbserver's configure look for them there. Ok to commit? It doesn't affect compilation in i386-linux or armv5tel-linux-gnueabi. -- []'s Thiago Jung Bauermann Linaro Toolchain Working Group 2012-03-26 Thiago Jung Bauermann * acinclude.m4 (GDBSERVER_HAVE_THREAD_DB_TYPE): New macro based on BFD_HAVE_SYS_PROCFS_TYPE. * configure.ac: Look for lwpid_t and psaddr_t in libthread_db.h. diff --git a/gdb/gdbserver/acinclude.m4 b/gdb/gdbserver/acinclude.m4 index 87d0db5..12eb12b 100644 --- a/gdb/gdbserver/acinclude.m4 +++ b/gdb/gdbserver/acinclude.m4 @@ -7,3 +7,21 @@ sinclude(../../config/override.m4) dnl For ACX_PKGVERSION and ACX_BUGURL. sinclude(../../config/acx.m4) +dnl Check for existence of a type $1 in libthread_db.h +dnl Based on BFD_HAVE_SYS_PROCFS_TYPE in bfd/bfd.m4. + +AC_DEFUN([GDBSERVER_HAVE_THREAD_DB_TYPE], +[AC_MSG_CHECKING([for $1 in thread_db.h]) + AC_CACHE_VAL(gdbserver_cv_have_thread_db_type_$1, + [AC_TRY_COMPILE([ +#include ], + [$1 avar], + gdbserver_cv_have_thread_db_type_$1=yes, + gdbserver_cv_have_thread_db_type_$1=no + )]) + if test $gdbserver_cv_have_thread_db_type_$1 = yes; then + AC_DEFINE([HAVE_]translit($1, [a-z], [A-Z]), 1, + [Define if has $1.]) + fi + AC_MSG_RESULT($gdbserver_cv_have_thread_db_type_$1) +]) diff --git a/gdb/gdbserver/configure.ac b/gdb/gdbserver/configure.ac index d2f22bd..e6e9162 100644 --- a/gdb/gdbserver/configure.ac +++ b/gdb/gdbserver/configure.ac @@ -268,6 +268,16 @@ if test "$ac_cv_header_sys_procfs_h" = yes; then BFD_HAVE_SYS_PROCFS_TYPE(elf_fpregset_t) fi +dnl Some systems (e.g., Android) have lwpid_t defined in libthread_db.h. +if test "$bfd_cv_have_sys_procfs_type_lwpid_t" != yes; then + GDBSERVER_HAVE_THREAD_DB_TYPE(lwpid_t) +fi + +dnl Some systems (e.g., Android) have psaddr_t defined in libthread_db.h. +if test "$bfd_cv_have_sys_procfs_type_psaddr_t" != yes; then + GDBSERVER_HAVE_THREAD_DB_TYPE(psaddr_t) +fi + dnl Check for libdl, but do not add it to LIBS as only gdbserver dnl needs it (and gdbreplay doesn't). old_LIBS="$LIBS"