From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29279 invoked by alias); 5 May 2003 21:47:16 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 29272 invoked from network); 5 May 2003 21:47:16 -0000 Received: from unknown (HELO aimail.aiinet.com) (205.245.180.30) by sources.redhat.com with SMTP; 5 May 2003 21:47:16 -0000 Received: by aimail.aiinet.com with Internet Mail Service (5.5.2653.19) id ; Mon, 5 May 2003 17:46:17 -0400 Message-ID: <3B785392832ED71192AE00D0B7B0D75B1C647D@aimail.aiinet.com> From: "Harris, Jeff" To: 'Daniel Jacobowitz' Cc: gdb@sources.redhat.com Subject: RE: gdbserver cross compile Date: Mon, 05 May 2003 21:47:00 -0000 MIME-Version: 1.0 Content-Type: text/plain X-SW-Source: 2003-05/txt/msg00062.txt.bz2 I tried setting both cross_compiling and ac_cv_prog_cc_cross environment variables to "yes" before running configure. Neither seemed to stop it from running its program and overriding my values. In thinking about setting ac_cv_header_stdc to yes, this also won't help since the problem program, the one which checks ctype macros, will still be run unless I can get cross_compiling to be set to "yes". Jeff -----Original Message----- From: Daniel Jacobowitz [mailto:drow@mvista.com] Sent: Monday, May 05, 2003 5:35 PM To: Harris, Jeff Cc: gdb@sources.redhat.com Subject: Re: gdbserver cross compile On Mon, May 05, 2003 at 05:29:48PM -0400, Harris, Jeff wrote: > I was having problems with getting gdbserver to correctly detect whether it > is being built with a cross-compiler or not. I was trying to cross-compile > from i386 (RedHat 7.2) to i386(gcc 3.2.3 and glibc 2.3.2). The configure > script for gdbserver looks to have been created with an old version of > autoconf (2.13 I believe). The mechanism it uses to detect a cross compiler > simply tries to compile a simple program and run it. If it runs, it decides > it isn't cross-compiling otherwise it is cross-compiling. > > My problem was that while this program runs with the cross-compiler, the > program to detect whether standard C headers are used does not run. As a > result, the STDC_HEADERS #define is not set and ultimately a compile error > to occur. > > There doesn't seem to be a way to override the configure script's detection > mechanism. However, if I rerun autoconf (version 2.53) in the gdbserver > directory, the resulting configure script is updated to include better > logic. Basically, it compares the build and host options to configure to > determine its cross-compile state. This mechanism works for me since I have > different values for these options. > > Is an updated version of configure something that would be considered for > GDB 5.4? Sadly, no. You can't use autoconf 2.5x with the current source tree, in general; the conversion process is still being talked about. It's pretty easy to fake out the 2.13 logic for this case. I don't remember exactly what the magic was, since I can't find any specific reference to it in our cross build scripts; but all you should need to do is preload one of the configure script's cache variables with something that says no, don't run programs. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer