Regression for bash.exe redirection of ctest.exe for wine-1.5.30 compared to wine-1.5.19

Alan W. Irwin irwin at beluga.phys.uvic.ca
Wed May 22 16:03:26 CDT 2013


Generally I have found in still fairly limited testing that MSYS
bash.exe redirection is fine on wine-1.5.30 (which I have now been
able to build in 32-bit mode on Debian wheezy x86_64 thanks to the
32-bit library symlink trick discussed in my previous recent thread).
However, I have just discovered a puzzling case where MSYS bash.exe
redirection now fails for ctest.exe compared to wine-1.5.19.

To reproduce this regression download the Windows binary version of cmake-1.8.10.2
(which includes cmake.exe and ctest.exe)
and install it.  Also download and install MinGW/MSYS.  In the past,
I have found results depend very much on how you get into the MSYS
bash.exe environment.  In my case I execute

wineconsole --backend=curses MinGW_4.7.0/msys/1.0/bin/bash.exe

to do that, and then from that interactive environment execute the
commands below.

Here is how I try the --version option for cmake and ctest with redirection
under bash.exe.

bash.exe-3.1$ cmake --version >& cmake_version.out
bash.exe-3.1$ ctest --version >& ctest_version.out

For Wine-1.5.19

bash.exe-3.1$ head *.out
==> cmake_version.out <==
cmake version 2.8.10.2

==> ctest_version.out <==
ctest version 2.8.10.2

For Wine-1.5.30

bash.exe-3.1$ head *.out
==> cmake_version.out <==
cmake version 2.8.10.2

==> ctest_version.out <==

N.B. note the incorrect empty ctest_version.out file for Wine-1.5.30.

For both Wine-1.5.19 and Wine-1.5.30 if I don't redirect
the output I simply get the following results 
bash.exe-3.1$ cmake --version
cmake version 2.8.10.2
bash.exe-3.1$ ctest --version
ctest version 2.8.10.2

So somehow bash.exe redirection for ctest (but not cmake and a small
number of other commands I have tried) generates an incorrect empty
file for Wine-1.5.30.  I never have had trouble with bash.exe
redirection for any command (including ctest) on either Linux bash or MSYS
bash.exe on Wine-1.5.19. So it is likely there is some minor (but
probably standard) variation in how ctest handles its stdout that is
triggering this Wine-1.5.30 regression compared to Wine-1.5.19. So
there might be other commands as well where bash.exe redirection
doesn't work for Wine-1.5.30.

If it is already known that MSYS bash.exe redirection is sometimes
problematic with Wine-1.5.30 compared to earlier versions, is there
some patch I could try to see if it fixes this specific issue?

My primary motivation is developing my own free software.  Therefore,
I only have limited time to help figure out wine bugs although I am
willing to report the ones I discover here (and on the bug tracker
once discussed here to reduce bug tracker noise).

That said, it does appear that git-bisect would be an ideal way to
find which commit between Wine-1.5.19 and Wine-1.5.30 caused the
bash.exe redirection issue with ctest.exe. Unfortunately, I have zero
experience with git-bisect.  However, if somebody could give me some
step-by-step instructions I could follow by rote that would be great.
Ideally, those instructions would be a simple template bash script I
could run unattended overnight from Linux that used git-bisect to detect the first commit
between Wine-1.5.19 and Wine-1.5.30 where

ctest --version >& ctest_version.out

produces an empty file under MSYS bash.exe.

I can fill in the parts of that template script concerning the wine
build for each git commit that is being tested since I have such
builds (including necessary *.so links for later wine versions)
largely automated now.  But I am not sure about how you get into MSYS
bash.exe directly (my normal method using wineconsole as above appears
to be interactive rather than something you could run unattended) from a
Linux bash script so I would need advice about that.

Alan
__________________________
Alan W. Irwin

Astronomical research affiliation with Department of Physics and Astronomy,
University of Victoria (astrowww.phys.uvic.ca).

Programming affiliations with the FreeEOS equation-of-state
implementation for stellar interiors (freeeos.sf.net); the Time
Ephemerides project (timeephem.sf.net); PLplot scientific plotting
software package (plplot.sf.net); the libLASi project
(unifont.org/lasi); the Loads of Linux Links project (loll.sf.net);
and the Linux Brochure Project (lbproject.sf.net).
__________________________

Linux-powered Science
__________________________



More information about the wine-devel mailing list