Cook 2.26 for OS/2 and Windows
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This package contains OS/2 and Windows 32-bit binaries of the powerful
make-replacement Cook (OS/2 binaries in binos2\ and Windows binaries
in binnt\). Both are hard to find precompiled.
The OS/2 version was compiled with GCC v.3.3.5 (libc) and therefore
should not depend on EMX. I manually created a Linux-like environment.
The Windows version was compiled in the CYGWIN environment (cygwin dll
version 1.5) with up-to-date utilities.
Both versions should contain all necessary DLL files to run out of the
box. Please inform me whether this violates one of the program's license.
It is recommended to add the binaries path to your PATH environment
variable. Under OS/2 it might be necessary to add it to your LIBPATH
(or BEGINLIBPATH), too.

CMDSHELL.EXE
~~~~~~~~~~~~

Cook relies on some Unix utilities to run properly (a Unix shell and
fileutils) which is in my opinion a bit against its principles. However
I'm not familiar enough with Cook's source code to integrate it better
into the OS/2 or Windows command shell (and I don't know whether this
would be the authors intention). So I wrote a "quick and dirty"
tool in FORTRAN (Open Watcom) which "emulates" an Unix shell, mainly
its commandline syntax, and then simply executes the given command on the
operating systems standard shell. You can find the source (CMDSHELL.FOR)
in this directory and the binaries (CMDSHELL.EXE) in the same directory
as Cook. It's public domain - feel free to modify it.
The tool also looks for Unix commands like RM, CP, MV, LS and executes
the OS/2-Windows-equivalent because Cook itself might call them. CMDSHELL
converts all slashes to backslashes after such Unix commands, too. However
it does not do so after all other commands to prevent obfuscation. Use the
Cook dos-path function instead in your cookbooks.
You should add a line like this one to the beginning of your cookbook
which explicitely sets the Unix shell to CMDSHELL (I had problems under
Windows when I set the SHELL variable outside of Cook):
setenv SHELL=cmdshell.exe;
I'm going to ask Cook's author to provide platform independent Cook
functions for file management in future versions so this dirty workaround
becomes needless.

I was too lazy to convert Cook's documentation to native OS/2 or Windows
help format so I just copied the PDF files to the DOC subdir.

I'm not that experienced with Unix ports and I just use Cook for one
of my projects (for which I made this package primarily), so I didn't
test everything and I would consider these binaries and the CMDSHELL
utility experimental. Use it at your own risk!

Cook's homepage: http://www.canb.auug.org.au/~millerp/cook/cook.html
My E-Mail address: None-Brain@web.de