This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: GNU coreutils does not work on Cygwin because of freopen() ?
Yaakov (Cygwin/X) wrote:
Sjors Gielen wrote:
Did you try with Cygwin coreutils or GNU coreutils? :)
Cygwin's coreutils *is* GNU coreutils, with some patches which you will
find necessary.
[snip]
Dave Korn wrote:
> However, you may have to recreate all the cygwin-specific patches
> that the
> cygwin bash maintainer hasn't managed to send upstream yet...
[snip]
> ?? Are you using an old version?? It should be fixed by now.
>
> http://www.mail-archive.com/bug-coreutils@gnu.org/msg10188.html
Oooh. Can I get a list of patches the Cygwin project has already applied
to packages? :)
So this bug was fixed in Cygwin's version of GNU coreutils, but not in
Debian's version of GNU coreutils. Has a patch for that been sent
upstream? I took GNU coreutils from Debian sid, which should be almost
as up to date as it gets...
> Dunno if your project makes sense. You'll have to end up porting
> everything where the differences in the underlying OS show through...
> which is
> basically what Cygwin package maintainers have already done for most
> of this
> stuff. Do you mean you're trying to cross-compile Debian on Cygwin,
> or do you
> actually want to build the whole Debian distro under Cygwin to run on
> Windows
> rather than natively under a linux kernel?
I'm trying to create a full Cygwin port for Debian. This means the base
system packages, et cetera. Let's just keep it at I love apt and dpkg
for package managers.
> Nope. Cygwin runs on windows, which uses CR-LF for line endings,
> but
> Cygwin is POSIX-compliant and uses LF internally. This is exactly
> what O_TEXT
> was invented for: it translates LF->CRLF on write and CRLF->LF on
> read. On
> Linux platforms, the native format is LF line-ends, so O_TEXT and
> O_BINARY are
> the same, but not here.
But if Cygwin uses LF internally, why does it translate to CRLF on
write? I remember this installation option, asking if it should use CRLF
or LF for writing files. I think I chose LF only, because that's the
Unix way of doing it.
Do I misunderstand here? Currently, when I write a file in vim and save
it, it has LF line endings anyway. If it is saved with LF line endings,
there's no difference between O_TEXT and O_BINARY, right? So why not
skip this at all and make *every* fd O_BINARY by default?
>> 2. I don't know why coreutils is calling freopen() at all. Should I
>> patch it out completely, or add something like an #ifndef __CYGWIN__
>> around the pieces of code in question?
>
> Well, if you really want to build coreutils under cygwin, why not
> use
> setup.exe to install the corresponding source package, which comes
> with all
> these problems pre-solved for you?
That would, of course, defeat the idea of bootstrapping Debian on Cygwin. ;)
Sjors
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/