Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Pierre Muller" <pierre.muller@ics-cnrs.unistra.fr>
To: "'Yao Qi'" <yao@codesourcery.com>, <gdb-patches@sourceware.org>
Subject: RE: [PATCH 0/3 V3] Test mingw32 GDB in cygwin
Date: Mon, 29 Jul 2013 14:03:00 -0000	[thread overview]
Message-ID: <004801ce8c64$6dbd64f0$49382ed0$@muller@ics-cnrs.unistra.fr> (raw)
In-Reply-To: <1375087546-22591-1-git-send-email-yao@codesourcery.com>

Hi all,


> -----Message d'origine-----
> De : gdb-patches-owner@sourceware.org [mailto:gdb-patches-
> owner@sourceware.org] De la part de Yao Qi
> Envoyé : lundi 29 juillet 2013 10:46
> À : gdb-patches@sourceware.org
> Objet : [PATCH 0/3 V3] Test mingw32 GDB in cygwin
> 
> This patch series try to fix the problems we've seen on running
> mingw32 native for testing in cygwin.  Patch 2/3 unbuffer the
> stdout and stderr, so that dejagnu/expect can match the output in
> the right order.  Likewise, patch 3/3 sets stdin/stdout/stderr into
> binary mode, so that dejagnu/expects can match the eol correctly
> too.  In order to avoid the side effects of these changes to native
> win32 platform, we need some bits to detect whether GDB is running
> in cygwin.  This is what patch 1/3 tries to do, and most of
> discussions are on it.
> 
> In V2, I proposed a new GDB option '--cygwin-tty' to tell GDB that
> it is in cygwin.  People don't like it, and Corinna gave an example
> that we can detect whether GDB is in cygwin or not.

  I didn't like it because I explained that the changes you propose are
useful
to run the testsuite on Windows OS, but not only if running
under a cygwin terminal.
  I am using a msys port of dejagnu expect,
and this needs the same changes (remove buffering and switch to binary
mode),
but with the new version of your patch, 
nothing would happen for me and the testsuite would still fail.


 
> Thanks to Corinna's example, we can know whether GDB is in cygwin
> by checking the file name of handler of stdin (or stdout).  As a
> result, a new option '--cygwin-tty' is avoided.  Patch 1/3 is
> almost rewritten in V3.

  Yes, that's true, but the down side is that you transform
the terminal settings only when you are on a cygwin terminal...
 I think this is not correct:
 I suspect that is_in_cygwin will return true on every type of cygwin
terminal,
in particular also when you are in interactive mode... 
  I thought that your patch should only change settings if the pipes
from expect redirection are detected, but there are no pipe checks
anymore...
Note that I am not sure of the above, as 'maybe' the pty/tty name doesn't
match in the interactive shell case.
  Secondly, your patch will never trigger the no buffer/binary mode changes
on non-cygwin terminals, while I argued before that it should also be usable
in those conditions.
  
  This is why I would rather like to have the settings modification
grouped into a function (let's call it setup_handles_for_testsuite)
which would be an empty function for all but __MINGW32__ code.
This function could then be called by
(gdb) set maint testsuite-mode on
command or automatically when a cygwin shell and pipes are detected.

  I am sorry to bother you again, but I would really like to
get a patch that can be used in more general framework and
that avoids to change the standard handles when not necessary.

  And, to finish, I would like to reiterate my support for this
patch, even though I am still criticizing it.

Sorry to bother you more,


Pierre Muller


  parent reply	other threads:[~2013-07-29 14:03 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-29  8:46 Yao Qi
2013-07-29  8:46 ` [PATCH 2/3] Unbuffer stdout and stderr " Yao Qi
2013-07-29 15:42   ` Eli Zaretskii
2013-08-01  8:06     ` Yao Qi
2013-08-01 16:36       ` Eli Zaretskii
2013-08-02  0:40         ` Yao Qi
2013-07-29  8:46 ` [PATCH 1/3] Detect GDB is " Yao Qi
2013-07-29 15:38   ` Eli Zaretskii
2013-07-30  9:27     ` Yao Qi
2013-07-30 15:33       ` Eli Zaretskii
2013-08-01  7:52         ` Yao Qi
2013-08-01 16:33           ` Eli Zaretskii
2013-08-02  2:51             ` Yao Qi
2013-08-02  6:10               ` Eli Zaretskii
2013-08-03  4:55           ` Christopher Faylor
2013-08-04  8:45             ` Yao Qi
2013-08-05  4:41               ` Christopher Faylor
2013-08-05  6:23                 ` Yao Qi
2013-08-06  2:08                   ` Christopher Faylor
2013-08-06  3:05                     ` Yao Qi
2013-08-08  5:11                       ` Christopher Faylor
2013-08-08  7:24                         ` Yao Qi
2013-08-15 17:40                           ` Christopher Faylor
2013-08-15 18:58                             ` Tom Tromey
2013-08-15 19:14                               ` Eli Zaretskii
2013-08-16  0:06                                 ` Yao Qi
2013-08-16  2:01                                   ` Tom Tromey
2013-08-16  1:07                             ` Yao Qi
2013-08-16 16:37                               ` Christopher Faylor
2013-08-08  7:28                         ` Pierre Muller
2013-08-13  8:12                           ` Yao Qi
2013-08-13  8:23                             ` Pierre Muller
2013-07-29  8:46 ` [PATCH 3/3] Set stdin/stdout/stderr to binary mode " Yao Qi
2013-07-29 15:44   ` Eli Zaretskii
2013-08-01  8:10     ` Yao Qi
2013-08-01 16:37       ` Eli Zaretskii
2013-07-29 14:03 ` Pierre Muller [this message]
2013-07-30  6:03   ` [PATCH 0/3 V3] Test mingw32 GDB " Yao Qi
2013-07-29 18:03 ` Tom Tromey
2013-07-29 18:43   ` Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='004801ce8c64$6dbd64f0$49382ed0$@muller@ics-cnrs.unistra.fr' \
    --to=pierre.muller@ics-cnrs.unistra.fr \
    --cc=gdb-patches@sourceware.org \
    --cc=yao@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox