ANNOUNCE selfhosting mingw32

Paul Sokolovsky
Fri Dec 31 13:28:00 GMT 1999

Hello Earnie,

Earnie Boyd <> wrote:

>> I have uploaded the self hosting version of mingw32
>> to and Michael Hirmke has placed them
>> into the directory

EB> This sounds great.

>> The following is from the file ming-selfhost-README.doc in the distribution.
>> This is kind of an expansion on what Earnie
>> did for with mingw32-sup.1.0, except he and I disagree
>> on binary/text mode issues in the development tools.
>> Changes to the standard utils.
>>   All programs use binary mode opens by default,
>> so piping between programs works correctly.

   Totally agree! 'Text mode' for fd's is just microsoft's silly

>> This package is targeted for developers who
>> wish to use the GNU tools to develop/modify
>> win32 programs written for either the VC++ 5/6,
>> or GNU development environments with the same
>> set of tools/headers/libs.
>> Included are wrappers for gcc and ld
>> to allow them to act like vc5 cl.exe, link.exe, and lib.exe
>> anyone with Visual Stupidio who dosen't want
>> to lay out $500 or $1300 for VC6 prof/ent for an
>> occasional .c compile should hopefully appreciate this.


>> in fileutils
>>       install.exe and ln.exe map srcfile to srcfile.exe
>> and destfile to destfile.exe if srcfile doesn't exist,
>> none of the fileutils will try to overwrite a file with itself.

   So, you decided not to implement symlinks for now?

>> in mingw32
>>   working fork()/wait()/exec() and kill() when compiling with -ufork
>>   cl.exe/link.exe/lib.exe wrappers for gcc/dlltool, bscmake.exe stub,

>> dtou.exe/utod.exe
>> to convert \r\n <> \n.

   Exactlu way it should always be done.

>> in libiberty
>>   access() and stat() map file to file.exe,

     You did even this?!

>>  /dev/con* /dev/tty
>> /dev/null on process command line with -un_x or -ufork,
>> many added/wrapped functions for un*x/posix compatibility.
>> Thanks in no particular order are due to
>> Geoff Noer, Mumit Kahn, and Earnie Boyd,
>> for inspiring me to finally get off my A*S
>> and do something about it.


       But tell me how do you believe in the first timer that all that
could be done basing with mingw32, i.e. with msvcrt.dll ? I'd never
believe, if didn't see it with my eyes!

>> All L/GPL binaries have matching sources,
>> Sorry to people on 28.8 modems, but
>> I see no other way to guarantee compliance
>> with the L/GPL ;-(

   Thanks for bzip2ing.

>> <rant /on>
>> Please do not use so called "text"
>> mode files/pipes when compiling un*x utils,
>> anything that always breaks
>> lseek etc. in the system libc is fundamentally
>> broken, and should be fixed in the OS.
>> to convert use dtou.exe or <bleech> utod.exe
>> <rant /off>
>> Using text mode configuration files
>> for your newly written user(s) programs is recommended,
>> There are too many people out there
>> who will save a .cfg file from notepad
>> even when you tell them not to.-)

   I guess all gnu utilities should be patched to use "rt" and "wt"
where needed, and those patches submitted back. After all, it's time
to think about their ANSI C-compliance.

EB> Wow, Mikey, you sure have a lot of work here.  I was actually thinking of
EB> actively doing something like this.  It looks like you've beat me to the punch.

    Me, too!

    And now the main question: what is _your_ licensing for the stuff?
Mingw32 is in public domain, if - let my imagination run away with -
you wouldn't impose too much additional restrictions, then:

             Hey, folks, new Posix-on-Win32 implementation
             emerges, not plagued with GPLedness!!!

Best regards,

Want to unsubscribe from this list?
Send a message to

More information about the Cygwin mailing list