From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17819 invoked by alias); 25 Feb 2003 19:43:04 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 17784 invoked from network); 25 Feb 2003 19:43:02 -0000 Received: from unknown (HELO localhost.redhat.com) (172.16.49.200) by 172.16.49.205 with SMTP; 25 Feb 2003 19:43:02 -0000 Received: from redhat.com (localhost [127.0.0.1]) by localhost.redhat.com (Postfix) with ESMTP id A308A2A9C; Tue, 25 Feb 2003 12:43:10 -0500 (EST) Message-ID: <3E5BAB2E.4090201@redhat.com> Date: Tue, 25 Feb 2003 19:43:00 -0000 From: Andrew Cagney User-Agent: Mozilla/5.0 (X11; U; NetBSD macppc; en-US; rv:1.0.2) Gecko/20030223 X-Accept-Language: en-us, en MIME-Version: 1.0 To: Michael Elizabeth Chastain Cc: gdb-patches@sources.redhat.com Subject: Re: [rfa] PROBLEMS (i[3456]86-*-linux*): Require glibc 2.1.3 or later References: <200302251710.h1PHAhv07449@duracef.shout.net> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2003-02/txt/msg00651.txt.bz2 > > The compile barfs like this: > > In file included from ../../gdb-5.2/gdb/thread-db.c:26: > ../../gdb-5.2/gdb/gdb_thread_db.h:211: parse error before `uintptr_t' > ../../gdb-5.2/gdb/gdb_thread_db.h:211: warning: no semicolon at end > of struct or union > ../../gdb-5.2/gdb/gdb_thread_db.h:211: warning: no semicolon at end > of struct or union > ../../gdb-5.2/gdb/gdb_thread_db.h:212: warning: type defaults to > `int' in declaration of `msg' > ../../gdb-5.2/gdb/gdb_thread_db.h:212: warning: data definition has > no type or storage class > ../../gdb-5.2/gdb/gdb_thread_db.h:213: parse error before `}' > > This could be detected at autoconf time, something like: > > AC_MSG_CHECKING(for uintptr_t support in glibc) > AC_CACHE_VAL(ac_cv_c_uintptr_t, > [AC_TRY_COMPILE(, [ > #include > uintptr_t foo; > ], > ac_cv_c_uintptr_t=yes, ac_cv_c_uintptr_t=no)]) > AC_MSG_RESULT($ac_cv_c_uintptr_t) > if test $ac_cv_c_uintptr_t = yes; then > AC_DEFINE(HAVE_UINTPTR_T) > fi I think this is the best option. And, say have gdb_thread_db.h have: #ifndef HAVE_UINTPTR_T #error "..... (your glibc is too old?)" #endif Andrew > Then gdb_thread_db.h could produce a better error message if it > gets compiled. It's used only on *-*-*linux* and s390-*-*, > not everywhere. > > Do you want to go in that direction? That looks reasonable to me. > I would balk at actually filling in a defintion of uintptr_t though. > If their glibc is that old (3 years old!) they are likely to have > other problems and I want to cauterize their build. > > Michael C >