[Ecls-list] Finished port to Windows + MinGW

Juan Jose Garcia-Ripoll worm at arrakis.es
Tue Dec 2 03:12:02 UTC 2003


Hi,

this weekend I finished porting ECL to MinGW, a free development environment 
for Microsoft Windows, which is based on the GNU tools but rather uses 
Microsoft's C libraries.

In order to build ECL under MinGW you need both the development tools and the 
MSYS system (a bunch of GNU tools that emulate a POSIX environment). In order 
to run ECL you need neither of them AFAIK.

The changes:

+ Several routines had to be fixed to work with MinGW. Namely, sleep() 
measures the time in milliseconds instead of in seconds, and listen() does 
not do anything useful because select() does not work with ordinary files.

+ The configuration process also had to be tweaked, because MSYS uses a fake 
directory structure which confused ECL. Anyway, the configuration process now 
finds out the true windows paths and, furthermore, it now follows the GNU 
coding standards, which means that "configure" respects all user supplied 
values for prefix, libdir, mandir, etc (Formerly it would rewrite them).

+ A new makefile rule for Windows, "make windows-dist", installs ECL into a 
flat directory structure and tries to make a ZIP file with it. This ZIP file 
is ready to be unpacked anywhere on your hard disk.

+ ECL must be installed with certain files: the text for the HELP commands, 
definitions for the compiler, libraries, etc. Under Unix-like systems, the 
location of these files is fixed at configuration time and it is no problem 
to find them. Under Windows, ECL rather uses the environment variable ECLDIR, 
or tries to find its files where the executable resides. For instance, if you 
unpack the ZIP file made with "make windows-dist" into c:/Programs/ecl-0.9d/, 
an call c:/Programs/ecl-0.d/ecl.exe, the program will assume that "help.doc" 
resides also in c:/Programs/ecl-0.9d

I hope no other architecture was broken during these fixes. I cannot get 
access to SourceForge's compiler farm any more, which means that the number 
of officially supported platforms will probably drop in the future.

As usual, fixes are in CVS and in http://ecls.sf.net/patch-current-mp.gz

Juanjo





More information about the ecl-devel mailing list