From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8363 invoked by alias); 15 Sep 2014 04:55:04 -0000 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 Received: (qmail 8354 invoked by uid 89); 15 Sep 2014 04:55:03 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-yk0-f172.google.com Received: from mail-yk0-f172.google.com (HELO mail-yk0-f172.google.com) (209.85.160.172) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Mon, 15 Sep 2014 04:55:02 +0000 Received: by mail-yk0-f172.google.com with SMTP id q9so1805237ykb.31 for ; Sun, 14 Sep 2014 21:55:00 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.236.160.225 with SMTP id u61mr31341825yhk.4.1410756900564; Sun, 14 Sep 2014 21:55:00 -0700 (PDT) Received: by 10.170.66.138 with HTTP; Sun, 14 Sep 2014 21:55:00 -0700 (PDT) In-Reply-To: <87egvd4hrx.fsf@codesourcery.com> References: <1409232690-24185-1-git-send-email-yao@codesourcery.com> <87y4u2d9ic.fsf@codesourcery.com> <87d2bbcyn8.fsf@codesourcery.com> <87egvd4hrx.fsf@codesourcery.com> Date: Mon, 15 Sep 2014 04:55:00 -0000 Message-ID: Subject: Re: [PATCH] Another board file for remote host From: Doug Evans To: Yao Qi Cc: "gdb-patches@sourceware.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2014-09/txt/msg00490.txt.bz2 Actually I've been spending more time with this today, I know I owe you a response. I have an emacs buffer with a reply in progress. Good timing ... :-) On Sun, Sep 14, 2014 at 9:41 PM, Yao Qi wrote: > Yao Qi writes: > >>> +global GDB >>> +set GDB [file join [pwd] "../gdb"] >>> >>> Check if GDB has been set first, allow the user to >>> pass this in from the command line. >> >> GDB is always set in lib/gdb.exp and it is loaded earlier than the >> board file. In lib/gdb.exp: >> >> if ![info exists GDB] { >> if ![is_remote host] { >> set GDB [findfile $base_dir/../../gdb/gdb "$base_dir/../../gdb/gdb= " [transform gdb]] >> } else { >> set GDB [transform gdb] >> } >> } >> >> so we can't do the check here. >> >>> +# The directory to copy files to. In default, we choose ./remote-host= , to >>> +# avoiding messing up your HOME. You can choose other directory as >>> +# you like. >>> +set host_dir [file join [pwd] "remote-host"] >>> >>> How about allowing the user to pass this in from the command line? >>> By convention such variables are then uppercase. >>> >> >> That is fine to me. In the updated patch, user can specify the >> directory in command line via variable HOST_DIR. >> >>> + >>> +proc ${board}_download { board src dest } { >>> + global env board_type >>> + global host_dir >>> + >>> + if { [llength $dest] > 0 } { >>> + set destfile [lindex $dest 0] >>> + } else { >>> + set destfile [file tail $src] >>> + } >>> >>> This doesn't feel right. >>> I realize /usr/share/dejagnu/remote.exp:remote_download >>> checks for whether the third parameter can be a list, but >>> remote_download is a varargs function (the name of the last >>> variable is "args") and is not a "board" function. >>> Other ${foo}_download functions that are actual "board" functions, >>> e.g., /usr/share/dejagnu/remote.exp:standard_download, >>> or gdb/testsuite/boards/remote-stdio-gdbserver.exp, >>> don't treat the third parameter as if it can be a list. >> >> Yes, remote_download acts as a wrapper or an adapter to "board" >> functions which are defined in board files. In tcl, simple string is >> also list, see, >> >> % llength "foo" >> 1 >> % lindex "foo" 0 >> foo >> >> The code above is right to me but unnecessary. Use dest as a string in >> the updated patch. > > Hi, Doug, > How do you think of the updated patch? > https://sourceware.org/ml/gdb-patches/2014-09/msg00117.html > > -- > Yao (=E9=BD=90=E5=B0=A7)