This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: CR-LF handling behavior of SED changed recently - this breaks a lot of MinGW cross build scripts



On 6/9/2017 11:01 AM, Soegtrop, Michael wrote:
> Dear cyg Simple,
> 
>> but it would be most beneficial if you caused the stdio of your
>> Windows applications to be in binary format instead of text format.  Then the
>> CR wouldn't be an issue during the pipe process.  Why does your applications
>> stdio need to be in text format instead of binary format?
> 
> it is not my application I have issues with. I am building many open source tools and libraries which are maintained by others, and as you said, these others have every right to deny implementing windows specific workarounds in their tools or build scripts. Why should anybody use "wb" mode to open a file in a Linux centric app or mess around with the input of sed to remove CRs in a build script for such an app? Of cause the same is true for cygwin, except that I think building MinGW apps is an intended use case for cygwin. But then it needs to have ways to deal with MinGW programs which behave like MinGW programs should, and this means ending lines with cr-lf. 

I see the conversation gets a bit lengthy already and many opinions
exist.  I didn't say to use 'wb' with every open.  I said set the stdio,
(i.e. STDIN, STDOUT, STDERR) to binary mode.  See the documentation for
the MinGW lib/binmode.o object use when linking the binary.

As for Cygwin being an intended use case for building MinGW apps, why do
you think it was forked as MSYS?  Cygwin itself has never completely
dealt easily with cross compatibility between Windows and Cygwin itself.
 If you wish to use Cygwin as is for your work with building MinGW tools
then you'll need to set your standards to work within that environment.

In other follow-up email you explain your use case, I suggest that MSYS
is the better fit for you with that use case.  Check into it.

-- 
cyg Simple

--
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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]