Zsh Mailing List Archive
Messages sorted by:
Re: [PATCH} define _GNU_SOURCE on Cygwin
On Thu, 27 Oct 2016, Daniel Shahaf wrote:
Greetings, Daniel and Jun,
Peter A. Castro wrote on Wed, Oct 26, 2016 at 12:55:36 -0700:
On Wed, 26 Oct 2016, Jun T. wrote:
Unless someone still has older cygwin can test the patch, what we
can do would be to either go with _GNU_SOURCE (and to see whether
incompatibility with older cygwin comes out or not), or just
continue using the current code, which generates some warnings
but still seems to work fine (the return value of wcwidth() is int,
which is what compiler assumes when no prototype is available).
I'll see if I can give it a quick build and let you know.
I wasn't meaning to cause the two of you extra work; I had assumed
defining both _XOPEN_SOURCE and _GNU_SOURCE would work on both old and
new cygwin. I.e., just adding _GNU_SOURCE without removing
I keep an "older" Cygwin build environment for just such an occasion. :)
Now, I have some questions and a report.
First, the report:
I built with Cygwin 1.7.35, which is before the major change to 2.0, but
after the "legacy" release (v1.5). I could try building with the "legacy"
release, but there is almost no reason to do so as the version of Windows
supported by "legacy" is quickly dropping off the map of active Windows
hosts (as well as being desupported by MS), and there is a version of zsh
already built for it.
With the proposed patch from Jun, zsh compiles, links and runs the check
tests "adequately". I say "adequately" because there were 2 test
failures, 5 skipped and 40 successful. But that has always been the case
for the check tests for me on Cygwin, so at the very least there are no
new failures. :)
Can you perhaps suggest some other tests that this change might influence?
I haven't look at all the possibly dependencies involed, but if
_GNU_SOURCE is really a superset, then there really should be no effective
Now, about the patch itself:
Jun's patch changes two files: datetime.c and zsh_system.h. However, I
did my build testing with the stock zsh-5.2 source and the datetime.c
change doesn't apply because the lines indicated are not present in the
source. I'm presuming Jun was working from latest git source.
As a result, I only applied the change to zsh_system.h, which was
So, in lue of other testing, I'd call it a success. If there are other
tests you'd like me to perform, please let me know. I'll keep this build
of a while longer.
--=> Peter A. Castro
Email: doctor at fruitbat dot org / Peter dot Castro at oracle dot com
"Cats are just autistic Dogs" -- Dr. Tony Attwood
Messages sorted by: