home *** CD-ROM | disk | FTP | other *** search
/ Il CD di internet / CD.iso / SOURCE / D / CLISP / CLISPSRC.TAR / clisp-1995-01-01 / unix / PLATFORMS < prev    next >
Encoding:
Text File  |  1994-12-29  |  20.9 KB  |  589 lines

  1. This file presents
  2. * a list of platforms CLISP is known to run on,
  3. * special hints for the following platforms:
  4.     386BSD 0.1
  5.     NetBSD 1.0
  6.     Sun4 (Sparc) under SunOS 4
  7.     Sun3 (68020) under SunOS 4
  8.     Sun4 (Sparc) under SunOS 5.2 or SunOS 5.3
  9.     HP9000/8xx under HP-UX version 8
  10.     HP9000/3xx under HP-UX version 8
  11.     Consensys System V 4.0
  12.     Consensys System V 4.2
  13.     386 UHC UNIX System V release 4
  14.     Onsite System V 4.2
  15.     UnixWare
  16.     SINIX-Z 5.42
  17.     SINIX-N 5.42
  18.     IRIX 3.2.1
  19.     IRIX 4
  20.     IRIX 5
  21.     DECstation 5000, Ultrix
  22.     Apple Macintosh, A/UX
  23.     Amiga running AMIX 2.1 SVR4.0
  24.     Coherent386 4.0.1
  25.     AIX
  26.     Sequent ptx
  27.     Convex C2 running ConvexOS 10.1
  28.     Atari ST/TT running MiNT
  29.     DEC Alpha AXP running OSF/1 1.3 or OSF/1 2.0 or OSF/1 3.0
  30. * hints for porting to new platforms.
  31.  
  32.  
  33. List of platforms
  34. -----------------
  35.  
  36. The Unix version of CLISP is known to run on a variety of machines
  37. and operating systems. The following is a list of successful compiles,
  38. in the format
  39.  
  40.  
  41. hardware              OS             compiled by
  42. date                  test-time      email address
  43.  
  44. (Test-time is the time needed for "make test". Measure user time.)
  45.  
  46.  
  47. PC 486/33, 8 MB RAM   Linux 0.98     Bruno Haible
  48. 17.11.1992                  415 s    <haible@ma2s2.mathematik.uni-karlsruhe.de>
  49. 14.12.1992                  418 s
  50. 31.12.1992 (gcc233)         384 s
  51. 31.12.1992 (gcc233)         377 s
  52. 2.1.1993  (gcc233,shm)      359 s
  53. 2.1.1993  (gcc233,shm)      363 s
  54. 5.1.1993  (gcc233,486)      367 s
  55. 15.1.1993 (gcc233,486,shm)  356 s
  56. 15.1.1993 (gcc233,486,shm)  362 s
  57. 19.1.1993 (gcc233,486,shm)  360 s
  58. 29.1.1993 (gcc233,486)      366 s
  59. 10.2.1993 (gcc233,486,shm)  359 s
  60. 4.3.1993  (gcc233,486,shm)  351 s
  61.  
  62. PC 486/33, 8 MB RAM   Linux 0.99.7   Bruno Haible
  63. 18.3.1993 (gcc233,486,mmap) 337 s    <haible@ma2s2.mathematik.uni-karlsruhe.de>
  64. 5.5.1993  (gcc233,486,mmap) 346 s
  65. 5.6.1993  (gcc240,486,mmap) 366 s
  66. 17.7.1993 (gcc245,486,mmap) 368 s
  67.  
  68. PC 486/33, 8 MB RAM   Linux 0.99.12  Bruno Haible
  69. 22.9.1993 (gcc245,486,mmap) 464 s    <haible@ma2s2.mathematik.uni-karlsruhe.de>
  70. 4.11.1993 (gcc252,486,mmap) 453 s
  71. 1.1.1994 (gcc257,486,shm)   483 s
  72.  
  73. PC 486/33, 8 MB RAM   Linux 1.1.19   Bruno Haible
  74. 20.6.1994 (gcc257,mmap)     569 s    <haible@ma2s2.mathematik.uni-karlsruhe.de>
  75. 27.6.1994 (gcc257,mmap)     515 s
  76. 28.6.1994 (gcc257,mmap)     526 s
  77. 20.7.1994 (gcc260,mmap)     565 s
  78. 27.8.1994 (gcc260,mmap)     582 s
  79.  
  80. PC 486/33, 8 MB RAM   Linux 1.1.51   Bruno Haible
  81. 27.9.1994 (gcc260,gengc)    569 s
  82.  
  83. PC 486/50, 32 MB RAM  Linux 0.99.14  Marcus Daniels
  84. 25.1.1994 (gcc258,shm)      331 s    <marcus@ee.pdx.edu>
  85. 25.1.1994 (gcc258,486,shm)  319 s   
  86.  
  87. Sun 4/70 (Sparc 2)    SunOS 4.1.1    Bruno Haible
  88. 19.11.1992 (gcc23)       291 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  89. 22.12.1992 (gcc23)       298 s
  90. 28.12.1992 (gcc23)       291 s
  91. 1.1.1993   (cc)          424 s
  92. 1.2.1993   (gcc23)       268 s
  93. 4.2.1993   (gcc23)       276 s
  94. 28.3.1993  (gcc23)       276 s
  95. 11.5.1993  (gcc23)       274 s
  96. 2.11.1993  (cc -O0)      600 s
  97. 2.11.1993  (cc -O1)      493 s
  98. 3.11.1993  (cc -O2)      649 s
  99. 3.11.1993  (cc -O3)      614 s
  100. 3.11.1993  (cc)          582 s
  101. 14.1.1994  (cc)          632 s
  102. 21.7.1994  (gcc260,wide) 754 s
  103.  
  104. Sun 4/75 (Sparc 2)    SunOS 4.1.3    Marcus Daniels
  105. 25.1.1994 (gcc233)       492 s       <marcus@ee.pdx.edu>
  106.  
  107. Sun 4c (Sparc 1)      SunOS 4.1.2    Martin Sj÷lin
  108. 16.12.1992               679 s       <marsj@ida.liu.se>
  109.  
  110. Sun 4m (Sparc 10)     SunOS 4.1.3    Bruno Haible
  111. 16.1.1993 (gcc233)       208 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  112. 17.1.1993 (gcc233,shm)   203 s
  113. 20.1.1993 (gcc233,shm)   186 s
  114. 26.6.1994 (gcc)          307 s
  115.  
  116. Sun 4m (Sun 4/600)    SunOS 4.1.3    Marcus Daniels
  117. 25.1.1994 (gcc233,shm)   453 s       <marcus@ee.pdx.edu>
  118.  
  119. Sun386i               SunOS 4.0.2    Bruno Haible
  120. 13.1.1993                            <haible@ma2s2.mathematik.uni-karlsruhe.de>
  121.  
  122. Sun 4m (Sparc 10)     SunOS 5.1 (Solaris 2)
  123. 21.3.1993                387 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  124. 7.9.1993                 500 s
  125.  
  126. Sun 3                 SunOS 4.1.1    Bruno Haible
  127. 17.4.1993               2296 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  128.  
  129. Sun 4d                SunOS 5.[23]   Adam M. Costello
  130. 2.12.1993 (gcc245)       313 s       <amc@ecl.wustl.edu>
  131.  
  132. Sun 4m (2 cpus)       SunOS 5.3      Alva L. Couch
  133. 23.2.1994 (gcc258)       203 s       <couch@cs.tufts.edu>
  134.  
  135. Sun 4m (Sparc 10)     SunOS 5.3      Bruno Haible
  136. 4.7.1994 (gcc245)        587 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  137.  
  138. i386                  Consensys 4.0  Bruno Haible
  139. 18.12.1992             --- (*)       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  140. 7.9.1993               --- (*)
  141.  
  142. PC 486/33, 32 MB RAM  Consensys 4.2  Jean-Claude Beaudoin
  143. 21.9.1993                            <jbeaudoi@sobeco.com>
  144.  
  145. HP 9000/825           HP-UX 8        Bruno Haible
  146. 27.6.1994               2498 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  147.  
  148. HP 9000/835           HP-UX 8        Bruno Haible
  149. 27.6.1994               1203 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  150.  
  151. HP 9000/720           HP-UX 8.05     Bruno Haible
  152. 1.1.1993                 309 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  153. 27.6.1994                335 s
  154. 4.7.1994                 360 s
  155.  
  156. PC 486/33, 8 MB RAM   Coherent 4.0.1 Bruno Haible
  157. 16.5.1993 (cc)           470 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  158. 16.5.1993 (gcc140)       413 s
  159.  
  160. PC 386/33, 16MB RAM   UHC UNIX SysV.4   Blake McBride
  161. 20.3.1993 (UHC_1)       1125 s          <blake@netcom.com>
  162. 20.3.1993 (UHC_2)       1182 s
  163.  
  164. PC 486/33, 16 MB RAM  SINIX-Z V5.41  Manfred Weichel
  165. 29.7.1993 (gcc245)       383 s       <manfred.weichel@mch.sni.de>
  166. 11.7.1994 (gcc258)
  167.  
  168. PC                    386BSD 0.1     Charles Hannum
  169. 26.3.1993                            <mycroft@gnu.ai.mit.edu>
  170.  
  171. PC 486/33, 8 MB RAM   NetBSD 1.0 Beta   Douglas Crosher
  172. 30.8.1994 (gcc245)          582 s       <dtc@stan.xx.swin.oz.au>
  173. 30.8.1994 (gcc245,mmap)     522 s       <dtc@scrooge.ee.swin.oz.au>
  174. 30.8.1994 (gcc245,shm)      488 s
  175. 2.9.1994  (gcc245,gengc)    502 s
  176.  
  177. DECstation 5000       Ultrix V4.2A   Benlu Jiang
  178. 5.5.1993                             <manager@csdeca.cs.missouri.edu>
  179.  
  180. SGI Mips              IRIX 4         Michael Stoll
  181. 11.6.1993                315 s       <michael@rhein.iam.uni-bonn.de>
  182.  
  183. SGI Mips              IRIX 5         Christian Moen
  184. 31.12.1993 (gcc)                     <christim@ifi.uio.no>
  185.  
  186. SGI Mips              IRIX 5         Martin Cracauer
  187. 28.9.1994 (cc)                       <cracauer@wavehh.hanse.de>
  188.  
  189. RM400 Mips            SINIX-N V5.42  Michael Becker
  190. 8.12.1994 (c89)                      <mb12@coconet.de>
  191.  
  192. IBM Risc System 6000  AIX 3.2        Gabor Herr
  193. 22.9.1993                            <herr@iti.informatik.th-darmstadt.de>
  194.  
  195. DEC Alpha AXP         OSF/1 1.3      Bruno Haible
  196. 3.12.1993                141 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  197. 8.1.1994 (gcc257)        145 s
  198.  
  199. DEC Alpha AXP         OSF/1 2.0      Bruno Haible
  200. 2.8.1994 (gcc258)        159 s       <haible@ma2s2.mathematik.uni-karlsruhe.de>
  201.  
  202. PC 486/50, 16 MB RAM  Onsite SysV R 4.2   Sebastian Feldmann
  203. 30.10.1993 (cc)          429 s            <snfeldma@teebox.franken.de>
  204. 7.11.1993 (gcc233)       348 s
  205. 7.11.1993 (gcc245)       345 s
  206.  
  207. Amiga 3000            AMIX 2.1 SysVR4.0   Michel Loi
  208. 22.12.1993 (gcc255)                       <Michel.Loi@lip.ens-lyon.fr>
  209.  
  210. NeXT                  NeXTstep 3.1   Marcus Daniels
  211. 30.10.1993 (cc)                      <marcus@ee.pdx.edu>
  212.  
  213. NeXT (68040/25)       NeXTstep 3.2   Marcus Daniels
  214. 18.1.1994                751 s       <marcus@ee.pdx.edu>
  215. (cc=gcc222)
  216. 18.1.1994                627 s
  217. (cc=gcc-222+Mach-VM-singlemap)
  218.  
  219. PC 486DX2-66          NeXTstep 3.2   Michael Stoll
  220. 5.7.1994 (cc)            359 s       <michael@rhein.iam.uni-bonn.de>
  221.  
  222. Sequent PTX (386/16)  DYNIX/ptx V2.1.0    Marcus Daniels
  223. (gcc233, mmap)          2232 s            <marcus@ee.pdx.edu>
  224.  
  225. PC                    UnixWare       Alexander Adam
  226. 24.1.1994                            <adam@is.informatik.uni-stuttgart.de>
  227.  
  228. Data General M88000   DG/UX          Pat McClanahan
  229. 3.2.1994                 539 s       <mcclanah@dlgeo.cr.usgs.gov>
  230.  
  231. PC                    BSDI/386 1.1        Atsuo Ohki
  232. 16.5.1994                                 <ohki@gssm.otsuka.tsukuba.ac.jp>
  233.  
  234.  
  235. When you install CLISP on a machine not mentioned here, please send us a short
  236. note containing the information mentioned above. If you didn't succeed in
  237. building CLISP, please tell us the problems: we will try to make CLISP as
  238. portable as possible.
  239.  
  240.  
  241. Special hints for some platforms:
  242. ---------------------------------
  243.  
  244.  
  245. On 386BSD 0.1:
  246.  
  247. 386BSD can't identify itself. Before executing makemake, you need to create a
  248. program called "arch" that outputs "386BSD". For example:
  249.   $ cat > /usr/bin/arch <<EOF
  250.   #!/bin/sh
  251.   echo 386BSD
  252.   EOF
  253.   $ chmod a+x /usr/bin/arch
  254.  
  255. Add -DNO_MULTIMAP_SHM -DNO_MULTIMAP_FILE to the CFLAGS in the makefile. 386BSD
  256. declares the shared memory and memory mapping facilities (shm*, mmap too?)
  257. in the header files, but does not implement them in the kernel.
  258.  
  259. In unixconf.h change
  260.   #define IOCTL_REQUEST_T int  to   #define IOCTL_REQUEST_T unsigned long
  261.   #undef IOCTL_DOTS            to   #define IOCTL_DOTS
  262.  
  263.  
  264. On NetBSD 1.0:
  265.  
  266. Add -DNO_MULTIMAP_SHM -DNO_MULTIMAP_FILE to the CFLAGS in the makefile. NetBSD
  267. has shared memory and memory mapping facilities but they don't work reliably.
  268.  
  269. In unixconf.h change
  270.   #define IOCTL_REQUEST_T int  to   #define IOCTL_REQUEST_T unsigned long
  271.   #undef IOCTL_DOTS            to   #define IOCTL_DOTS
  272.  
  273.  
  274. On a Sun4 (Sparc) under SunOS 4:
  275.  
  276. The Sun cc is usable only without the optimization flag "-O". (At least spvw.d
  277. is compiled incorrectly when -O is used.)
  278. It is best to get and install GNU gcc. (Gcc version 2.2 or later required.)
  279.  
  280.  
  281. On a Sun3 (68020) under SunOS 4:
  282.  
  283. In the makefile, I had to add -DNO_MULTIMAP_FILE -DNO_MULTIMAP_SHM to the
  284. CFLAGS, and change
  285.      PACK = tar
  286. to   PACK = /usr/local/gnu/bin/gtar
  287.  
  288.  
  289. On a Sun4 (Sparc) under SunOS 5.2 or SunOS 5.3:
  290.  
  291. For the readline library, you *may* have to add -D_POSIX_VERSION to the CFLAGS
  292. in the readline/Makefile, and modify the line containing SIGNALBLOCK_POSIX
  293. in readline/config.h. I cannot tell anything definitely correct about this.
  294.  
  295. Make sure your PATH contains the X11/bin directory. Especially xmkmf must be
  296. found. Make sure your LD_RUN_PATH contains the X11/lib directory. Otherwise
  297. the shared X11 libraries won't be found.
  298. For example, you may append ":/usr/openwin/lib" to your LD_LIBRARY_PATH and
  299. replace "-Y P,/usr/ccs/lib:/usr/lib" in the makefile by
  300. "-Y P,/usr/ccs/lib:/usr/lib:/usr/openwin/lib". To make sure these settings are
  301. in effect every time clisp is run, it may then be useful to add the lines
  302.     LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/openwin/lib"
  303.     export LD_LIBRARY_PATH
  304. to the /usr/local/bin/clisp script.
  305.  
  306. Normally, clisp doesn't use shared memory on SunOS 5 because it tries to
  307. attach more segments that the default limit (6). If you want clisp to use
  308. shared memory, you have to increase this limit: put the line
  309. set shminfo_shmseg=200
  310. into /etc/system, reboot, and continue installing clisp.
  311.  
  312.  
  313. On a HP9000/8xx under HP-UX version 8:
  314.  
  315. If cc had no bugs:
  316.   Choose "cc -Aa -z -D_HPUX_SOURCE" or "c89 -z -D_HPUX_SOURCE" as compiler,
  317.   as described in paragraph 2 of the INSTALL file.
  318.   You need the -Aa flag resp. the c89 compiler because the normal "cc" does not
  319.   expand macros with arguments within constant expressions in preprocessor
  320.   commands like #if.
  321.   Without the -D_HPUX_SOURCE flag many include files are incomplete. When using
  322.   -D_POSIX_SOURCE instead, <errno.h> fails to define ELOOP.
  323.   The -z flag is harmless.
  324. Alas, cc and c89 initialize string arrays declared like
  325.     static char* table[] = { 0?"a":1?"b":"", ..., 0?"x":1?"y":"", };
  326. with NULL pointers!
  327.  
  328. So get and install GNU gcc. This works for sure.
  329.  
  330. If you get an error message "./configure: sh internal 1K buffer overflow"
  331. the remedy is either to get and install GNU bash and to enter
  332.   CONFIG_SHELL=/bin/ksh
  333.   export CONFIG_SHELL
  334. before calling "configure".
  335.  
  336.  
  337. On a HP9000/3xx under HP-UX version 8:
  338.  
  339. If you are using GNU gcc 2.4.5 with the HP-UX assembler, in the makefile add
  340. -DHPUX_ASSEMBLER -DNO_ASM to the CFLAGS and remove -fomit-frame-pointer from
  341. the CFLAGS. This way the best optimizations are disabled, but otherwise you
  342. are risking core dumps.
  343.  
  344.  
  345. On Consensys System V 4.0:
  346.  
  347. Choose "cc -I/usr/include" as compiler, as described in paragraph 2 of the
  348. INSTALL file.
  349. Otherwise /usr/ucbinclude/sys/sysmacros.h will be included instead of
  350. /usr/include/sys/sysmacros.h, and this lacks the definition of ctob().
  351.  
  352. Add -DNO_MULTIMAP_SHM to the CFLAGS in the makefile. The shared memory
  353. facilities of Consensys do not work as expected. This flag prevents CLISP
  354. from using them.
  355.  
  356. (*) The lisp.run you get is a program that reliably crashes your machine.
  357.  
  358.  
  359. On Consensys System V 4.2:
  360.  
  361. Add -DNO_MULTIMAP_SHM -DSVR4 -DUSL to the CFLAGS in the makefile.
  362. Use "-O", not "-g", as compiler optimization settings in the CFLAGS,
  363. otherwise the ISQRT function may not work.
  364.  
  365.  
  366. On 386 UHC UNIX System V release 4:
  367.  
  368. Add -DNO_MULTIMAP_SHM -DSVR4 -DUSL to the CFLAGS in the makefile.
  369.  
  370.  
  371. On Onsite System V 4.2:
  372.  
  373. Add -DUSL to the CFLAGS in the makefile.
  374. You may need to add -lnsl to the LIBS in the makefile.
  375.  
  376.  
  377. On UnixWare:
  378.  
  379. Add -DNO_MULTIMAP_SHM -DUNIX_SYSV_UHC_1 to the CFLAGS in the makefile.
  380. This is because shared memory does not work, and malloc() returns
  381. addresses in the range 0x080xyzzy.
  382.  
  383.  
  384. On SINIX-Z 5.42:
  385.  
  386. Add -DNO_SINGLEMAP to the CFLAGS in the makefile. Something relating to
  387. mmap() or mprotect() appears not to work.
  388.  
  389.  
  390. On SINIX-N 5.42:
  391.  
  392. If using c89:
  393.   Add -Dunix -DSYSTYPE_SYSV to the CFLAGS in the makefile.
  394.   In /usr/include/sys/signal.h replace the line
  395.     #if (__STDC__ - 0 == 0) || defined(_POSIX_SOURCE) || defined(_XOPEN_SOURCE) || defined(_KERNEL)
  396.   by
  397.     #if defined(__STDC__) || defined(_POSIX_SOURCE) || defined(_XOPEN_SOURCE) || defined(_KERNEL)
  398.   - otherwise no program can include <signal.h> without error.
  399.   Set CPP = C89 -P in the makefile.
  400.  
  401.  
  402. On IRIX 3.2.1:
  403.  
  404. cc is too buggy: it dumps core when compiling spvw.i. You'll see a message
  405. "Fatal error in: /usr/lib/ccom - core dumped".
  406.  
  407. Get and install GNU gcc.
  408.  
  409.  
  410. On IRIX 4:
  411.  
  412. If you are using cc, choose "cc -ansi" as compiler. cc in non-ANSI mode
  413. fails to expand macros with arguments within preprocessor directives like #if.
  414. Since the compiler rejects 8-bit characters in strings, you will have to
  415. convert the sources to plain ASCII first.
  416. Add  -Olimit 3000  to the CFLAGS in the makefile. This ensures that the
  417. bytecode interpreter will get optimized, which is crucial for performance.
  418. If the compiler signals an internal error in unix.d, pointing to the line
  419. "extern signal_handler signal (int sig, signal_handler handler);",
  420. then comment out that line.
  421.  
  422.  
  423. On IRIX 5:
  424.  
  425. Add -DNO_MULTIMAP_SHM to the CFLAGS in the makefile.
  426. With IRIX 5.1(.0.1), it is necessary to add -D_POSIX_4SOURCE to the CFLAGS
  427. in the makefile.
  428.  
  429.  
  430. On DECstation 5000, Ultrix:
  431.  
  432. After executing "configure ...", change the first line in makemake from
  433. "#! /bin/sh" to "#! /usr/bin/ksh". /bin/sh apparently doesn't support
  434. function definitions.
  435. Add -DNO_MULTIMAP_SHM to the CFLAGS in the makefile. Shared memory
  436. facilities do not work: even SHMLBA is not defined correctly in <sys/shm.h>.
  437.  
  438.  
  439. On Apple Macintosh, A/UX:
  440.  
  441. Add -DNO_MULTIMAP_SHM to the CFLAGS in the makefile. Shared memory
  442. facilities do not work: even SHMLBA is not defined correctly in <sys/shm.h>.
  443.  
  444.  
  445. On an Amiga running AMIX 2.1 SVR4.0:
  446.  
  447. Add -DUSL -DSVR4 -DNO_MULTIMAP_SHM -DNO_MULTIMAP_FILE to the CFLAGS in the
  448. makefile. If you don't have the GNU assembler gas, then add -DNO_ASM to
  449. the CFLAGS in the makefile. You may need to add -lnsl to the LIBS in the
  450. makefile.
  451.  
  452.  
  453. On Coherent386 4.0.1:
  454.  
  455. If you are using MWC cc:
  456.   First convert the sources to plain Ascii. "cc" barfs on input files
  457.   containing non-Ascii characters even though Coherent uses the PC character
  458.   set.  "cd unix"  "cc -O cv-to-ascii.c -o cv-to-ascii"
  459.   "cp cv-to-ascii to-ascii all-to-ascii /usr/local/bin"  "cd .."
  460.   "all-to-ascii src/* utils/* doc/*"
  461. If you are using GNU gcc:
  462.   First convert the sources to the IBM PC character set Coherent uses.
  463.   "cp dos/cv_lt_pc.c unix/cv-to-ascii.c"
  464.   "cd unix"  "cc -O cv-to-ascii.c -o cv-to-ascii"
  465.   "cp cv-to-ascii to-ascii all-to-ascii /usr/local/bin"  "cd .."
  466.   "all-to-ascii src/* utils/* doc/*"
  467.  
  468. Then execute the configure scripts using ksh instead of sh.
  469. "cd src"  "ksh configure"  "cd readline"  "ksh configure"
  470.  
  471. Fix the readline/ subdirectory Makefile: remove the two lines with
  472. the .c.o rule, and set the CFLAGS line to "CFLAGS = -O -DVI_MODE".
  473. "vi Makefile" ... "cd .."
  474.  
  475. Then execute the makemake script using ksh instead of sh.
  476. /bin/sh doesn't support function definitions.
  477. "ksh makemake > makefile"
  478.  
  479. Add -DNO_MULTIMAP_SHM to the CFLAGS in the makefile. Shared memory
  480. facilities do not work: even SHMLBA is not defined correctly in <sys/shm.h>.
  481.  
  482. Then "make". If you are using MWC cc and it stops saying
  483. "Fatal error: EOF in midline", then simply retry, perhaps with less machine
  484. load.
  485.  
  486.  
  487. On AIX:
  488.  
  489. You can't use "cc" as compiler since it wants more than 64 MB RAM to compile
  490. eval.d. You will use GNU gcc without regrets.
  491. Choose "gcc -Dunix" as compiler, as described in paragraph 2 of the INSTALL
  492. file.
  493.  
  494. Add -DNO_SINGLEMAP -DNO_MULTIMAP_SHM to the CFLAGS in the makefile.
  495.  
  496.  
  497. On Sequent ptx:
  498.  
  499. Add -linet -lnsl to the LIBS in the makefile.
  500.  
  501.  
  502. On Convex C2 running ConvexOS 10.1:
  503.  
  504. Add -Dunix to the CFLAGS in the makefile.
  505. Modify the definitions belonging to CL_MMAP in unixconf.h appropriately.
  506.  
  507. If you are using gcc and have not -DSAFETY=2 or -DSAFETY=3 set, add
  508. -ffixed-a4 -ffixed-a5 -ffixed-s5 -ffixed-s6 -ffixed-s7
  509. to the CFLAGS in the makefile. This is needed because eval.d and lispbibl.d
  510. use the registers a4, a5 and s5, s6, s7 in a special way.
  511.  
  512. If using gcc-2.6, compile eval.d without optimization flags (otherwise
  513. eval.d gets miscompiled) and compile io.d without optimization flags
  514. (otherwise gcc crashes).
  515.  
  516.  
  517. On Atari ST/TT running MiNT:
  518.  
  519. Use "gcc -Dunix -U__TOS__" as compiler. The "-Dunix -U__TOS__" flags make
  520. CLISP forget that it will be running on an Atari. MiNT is treated like any
  521. other Unix operating system.
  522.  
  523. If you are on an Atari TT, add -DATARITT to the CFLAGS in the makefile.
  524. This is because ST and TT have different address space layout.
  525.  
  526.  
  527. On DEC Alpha AXP running OSF/1 1.3 or OSF/1 2.0 or OSF/1 3.0:
  528.  
  529. If cc had no bugs:
  530.   Add  -Olimit 1500  to the CFLAGS in the makefile. This ensures that the
  531.   bytecode interpreter will get optimized, which is crucial for performance.
  532. Alas, I didn't succeed in building a working lisp.run with cc. cc cannot
  533. compile package.d correctly.
  534.  
  535. So get and install GNU gcc (version 2.5.5 or newer).
  536.  
  537. On OSF/1 1.3, add -DNO_SINGLEMAP to the CFLAGS in the makefile. The reason is
  538. this that mmap() is not usable: it returns errno=ENOMEM. (The shared memory
  539. facility is not usable either: shmget() works only for segsize < 4112 KB,
  540. shmat() returns errno=EINVAL. But this is automatically detected at
  541. configuration time.)
  542. On OSF/1 3.0, mmap() works.
  543.  
  544.  
  545. Hints for porting to new platforms:
  546. -----------------------------------
  547.  
  548. Choose a reliable C compiler. GNU gcc is a good bet.
  549.  
  550. Has your machine a weird address space layout?
  551. CLISP assumes that the code and data area as well as the area of malloc'ed
  552. memory have addresses in the lower 16 MB, that is, addresses occupying
  553. only the lower 24 (out of 32) address bits. This allows CLISP to use the
  554. upper 8 bits as tags, for encoding the run time type of Lisp objects.
  555. In case this assumption does not hold, either
  556. * find a way to store 6 tag bits and an address in a 32 bit word, and
  557.   modify lispbibl.d appropriately - not a trivial task -, or
  558. * add -DWIDE to the CFLAGS. This will cause 64 bits (instead of 32) to be
  559.   allocated for every pointer to a Lisp object: 32 for the address, the
  560.   remaining for the tags. This will severely degrade CLISP's efficiency: memory
  561.   consumption will grow by 60% or more, speed will be lowered by 30% or more.
  562.   You will need a C compiler that provides 64 bit integer types; one such
  563.   compiler is GNU gcc (version 2.3.3 or later).
  564. No assumptions about the stack area are made.
  565.  
  566. If you get an error message mentioning "handle_fault", then generational GC
  567. is not working. Add -DNO_GENERATIONAL_GC to the CFLAGS and recompile.
  568.  
  569. Has your operating system shared memory or memory mapping facilities?
  570. CLISP tries to use them to save the time for stripping off the tag bits (see
  571. above) before memory accesses. If you get an error message concerning shared
  572. memory, you should add -DNO_MULTIMAP_SHM to the CFLAGS and recompile. If
  573. you get an error message concerning mapped memory, you should add
  574. -DNO_MULTIMAP_FILE -DNO_SINGLEMAP to the CFLAGS and recompile. Doing so
  575. introduces a speed penalty of about 6%. If you still get an error message
  576. concerning mapped memory, you should add -DNO_TRIVIALMAP to the CFLAGS and
  577. recompile.
  578.  
  579. If interpreted.mem was successfully generated, but lisp.run dumps core when
  580. loading .fas files, you should add -DSAFETY=3 to the CFLAGS and recompile.
  581. Find out which is the least SAFETY level that produces a working lisp.run and
  582. compiled.mem, and tell me about it.
  583.  
  584. You can check which symbols get defined in lispbibl.d by looking into
  585. lispbibl.h, assuming you are using gcc. For example:
  586.     make lispbibl.h
  587.     grep TYPECODES lispbibl.h
  588.  
  589.