Subject: Re: GCC 3.0 for i686-pc-cygwin target, bootstrap fails
From: Di-an Jan <[email-masked]>
To: [email-masked], [email-masked]
Cc: [email-masked], [email-masked]
Date: Mon, 30 Jul 2001 21:54:22 -0700 (PDT)

> ../../gcc-3.0/gcc/config/i386/i386.md:289: unknown rtx
> code 'define_asm_attributes

> I just downloaded the GCC 3.0 official release and got the same error
> message.  However, after more searches, it seems that some of the developers
> have seen the same problem. (see e.g.
> http://gcc.gnu.org/ml/gcc-help/2001-03/msg00196.html).
> Anyway, the problem seems to have something to do with carriage return
> versus line-feed under Cygwin.  Here is what I did to fix the problem:
> 1. go to the directory for i386.md and execute the following commands:
> cat i386.md | tr -d '\r' > i386.out
> rm i386.md
> mv i386.out i386.md

http://gcc.gnu.org/ml/gcc/2001-07/msg01901.html

I ran into the same. The problem is that '\r' is not recognized as white
space in various parts of "rtl.c". Specifically, "read_name" thinks '\r'
is a part of the name.

A better fix is probably to put the sources under a directory mounted
textmode (or change the mount to binmode if the files are already
extracted). If the directory is set for binmode, Cygwin's "tar" does not
add extra '\r' but external programs such as WinZip might, and "rtl.c"
don't handle it well enough.

I think a note should be added to the "Host/target specific installation
notes" page that either the sources should be extracted with Cygwin "tar"
or extracted to a directory mounted textmode.

A strong warning should also be added to the Cygwin User's Guide that
binmode cannot maintain Unix newline conventions if non-Cygwin programs
such as WinZip are used, and some programs will fail.

"rtl.c" shows a mixture of handling and ignoring '\r'. I could probably
fix "rtl.c" but it's probably not worthwhile. Many other files probably
have this problem too. Perhaps a note about newline/whitespace handling
can be added to one of the coding standards so that in the future things
might be more consistent.

By the way, I bootstrapped GCC-3.0 release on an old Cyrix 6x86 which
suffers from random freezes/reboots within the first 30 minutes of
powering up (probably overheating/hardware problems, cf.
http://wauug.erols.com/%7ebalsa/linux/cyrix/p0_no_frames.html
) and on the old version of Windows 95, but the latest Cygwin packages,
so I think it's pretty amazing that it actually worked.

Di-an JAN

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/