06a1cd6ad488de7d35d3527ec56c94a29c81e4f5
[mmh] / MACHINES
1 #
2 # MACHINE -- operating system specific information
3 #
4 # $Id$
5 #
6
7 nmh is known to compile on the following platforms (save the
8 exceptions noted below), using an ANSI C compiler, such as gcc.
9
10 AIX 4.1.5.0.01
11 FreeBSD
12 IRIX 6.5
13 Linux 2.2 and 2.3 (glibc 2.1)
14 Linux 2.4 (glibc 2.2)
15 Mac OS X Public Beta
16 NetBSD 1.4.2
17 OpenBSD
18 Solaris 7 and 8 (sparc,x86)
19 SunOS 4.1
20
21 Known Compilation problems:
22 --------------------------------------
23 FreeBSD:
24 OpenBSD:
25 NetBSD:
26
27 Some BSD4.4 machines have problems when running nmh's configure script.
28 They will be unable to find the location of vi and sendmail.  This is
29 due to POSIX features (breakage?) in the shell sh.  The solution is to
30 run the configure script under the shell `bash':
31
32     % bash configure
33
34 --------------------------------------
35 Mac OS X/Rhapsody 5:
36
37 Version 5.3 at least has the same sh/bash bug as the *BSD systems
38 above. This appears to be fixed in 5.5.
39
40 Will not compile correctly unless you configure with the --enable-debug
41 option. It appears to find conflicts in the headers only when debugging
42 is disabled. With debugging enabled, it compiles and runs happily.
43
44 --------------------------------------
45 HPUX:
46
47 Lots of problems have been reported with using HPUX `cc'.  In particular,
48 problems with `scan' giving incorrect dates (everything is 01/00).
49 It is highly recommended that you use `gcc' instead.
50
51 Also, new versions of HPUX (10.20?) will core dump in `scan' because
52 of some workaround code in zotnet/tws/lexstring.c.  This workaround is
53 needed for older versions of HPUX, but causes problems on newer versions.
54 The solution is the added line (minus our indentation):
55
56     #undef hpux
57
58 after line 15 of the file zotnet/tws/lexstring.c.
59
60 --------------------------------------
61 Irix (SGI):
62
63 Irix make is notoriously buggy. If you're using it, you should "touch
64 config.h.in" before configuring to prevent a problem where it tries to
65 rebuild targets that shouldn't be rebuilt. (Alternately, you can just
66 use GNU make instead of Irix make.)
67
68 --------------------------------------
69 Linux:
70
71 The configuration script does a test to discover if your vi is broken
72 (if it reports non-zero exit codes on certain pseudo-errors).  This test
73 will hang if the program `ex' on your system is a link to the vi clone
74 `vile'.  The workaround is to replace the command ex as a link to another
75 vi clone such as nvi or elvis.
76
77 --------------------------------------
78 Solaris:
79
80 With --enable-debug you'll see a lot of warnings. This is even worse
81 when compiling using the Sun Workshop compiler since it issues a
82 warning for every instance of a problem instead of summarizing them.
83 The main one concerns arrays with an index of type char. This is ok.
84 The array itself is a hash of chars, so the array size and the type
85 match. There isn't another safe and portable way to do this at the
86 moment. An explicit cast would get rid of the warnings, but I think
87 it's better to leave it complaining for now until we come up with
88 a better solution. The whole thing is probablly going to be chucked
89 with UTC-8 support anyway.
90
91 Other than the warnings, it builds ok.
92 --------------------------------------
93 SunOS 4.1.1/4.1.3/4.1.4:
94
95 You can't use the C compiler that comes with SunOS 4 since
96 it isn't ANSI C.  But nmh builds just fine with gcc. With
97 --enable-debug you will see a lot of warnings. 
98 --------------------------------------
99
100