Subject: Re: DirectX and mingw..
From: [email-masked] (Mumit Khan)

30 Apr 1998 02:54:11 -0700
Message-ID: <[email-masked]>
References: <[email-masked]>
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
To: Paul Garceau <[email-masked]>
Cc: [email-masked]

On Tue, 28 Apr 1998, Paul Garceau wrote:

> 	Ok...that's EGCS...not Mingw32-gcc.

They're both GCC! JJ's distribution happens to be based on FSF GCC-2.8.x,
and mine on EGCS-1.0.x. Might seem like semantic nitpicking, but it's 
important not to muddle the issue.

FSF GCC and EGCS GCC are two different distributions of the "same"
compiler. Please see http://egcs.cygnus.com/ for more info on how FSF
and EGCS GCC distributions relate to each other.

> 	EGCS has recently been upgraded to handle the Mingw32-header based 
> compiles, links, etc. as far as I know.  EGCS is also based on Cygwin32, 
> a non-minimalist Gnu-Win32 development environment.

I'm not sure what the source of this piece of information is, but I've 
heard this from a few other times as well. EGCS is an alternative (to FSF) 
GCC distribution that combines the following in a single package:

   - Languages: C, C++, Objective C and F77 
   - Libraries: Runtime libraries for all the front-ends

Cygwin32 is a runtime environment (sort of like a layered OS) for Win32.
EGCS has been ported to Cygwin32 and a host of other (mostly Unix) 
environments.

EGCS has *nothing* to do with CYGWIN32, and the statement that EGCS is
based on Cygwin32 really doesn't make any sense.

The Mingw port of EGCS was developed independent of cygwin32, but of
course there is a lot in common between cygwin32, mingw and other Win32
based ports.

To set the record straight:
  
  - What Paul is calling Mingw32-gcc is just FSF GCC 2.8.x + Mingw headers 
    and libraries. JJ bundles other development tools as well, such as 
    linker, assembler, etc.

  - EGCS 1.0.2 for mingw32 is EGCS GCC 1.0.2 + Mingw headers and
    libraries. I (Mumit Khan) bundle other development tools as well, such
    as linker, assembler, etc.
  
Now look at the difference between the two.

Of course, since both JJ and I release these at different times, there
are certain differences in the Mingw headers/libraries, binutils
(linker and assembler), but always merge in the changes eventually. For
example, the egcs-1.0.2 distribution contains significantly modified
Windows32api headers that enabled me to port Tcl/Tk/BLT/Tix etc to
Mingw32 and these changes have not yet made it into JJ's distribution;
the changes to Mingw headers is minimal (just a few lines), and
inconsequential.

> 
> 	The Cygwin32 gcc is different than the Mingw32-gcc.  EGCS gcc is
> different than either Cygwin32-gcc or Mingw32-gcc; even though EGCS is
> now capable of compiling both Cygwin32 based source (UWIN) and the
> Mingw32 packages (non-UWIN).  UWIN == Unix-Windows.

These are "ports". EGCS is also capable of compiling for IRIX and so is
Cygwin GCC and Mingw-gcc when you build them for that target.

> 	Ah, but this is where the confusion lies...since the different packages 
> are using different compilers, than the outcome of a compile/link/build 
> will vary from distribution to distribution when comparing EGCS, 
> Mingw32-GCC/++ and Cygwin32.

Of course. These are different versions of the same compilers. EGCS has
features that GCC will *eventually* have, and Cygwin GCC is a mixture of
the two.

Regards,
Mumit

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".