#
-# MACHINE -- operating system specific information
-#
-# $Id$
+# MACHINES -- operating system specific information
#
+nmh is known to compile on the following platforms (save the
+exceptions noted below), using an ANSI C compiler, such as gcc.
+
+AIX 4.1.5.0.01
+Cygwin (setup version 2.763, other versions may be fine)
+FreeBSD
+IRIX 6.5
+Linux 2.2 to current (glibc 2.1 to current)
+Mac OS X
+NetBSD 1.4.2
+OpenBSD
+Solaris 7 and 8 (sparc,x86)
+SunOS 4.1
+
+Known Compilation problems:
--------------------------------------
+Cygwin:
-FreeBSD:
-OpenBSD:
-NetBSD:
+Be sure to install these Cygwin packages:
+ gdbm
+ libgdbm4
+ libgdbm-devel
+ libncurses10
+ libncurses-devel
-Some BSD4.4 machines have problems when running nmh's configure script.
-They will be unable to find the location of vi and sendmail. This is
-due to POSIX features (breakage?) in the shell sh. The solution is to
-run the configure script under the shell `bash'
+If configuring with --with-cyrus-sasl, install these Cygwin packages:
+ libsasl2
+ libsasl2-devel
-bash configure
+If configuring with --with-tls, install these Cygwin packages:
+ gnutls-devel
+ libgnutls26
---------------------------------------
+Note that the -link switch to refile cannot be used on FAT32 and
+similar filesystems.
+--------------------------------------
HPUX:
Lots of problems have been reported with using HPUX `cc'. In particular,
Also, new versions of HPUX (10.20?) will core dump in `scan' because
of some workaround code in zotnet/tws/lexstring.c. This workaround is
needed for older versions of HPUX, but causes problems on newer versions.
-The solution is the added the line
+The solution is the added line (minus our indentation):
-#undef hpux
+ #undef hpux
after line 15 of the file zotnet/tws/lexstring.c.
--------------------------------------
-
Irix (SGI):
Irix make is notoriously buggy. If you're using it, you should "touch
rebuild targets that shouldn't be rebuilt. (Alternately, you can just
use GNU make instead of Irix make.)
-If you are compiling nmh with POP support, then the configuration
-process will search for (and find) the Irix version of "ruserpass".
-Unfortunately, this version is buggy and causes core dumps. The best
-bet is to use the version that comes with nmh. After running configure,
-edit the Makefile in the "sbr" directory, and add "ruserpass.o" to the
-LIBOBJS line. Then run "make" as normal.
-
--------------------------------------
-
Linux:
-Make sure you uncomment the Linux section in the config.h file after
-running configure.
-
-The configuration script does a test to discover the functions
-sigsetjmp/siglongjmp. Since they are macros on Linux, the configuration
-process doesn't find them. After running configure, you should change
-the line in config.h to define HAVE_SIGSETJMP.
-
-For some Linux distributions, the configure script doesn't find the
-ndbm/gdbm library (dbm_open, dbm_close). In this case, you should try to
-configure nmh like this:
-
- LIBS=-lgdbm ./configure [configure options]
-
The configuration script does a test to discover if your vi is broken
(if it reports non-zero exit codes on certain pseudo-errors). This test
will hang if the program `ex' on your system is a link to the vi clone
vi clone such as nvi or elvis.
--------------------------------------
+Solaris:
-SCO:
+With --enable-debug you'll see a lot of warnings. This is even worse
+when compiling using the Sun Workshop compiler since it issues a
+warning for every instance of a problem instead of summarizing them.
+The main one concerns arrays with an index of type char. This is ok.
+The array itself is a hash of chars, so the array size and the type
+match. There isn't another safe and portable way to do this at the
+moment. An explicit cast would get rid of the warnings, but I think
+it's better to leave it complaining for now until we come up with
+a better solution. The whole thing is probablly going to be chucked
+with UTF-8 support anyway.
-Make sure you uncomment the SCO section in the config.h file after
-running configure.
+Other than the warnings, it builds ok.
--------------------------------------
+SunOS 4.1.1/4.1.3/4.1.4:
-Solaris:
-
-Builds ok.
+You can't use the C compiler that comes with SunOS 4 since
+it isn't ANSI C. But nmh builds just fine with gcc. With
+--enable-debug you will see a lot of warnings.
--------------------------------------
-SunOS 4.1.3:
-
-You can't use the C compiler that comes with SunOS 4.1.3 since
-it isn't ANSI C. But nmh builds just fine with gcc.
-
---------------------------------------
+--
+The nmh team
+nmh-workers@nongnu.org