This is the mail archive of the
insight@sourceware.org
mailing list for the Insight project.
Re: [patch] Only use CW_SYNC_WINENV for Cygwin 1.15.20+
On Thu, 10 May 2007, Christopher Faylor wrote:
> There is no such thing as Cygwin 1.15.20. I don't know exactly when this was
> applied but I would just avoid referring to the exact version of Cygwin in the
> ChangeLog.
Hmm, your own words:
http://www.cygwin.com/ml/cygwin/2006-07/msg00037.html
Or do you mean the missing "-1" suffix? If so, then sorry -- this can
certainly be rectified. I just copied the change including the comment
from elsewhere as is.
> >2007-05-10 Maciej W. Rozycki <macro@mips.com>
> >
> > * win/tclWinPipe.c (TclpCreateProcess): Only use CW_SYNC_WINENV
> > for Cygwin 1.15.20+.
> >
> > OK to apply?
>
> No, sorry. If you are going to be testing versions like this then please
> use CYGWIN_VERSION_USER_API_VERSION_COMBINED.
Well, no such macro as of 1.5.14, but it was introduced before
CW_SYNC_WINENV (at CYGWIN_VERSION_API_MINOR == 147), so it would be OK.
Except it's not going to guard against CW_SYNC_WINENV being undefined
anyway (which is what I am addressing here) as it refers to a "user_data"
structure variable, so it can only be used at the run time (the result is
not a preprocessor constant).
I could use something like:
#if CYGWIN_VERSION_DLL_MAKE_COMBINED(CYGWIN_VERSION_API_MAJOR, \
CYGWIN_VERSION_API_MINOR) >= 154
if you prefer -- does it look better to you? It builds for me. Either is
fine by my standards.
And BTW, where is "user_data" declared? Certainly not in any header
included from <cygwin/version.h>.
Maciej