This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: autoreconf/gettext puzzle (was Re: sed match DOS end of line)
- From: Corinna Vinschen <corinna-cygwin at cygwin dot com>
- To: cygwin at cygwin dot com
- Date: Thu, 27 Jun 2013 17:15:57 +0200
- Subject: Re: autoreconf/gettext puzzle (was Re: sed match DOS end of line)
- References: <01E9402441FFBB4BBEA0A82549A7D94A0C27C5 at ORD2MBX02C dot mex05 dot mlsrvr dot com> <20130627142405 dot GA2378 at calimero dot vinschen dot de> <20130627144952 dot GB2378 at calimero dot vinschen dot de>
- Reply-to: cygwin at cygwin dot com
On Jun 27 16:49, Corinna Vinschen wrote:
> On Jun 27 16:24, Corinna Vinschen wrote:
> > On Jun 27 13:28, Paul Becker wrote:
> > > > From: On Behalf Of Corinna Vinschen
> > > > Sent: Thursday, June 27, 2013 6:49 AM
> > > > Subject: [ANNOUNCEMENT] Updated: sed-4.2.2-2
> > > >
> > > > I've just updated the Cygwin 32 and 64 bit version of sed to 4.2.2-2.
> > >
> > > Since this 'sed' change, I noticed that "$" does not match a dos formatted file end-of-line anymore.
> > >
> > > example:
> > > echo "endofline^M" | sed "s/e$/X/"
> > >
> > > sed 4.2.1 returns
> > > endoflinX
> > >
> > > sed 4.2.2 returns
> > > endofline
> >
> > This seems to be an upstream change. The Cygwin 4.2.1 and 4.2.2
> > releases are build the same way. 4.2.1-2 (-3 on 64 bit) and 4.2.2-1 are
> > both built from just the vanilla upstream sources.
> >
> > While 4.2.2-2 adds the latest upstream gnulib regex, it behaves
> > otherwise identically to 4.2.2-1. And both 4.2.2 releases show the same
> > behaviour in terms of CRLF line endings.
> >
> > But it's really puzzeling. There's no indication for this change
> > in the sources.
>
> Ok, here's me, even more puzzled. FIW, the 4.2.2 packages have *not*
> been built the same way as the 4.2.1 package. The difference is running
> autoreconf (4.2.2) vs. not running autoreconf (4.2.1).
>
> If I build sed with the auto configury unchanged, I'm back to an sed
> which handles the CR just as the old sed 4.2.1 package:
>
> $ sed --version | head -1
> sed (GNU sed) 4.2.2
> $ od -c eol
> 0000000 e n d o f l i n e \r \n
> 0000013
> $ sed 's/e$/X/' < eol
> endoflinX
>
> However, 4.2.2-1 and 4.2.2-2 packages have been built running autoreconf
> first, which, besides other things, updates the included gettext stuff
> from version 0.17 to version 0.18.1.
>
> So I'm wondering if the latest gettext is the culprit here, but I'm not
> fluent enough in the differences within gettext to see where the problem
> is.
>
> Chuck? Yaakov? Do you have any explanation or, even better, a
> workaround for this phenomenon, other than not running autoreconf?
>
> Anyway, for the time being, I'll upload 4.2.2-3 packages shortly which
> has been build without running autoreconf, which will fix the CRLF vs.
> LF problem.
Easier said than done. This only fixed CRLF handling for the 64 bit
version. The 32 bit version, built without autoreconf, still doesn't
recognize the CR.
Help?
Corinna
--
Corinna Vinschen Please, send mails regarding Cygwin to
Cygwin Maintainer cygwin AT cygwin DOT com
Red Hat
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple