[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Issues with Windows gcc -mno-cygwin (Mingw)

From: Benjamin Riefenstahl
Subject: Re: Issues with Windows gcc -mno-cygwin (Mingw)
Date: 20 Mar 2003 00:31:01 +0100
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Hi Eli,

"Eli Zaretskii" <address@hidden> writes:
> Could you please be more specific?  Where in ELisp will Cygwin paths
> be inserted?

The GNU make from Cygwin automatically predefines the CURDIR variable.
lisp/makefile uses that variable as an absolute path to the lisp code
and passes it to Emacs as a command-line parameter during compilation
of the ELisp code.  Emacs doesn't understand the syntax.

> > From: Benjamin Riefenstahl <address@hidden>
> > - Problem with _fmode

> Is this change only for the unexec phase, or for the entire Emacs
> operation?

For the entire operation.  Emacs doesn't use O_BINARY directly to load
files.  The compilation actually works more or less, there are some
crashes, but the compilation just goes ahead.  But the installed Emacs
can't read some of the compiled ELisp code files, because reading a
file in text mode stops at ^Z.

> If the latter (which I suspect is the case), emacs.c already has
> similar code fragments for other DOS/Windows ports, so I think the
> MinGW port should also use it (I actually thought it already did, so
> I wonder how come this was a problem in your case).

Emacs has an assignment to _fmode in main() under #ifdef MSDOS.  We
can add WINDOWSNT there and that would be enough for the specific
problem that I encountered.  Currently the corresponding assignment to
_fmode is in _start(), which is executed before main(), and I thought
there might be a reason why it is done there.  Only it doesn't work
currently, because the runtime code between _start() and main() resets
_fmode for some reason.  A global initialization is basically same
code that binmode.o does, and that works.

so long, benny

reply via email to

[Prev in Thread] Current Thread [Next in Thread]