GNU bug report logs -
#10466
MSYS problem with redirects
Previous Next
Reported by: Peter Rosin <peda <at> lysator.liu.se>
Date: Mon, 9 Jan 2012 11:31:01 UTC
Severity: minor
Tags: patch
Done: Stefano Lattarini <stefano.lattarini <at> gmail.com>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 10466 in the body.
You can then email your comments to 10466 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Mon, 09 Jan 2012 11:31:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Peter Rosin <peda <at> lysator.liu.se>
:
New bug report received and forwarded. Copy sent to
bug-automake <at> gnu.org
.
(Mon, 09 Jan 2012 11:31:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hi!
parallel-tests-fd-redirect.test fails on MSYS, and I think
the cause is that the write (9, ...) simply doesn't work for
MinGW programs (baz.exe and qux.test.exe). It works for the
shell scripts (foo.sh and bar) since /bin/sh is an MSYS
program and thus is a lot more POSIXy. But redirecting from
the MinGW world to the MSYS world in this maner is simply
not possible, I think. I think that will only work for
fd 0,1 and 2 (but I'm not 100% sure).
Also, including unistd.h will not work for non-ANSI systems,
MinGW provides a half-baked unistd.h but MSVC does not.
MSVC has its write() in io.h, but it will probably suffer
from the same problem with a dysfunctional fd 9.
With this diff:
diff --git a/tests/parallel-tests-fd-redirect.test b/tests/parallel-tests-fd-red
index 73a134e..5728014 100755
--- a/tests/parallel-tests-fd-redirect.test
+++ b/tests/parallel-tests-fd-redirect.test
@@ -65,20 +65,26 @@ END
chmod a+x foo.sh bar
cat > baz.c <<'END'
+#include <stdio.h>
#include <unistd.h>
int main (void)
{
- write (9, " bazbazbaz\n", 11);
- return 0;
+ ssize_t res = write (9, " bazbazbaz\n", 11);
+ if (res < 0)
+ perror("write failed");
+ return res != 11;
}
END
cat > zardoz.c <<'END'
+#include <stdio.h>
#include <unistd.h>
int main (void)
{
- write (9, " quxquxqux\n", 11);
- return 0;
+ ssize_t res = write (9, " quxquxqux\n", 11);
+ if (res < 0)
+ perror("write failed");
+ return res != 11;
}
END
the embedded test suite goes from 4 PASS to 2 PASS / 2 FAIL,
and this in the log files:
+ cat foo.log
+ cat bar.log
+ cat baz.log
write failed: Bad file descriptor
+ cat qux.log
write failed: Bad file descriptor
supporting the above beliefs.
Cheers,
Peter
For reference, the original parallel-tests-fd-redirect.log:
Running from installcheck: no
Using TAP: no
PATH = /home/peda/automake/tests:/c/Program Files (x86)/Microsoft F#/v4.0/:/c/Program Files (x86)/Microsoft Visual Studio 10.0/VSTSDB/Deploy:/c/Program Files (x86)/Microsoft Visual Studio 10.0/Common7/IDE/:/c/Program Files (x86)/Microsoft Visual Studio 10.0/VC/BIN:/c/Program Files (x86)/Microsoft Visual Studio 10.0/Common7/Tools/:/c/Windows/Microsoft.NET/Framework/v4.0.30319:/c/Windows/Microsoft.NET/Framework/v3.5:/c/Program Files (x86)/Microsoft Visual Studio 10.0/VC/VCPackages:/c/Program Files (x86)/HTML Help Workshop:/c/Program Files (x86)/Microsoft Visual Studio 10.0/Team Tools/Performance Tools:/c/Program Files (x86)/Microsoft SDKs/Windows/v7.0A/bin/NETFX 4.0 Tools:.:/usr/local/bin:/mingw/bin:/bin:/c/Program Files/Common Files/Microsoft Shared/Windows Live:/c/Program Files (x86)/Common Files/Microsoft Shared/Windows Live:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/
++ pwd
/home/peda/automake/tests/parallel-tests-fd-redirect.dir
+ cat
+ cat
+ aclocal-1.11a -Werror
+ autoconf -B /no/such/dir
+ automake-1.11a --foreign -Werror -Wall -a
configure.in:2: installing `./test-driver'
+ cat
+ chmod a+x foo.sh
+ cat
+ chmod a+x foo.sh bar
+ cat
+ cat
+ ./configure
checking for a BSD-compatible install... /bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: executing depfiles commands
+ st=0
+ grep '^bar\.log:.*bar' Makefile
bar.log: bar
+ grep '^baz\.log:.*baz\$(EXEEXT)' Makefile
baz.log: baz$(EXEEXT)
+ grep '^\.test\$(EXEEXT)\.log:' Makefile
.test$(EXEEXT).log:
+ /bin/grep -E '^(foo|qux)\.log:' Makefile
+ test 0 -eq 0
+ st=0
+ make check
+ cat stdout
make baz.exe qux.test.exe
make[1]: Entering directory `/home/peda/automake/tests/parallel-tests-fd-redirect.dir'
gcc -DPACKAGE_NAME=\"parallel-tests-fd-redirect\" -DPACKAGE_TARNAME=\"parallel-tests-fd-redirect\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"parallel-tests-fd-redirect\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"parallel-tests-fd-redirect\" -DVERSION=\"1.0\" -I. -g -O2 -MT baz.o -MD -MP -MF .deps/baz.Tpo -c -o baz.o baz.c
mv -f .deps/baz.Tpo .deps/baz.Po
gcc -g -O2 -o baz.exe baz.o
gcc -DPACKAGE_NAME=\"parallel-tests-fd-redirect\" -DPACKAGE_TARNAME=\"parallel-tests-fd-redirect\" -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"parallel-tests-fd-redirect\ 1.0\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"parallel-tests-fd-redirect\" -DVERSION=\"1.0\" -I. -g -O2 -MT zardoz.o -MD -MP -MF .deps/zardoz.Tpo -c -o zardoz.o zardoz.c
mv -f .deps/zardoz.Tpo .deps/zardoz.Po
gcc -g -O2 -o qux.test.exe zardoz.o
make[1]: Leaving directory `/home/peda/automake/tests/parallel-tests-fd-redirect.dir'
make check-TESTS check-local
make[1]: Entering directory `/home/peda/automake/tests/parallel-tests-fd-redirect.dir'
make[2]: Entering directory `/home/peda/automake/tests/parallel-tests-fd-redirect.dir'
foofoofoo
PASS: foo.sh
barbarbar
PASS: bar
PASS: baz.exe
PASS: qux.test.exe
============================================================================
Testsuite summary for parallel-tests-fd-redirect 1.0
============================================================================
# TOTAL: 4
# PASS: 4
# SKIP: 0
# XFAIL: 0
# FAIL: 0
# XPASS: 0
# ERROR: 0
============================================================================
make[2]: Leaving directory `/home/peda/automake/tests/parallel-tests-fd-redirect.dir'
make[1]: Nothing to be done for `check-local'.
make[1]: Leaving directory `/home/peda/automake/tests/parallel-tests-fd-redirect.dir'
+ cat foo.log
+ cat bar.log
+ cat baz.log
+ cat qux.log
+ test 0 -eq 0
+ grep '^ foofoofoo$' stdout
foofoofoo
+ grep '^ barbarbar$' stdout
barbarbar
+ grep '^ bazbazbaz$' stdout
+ exit_status=1
+ set +e
+ cd /home/peda/automake/tests
+ test no = yes
+ case $am_explicit_skips in
+ test 1 -eq 0
+ keep_testdirs=yes
+ am_keeping_testdirs
+ case $keep_testdirs in
+ return 0
+ set +x
parallel-tests-fd-redirect: exit 1
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Mon, 09 Jan 2012 19:34:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 10466 <at> debbugs.gnu.org (full text, mbox):
On 01/09/2012 12:29 PM, Peter Rosin wrote:
> Hi!
>
> parallel-tests-fd-redirect.test fails on MSYS, and I think
> the cause is that the write (9, ...) simply doesn't work for
> MinGW programs (baz.exe and qux.test.exe). It works for the
> shell scripts (foo.sh and bar) since /bin/sh is an MSYS
> program and thus is a lot more POSIXy. But redirecting from
> the MinGW world to the MSYS world in this manner is simply
> not possible, I think. I think that will only work for
> fd 0,1 and 2 (but I'm not 100% sure).
>
So I guess even something like this would fail:
int main (void)
{
return (system("echo bazbazbaz >&9") == 0);
}
right? If yes, the solution might be splitting p'arallel-tests-fd-redirect.test'
into two tests, and make the one testing the redirection from C skip on MinGW/MSYS.
> Also, including unistd.h will not work for non-ANSI systems,
> MinGW provides a half-baked unistd.h but MSVC does not.
> MSVC has its write() in io.h, but it will probably suffer
> from the same problem with a dysfunctional fd 9.
> With this diff:
>
> diff --git a/tests/parallel-tests-fd-redirect.test b/tests/parallel-tests-fd-red
> index 73a134e..5728014 100755
> --- a/tests/parallel-tests-fd-redirect.test
> +++ b/tests/parallel-tests-fd-redirect.test
> @@ -65,20 +65,26 @@ END
> chmod a+x foo.sh bar
>
> cat > baz.c <<'END'
> +#include <stdio.h>
> #include <unistd.h>
> int main (void)
> {
> - write (9, " bazbazbaz\n", 11);
> - return 0;
> + ssize_t res = write (9, " bazbazbaz\n", 11);
> + if (res < 0)
> + perror("write failed");
> + return res != 11;
> }
> END
>
> cat > zardoz.c <<'END'
> +#include <stdio.h>
> #include <unistd.h>
> int main (void)
> {
> - write (9, " quxquxqux\n", 11);
> - return 0;
> + ssize_t res = write (9, " quxquxqux\n", 11);
> + if (res < 0)
> + perror("write failed");
> + return res != 11;
> }
> END
>
BTW, this change might be independently useful in catching other potential
unexpected write failures; would you feel like cooking it in a proper patch?
> the embedded test suite goes from 4 PASS to 2 PASS / 2 FAIL,
> and this in the log files:
>
> + cat foo.log
> + cat bar.log
> + cat baz.log
> write failed: Bad file descriptor
> + cat qux.log
> write failed: Bad file descriptor
>
> supporting the above beliefs.
>
> Cheers,
> Peter
>
Thanks,
Stefano
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Fri, 13 Jan 2012 12:39:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 10466 <at> debbugs.gnu.org (full text, mbox):
Reference:
<http://debbugs.gnu.org/cgi/bugreport.cgi?bug=10466>
Hi Peter. Ping on this? It seems my reply has somehow slipped through
the cracks ...
Thanks,
Stefano
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Mon, 16 Jan 2012 11:42:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 10466 <at> debbugs.gnu.org (full text, mbox):
Sorry for the delay.
Stefano Lattarini skrev 2012-01-09 20:32:
> On 01/09/2012 12:29 PM, Peter Rosin wrote:
>> Hi!
>>
>> parallel-tests-fd-redirect.test fails on MSYS, and I think
>> the cause is that the write (9, ...) simply doesn't work for
>> MinGW programs (baz.exe and qux.test.exe). It works for the
>> shell scripts (foo.sh and bar) since /bin/sh is an MSYS
>> program and thus is a lot more POSIXy. But redirecting from
>> the MinGW world to the MSYS world in this manner is simply
>> not possible, I think. I think that will only work for
>> fd 0,1 and 2 (but I'm not 100% sure).
>>
> So I guess even something like this would fail:
>
> int main (void)
> {
> return (system("echo bazbazbaz >&9") == 0);
> }
>
> right?
Yes, system() fails as well:
+ cat foo.log
+ cat bar.log
+ cat baz.log
The handle could not be duplicated
during redirection of handle 1.
+ cat qux.log
The handle could not be duplicated
during redirection of handle 1.
In a MinGW program, system() invokes the Windows command interpreter
(cmd) and not /bin/sh, and it suffers the same redirection troubles
as the original C code. However, I think fd 9 is lost already when
the MinGW program is fork()/exec()ed from the MSYS environment and
adding system() to the mix simply added another non-MSYS layer. I
believe anything you try to do, short of being an MSYS program, is
going to fail. Since the whole point of MSYS in its normal mode is
building MinGW programs with the MinGW compiler (and not MSYS
programs), this redirection just won't work. This is one of the
costs of the trickery MSYS is guilty of by masquerading as MinGW,
when the reality is that the environment is a cross from MSYS to
MinGW, and not MinGW native. In a plain old cross enviroment,
nobody is surprised when executing generated executables fail in
spectacular ways...
> If yes, the solution might be splitting p'arallel-tests-fd-redirect.test'
> into two tests, and make the one testing the redirection from C skip on MinGW/MSYS.
Maybe, but XFAIL would be better if that can be specified for an
individual system (I don't think so, but I forget). Also,
mentioning it in the documentation would be nice if there is any
previous mention of the use of fd 9 from test cases (I'm ignorant
here, and haven't bothered to check).
>> Also, including unistd.h will not work for non-ANSI systems,
>> MinGW provides a half-baked unistd.h but MSVC does not.
>> MSVC has its write() in io.h, but it will probably suffer
>> from the same problem with a dysfunctional fd 9.
>
>> With this diff:
>>
>> diff --git a/tests/parallel-tests-fd-redirect.test b/tests/parallel-tests-fd-red
>> index 73a134e..5728014 100755
>> --- a/tests/parallel-tests-fd-redirect.test
>> +++ b/tests/parallel-tests-fd-redirect.test
>> @@ -65,20 +65,26 @@ END
>> chmod a+x foo.sh bar
>>
>> cat > baz.c <<'END'
>> +#include <stdio.h>
>> #include <unistd.h>
>> int main (void)
>> {
>> - write (9, " bazbazbaz\n", 11);
>> - return 0;
>> + ssize_t res = write (9, " bazbazbaz\n", 11);
>> + if (res < 0)
>> + perror("write failed");
>> + return res != 11;
>> }
>> END
>>
>> cat > zardoz.c <<'END'
>> +#include <stdio.h>
>> #include <unistd.h>
>> int main (void)
>> {
>> - write (9, " quxquxqux\n", 11);
>> - return 0;
>> + ssize_t res = write (9, " quxquxqux\n", 11);
>> + if (res < 0)
>> + perror("write failed");
>> + return res != 11;
>> }
>> END
>>
> BTW, this change might be independently useful in catching other potential
> unexpected write failures; would you feel like cooking it in a proper patch?
I'm swamped with work for a week or so, go right ahead if you like to
and can't wait.
Cheers,
Peter
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Mon, 23 Jan 2012 08:49:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 10466 <at> debbugs.gnu.org (full text, mbox):
Stefano Lattarini skrev 2012-01-09 20:32:
> On 01/09/2012 12:29 PM, Peter Rosin wrote:
>> With this diff:
>>
>> diff --git a/tests/parallel-tests-fd-redirect.test b/tests/parallel-tests-fd-red
>> index 73a134e..5728014 100755
>> --- a/tests/parallel-tests-fd-redirect.test
>> +++ b/tests/parallel-tests-fd-redirect.test
>> @@ -65,20 +65,26 @@ END
>> chmod a+x foo.sh bar
>>
>> cat > baz.c <<'END'
>> +#include <stdio.h>
>> #include <unistd.h>
>> int main (void)
>> {
>> - write (9, " bazbazbaz\n", 11);
>> - return 0;
>> + ssize_t res = write (9, " bazbazbaz\n", 11);
>> + if (res < 0)
>> + perror("write failed");
>> + return res != 11;
>> }
>> END
>>
>> cat > zardoz.c <<'END'
>> +#include <stdio.h>
>> #include <unistd.h>
>> int main (void)
>> {
>> - write (9, " quxquxqux\n", 11);
>> - return 0;
>> + ssize_t res = write (9, " quxquxqux\n", 11);
>> + if (res < 0)
>> + perror("write failed");
>> + return res != 11;
>> }
>> END
>>
> BTW, this change might be independently useful in catching other potential
> unexpected write failures; would you feel like cooking it in a proper patch?
Like this (for master)?
Cheers,
Peter
From a8265beb4490e9188358d6e761da33ae326aff41 Mon Sep 17 00:00:00 2001
From: Peter Rosin <peda <at> lysator.liu.se>
Date: Mon, 23 Jan 2012 09:18:46 +0100
Subject: [PATCH] tests: improve diagnostics when write(2) fails
MinGW programs can't redirect file descriptor 9, they can only redirect
stdin, stdout and stderr. So, improve the information in the test log.
See automake bug#10466.
* tests/parallel-tests-fd-redirect.test (baz.c, zardoz.c): Check the
return value from the write(2) call, and report detected errors.
---
tests/parallel-tests-fd-redirect.test | 16 +++++++++++-----
1 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/tests/parallel-tests-fd-redirect.test b/tests/parallel-tests-fd-redirect.test
index 73a134e..8b16378 100755
--- a/tests/parallel-tests-fd-redirect.test
+++ b/tests/parallel-tests-fd-redirect.test
@@ -1,5 +1,5 @@
#! /bin/sh
-# Copyright (C) 2011 Free Software Foundation, Inc.
+# Copyright (C) 2011, 2012 Free Software Foundation, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -65,20 +65,26 @@ END
chmod a+x foo.sh bar
cat > baz.c <<'END'
+#include <stdio.h>
#include <unistd.h>
int main (void)
{
- write (9, " bazbazbaz\n", 11);
- return 0;
+ ssize_t res = write (9, " bazbazbaz\n", 11);
+ if (res < 0)
+ perror("write failed");
+ return res != 11;
}
END
cat > zardoz.c <<'END'
+#include <stdio.h>
#include <unistd.h>
int main (void)
{
- write (9, " quxquxqux\n", 11);
- return 0;
+ ssize_t res = write (9, " quxquxqux\n", 11);
+ if (res < 0)
+ perror("write failed");
+ return res != 11;
}
END
--
1.7.5.1
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Mon, 23 Jan 2012 09:06:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 10466 <at> debbugs.gnu.org (full text, mbox):
On 01/23/2012 09:48 AM, Peter Rosin wrote:
> Stefano Lattarini skrev 2012-01-09 20:32:
>
>> BTW, this change might be independently useful in catching other potential
>> unexpected write failures; would you feel like cooking it in a proper patch?
>
> Like this (for master)?
>
> [SNIP inlined patch]
>
Yes, the patch is good. Thanks.
I'll try to address the still-pending bug#10466 soonish (in next few days).
Thanks again for all the testing,
Stefano
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Mon, 23 Jan 2012 10:08:01 GMT)
Full text and
rfc822 format available.
Message #23 received at 10466 <at> debbugs.gnu.org (full text, mbox):
Stefano Lattarini skrev 2012-01-23 10:04:
> On 01/23/2012 09:48 AM, Peter Rosin wrote:
>> Stefano Lattarini skrev 2012-01-09 20:32:
>>
>>> BTW, this change might be independently useful in catching other potential
>>> unexpected write failures; would you feel like cooking it in a proper patch?
>>
>> Like this (for master)?
>>
>> [SNIP inlined patch]
>>
> Yes, the patch is good. Thanks.
Pushed.
Cheers,
Peter
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Fri, 27 Jan 2012 12:22:02 GMT)
Full text and
rfc822 format available.
Message #26 received at 10466 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
tags 10466 + patch
severity 10466 minor
thanks
On 01/16/2012 12:40 PM, Peter Rosin wrote:
> Sorry for the delay.
>
Ditto here :-)
> Stefano Lattarini skrev 2012-01-09 20:32:
>> On 01/09/2012 12:29 PM, Peter Rosin wrote:
>>> Hi!
>>>
>>> parallel-tests-fd-redirect.test fails on MSYS, and I think
>>> the cause is that the write (9, ...) simply doesn't work for
>>> MinGW programs (baz.exe and qux.test.exe). It works for the
>>> shell scripts (foo.sh and bar) since /bin/sh is an MSYS
>>> program and thus is a lot more POSIXy. But redirecting from
>>> the MinGW world to the MSYS world in this manner is simply
>>> not possible, I think. I think that will only work for
>>> fd 0,1 and 2 (but I'm not 100% sure).
>>>
The attached patch should take care of the issue. Can you confirm
this is actually the case, before I push it?
Thanks,
Stefano
[0001-tests-work-around-MinGW-MSYS-issue-in-fd-redirection.patch (text/x-diff, attachment)]
Added tag(s) patch.
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Fri, 27 Jan 2012 12:22:03 GMT)
Full text and
rfc822 format available.
Severity set to 'minor' from 'normal'
Request was from
Stefano Lattarini <stefano.lattarini <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Fri, 27 Jan 2012 12:22:03 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-automake <at> gnu.org
:
bug#10466
; Package
automake
.
(Fri, 27 Jan 2012 14:39:01 GMT)
Full text and
rfc822 format available.
Message #33 received at 10466 <at> debbugs.gnu.org (full text, mbox):
Stefano Lattarini skrev 2012-01-27 13:20:
> tags 10466 + patch
> severity 10466 minor
> thanks
>
> On 01/16/2012 12:40 PM, Peter Rosin wrote:
>> Sorry for the delay.
>>
> Ditto here :-)
>
>> Stefano Lattarini skrev 2012-01-09 20:32:
>>> On 01/09/2012 12:29 PM, Peter Rosin wrote:
>>>> Hi!
>>>>
>>>> parallel-tests-fd-redirect.test fails on MSYS, and I think
>>>> the cause is that the write (9, ...) simply doesn't work for
>>>> MinGW programs (baz.exe and qux.test.exe). It works for the
>>>> shell scripts (foo.sh and bar) since /bin/sh is an MSYS
>>>> program and thus is a lot more POSIXy. But redirecting from
>>>> the MinGW world to the MSYS world in this manner is simply
>>>> not possible, I think. I think that will only work for
>>>> fd 0,1 and 2 (but I'm not 100% sure).
>>>>
> The attached patch should take care of the issue. Can you confirm
> this is actually the case, before I push it?
On Cygwin with gcc, both tests PASS. Good.
On MSYS(in MinGW mode) with gcc, ...-exeext SKIPs, because of this:
configure:3327: cc -o conftest.exe -g -O2 conftest.c >&5
configure:3327: $? = 0
configure:3328: ./conftest.exe 9>&1
configure:3331: $? = 0
configure:3333: (./conftest.exe 9>&1) | grep ^foobar
configure:3336: $? = 1
Good.
On MSYS/cl, ...-exeext SKIPs, because of this:
configure:3327: /c/Cygwin/home/peda/automake-1.11.2b/lib/compile cl -nologo -o conftest.exe conftest.c >&5
conftest.c
conftest.c(11) : fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory
configure:3327: $? = 2
Probably not intended, but perhaps a good thing, because unistd.h will not
be available everywhere and lacking it is not should not cause a FAIL in
the Automake test suite.
So, the patch is good. Thanks for fixing!
Cheers,
Peter
Reply sent
to
Stefano Lattarini <stefano.lattarini <at> gmail.com>
:
You have taken responsibility.
(Fri, 27 Jan 2012 16:09:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Peter Rosin <peda <at> lysator.liu.se>
:
bug acknowledged by developer.
(Fri, 27 Jan 2012 16:09:03 GMT)
Full text and
rfc822 format available.
Message #38 received at 10466-done <at> debbugs.gnu.org (full text, mbox):
On 01/27/2012 03:37 PM, Peter Rosin wrote:
>
> So, the patch is good. Thanks for fixing!
>
Thanks for confirming. I've pushed the patch, and I'm thus closing
this report.
Regards,
Stefano
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sat, 25 Feb 2012 12:24:05 GMT)
Full text and
rfc822 format available.
This bug report was last modified 13 years and 174 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.