Installation on Win32 (WinNT, Win95) using cygwin32's development environment
=============================================================================
using gcc and cygwin32.dll
==========================

1. Get Cygwin32 CDK from ftp://ftp.cygnus.com/pub/gnu-win32/latest/.
   Install it, set the environment variables mentioned in the installation
   notes.
   It *really* needs /tmp and /bin/sh. Look where / is (start bash, then type
   "ls -l /" or "mount"). If you are not satisfied with it, use the mount
   command to change the equivalent of "/". Then make sure that /tmp exists and
   /bin/sh is a copy of bash.

2. The readline library behaves much nicer if you set the environment
   variable TERM=ansi.sys (type "export TERM=ansi.sys") and make sure that
   /etc/termcap is a copy of the Cygwin32 termcap file.
   Even better (for CLISP's *keyboard-input* stream), replace /etc/termcap
   by the file `termcap-better' in this directory and set the environment
   variable TERM=cygwin32.

3. If you use the gcc snapshot of cygwin32 version 18 (not a regular gcc
   release), you cannot use the configuration flag --with-wide, and you
   also need to remove "-O" and "-fomit-frame-pointer" from the definitions
   of CC, CPP, CFLAGS in the Makefile.

Known problems with Cygwin32:

- "cd .." doesn't work in bash on FAT file systems because directories are
  lacking "." and "..". Workaround: work in Unix hosted and NFS mounted
  filesystems. But keep your Cygwin32 on a local disk, for speed.

- "cd //HOSTNAME/VOLUMENAME/" works if the networked volume
  \\HOSTNAME\VOLUMENAME\ has been registered ("connected") at logon time
  or via the FileManager. Otherwise it crashes Windows NT 3.51.

3. Start a bash in a console. Follow the installation instructions for Unix
   (see unix/INSTALL). This builds CLISP.

Known problems with CLISP on Cygwin32:

- CLISP understands the UNC pathname syntax "//drive/path/filename" for
  "drive:\path\file". The latter syntax is *not* understood.

- CLISP doesn't fully understand the "//hostname/volumename/path/filename"
  syntax (i.e. some operations work, some don't). To access files on other
  hosts, assign these volumes to drives, via the FileManager.

- The HOME environment variable must be a valid pathname according the
  restrictions above.

- Directory accesses are very slow. For example, the function DIRECTORY
  needs about 80 seconds to scan the build directory.

- Console output ought to be converted from the ISO Latin-1 character set
  to the IBM character set (because consoles in Win32 use the IBM character
  set), but this isn't done.

- The *keyboard-input* stream cannot read Ctrl-C. Even during WITH-KEYBOARD,
  typing Ctrl-C results in an interruption.

Other notes about CLISP on Cygwin32:

- Recall that the EOF character (to be typed for quitting a break loop)
  is Ctrl-Z, not Ctrl-D.

- When a file-stream with element type STRING-CHAR is written to, newlines
  #\Newline are output as ASCII CR/LF.

