From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25498 invoked by alias); 19 Nov 2002 11:53:03 -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 25378 invoked from network); 19 Nov 2002 11:52:59 -0000 Received: from unknown (HELO zenia.red-bean.com) (66.244.67.22) by sources.redhat.com with SMTP; 19 Nov 2002 11:52:59 -0000 Received: (from jimb@localhost) by zenia.red-bean.com (8.11.6/8.11.6) id gAJBaSq22675; Tue, 19 Nov 2002 06:36:28 -0500 To: Daniel Jacobowitz Cc: Alexander Larsson , gdb@sources.redhat.com Subject: Re: Final separate debug info patch References: <20021119053344.GA29601@nevyn.them.org> From: Jim Blandy Date: Tue, 19 Nov 2002 03:53:00 -0000 In-Reply-To: <20021119053344.GA29601@nevyn.them.org> Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2.92 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-SW-Source: 2002-11/txt/msg00215.txt.bz2 Daniel Jacobowitz writes: > On Tue, Nov 19, 2002 at 12:04:02AM -0500, Jim Blandy wrote: > > There are some problems at the moment: DejaGNU has the name "unix" > > hard-coded into it, and thinks that anything with another name is a > > remote board. Some tests won't run if the target is remote. I think > > I know how to persuade it that unix-separate-debug is still not a > > remote target, but I'm just going to post this as is for the time > > being. > > FYI, I do this. Here's how. This is a simple board description file > which just uses a different C compiler, since GDB wasn't honoring CC: > > > # The canonical unix board description. > load_generic_config "unix"; > > set_board_info compiler "gcc-3.2"; > set_board_info c++compiler "g++-3.2"; > > global board > proc ${board}_init { whole_name } { > global board_info > set board_info(unix3.2,isremote) 0; > } > > > Replace unix3.2 with whatever goes before the .exp. The ${board} bit > is necessary and becomes something involving the local hostname, IIRC. Okay --- that works. Here's the latest iteration: --- load_base_board_description "unix" set strip_to_file_program "/home/jimb/elfutils/bin/strip" proc ${current_target_name}_compile {source dest type options} { global strip_to_file_program # Run the standard compilation procedure. set result [default_target_compile $source $dest $type $options] # If it didn't succeed, return directly. if {[string compare $result ""] != 0} { return $result } # Otherwise, strip the executable and copy its debug info to a # separate file, leaving only a pointer behind. if {[string compare $type executable] == 0} { exec $strip_to_file_program -f ${dest}.separate-debug ${dest} } } proc ${board}_init { whole_name } { global board_info set board_info(unix-separate-debug,isremote) 0 }