From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9026 invoked by alias); 24 Feb 2010 13:35:17 -0000 Received: (qmail 9000 invoked by uid 22791); 24 Feb 2010 13:35:16 -0000 X-SWARE-Spam-Status: No, hits=-2.5 required=5.0 tests=AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 24 Feb 2010 13:35:12 +0000 Received: (qmail 3191 invoked from network); 24 Feb 2010 13:35:10 -0000 Received: from unknown (HELO orlando.localnet) (pedro@127.0.0.2) by mail.codesourcery.com with ESMTPA; 24 Feb 2010 13:35:10 -0000 From: Pedro Alves To: Harald Koenig , Joel Brobecker Subject: Build errors on AIX Date: Wed, 24 Feb 2010 13:35:00 -0000 User-Agent: KMail/1.12.2 (Linux/2.6.31-19-generic; KDE/4.3.2; x86_64; ; ) Cc: gdb-patches@sourceware.org, Harald Koenig References: <20100215141621.GA9469@atuin.science-computing.de> <20100223171348.GA31492@atuin.science-computing.de> <20100224125136.GA14069@atuin.science-computing.de> In-Reply-To: <20100224125136.GA14069@atuin.science-computing.de> MIME-Version: 1.0 Content-Type: Text/Plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <201002241335.07011.pedro@codesourcery.com> X-IsSubscribed: yes 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: 2010-02/txt/msg00588.txt.bz2 [removing bug-gdb@] On Wednesday 24 February 2010 12:51:36, Harald Koenig wrote: > On Feb 23, Harald Koenig wrote: > > > right now I'm trying to build gdb on AIX 6.1 which right now fails here > > > > "gdb-CVS-20100222/gdb/aix-thread.c", line 352.46: 1506-280 (W) Function argument assignment between types "int*" and "unsigned int*" is not allowed. ^^^^^^ How does one read that? line 352, column 46? On my sources, 352 has: 352: if (!ptrace32 (PTT_READ_GPRS, tid, gprs32, 0, NULL)) 353: memset (gprs32, 0, sizeof (gprs32)); > > where the source reads like this -- hmmmmm.... > > > > /* getthrds(3) isn't prototyped in any AIX 4.3.3 #include file. */ > > extern int getthrds (pid_t, struct thrdsinfo64 *, > > int, pthdb_tid_t *, int); > Anyway, ignoring line numbers, what's the compiler complaining about? Is it the signness of pthdb_tid_t that is wrong? > with the attached patch AIX 6.1 builds fine, and 5.1 still does so.... > (_AIX51 is defined in 5.2/5.3 too! I've not tested 5.0 though which is > why I don't check _AIX50 which is defined in 5.1-5.3 too). It would perhaps be better to autoconf the getthrds declaration being present, here, in gdb/configure.ac: aix*) AC_MSG_CHECKING(for AiX thread debugging library) AC_CACHE_VAL(gdb_cv_have_aix_thread_debug, [AC_TRY_COMPILE([#include ], [#ifndef PTHDB_VERSION_3 #error #endif], gdb_cv_have_aix_thread_debug=yes, gdb_cv_have_aix_thread_debug=no)]) AC_MSG_RESULT($gdb_cv_have_aix_thread_debug) if test $gdb_cv_have_aix_thread_debug = yes; then CONFIG_SRCS="${CONFIG_SRCS} aix-thread.c" CONFIG_OBS="${CONFIG_OBS} aix-thread.o" CONFIG_LDFLAGS="${CONFIG_LDFLAGS} -lpthdebug" fi ;; esac But I really don't know much about AIX. Joel? What do you think? You seem to be one of that last that touched this `getthrds' bit of code. :-) > but: 6.1 has the same break point problems as 5.3: > > - with no breakpoint before 1st run, break points can't be set later at all > > - otherwise break points seem to work I can't really guess exactly what's going on here. AIX/RS6000 is probably the port that most needs love of all the supported ports. E.g, I wouldn't be surprised if recent changes like PIE or multi-program support and the revamping around these broke this port, for it does things in non-standard ways. These commands may offer some clues: "(gdb) maint info breakpoints" "(gdb) set debug infrun 1" "(gdb) set target infrun 1" If you have an older gdb that works, I think we get to debug the new gdb to try to track this down. -- Pedro Alves