home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / ckc190.zip / makefile < prev    next >
Makefile  |  1994-12-09  |  156KB  |  3,550 lines

  1. # CKUKER.MAK, Mon Dec  5 13:50:05 1994
  2. #
  3. CKVER= "5A(190)"
  4. #
  5. # -- Makefile to build C-Kermit 5A for UNIX and UNIX-like systems --
  6. #
  7. # Author: Frank da Cruz, Columbia University Academic Information Systems,
  8. # 612 West 115th Street, New York, NY 10025-7221, USA.
  9. # Phone: +1 212 854-5126, Fax: +1 212 662-6442.
  10. # E-mail: fdc@columbia.edu or FDCCU@CUVMA.BITNET.
  11. #
  12. # Copyright (C) 1985, 1994, Trustees of Columbia University in the City of New
  13. # York.  The C-Kermit software may not be, in whole or in part, licensed or
  14. # sold for profit as a software product itself, nor may it be included in or
  15. # distributed with commercial products or otherwise distributed by commercial
  16. # concerns to their clients or customers without written permission of the
  17. # Office of Kermit Development and Distribution, Columbia University.  This
  18. # copyright notice must not be removed, altered, or obscured.
  19. #
  20. # CAREFUL: Don't put the lowercase word "if", "define", or "end" as the first
  21. # word after the "#" comment introducer in the makefile, even if it is
  22. # separated by whitespace.  Some versions of "make" understand these as
  23. # directives.  Uppercase letters remove the danger, e.g. "# If you have..."
  24. #
  25. # WARNING: This is a huge makefile, and it contains nested makes.
  26. # Some "make" programs run out of memory.  If this happens to you, edit
  27. # away the parts that do not apply to your system and try again.
  28. #
  29. # For 2.10 or 2.11 BSD on DEC PDP-11s, use the separate makefile, ckubs2.mak.
  30. #   
  31. #   C-Kermit can also be built for other systems not supported by this
  32. #   makefile, including VAX/VMS and OpenVMS, Data General AOS/VS, OS/2, the
  33. #   Apple Macintosh, Stratus VOS, Apollo Aegis, the Commodore Amiga, OS-9, and
  34. #   the Atari ST.  They have their own separate build procedures.  See the
  35. #   file CKAAAA.HLP for information.
  36. #
  37. # INSTALLATION NOTES:
  38. #
  39. # Rename this file to "makefile" or "Makefile" if necessary.  Pick out the
  40. # entry most appropriate for your UNIX system from the list below and
  41. # then give the appropriate "make" command, for example "make bsd", "make
  42. # sys5r4", "make posix".  The make targets, hundreds of them, are listed
  43. # below.  If you experience any difficulties with the build procedure, then
  44. # please also read any comments that accompany the make entry itself (search
  45. # for the make entry name on the left margin).
  46. #
  47. # For more detailed installation instructions, read the files ckuins.doc and
  48. # ckccfg.doc.  For descriptions of known problems and limitations, read the
  49. # files ckcker.bwr and ckuker.bwr (the "beware files").
  50. # Most entries build C-Kermit with its symbol table included.  To reduce the
  51. # size of the executable program, add "LNKFLAGS=-s" to the end of your 'make'
  52. # command or to the makefile entry, or 'strip' the executable after
  53. # building.  To further reduce the size after building, use 'mcs -d' if your
  54. # system has such a command.  For further details on size reduction, read
  55. # ckccfg.doc.
  56. #
  57. # TCP/IP networking support: If your C-Kermit version does not include TCP/IP
  58. # networking, but your UNIX system does, try adding -DTCPSOCKET to the CFLAGS
  59. # of your makefile entry.  If that doesn't work, look at some of the other
  60. # entries that include this flag for ideas about what libraries might need to
  61. # be included, etc.
  62. #
  63. # Fullscreen file transfer display support: If you are going to use C-Kermit
  64. # for establishing connections (dialed, network, etc), you can configure it to
  65. # produce a formatted file transfer display by including the curses library
  66. # and adding -DCK_CURSES to the CFLAGS for your option, and linking with the
  67. # appropriate libraries.  There are many examples below, usually ending in
  68. # "c", like rs6000c, du42c, sunos41c, etc.  Also add -DCK_WREFRESH if your
  69. # curses library includes clearok() and wrefresh() functions (or add
  70. # -DNOWREFRESH if the linker complains that it can't find these functions).
  71. # After building, you still have to SET FILE DISPLAY FULLSCREEN to get the
  72. # formatted screen display.
  73. #
  74. # Please report modifications, successes, failures (preferably with fixes) or
  75. # successes to the author.
  76. #
  77. # MAKE COMMANDS FOR DIFFERENT UNIX VERSIONS:
  78. #
  79. # + Marks those that have been tested successfully with C-Kermit 5A.
  80. # - Marks those that are known not to work in version 5A.
  81. # ? Marks those as yet untested in version 5A.
  82. #
  83. # + for 386BSD (Jolix) 0.0, 0.1, "make 386bsd" (see comments in entry),
  84. #     or (preferably, if it works) "make bsd44" or "make bsd44c".
  85. # + for Acorn RISCiX, "make riscix" or "make riscixgcc"
  86. # + for Alliant FX/8 with Concentrix 4.1 or later, "make bsdlck"
  87. # + for Altos 486, 586, 986 with Xenix 3.0, "make altos"
  88. # + for Altos ACS68000, 8Mhz 68000, UNIX System 3 Rel 2, 512K, "make altos3"
  89. # ? for Amdahl UTS 2.4 on IBM 370 series & compatible mainframes, "make uts24"
  90. # + for Amdahl UTSV IBM 370 series & compatible mainframes, "make utsv"
  91. # + for Amdahl UTSV IBM 370 series mainframes with TCP/IP, "make utsvtcp"
  92. # + for Amdahl mainframes with UNIX System V R 5.2.6b 580, "make sys3"
  93. # + for Apollo Aegis 9.x, DOMAIN/IX 9.x, "make aegis"
  94. # ? for Apollo DOMAIN/IX, if the above fails, try "make apollobsd"
  95. # + for Apollo with SR10.0 or later, BSD environment, "make sr10-bsd"
  96. # + for Apollo with SR10.0 or later, System V environment, "make sr10-s5r3"
  97. # + for Apple Macintosh II with A/UX pre-3.0, "make aux", "auxgcc" or "auxufs"
  98. # + for Apple Macintosh with A/UX 3.0 and gcc, "make aux3gcc" or aux3gccc
  99. # ? for Apple Macintosh with Minix 1.5.10, "make minix68k" or "make minixc68"
  100. # ? for Arix System 90 with AT&T SVR3, "make sys5r3na"
  101. # + for AT&T 6300 PLUS, "make att6300" or (with no debugging) "make att6300nd"
  102. # + for AT&T 6386 WGS UNIX PC, "make sys5r3"
  103. # + for AT&T 3B2, 3B20 systems, "make att3bx" or "make att3bxc"
  104. # + for AT&T 3B1, 7300 UNIX PC, "make sys3upc", "sys3upcg" (gcc), "sys3upcold",
  105. #     or (for fullscreen curses display) "make sys3upcc", "sys3upcgc" (gcc)
  106. #        or "make sys3upcx" (see entries for more explanation),
  107. #     or (for fullscreen curses display and shared library) "make sys3upcshcc"
  108. #     or for minimum-size interactive version for systems with small memories
  109. #       "make sys3upcm" or (with gcc) "make sys3upcgm".
  110. # + for AT&T System III/System V R2 or earlier, "make sys3" or "make sys3nid"
  111. # + for AT&T System III/System V with Honey DanBer UUCP, "make sys3hdb"
  112. # + for AT&T System V on DEC VAX, "make sys3" or "make sys5r3"
  113. # + for AT&T System V R3, use "make sys5r3" or "make sys5r3c"
  114. # + for AT&T System V R4, "make sys5r4", "make sys5r4sx", or "make sys5r4nx",
  115. #     or if the ANSI C function prototyping makes trouble, add -DNOANSI,
  116. #     as in "sys5r4sxna" entry
  117. # + for AT&T System V R4 with bundled TCP/IP, "make sys5r4netc", ...
  118. # + for AT&T System V R4 with Wollongong TCP/IP, "make sys5r4twg", ...
  119. # + for AT&T (USL) System V R4.2 use the sys5r4* entries.
  120. # + for Atari ST with Minix ST 1.5.10.3, "make minix68k" or "make minixc68"
  121. # ? for BBN C/70 with IOS 2.0, "make c70"
  122. # + for Bell UNIX Version 7 (aka 7th Edition), "make v7" (but see notes below)
  123. # + for BSDI/386, "make bsdi"
  124. # + for Berkeley Unix 2.4, "make v7" (but read v7 material below)
  125. # ? for Berkeley Unix 2.9 (DEC PDP-11 or Pro-3xx), "make bsd29"
  126. # + for Berkeley Unix 2.10, use ckubs2.mak (a separate makefile)
  127. # + for Berkeley Unix 2.11, use ckubs2.mak (a separate makefile)
  128. #     Read the instructions in ckubs2.mak.
  129. #     Rename ckubs2.mak to makefile, then "make bsd210" or "make bsd211".
  130. # + for Berkeley Unix 4.1, "make bsd41"
  131. # + for Berkeley Unix 4.2, "make bsd" (tested with 4.2 and 4.3)
  132. # + for Berkeley Unix 4.2 or 4.3 with HoneyDanBer UUCP, "make bsdhdb"
  133. # + for Berkeley Unix 4.3, "make bsd43" (uses acucntrl program for locks)
  134. # + for Berkeley Unix 4.3 without acucntrl program, "make bsdlck" or "make bsd"
  135. # ? for Berkeley Unix 4.3-Tahoe, same as 4.3 BSD
  136. # + for Berkeley Unix 4.3-Reno, "make bsd43" or "make bsd44" or "make bsd44c"
  137. # + for Berkeley Unix 4.3-Carson City, "make bsd44" or "make bsd44c"
  138. # + for Berkeley Unix 4.4-Networking/2 or -Alpha, "make bsd44" or "make bsd44c"
  139. # + for Berkeley Unix 4.4, "make bsd44" or "make bsd44c"
  140. # + for Bull DPX/2 with BOS/X, "make bulldpx2"
  141. # ? for Cadmus, "make sys3"
  142. # ? for Callan Unistar, "make sys3"
  143. # ? for CDC VX/VE 5.2.1 System V emulation, "make vxve"
  144. # + for Charles River Data Systems Universe 680x0 with UNOS 9.2, maybe
  145. #     also other UNOS versions, "make crds"
  146. # ? for CIE Systems 680/20 with Regulus, "make cie"
  147. # + for Commodore Amiga 3000UX Sys V R4, "make sys5r4sx"
  148. # + for Commodore Amiga 3000UX Sys V R4 and TCP/IP, "make svr4amiganet"
  149. # ? for Commodore Amiga with Minix 1.5.10, "make minix68k" of "make minixc68"
  150. # + for Concurrent/Masscomp with RTU 4.0 or later, BSD environment, "make
  151. #     rtubsd", "make rtubsd2", "make rtubsd3" (depending on where ndir.h
  152. #     is stored, see entries below).
  153. # ? for Concurrent/Masscomp with RTU 4.0 or later, System V R2, "make rtus5"
  154. # + for Concurrent/Masscomp with RTU 5.0 or later, System V R3, "make rtusvr3"
  155. # + for Concurrent (Perkin-Elmer) 3200 series, "make sys5".
  156. # + for Concurrent (Perkin-Elmer) 3200 series with <dirent.h>, "make ccop1"
  157. # + for Consensys UNIX SV/386 R4V3, "make sys5r4sxtcpc" or "make sys5r4sx"
  158. # ? for Convergent with CTIX Sys V R2, "make sys5"
  159. # + for Convergent with CTIX 6.4.1, "make ctix"
  160. # + for Convex C1, "make convex"
  161. # + for Convex C210 with Convex/OS 8, "make convex8"
  162. # + for Convex C2 with Convex/OS 9.1, "make convex9"
  163. # + for Convex C2 with Convex/OS 10.1 and gcc 2.x, "make convex10gcc"
  164. # + for Cray Research X/MP or YMP or C90 with UNICOS 6.x (System V R3),
  165. #    "make cray"
  166. # + for Cray Research X/MP or YMP or C90 with UNICOS 7.x (System V R4),
  167. #    "make cray"
  168. # + for Cray Research X/MP or YMP or C90 with UNICOS 8.0 Alpha, "make cray8"
  169. # + for Cray Computer Cray-2 or Cray3 with CSOS, "make craycsos"
  170. # + for Cyber 910 (Silicon-Graphics Iris) with Irix 3.3, "irix33"
  171. # + for Data General AViiON with DG/UX 5.4R3.00, "make dgux543c"
  172. # + for Data General AViiON with DG/UX 5.4, "make dgux540"
  173. #     or "make dgux540c" (compile ckwart separately if necessary)
  174. # + for Data General AViiON with DG/UX 4.3x using Sys V-isms, "make dgux430"
  175. # ? for Data General AViiON with DG/UX 4.3x using BSD-isms, "make dgux430bsd"
  176. # ? for Data General AViiON, earlier UNIX versions,
  177. #     "make sys5r3" (maybe compile ckwart separately)
  178. # ? for Data General MV systems with DG/UX, ???
  179. # + for Data General MV systems with MV/UX, use AOS/VS C-Kermit (CKDKER.MAK)
  180. # + for Data General MV systems with AOS/VS, use CKDKER.MAK.
  181. # + for DEC VAX with Ultrix 1.x "make bsd"
  182. # + for DEC VAX with Ultrix 2.x "make du2"
  183. # + for DEC VAX or DECstation with Ultrix 3.0, 3.1, "make du3"
  184. # + for DECstation (or VAX) with Ultrix 4.0 or 4.1, "make du4"
  185. # + for DECstation (or VAX) with Ultrix 4.x and Kanji support, "make du4kanji"
  186. # + for DECstation (or VAX) with Ultrix 4.2, "make du42" or "make du42c"
  187. # + for DECstation (or VAX) with Ultrix 4.2, Sys V R4 world, "make du42s5r4"
  188. # + for DECstation (or VAX) with Ultrix 4.x, POSIX world, "make posix"
  189. # + for DECstation with Ultrix 4.3, "make du42"
  190. # + for DECstation 5000/50 or /150 or /260 (R4x00 MIPS CPU), Ultrix 4.3A/4.4
  191. #     "make du43c-mips3" or "make du44-mips3"
  192. # + for DECstation (MIPS) with OSF/1 V1.0 to 1.3, "make dec-osf"
  193. # + for DEC Alpha AXP with OSF/1 1.0 to 1.3, "make dec-osf"
  194. # + for DEC PC 486 with OSF/1, "make dec-osf"
  195. # + for DEC Alpha AXP with OSF/1 2.x, "make dec-osf20"
  196. # + for DEC Alpha AXP with OSF/1 3.0, "make dec-osf30"
  197. # - for DEC Pro-350 with Pro/Venix V1.x, "make provx1" (version 5A is too big)
  198. # ? for DEC Pro-350 with Pro/Venix V2.0 (Sys V), "make sys3nid"
  199. # ? for DEC Pro-380 with Pro/Venix V2.0 (Sys V), "make sys3" or "make sys3nid"
  200. # ? for DEC Pro-380 with 2.9, 2.10, or 2.11 BSD, "make bsd29" or "make bsd210"
  201. # + for Dell UNIX Issue 2.x (= USL Sys V/386 R4.x + fixes), "make dellsys5r4"
  202. #     or "make dellsys5r4c"
  203. # + for DIAB DS90 with DNIX (any version) create an empty <sys/file.h> if
  204. #     this file does not already exist (or add -DNOFILEH to the make entry).
  205. # + for DIAB DS90 or LUXOR ABC-9000 with pre-5.2 DNIX, add "getcwd" to libc.a
  206. #     (see ckuins.doc), then "make dnixold".
  207. # + for DIAB DS90 with DNIX 5.2 (Sys V.2) or earlier, "make dnix",
  208. #     "make dnixnd", or (to add curses and TCP/IP) "make dnixnetc",
  209. # + for DIAB DS90 with DNIX 5.3 (Sys V.3), "make dnix5r3"
  210. # + for DIAB DS90 with DNIX 5.3 (Sys V.3) and TCP/IP, "make dnix5r3net"
  211. # + for DIAB DS90 with DNIX 5.3 2.2 (Sys V.3), ANSI C, "make dnix5r3ansi"
  212. #     or, to include TCP/IP, "make dnix5r3ansinet",
  213. #     but you have to fix a bug in /usr/include/stdlib.h first:
  214. #     change "extern void free(char *str);" to "extern void free(void *str);"
  215. # + for Dolphin Server Technology Triton 88/17 with SV/88 R3.2, "make sv88r32"
  216. # + for Encore Multimax 310, 510 with Umax 4.2, "make umax42"
  217. # + for Encore Multimax 310, 510 with Umax 4.3, "make umax43"
  218. # + for Encore Multimax 310, 510 with Umax V 2.2, use Berkeley cc, "make bsd"
  219. # + for Encore 88K with Umax V 5.2, "make encore88k"
  220. # + for ESIX System V R4.0.3 or 4.04 with TCP/IP support, "make esixr4"
  221. # + for Everex STEP 386/25 Rev G with ESIX Sys V R3.2D, "make sys5r3"
  222. # ? for Fortune 32:16, For:Pro 1.8, "make ft18"
  223. # + for Fortune 32:16, For:Pro 2.1, "make ft21"
  224. # + for FPS 500 with FPX 4.1, "made bsd"
  225. # + for FreeBSD 1.0, "make freebsd"
  226. # + for FreeBSD 2.0, "make freebsd2"
  227. # + for Harris HCX-2900, "make sys5r3"
  228. # ? for Harris Night Hawk 88K or 68K with CX/UX pre-6.1, "make sys5r3"
  229. # + for Harris Night Hawk 88K or 68K with CX/UX 6.1 or later, "make cx_ux"
  230. # ? for Heurikon, "make sys3"
  231. # ? for HP-3000, MPE/ix, "make posix"?
  232. # + for HP-9000 Series 500, HP-UX 5.21 with WIN/TCP 1.2 "make hpux500wintcp"
  233. # + for HP-9000 Series, HP-UX < 6.5, without long filenames, no job control,
  234. #     "make hpuxpre65"
  235. # + for HP-9000 Series, HP-UX pre-7.0, without long filenames, "make hpux"
  236. # ? for HP-9000 Series, HP-UX 7.0 or later, no long filenames, "make hpux7sf"
  237. # + for HP-9000 Series with HP-UX Sys V R2, BSD long names, "make hpuxlf"
  238. # + for HP-9000 Series with HP-UX Sys V R2, dirent long names, "make hpuxde"
  239. #     or (to include TCP/IP support) "make hpuxdetcp"
  240. # + for HP-9000 Series with HP-UX Sys V R3, "make hpuxs5r3"
  241. # + for HP-9000 Series with HP-UX 7.0, TCP/IP, long filenames, "make hpux70lfn"
  242. # + for HP-9000 300/400 Series (680x0) with HP-UX 8.0, TCP/IP, "make hpux80"
  243. #      or "make hpux80c"
  244. # + for HP-9000 700/800 Series (PA-RISC), HP-UX 8.0, TCP/IP, "make hpux80pa"
  245. #      or "make hpux80pac"
  246. # + for HP-9000 Series with HP-UX 8.0, no TCP/IP, long filenames,
  247. #      "make hpux80notcp" or "make hpuxde"
  248. # + for HP-9000 Series, HP-UX 9.0 - 9.05, TCP/IP, curses, restricted compiler
  249. #     (no optimization, no ANSI), all models, "make hpux90".  Read the hpux90
  250. #     entry below for more info.
  251. # + for HP-9000 700 and 800 Series, HP-UX 9.x, TCP/IP, curses,
  252. #     HP optimizing ANSI C compiler, "make hpux90o700".
  253. # + for HP-9000 series, HP-UX 9.x, TCP/IP, curses, gcc, all models,
  254. #     "make hpux90gcc"
  255. # + for HP-9000 700/800 Series, HP-UX 10.0, TCP/IP, curses, restricted compiler
  256. #     (no optimization, no ANSI) "make hpux100".
  257. # + for HP-9000 700/800 Series, HP-UX 10.0, TCP/IP, curses, HP ANSI/optimizing
  258. #     compiler "make hpux100o".
  259. # ? for IBM 370 Series with IX/370, "make ix370"
  260. # + for IBM 370 Series with AIX/370 1.2, "make aix370"
  261. # ? for IBM 370 Series with AIX/370 3.0, "make aix370"
  262. # + for IBM 370 Series with AIX/ESA 2.1, "make aixesa"
  263. # - for IBM PC/AT 286 & compatibles with Mark Williams Coherent OS,
  264. #     command-line-only version, "make coherent" (version 5A is too big)
  265. # + for IBM PC 386 & compatibles with Mark Williams Coherent OS,
  266. #     minimum interactive version, "make coherentmi"
  267. # + for IBM PC 386 & compatibles with Mark Williams Coherent OS,
  268. #     full interactive version, prior to v4.2, "make coherentmax"
  269. # + for IBM PC 386 & compatibles with Mark Williams Coherent OS 4.2,
  270. #     "make coherent42"
  271. # + for IBM PC 386 & compatibles with LynxOS 2.0 or 2.1, "make lynx21"
  272. # + for IBM PC 386 & compatibles with LynxOS 2.2, "make lynx"
  273. # - for IBM PC/AT & compatibles with original MINIX, "make minix" (too big)
  274. # + for IBM PC/AT & compatibles with MINIX, new compiler, "make minixnew"
  275. # + for IBM PC family, 386-based, with MINIX/386, "make minix386"
  276. #     or if you have GNU CC, "make minix386gcc"
  277. # + for IBM PS/2 with PS/2 AIX 1.0, 1.1, or 1.2, "make ps2aix" on make level
  278. #      1009 with U401450
  279. # + for IBM PS/2 with PS/2 AIX 1.3, "make ps2aix3"
  280. # + for IBM RISC System/6000 with AIX 3.0 or 3.1 "make rs6000" or
  281. #     "make rs6000c" on make level 2008, 3.1.8
  282. # + for IBM RISC System/6000 with AIX 3.2.0 thru 3.2.5
  283. #     "make rs6aix32" or "make rs6aix32c"
  284. # + for IBM RISC System/6000 with AIX 4.1 or AIX 4.1.1, "make rs6aix41c"
  285. # ? for IBM RT PC with AIX 2.1, "make sys3"
  286. # + for IBM RT PC with AIX 2.2.1, "make rtaix" or "make rtaixc"
  287. # ? for IBM RT PC with ACIS 4.2, "make bsd"
  288. # + for IBM RT PC with ACIS 4.3, "make rtacis" or "make bsd KFLAGS=-DNOANSI"
  289. # + for IBM RT PC with 4.3BSD/Reno, "make bsd44" or "make bsd44c"
  290. # + for ICL DRS400 or 400E, "make iclsys5r3"
  291. # + for ICL DRS3000 (80486) with DRS/NX, "make iclsys5r4_486"
  292. # + for ICL DRS6000 (SPARC) with DRS/NX, "make iclsys5r4"
  293. # + Integrated Solutions Inc V8S VME 68020, "make isi"
  294. # + for Intel 302 with Bell Tech Sys V/386 R3.2, "make sys5r3"
  295. # ? for Intel Xenix/286, "make sco286"
  296. # ? for Interactive System III (PC/IX), "make pcix" or "make is3"
  297. # + for Interactive System III (PC/IX) with gcc, "make is3gcc"
  298. # + for Interactive 386/ix 1.0.6 with TCP/IP networking, "make is5r3net2"
  299. # + for Interactive 386/ix 2.0.x, "make is5r3" or (POSIX) "make is5r3p"
  300. # + for Interactive 386/ix 2.0.x with TCP/IP networking, "make is5r3net"
  301. #     or "make is5r3net2"
  302. # + for Interactive 386/ix 2.2.1, job control, curses, no net, gcc,
  303. #     "make is5r3gcc"
  304. # + for Interactive 386/ix 2.2 - 3.0 with TCP/IP networking and job control,
  305. #     "make is5r3netjc"
  306. # + for Interactive UNIX Sys V R3 2.2 with job control, curses, "make is5r3jc"
  307. # + for Interactive UNIX Sys V R3 3.0, "make is5r3jc"
  308. # + for Intergraph Clipper, "make clix" or "make clixnetc"
  309. # + for Linux/386, "make linux" or (to add TCP/IP) "linuxtcp".
  310. #     For static linking, use "make linuxs" or "make linuxtcps".
  311. #     Default UUCP lockfile directory is /usr/spool/uucp with int pid; to get
  312. #     FSSTND-recommended /var/lock with string pid, add -DLINUXFSSTND.
  313. #     If you get compiler errors regarding <linux/serial.h>, add -DNOHISPEED.
  314. # + for Luxor ABC-9000 (DIAB DS-90) with pre-5.2 DNIX, add "getcwd" to libc.a
  315. #     (see ckuins.doc), then "make dnixold".
  316. # + for Mach 2.6 on (anything, e.g. DECstation), "make bsd42" or "make bsd43".
  317. # + for MachTen (Tenon) 2.1.1.D on (e.g.) Apple Powerbook, "make machten".
  318. # ? for Masscomp RTU AT&T System III, "make rtu"
  319. #   for other Masscomp, see Concurrent.
  320. # ? for Microport SV/AT (System V R2), "make mpsysv" (last edit tested: 144)
  321. # + for Microport SVR4 2.2, 3.1, or 4.1 "make sys5r4sx"
  322. # ? for Microsoft,IBM Xenix (/286, PC/AT, etc), "make xenix" or "make sco286"
  323. # + for MIPS System with RISC/os (UMIPS) 4.52 = AT&T SVR3, "make mips"
  324. #     or "make mipstcpc"
  325. # + for Modcomp 9730, Real/IX, "make sys5r3" (or modify to use gcc = GLS cc)
  326. # + for Modcomp Realstar 1000 with REAL/IX D.1, "make sv88r32"
  327. # ? for Motorola Four Phase, "make sys3" or "make sys3nid"
  328. # + for Motorola Delta System V/68 R3, "make sv68r3"
  329. # + for Motorola Delta System V/68 R3V5, "make sv68r3v5"
  330. # + for Motorola Delta System V/68 R3V5.1, "make sv68r3v51"
  331. # + for Motorola Delta System V/88 R32, "make sv88r32"
  332. # + for Motorola Delta System V/88 R40, "make sv88r40"
  333. # + for Mt Xinu Mach386 on 386/486-based PCs, "make bsd43"
  334. # ? for NCR Tower 1632, OS 1.02, "make tower1"
  335. # + for NCR Tower 1632 or Minitower with System V R2, "make sys3"
  336. #     or "make sys3nv"
  337. # + for NCR Tower 32, OS Release 1.xx.xx, "make tower32-1"
  338. # + for NCR Tower 32, OS Release 2.xx.xx, "make tower32-2"
  339. # + for NCR Tower 32, OS Releases based on Sys V R3, "make tower32"
  340. # + for NCR Tower 32, OS Releases based on Sys V R3 with gcc "make tower32g"
  341. # + for NCR System 3000, AT&T UNIX System V R4 2.0, "make sys5r4sxna"
  342. # + for NCR System 3000, AT&T UNIX System V R4 2.0 with Wollongong TCP/IP,
  343. #     "make sys5r4net2".  Some header files might misplaced; try this:
  344. #       ln /usr/include/netinet/in.h /usr/include/sys/in.h
  345. #       ln /usr/include/arpa/inet.h /usr/include/sys/inet.h
  346. #       ln /usr/include/sys/termiox.h /usr/include/termiox.h
  347. # + for NCR System 3000, NCR UNIX 02.02.01, same as above.
  348. # + for NetBSD on PC 386/486, etc, "make netbsd"
  349. # + for NeXT with NeXTSTEP 1.0 through 3.2, "make next" (on a NeXT)
  350. # + for NeXTSTEP/486, "make next" (on a PC)
  351. # + for NeXTSTEP portable binary (runs on Intel or Motorola), "make nextfat"
  352. # + for Nixdorf Targon/31, "make t31tos40x"
  353. # + for Novell UnixWare, "make unixware" or "make unixwarenetc"
  354. # + for Norsk Data Uniline 88/17 with SV/88 R3.2, "make sv88r32"
  355. # + for OSF/1 (vanilla, from OS/F), "make posix"
  356. # + for OkiStation 7300 Series, "make sys5r4sxtcp"
  357. # + for Olivetti LSX-3020 with X/OS R.2.3, "make xos23" or "make xos23c"
  358. # + for Perkin-Elmer (Concurrent) 3200 series, "make sys5".
  359. # + for Perkin-Elmer (Concurrent) 3200 series with <dirent.h>, "make ccop1"
  360. # + for Perkin-Elmer/Concurrent 3200 with Xelos R02, "make ccop1"
  361. # + for PFU Compact A Series SX/A TISP V10/E50 (Japan), "make sxae50"
  362. # ? for Plexus, "make sys3"
  363. # + for Pyramid 9XXX (e.g. 9845) or MIServer T series, OSx 4.4b thru 5.1,
  364. #     "ucb make pyramid" or for HDB UUCP, "ucb make pyramid-hdb" or
  365. # + for Pyramid MIServer S or ES Series, DataCenter/OSx, "make pyrdcosx"
  366. # + for Pyramid MIS-S MIPS R3000, DataCenter OSx System V R4, "make pyrdcosx"
  367. # + for POSIX on anything, "make posix" (but adjustments might be necessary).
  368. # + for POSIX on SunOS 4.1 or later, "make sunposix"
  369. # + for QNX 4.0 or 4.1, 16-bit, on 286 PC, Watcom C 8.5, "make qnx16_41"
  370. # + for QNX 4.2.1, 16-bit, on 386 or above, Watcom C 9.5, "make qnx16"
  371. # + for QNX 4.2.1, 32-bit, on 386 or above, Watcom C 9.5, "make qnx32"
  372. # ? for Ridge 32 (ROS3.2), "make ridge32"
  373. # ? for Samsung MagicStation, "make sys5r4"
  374. # ? for SCO Xenix 2.2.1 with development system 2.2 on 8086/8 "make sco86"
  375. # + for SCO Xenix/286 2.2.1 with development system 2.2 on 80286, "make sco286"
  376. #     NOTE: reportedly this makefile is too long for SCO Xenix/286 make, but it
  377. #     works with "makeL", or if some of the other make entries are edited out.
  378. # + for SCO Xenix/386 2.2.2, "make sco386"
  379. # + for SCO Xenix/386 2.3.x, "make sco3r2" or "make sco3r2x"
  380. # + for SCO Xenix/386 SCO 2.3.3 or 2.3.4 with gcc 1.37 or later,
  381. #     "make sco386gcc" or (to add curses) "make sco386gccc".
  382. #   for SCO UNIX...  ALSO READ COMMENTS in SCO UNIX entries for more info!
  383. # + for SCO UNIX/386 3.2.0 or 3.2.1, "make sco3r2" or "make sco3r2x"
  384. # + for SCO UNIX/386 3.2.2, "make sco3r22" or "make sco3r22gcc"
  385. #     or "make sco3r22c"
  386. # + for SCO UNIX/386 3.2.2 with SCO TCP/IP, "make sco3r22net"
  387. #     or "make sco3r22netc" (curses)
  388. # + for SCO ODT 1.1, "make sco3r22net" or "make sco3r22netc" (curses)
  389. # + for SCO UNIX/386 3.2 V4.0, no network support, "make sco32v4"
  390. # + for SCO UNIX 3.2v4.0 with TCP/IP, <dirent.h> for Extended Acer File
  391. #     System (EAFS), curses, ANSI C compilation, "make sco32v4net"
  392. # + for SCO UNIX 3.2v4.2, "make sco_odt30"
  393. # + for SCO ODT 2.0, "make sco32v4net"
  394. # + for SCO ODT 3.0, "make sco_odt30"
  395. # + for SCO Xenix/386 or UNIX/386 with Excelan TCP/IP, "make sco3r2net"
  396. #     or (to add curses support) "make sco3r2netc" or "sco386netc"
  397. # + for SCO Xenix 2.3.x with Racal-InterLan TCP/IP, "make sco3r2netri"
  398. # + for SCO Xenix 2.3.x with SCO (Lachman) TCP/IP, "make sco3r2lai"
  399. #     or (to add curses) "make sco3r2laic"
  400. # + for other UNIX varieties with Racal Interlan TCP/IP, read sco3r2netri entry
  401. # + for Sequent with DYNIX/ptx 1.2.1, "make dynixptx12"
  402. # + for Sequent with DYNIX/ptx 1.3 or 1.4 with TCP/IP, "make dynixptx13"
  403. # + for Sequent with DYNIX/ptx 2.0, 2.1 or 4.0 with TCP/IP, "make dynixptx20"
  404. #     or "dynixptx20c"
  405. # + for Sequent Balance 8000 or B8 with DYNIX 3.0.xx, "make dynix3"
  406. #    or "make dynix3noacu"
  407. # + for Sequent Symmetry S81 with DYNIX 3.0.xx, "make dynix3"
  408. # + for Sequent DYNIX 3.1.xx, "make dynix31" or "make dynix31c"
  409. # + for Silicon Graphics Iris System V IRIX 3.2 or earlier, "make iris"
  410. # + for Silicon Graphics Sys V R3 with IRIX 3.3 or later, "make sys5r3"
  411. # + for Silicon Graphics Iris Indigo with IRIX 4.0 or 5.0, "make irix40" or
  412. #     (to include Yellow Pages and Curses) "make irix40ypc"
  413. # + for Silicon Graphics Iris Indigo or Elan with IRIX 4.0.x with microcode
  414. #     optimization and -O4, "make irix40u" or "irix40uc" (and read notes
  415. #     accompanying these entries).
  416. # + for Silicon Graphics Challenge XL with IRIX 5.1/5.2 or Indigo Elan with
  417. #     IRIX 5.2, "make irix51ypc".
  418. # + for Silicon Graphics Challenge XL with IRIX 5.1/5.2, "make irix51ypc".
  419. # + for Solaris 2.0-2.3 on SPARC or Intel, SunPro CC, "make solaris2x",
  420. # +   or to add SunLink X.25 8.0x support, "make solaris2x25".
  421. # + for Solaris 2.0-2.3 on SPARC or Intel, GNU CC, "make solaris2xg".
  422. # + for Solbourne 4/500 with OS/MP 4 "make sunos4"
  423. # + for Solbourne 4/500 with OS/MP 4.1 "make sunos41" or "make sunos41c"
  424. # + for SONY NEWS with NEWS-OS 4.0.1C, "make sonynews"
  425. # + for SONY NEWS with NEWS-OS 4.1.2C, "make sonynews"
  426. # + for Sperry/UNISYS 5000/20, UTS V 5.2 3R1, "make sys5"
  427. # + for Sperry/UNISYS 5000/30/35/50/55, UTS V 5.2 2.01, "make unisys5r2"
  428. # + for Sperry/UNISYS 5000/80 with System V R3, "make sys5r3"
  429. # + for Sperry/UNISYS 5000/95 with System V R3, "make sys5r3"
  430. #     For UNISYS SVR3 it might be necessary to "make sys5r3 KFLAGS=-UDYNAMIC"
  431. # + for Stardent 1520, "make sys5r3"
  432. # + for Stratus, various models, FTX 2.1, probably also 2.2, "make sys5r4"
  433. # + for Sun with Sun UNIX 3.5 and gcc, "make sunos3gcc"
  434. # + for Sun with pre-4.0 SunOS versions, "make bsd" (or appropriate variant)
  435. # + for Sun with SunOS 4.0, BSD environment, "make sunos4"
  436. # + for Sun with SunOS 4.0, BSD, with SunLink X.25, make sunos4x25
  437. # + for Sun with SunOS 4.0, AT&T Sys V R3 environment, "make sunos4s5"
  438. # + for Sun with SunOS 4.1 or 4.1.1, BSD environment, "make sunos41"
  439. #     or "make sunos41c" (curses) or "make sunos41gcc" (compile with gcc)
  440. # + for Sun with SunOS 4.1.x, BSD, with SunLink X.25 7.00 or earlier,
  441. #     "make sunos41x25" or "make sunos41x25c" (curses)
  442. # + for Sun with SunOS 4.1, 4.1.1, AT&T Sys V R3 environment, "make sunos41s5"
  443. # + for Sun with SunOS 4.1, 4.1.1, POSIX environment, "make sunposix"
  444. # + for Sun with SunOS 4.1.2, "make sunos41" or any of its variations.
  445. #     NOTE:  All SunOS 4.x systems -- Shared libraries are used by default.
  446. #       If this causes problems, add -Bstatic to CFLAGS.
  447. #     NOTE2: When building C-Kermit under SunOS for the BSD universe,
  448. #       but /usr/5bin/cc is ahead of /usr/ucb/cc in your PATH, add
  449. #       "CC=/usr/ucb/cc CC2=/usr/ucb/cc" to the make entry.
  450. #     NOTE3: If an executable built on one type of Sun hardware does not work
  451. #       on another type, rebuild the program from source on the target machine.
  452. # + for Sun with Solaris 1.x use SunOS 4.1 entries.
  453. # + for Sun with Solaris 2.0 through 2.3 and SunPro CC, "make solaris2x"
  454. # + for Sun with Solaris 2.0 through 2.3 and GNU CC, "make solaris2xg"
  455. # + for Tandy 16/6000 with Xenix 3.0, "make trs16"
  456. # + for Tektronix 6130/4132/43xx (e.g.4301) with UTek OS, "make utek"
  457. #     or (for models without hardware flow control), "make uteknohwfc"
  458. # + for Tektronix XD88 series with UTekV OS, "make utekvr3"
  459. # + for Tri Star Flash Cache with Esix SVR3.2, "make sys5r3"
  460. # ? for Unistar, "make sys5"
  461. # + for UNISYS S/4040 68040 CTIX SVR3.2 6.4.1, "make ctix" or "make sys5r3"
  462. # + for UNISYS U5000 UNIX SVR3 6.x, "make sys5r3" or "make sys5r3c"
  463. # + for UNISYS U6000 UNIX SVR4 1.x, "make sys5r4nx" or "make sys5r4nxnetc"
  464. #   for UNISYS ... (also see Sperry)
  465. #   for Univel, UnixWare: see Novell
  466. # ? for Valid Scaldstar, "make valid"
  467. # ? for Whitechapel MG01 Genix 1.3, "make white"
  468. # ? for Zilog ZEUS 3.21, "make zilog"
  469. #
  470. # The result should be a runnable program called "wermit" in the current
  471. # directory.  After satisfactory testing, you can rename wermit to "kermit"
  472. # and put it where users can find it.
  473. #
  474. # To remove intermediate and object files, "make clean".
  475. # If your C compiler produces files with an extension other than "o",
  476. # then "make clean EXT=u", "make clean EXT=s", or whatever.
  477. #
  478. # To run lint on the source files, "make lintsun", "make lintbsd",
  479. # "make lints5", as appropriate.
  480. #
  481. ##############################################################################
  482. #
  483. # NOTES FOR V7 AND 2.X BSD (BASED ON VERSION 4E OF C-KERMIT):
  484. #
  485. # For Unix Version 7, several variables must be defined to the values
  486. # associated with your system.  BOOTNAME=/edition7 is the kernel image on
  487. # okstate's Perkin-Elmer 3230.  Others will probably be /unix.  PROCNAME=proc
  488. # is the name of the structure assigned to each process on okstate's system.
  489. # This may be "_proc" or some other variation.  See <sys/proc.h> for more
  490. # info on your systems name conventions.  NPROCNAME=nproc is the name of a
  491. # kernel variable that tells how many "proc" structures there are.  Again
  492. # this may be different on your system, but nproc will probably be somewhere.
  493. # The variable NPTYPE is the type of the nproc variable -- int, short, etc.
  494. # which can probably be gleaned from <sys/param.h>.  The definition of DIRECT
  495. # is a little more complicated.  If nlist() returns, for "proc" only, the
  496. # address of the array, then you should define DIRECT as it is below.  If
  497. # however, nlist() returns the address of a pointer to the array, then you
  498. # should give DIRECT a null definition (DIRECT= ).  The extern declaration in
  499. # <sys/proc.h> should clarify this for you.  If it is "extern struct proc
  500. # *proc", then you should NOT define DIRECT.  If it is "extern struct proc
  501. # proc[]", then you should probably define DIRECT as it is below.  See
  502. # ckuv7.hlp for further information.
  503. #
  504. # For 2.9 BSD, the makefile may use pcc rather than cc for compiles; that's
  505. # what the CC and CC2 definitions are for (the current version of the
  506. # makefile uses cc for both; this was tested in version 4E of C-Kermit and
  507. # worked OK on the DEC Pro 380, but all bets are off for version 5A).  2.9
  508. # support basically follows the 4.1 path.  Some 2.9 systems use "dir.h" for
  509. # the directory header file, others will need to change this to "ndir.h".
  510. #
  511. # The v7 and 2.9bsd versions assume I&D space on a PDP-11.  When building
  512. # C-Kermit for v7 on a PDP-11, you should probably add the -i option to the
  513. # link flags.  Without I&D space, overlays will be necessary (if available),
  514. # or code segment mapping (a`la Pro/Venix) if that's available.
  515. #
  516. # C-Kermit 5A can be built for 2.10 and 2.11BSD, using overlays, but a
  517. # separate makefile is used because this one is too big.
  518. #
  519. ##############################################################################
  520. #
  521. # V7-specific variables.
  522. # These are set up for Perkin-Elmer 3230 V7 Unix:
  523. #
  524. PROC=proc
  525. DIRECT=
  526. NPROC=nproc
  527. NPTYPE=int
  528. BOOTFILE=/edition7
  529. #
  530. # ( For old Tandy TRS-80 Model 16A or 6000 V7-based Xenix, use PROC=_proc,
  531. #   DIRECT=-DDIRECT, NPROC=_Nproc, NPTYPE=short, BOOTFILE=/xenix )
  532. #
  533. ###########################################################################
  534. #
  535. #  Compile and Link variables:
  536. #
  537. #  EXT is the extension (file type) for object files, normally o.
  538. #  See MINIX entry for what to do if another filetype must be used.
  539. #
  540. EXT=o
  541. #LNKFLAGS=
  542. SHAREDLIB=
  543. CC= cc
  544. CC2= cc
  545. MAKE= make
  546. SHELL=/bin/sh
  547. #
  548. ###########################################################################
  549. # SAMPLE ONLY.
  550. # Easy installation. Modify this to suit your own computer's file organization
  551. # and permissions.  If you don't have write access to the destination
  552. # directories, "make install" will fail.
  553.  
  554. WERMIT = makewhat
  555. DESTDIR =
  556. BINDIR = /usr/local/bin
  557. MANDIR = /usr/man/manl
  558. MANEXT = l
  559. ALL = $(WERMIT)
  560.  
  561. all: $(ALL)
  562.  
  563. install: $(ALL)
  564.     cp wermit $(DESTDIR)$(BINDIR)/kermit
  565. # The following can fail if the program image was already stripped,
  566. # for example by the link flags in the makefile entry.
  567. #    strip $(DESTDIR)$(BINDIR)/kermit
  568.     chmod 755 $(DESTDIR)$(BINDIR)/kermit
  569.     cp ckuker.nr $(DESTDIR)$(MANDIR)/kermit.$(MANEXT)
  570. # To make sure 'man' notices the new source file and doesn't keep
  571. # showing the old formatted version, remove the old formatted version,
  572. # something like this:
  573. #    rm -f $(DESTDIR)$(MANDIR)/../cat$(MANEXT)/kermit.$(MANEXT)
  574. # or this (which requires CATDIR to be defined):
  575. #    rm -f $(DESTDIR)$(CATDIR)/kermit.$(MANEXT)
  576.     chmod 644 $(DESTDIR)$(MANDIR)/kermit.$(MANEXT)
  577.  
  578. makewhat:
  579.     @echo 'make what?  You must tell which system to make C-Kermit for.'
  580.     @echo Examples:  make hpux90, make sys5r4, make solaris2x, etc.
  581.     @echo Please read the comments at the beginning of the makefile.
  582.  
  583. ###########################################################################
  584. #
  585. # Dependencies Section:
  586.  
  587. manpage: ckuker.nr
  588.  
  589. wermit:    ckcmai.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) \
  590.         ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) \
  591.         ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) ckcfns.$(EXT) \
  592.         ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) ckucon.$(EXT) \
  593.         ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  594.         ckcnet.$(EXT)
  595.     $(CC2) $(LNKFLAGS) -o wermit ckcmai.$(EXT) ckutio.$(EXT) \
  596.         ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) \
  597.         ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) ckuus2.$(EXT) \
  598.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  599.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckuusr.$(EXT) \
  600.         ckucon.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) $(LIBS)
  601.  
  602. #Malloc Debugging version
  603.  
  604. mermit:    ckcmdb.$(EXT) ckcmai.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  605.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  606.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  607.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  608.         ckucon.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  609.         ckuscr.$(EXT) ckcnet.$(EXT)
  610.     $(CC2) $(LNKFLAGS) -o mermit ckcmdb.$(EXT) ckcmai.$(EXT) \
  611.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  612.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  613.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  614.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  615.         ckuusr.$(EXT) ckucon.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  616.         ckcnet.$(EXT) $(LIBS)
  617.  
  618. # Here is an example of building Kermit with overlays for a small machine,
  619. # like a PDP-11 without separate I&D space. This example is for 2.11 BSD:
  620.  
  621. ovwermit: ckcmai.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  622.     ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckcpro.$(EXT) \
  623.     ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  624.     ckucon.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  625.     ckuscr.$(EXT) ckcnet.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) \
  626.     ckuusy.$(EXT) ckustr.o strings.o
  627.     ar x /lib/libc.a getpwent.o ctime.o ndbm.o
  628.     $(CC2) $(LNKFLAGS) -o wermit ckcmai.$(EXT) \
  629.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  630.         ckcfn3.$(EXT) \
  631.          -Z ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  632.             ckuus3.$(EXT) \
  633.          -Z ckuus4.$(EXT) ckuus5.$(EXT) ckuusr.$(EXT) ckuus6.$(EXT) \
  634.             ctime.o \
  635.          -Z ckuus7.$(EXT) ckcfn3.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  636.             ckcnet.$(EXT)  \
  637.          -Z ckuus2.$(EXT) ckuusx.$(EXT) ckucon.$(EXT) ckuusy.$(EXT) \
  638.             getpwent.o ndbm.o \
  639.          -Y ckustr.o strings.o $(LIBS)
  640.  
  641. strings.o: strings
  642.     xstr
  643.     cc -c xs.c
  644.     mv -f xs.o strings.o
  645.     rm -f xs.c
  646.  
  647. ###########################################################################
  648. # man page...
  649. #
  650. # WARNING: Using "cc -E" to preprocess the man page is not portable, but it
  651. # works OK in SunOS 4.1.x, HP-UX, etc.  We use the preprocessor to produce
  652. # custom man pages based on ifdef, else, and endif directives.  But the
  653. # preprocessor replaces omitted lines by blank lines and comment lines, so we
  654. # use grep to filter them out.  THIS MEANS THAT THE SOURCE FILE, ckuker.cpp,
  655. # MUST NOT CONTAIN ANY BLANK LINES!
  656. #
  657. ckuker.nr: ckuker.cpp
  658.     $(CC) $(CFLAGS) -E ckuker.cpp |grep -v "^$$" |grep -v "^\#" > ckuker.nr
  659.  
  660. ###########################################################################
  661. # Dependencies for each module...
  662. #
  663. ckcmai.$(EXT): ckcmai.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcnet.h
  664.  
  665. ckcpro.$(EXT): ckcpro.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h
  666.  
  667. ckcpro.c: ckcpro.w wart ckcdeb.h ckcsym.h ckcasc.h ckcker.h
  668.     ./wart ckcpro.w ckcpro.c
  669.  
  670. ckcfns.$(EXT): ckcfns.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h \
  671.         ckuxla.h
  672.  
  673. ckcfn2.$(EXT): ckcfn2.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h ckuxla.h
  674.  
  675. ckcfn3.$(EXT): ckcfn3.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h \
  676.         ckuxla.h
  677.  
  678. ckuxla.$(EXT): ckuxla.c ckcker.h ckcsym.h ckcdeb.h ckcxla.h ckuxla.h
  679.  
  680. ckuusr.$(EXT): ckuusr.c ckucmd.h ckcker.h ckuusr.h ckcsym.h ckcdeb.h ckcxla.h \
  681.         ckuxla.h ckcasc.h ckcnet.h
  682.  
  683. ckuus2.$(EXT): ckuus2.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  684.         ckcasc.h ckcnet.h ckcsym.h
  685.  
  686. ckuus3.$(EXT): ckuus3.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  687.         ckcasc.h ckcnet.h ckcsym.h
  688.  
  689. ckuus4.$(EXT): ckuus4.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  690.         ckcasc.h ckcnet.h ckuver.h ckcsym.h
  691.  
  692. ckuus5.$(EXT): ckuus5.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcnet.h \
  693.          ckcsym.h
  694.  
  695. ckuus6.$(EXT): ckuus6.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcnet.h \
  696.          ckcsym.h
  697.  
  698. ckuus7.$(EXT): ckuus7.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  699.         ckcasc.h ckcnet.h ckcsym.h
  700.  
  701. ckuusx.$(EXT): ckuusx.c  ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcsym.h
  702.  
  703. ckuusy.$(EXT): ckuusy.c  ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h
  704.  
  705. ckucmd.$(EXT): ckucmd.c ckcasc.h ckucmd.h ckcdeb.h ckcsym.h
  706.  
  707. ckufio.$(EXT): ckufio.c ckcdeb.h ckuver.h ckcsym.h
  708.  
  709. ckutio.$(EXT): ckutio.c ckcdeb.h ckcnet.h ckuver.h ckcsym.h
  710.  
  711. ckucon.$(EXT): ckucon.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h
  712.  
  713. ckcnet.$(EXT): ckcnet.c ckcdeb.h ckcker.h ckcnet.h ckcsym.h
  714.  
  715. wart: ckwart.$(EXT)
  716.     $(CC) $(LNKFLAGS) -o wart ckwart.$(EXT) $(LIBS)
  717.  
  718. ckcmdb.$(EXT): ckcmdb.c ckcdeb.h ckcsym.h
  719.  
  720. ckwart.$(EXT): ckwart.c
  721.  
  722. ckudia.$(EXT): ckudia.c ckcker.h ckcdeb.h ckucmd.h ckcasc.h ckcsym.h
  723.  
  724. ckuscr.$(EXT): ckuscr.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h
  725.  
  726. ###########################################################################
  727. #
  728. # Entries to make C-Kermit for specific systems.
  729. #
  730. # Put the ones that need short makefiles first.
  731.  
  732. bsd210:
  733.     @echo Please use ckubs2.mak to build C-Kermit $(CKVER) for 2.10BSD.
  734.  
  735. bsd211:
  736.     @echo Please use ckubs2.mak to build C-Kermit $(CKVER) for 2.11BSD.
  737.  
  738. #Apollo Aegis 9.x.  Includes TCP/IP support.
  739. #You can also add processor-dependent optimization switches like -M570.
  740. aegis:
  741.     @echo Making C-Kermit $(CKVER) for Apollo Aegis 9.x...
  742.     $(MAKE) wermit "CFLAGS= -DBSD4 -DDYNAMIC -DTCPSOCKET \
  743.     -DCK_CURSES -O $(KFLAGS)" "LIBS = -lcurses -ltermcap"
  744.  
  745. #Apple Mac II, A/UX pre-3.0
  746. #Warning, if "send *" doesn't work, try the auxufs makefile entry below.
  747. aux:
  748.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  749.     $(MAKE) wermit "CFLAGS = -DAUX -DDYNAMIC -DTCPSOCKET \
  750.     $(KFLAGS) -i -O" "LNKFLAGS = -i"
  751.  
  752. #Apple Mac II, A/UX pre-3.0, compiled with gcc
  753. auxgcc:
  754.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  755.     $(MAKE) wermit "CFLAGS = -DAUX -DDYNAMIC -DTCPSOCKET \
  756.     -traditional $(KFLAGS) -i -O" "LNKFLAGS = " "CC = gcc" "CC2 = gcc"
  757.  
  758. #Apple Mac II, A/UX, pre-3.0, but with ufs file volumes, uses <dirent.h>.
  759. auxufs:
  760.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  761.     $(MAKE) wermit "CFLAGS = -DAUX -DDYNAMIC -DTCPSOCKET -DDIRENT \
  762.     $(KFLAGS) -i -O" "LNKFLAGS = -i"
  763.  
  764. #Apple Mac II, A/UX 3.0, compiled with gcc
  765. aux3gcc:
  766.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX 3.0...
  767.     $(MAKE) wermit "CFLAGS = -DAUX -DHDBUUCP -DLFDEVNO -DDYNAMIC \
  768.     -DTCPSOCKET -DDIRENT $(KFLAGS) -O2" "LNKFLAGS = -s" "LIBS = $(LIBS)" \
  769.     "CC=gcc -pipe -traditional" "CC2=gcc -pipe -traditional"
  770.  
  771. #Apple Mac II, A/UX 3.0, compiled with gcc, uses curses
  772. aux3cgcc:
  773.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX 3.0...
  774.     $(MAKE) "MAKE=$(MAKE)" aux3gcc "KFLAGS=$(KFLAGS) -DCK_CURSES" \
  775.     "LIBS = -lcurses $(LIBS)"
  776.  
  777. #Berkeley Unix 4.1
  778. bsd41:
  779.     @echo Making C-Kermit $(CKVER) for 4.1BSD...
  780.     $(MAKE) wermit "CFLAGS= -DBSD41" "LIBS = -ljobs"
  781.  
  782. #Berkeley 4.2, 4.3, also Ultrix-32 1.x, 2.x, 3.x, many others
  783. # Add -O, -DDYNAMIC, -s, etc, if they work.
  784. # If you have a version of BSD but signal() is void rather than int,
  785. # "make bsd KFLAGS=-DSIG_V".
  786. bsd:
  787.     @echo Making C-Kermit $(CKVER) for 4.2BSD...
  788.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET $(KFLAGS)"
  789.  
  790. #Berkeley 4.2, 4.3, minimum size
  791. bsdm:
  792.     @echo Making C-Kermit $(CKVER) for 4.2BSD...
  793.     $(MAKE) wermit "CFLAGS= -O -DBSD4 -DDYNAMIC -DNODIAL -DNOHELP \
  794.     -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOICP $(KFLAGS)" \
  795.     "LNKFLAGS = -s"
  796.  
  797. #Berkeley Unix with HoneyDanBer UUCP
  798. bsdhdb:
  799.     @echo Making C-Kermit $(CKVER) for 4.2BSD with HDB UUCP...
  800.     $(MAKE) wermit "CFLAGS= -DHDBUUCP -DBSD4 -DTCPSOCKET $(KFLAGS)"
  801.  
  802. #Berkeley Unix 4.3 with acucntrl program
  803. bsd43:
  804.     @echo Making C-Kermit $(CKVER) for 4.3BSD with acucntrl...
  805.     $(MAKE) wermit \
  806.     "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET $(KFLAGS) -O"
  807.  
  808. #Ditto, with curses support.
  809. bsd43c:
  810.     @echo Making C-Kermit $(CKVER) for 4.3BSD with acucntrl and curses...
  811.     $(MAKE) wermit "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET \
  812.      -DCK_CURSES $(KFLAGS) -O"  "LIBS=-lcurses -ltermcap"
  813.  
  814. #Berkeley Unix 4.2 or 4.3 with lock directory /usr/spool/uucp/LCK/LCK..ttyxx,
  815. #but without acucntrl program
  816. bsdlck:
  817.     @echo Making C-Kermit $(CKVER) for 4.2BSD, /usr/spool/uucp/LCK/...
  818.     $(MAKE) wermit "CFLAGS= -DLCKDIR -DBSD4 -DTCPSOCKET $(KFLAGS)"
  819.  
  820. #Berkeley UNIX 4.4-Lite, 4.4-Encumbered, Net/2, etc (Post-Reno),
  821. #with TCP/IP networking.  This includes NetBSD, FreeBSD, etc.
  822. #NOTE: This is not a pure POSIX configuration.  Using -DPOSIX instead of
  823. # -DBSD44 prevents any kind of directory-reading (for wildcard expansion),
  824. #and disallows use of ENOTCONN symbol for detecting broken network
  825. #connections, and disallows RTS/CTS flow control, and would also require
  826. #definition of the appropriate UUCP lockfile convention.
  827. #Do not add -DCK_POSIX_SIG without reading <signal.h> first!  For example,
  828. #sigsetjmp(), etc, tend to be defined but not implemented.
  829. bsd44:
  830.     @echo Making C-Kermit $(CKVER) for 4.4BSD...
  831.     $(MAKE) wermit \
  832.     "CFLAGS= -DBSD44 -DDYNAMIC -DTCPSOCKET $(KFLAGS) -O"
  833.  
  834. #Berkeley UNIX 4.4, as above, but with curses for fullscreen display
  835. #Please read notes for bsd44 entry just above.
  836. bsd44c:
  837.     @echo Making C-Kermit $(CKVER) for 4.4BSD with curses...
  838.     $(MAKE) wermit \
  839.     "CFLAGS= -DBSD44 -DCK_CURSES -DDYNAMIC -DTCPSOCKET $(KFLAGS) -O" \
  840.     "LIBS= -lcurses -ltermcap"
  841.  
  842. netbsd:
  843.     $(MAKE) bsd44c "KFLAGS=$(KFLAGS) -DNOCOTFMC"
  844.  
  845. #Acorn RISCiX, based on ...
  846. #Berkeley Unix 4.2 or 4.3 with lock directory /usr/spool/uucp/LCK/LCK..ttyxx,
  847. #but without acucntrl program
  848. riscix:
  849.     @echo Making C-Kermit $(CKVER) for RISCiX, /usr/spool/uucp/LCK..ttyxx
  850.     $(MAKE) wermit "CFLAGS= -DBSD42 -DBSD4 -DRISCIX -DNOCSETS \
  851.         -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DDIRENT -DCK_CURSES \
  852.         -DMAXSP=9024 -DMAXRD=9024 -DSBSIZ=9050 -DRBSIZ=9050 \
  853.         -DFTTY=\\\"/dev/serial\\\" -DNOCSETS -DNOCYRIL -DNOSETBUF \
  854.         -DNOANSI -w -O2 -fomit-frame-pointer" \
  855.         "LIBS= -lcurses -ltermcap " \
  856.         "CC= /usr/ucb/cc" \
  857.         "CC2= /usr/ucb/cc"
  858.  
  859. #Acorn RISCiX, as above, but using gcc
  860. riscix-gcc:
  861.     @echo Making C-Kermit $(CKVER) for RISCiX, /usr/spool/uucp/LCK..ttyxx
  862.     $(MAKE) wermit "CFLAGS= -DBSD42 -DBSD4 -DRISCIX -DNOCSETS \
  863.         -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DDIRENT -DCK_CURSES \
  864.         -DMAXSP=9024 -DMAXRD=9024 -DSBSIZ=9050 -DRBSIZ=9050 \
  865.         -DFTTY=\\\"/dev/serial\\\" -DNOCSETS -DNOCYRIL -DNOSETBUF \
  866.         -DNOANSI -w -O2 -fomit-frame-pointer" \
  867.         "LIBS= -lcurses -ltermcap " \
  868.         "CC= gcc -mbsd" \
  869.         "CC2= gcc -mbsd"
  870.  
  871. #Tektronix 6130, 4319, 4301, etc, with UTek OS, /usr/spool/uucp/LCK./...
  872. #The models that support hardware flow control.
  873. utek:
  874.     @echo 'Making C-Kermit $(CKVER) for 4.2BSD/UTek, hardware flow control'
  875.     $(MAKE) wermit \
  876.     "CFLAGS= -O -DLCKDIR -DBSD4 -DTCPSOCKET -DDYNAMIC \
  877.     -DUTEK -DDCLPOPEN -DLOCK_DIR=\\\"/usr/spool/uucp/LCK.\\\" \
  878.     -DTRMBUFL=2048 -DCK_DTRCTS $(KFLAGS)"
  879.  
  880.  
  881. #Tektronix 4315, 4316, 4317 with UTek OS, /usr/spool/uucp/LCK./...
  882. #The models that do not fully support hardware flow control.
  883. uteknohwfc:
  884.     @echo 'Making C-Kermit $(CKVER) for 4.2BSD/UTek, no h/w flow control'
  885.     $(MAKE) wermit \
  886.     "CFLAGS= -O -DLCKDIR -DBSD4 -DTCPSOCKET -DDYNAMIC \
  887.     -DUTEK -DDCLPOPEN -DLOCK_DIR=\\\"/usr/spool/uucp/LCK.\\\" \
  888.     -DTRMBUFL=2048 $(KFLAGS)"
  889.  
  890. #Tektronix XD88 with  UTekV OS
  891. utekvr3:
  892.     @echo 'Making C-Kermit $(CKVER) for Tektronix XD88 UTekV R3...'
  893.     $(MAKE) wermit \
  894.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  895.     -DTCPSOCKET -DSYSUTIMEH -DCK_CURSES $(KFLAGS) -O" \
  896.     "LIBS= -lcurses" "LNKFLAGS= -s"
  897.  
  898. #Convergent CTIX 6.4.1
  899. ctix:
  900.     @echo 'Making C-Kermit $(CKVER) for Convergent CTIX 6.4.1'
  901.     $(MAKE) wermit \
  902.     "CFLAGS= -DSVR3 -DDIRENT -DTCPSOCKET -DHDBUUCP -DCK_CURSES -DDYNAMIC \
  903.     -DNONAWS $(KFLAGS) -XO" "LNKFLAGS=-s" "LIBS=-lsocket -lcurses -lc_s"
  904.     mcs -d wermit
  905.  
  906. # The following makefile entry should work for any Harris Night Hawk system
  907. # (either 88k or 68k based) running release 6.1 or later of the CX/UX
  908. # operating system. This is a POSIX and ANSI-C compliant system which also
  909. # supports BSD networking. (Earlier CX/UX releases will probably work with
  910. # sys5r3, but this has not been verified).
  911. #
  912. cx_ux:
  913.     @echo Making C-Kermit $(CKVER) for Harris Night Hawk CX/UX 6.1 or later
  914.     $(MAKE) wermit \
  915.     "CFLAGS=-DPOSIX -DTCPSOCKET -DHDBUUCP -DPID_T=pid_t -DWAIT_T=int \
  916.     -Dd_ino=d_fileno -DUID_T=uid_t -DGID_T=gid_t -DDYNAMIC $(KFLAGS) -Xa \
  917.     -O3 -g" "LNKFLAGS=-O3"
  918.  
  919. #Perkin-Elmer 3200 Xelos R02 or earlier
  920. ccop1:
  921.     @echo 'Making C-Kermit $(CKVER) for Xelos & Public Domain Dirent calls'
  922.     @echo 'or System V R2 or earlier...'
  923.     $(MAKE) wermit \
  924.     "CFLAGS = -DATTSV -Dvoid=int -DDIRENT -DCK_CURSES \
  925.     $(KFLAGS) -O" "LNKFLAGS =" "LIBS= -lcurses -ltermlib"
  926.  
  927. #Intergraph Clipper 2000, 3000, 4000, 5000, or 6000 with CLIX 3.1 = Sys V R3
  928. #Note, cc has been phased out, acc is used instead.  gcc can be substituted.
  929. clix:
  930.     $(MAKE) "CC=acc" "CC2=acc" sys5r3
  931.  
  932.  
  933. #Intergraph Clipper, as above plus curses, TCP/IP, job control, HDB UUCP.
  934. #Probably, should be added to regular clix entry too.
  935. clixnetc:
  936.     $(MAKE) wermit "CC=acc" "CC2=acc" \
  937.     "CFLAGS= -DSVR3JC -DSVR3 -DCK_CURSES -DDIRENT -DCK_NEWTERM \
  938.     -DTCP_SOCKET -HDBUUCP -DDYNAMIC $(KFLAGS) -O" \
  939.     "LNKFLAGS=" "LIBS= -lcurses -ltermlib -lbsd"
  940.  
  941. #Mark Williams Coherent 286 or 386 on IBM PC family.
  942. #There is a 64K limit on program size, so this is a command-line only version.
  943. coherent:
  944.     $(MAKE) "CFLAGS = -O -DCOHERENT -DDYNAMIC -DNOANSI -DNOICP -DNOSETKEY \
  945.     -DNOCSETS -DNOHELP -DNODIAL -DNOSCRIPT -DNODEBUG -DNOTLOG -DNOXMIT \
  946.     -DNOMSEND -DNOFRILLS -DNOSYSIOCTLH $(KFLAGS) -VSUVAR" wermit
  947.  
  948. #Mark Williams Coherent 386 on IBM PC family.
  949. #This will make a "minimum interactive" version - no scripts,
  950. #no character sets, no help, no dial, no debug/transaction logging, no
  951. #transmit, msend, mail, type, etc.
  952. coherentmi:
  953.     $(MAKE) "CFLAGS = -O -DCOHERENT -DDYNAMIC -DNOANSI -DNOSETKEY \
  954.     -DNOSHOW -DNOCSETS -DNOHELP -DNODIAL -DNOSCRIPT -DNODEBUG -DNOTLOG \
  955.     -DNOXMIT -DNOMSEND -DNOFRILLS -DNOSYSIOCTLH -DNOSERVER -DNOUUCP \
  956.     -DNOSPL -DNOSETBUF -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ \
  957.     -DNOCMDL $(KFLAGS) -VSUVAR" wermit
  958.  
  959. #Mark Williams Coherent 386 on IBM PC/AT family.
  960. coherentmax:
  961.     $(MAKE) "CFLAGS = -O -DCOHERENT -DDYNAMIC -DNOANSI \
  962.     -DNOSYSIOCTLH $(KFLAGS) -VSUVAR" "LNKFLAGS = -O -s" wermit
  963.  
  964. #Mark Williams Coherent 386 4.2 on IBM PC/AT family
  965. coherent42:
  966.     $(MAKE) "CFLAGS = -T0 -O -DCOHERENT -DDYNAMIC -DNOANSI -DSELECT \
  967.     -DDIRENT -DCK_CURSES -DCK_NEWTERM -DCK_WREFRESH -DNOSYSIOCTLH \
  968.     $(KFLAGS) -VSUVAR" "LNKFLAGS = -O -s" \
  969.     "LIBS  = -lsocket -lcurses" wermit
  970.  
  971. #DEC Ultrix 2.x
  972. # Add -O, -DDYNAMIC, -s, etc, if they work.
  973. du2:
  974.     @echo Making C-Kermit $(CKVER) for Ultrix 2.x ...
  975.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET -DDU2 $(KFLAGS)"
  976.  
  977. #DEC Ultrix 3.1 (and probably also 3.0)
  978. du3:
  979.     @echo Making C-Kermit $(CKVER) for Ultrix 3.x...
  980.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET -DDIRENT -DSIG_V \
  981.     -DDYNAMIC $(KFLAGS) -O" "LNKFLAGS = -s"
  982.  
  983. #Name changed from ds4 to du4, should work on VAXes as well as DECstations.
  984. ds4:
  985.     $(MAKE) "MAKE=$(MAKE)" du4
  986.  
  987. #DEC Ultrix 4.0 or 4.1 on DECstation, VAXstation, VAX, etc.
  988. du4:
  989.     @echo Making C-Kermit $(CKVER) for Ultrix 4.0 or 4.1...
  990.     $(MAKE) wermit \
  991.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDYNAMIC -DDU4 \
  992.     $(KFLAGS) -Olimit 1450" "LNKFLAGS = -s"
  993.  
  994. #DEC Ultrix 4.2 on DECstation, VAXstation, VAX, etc.
  995. #Like du4, except new C compiler supports -O2 optimization.
  996. du42:
  997.     @echo Making C-Kermit $(CKVER) for Ultrix 4.2...
  998.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDYNAMIC \
  999.     $(KFLAGS) -O2 -Olimit 1500" "LNKFLAGS = -s"
  1000.  
  1001. #DEC Ultrix 4.2 on DECstation, VAXstation, VAX, etc.
  1002. #Like du42, but with curses support added
  1003. du42c:
  1004.     @echo Making C-Kermit $(CKVER) for Ultrix 4.2...
  1005.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDYNAMIC \
  1006.     -DCK_CURSES $(KFLAGS) -O2 -Olimit 1500" "LNKFLAGS = -s" \
  1007.     "LIBS= -lcurses -ltermcap"
  1008.  
  1009. #DEC Ultrix 4.3A on DECstation 5000/50 or /150 with R4000 MIPS processor,
  1010. #or 5000/260 with R4400.  "-mips3" switch generates faster, more compact code.
  1011. #Curses included.
  1012. du43c-mips3:
  1013.     @echo Making C-Kermit $(CKVER) for Ultrix 4.3A, R4000 cpu ...
  1014.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDYNAMIC \
  1015.     -DCK_CURSES $(KFLAGS) -O2 -Olimit 1450 -mips3" "LNKFLAGS = -s -mips3" \
  1016.     "LIBS= -lcurses -ltermcap"
  1017.  
  1018. #DEC Ultrix 4.4 on DECstation 5000/50 or /150 with R4000 MIPS processor,
  1019. #or 5000/260 with R4400.  The "-mips3" switch generates R4000-specific code,
  1020. #which is faster and more compact but *won't* run on earlier DECstations.
  1021. du44-mips3:
  1022.     @echo Making C-Kermit $(CKVER) for Ultrix 4.4, R4000 cpu ...
  1023.     $(MAKE) wermit "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDYNAMIC \
  1024.     $(KFLAGS) -O2 -Olimit 1450 -mips3" "LNKFLAGS = -s -mips3"
  1025.  
  1026. #DEC Ultrix 4.2 on DECstation, VAXstation, VAX, etc, System V R4 environment
  1027. du42s5r4:
  1028.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4 on Ultrix...'
  1029.     $(MAKE) wermit \
  1030.     "CFLAGS = -O2 -Olimit 1500 -DSVR4 -DDIRENT -DHDBUUCP \
  1031.     -DDYNAMIC -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  1032.  
  1033. #OSF/1
  1034. osf:
  1035.     $(MAKE) wermit \
  1036.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  1037.     -DDYNAMIC -DKANJI -DCK_CURSES -DCK_RTSCTS $(KFLAGS)" \
  1038.     "LNKFLAGS = -s" "LIBS = -lbsd -lcurses -ltermcap"
  1039.  
  1040. #DEC OSF/1 V1.0-1.3 on DECstation, VAX, Alpha AXP, or PC.
  1041. dec-osf:
  1042.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V1.x...
  1043.     @echo If you are building for DEC OSF/1 2.0, please use dec-osf20.
  1044.     @echo Remove or adjust -O2 and/or -Olimit if they cause trouble.
  1045.     $(MAKE) osf "KFLAGS= -O2 -Olimit 1460 $(KFLAGS)"
  1046.  
  1047. #DEC OSF/1 2.0 on Alpha AXP and probably nowhere else.
  1048. #The only difference from OSF/1 is that optimization is omitted.
  1049. #The optimized version gets strange #runtime errors, like the PAUSE command
  1050. #not working.
  1051. dec-osf20:
  1052.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V2.0...
  1053.     @echo Optimization omitted because it causes runtime errors.
  1054.     @echo See comments in makefile.
  1055.     $(MAKE) osf "KFLAGS= -DOSF20 $(KFLAGS)"
  1056.  
  1057. dec-osf30:
  1058.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V3.0...
  1059.     $(MAKE) osf "KFLAGS= -DOSF20 -DOSF30 -O2 -Olimit 1460 $(KFLAGS)"
  1060.  
  1061. #Sequent DYNIX/ptx 1.2.1
  1062. dynixptx12:
  1063.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX/ptx 1.2.1...
  1064.     $(MAKE) wermit \
  1065.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DPTX \
  1066.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t $(KFLAGS) -i -O" \
  1067.     "LNKFLAGS = -i"
  1068.  
  1069. #Sequent DYNIX/ptx 1.3 or 1.4
  1070. dynixptx13:
  1071.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX/ptx 1.3 TCP/IP...
  1072.     $(MAKE) wermit \
  1073.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DPTX -DCK_POLL -O \
  1074.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DTCPSOCKET $(KFLAGS) -i" \
  1075.     "LNKFLAGS = -i" "LIBS = -lsocket -linet -lnsl"
  1076.  
  1077. #Sequent DYNIX/ptx 2.0, ANSI C compilation
  1078. #Should work on any hardware platform when DYNIX/ptx runs, including
  1079. #386, 486, Pentium.
  1080. dynixptx20:
  1081.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.0...'
  1082.     $(MAKE) wermit \
  1083.     "CFLAGS= -DPOSIX -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  1084.     -DWAIT_T=int -DNOSETBUF -DPTX  -O" \
  1085.     "LIBS = -lsocket -linet -lnsl"
  1086.  
  1087. #Sequent DYNIX/ptx 2.0, ANSI C compilation, with curses
  1088. dynixptx20c:
  1089.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.0...'
  1090.     $(MAKE) wermit \
  1091.     "CFLAGS= -DPOSIX -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  1092.     -DWAIT_T=int -DNOSETBUF -DPTX  -DCK_CURSES -DCK_NEWTERM -O" \
  1093.     "LIBS = -lsocket -linet -lnsl -lcurses -ltermcap"
  1094.  
  1095. #Sequent DYNIX 3.0.x
  1096. dynix3:
  1097.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.0.x...
  1098.     $(MAKE) wermit \
  1099.     "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET -O \
  1100.     -DPWUID_T=int -DGID_T=int $(KFLAGS)"
  1101.  
  1102. #Sequent DYNIX 3.0.x, no ACUCNTRL
  1103. dynix3noacu:
  1104.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.0.x...
  1105.     $(MAKE) wermit "CFLAGS= -DBSD43 -DLCKDIR -DTCPSOCKET -O \
  1106.     -DUID_T=int -DGID_T=int $(KFLAGS)"
  1107.  
  1108. #Sequent DYNIX 3.1.x
  1109. dynix31:
  1110.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.1.x...
  1111.     $(MAKE) wermit \
  1112.     "CFLAGS= -O -DDYNAMIC -DDCLPOPEN -DLCKDIR -DBSD4 -DTCPSOCKET $(KFLAGS)"
  1113.  
  1114. #Sequent DYNIX 3.1.2, as above but with curses, to be compiled by gcc 2.3.3.
  1115. dynix31c:
  1116.     @echo 'Making C-Kermit $(CKVER) for Sequent DYNIX 3.1.2, curses...'
  1117.     $(MAKE) wermit "CFLAGS= -O2 -DDYNAMIC -DDCLPOPEN -DACUCNTRL \
  1118.     -DBSD43 -DTCPSOCKET -DCK_CURSES -DNOSETBUF -DUID_T=int \
  1119.     $(KFLAGS)" "LIBS= -lcurses -ltermcap"
  1120.  
  1121. #Encore, UMAX 4.3 (BSD) but without acucntrl program.
  1122. encore:
  1123.     $(MAKE) "MAKE=$(MAKE)" umax43 "KFLAGS=$(KFLAGS)"
  1124.  
  1125. #Encore, as above, but with curses file transfer display included.
  1126. encorec:
  1127.     $(MAKE) "MAKE=$(MAKE)" umax43 "KFLAGS=-DCK_CURSES $(KFLAGS)" \
  1128.     "LIBS= -lcurses -ltermcap"
  1129.  
  1130. #Encore, UMAX 4.3 (BSD) but without acucntrl program.
  1131. umax43:
  1132.     @echo Making C-Kermit $(CKVER) for Encore UMAX 4.3...
  1133.     $(MAKE) "MAKE=$(MAKE)" PARALLEL=4 wermit \
  1134.     "CFLAGS= -DBSD43 -DENCORE -DDYNAMIC -DKANJI -DTCPSOCKET $(KFLAGS) -O"
  1135.  
  1136. #Encore, UMAX 4.2 (BSD)
  1137. umax42:
  1138.     @echo Making C-Kermit $(CKVER) for Encore UMAX 4.2...
  1139.     $(MAKE) "MAKE=$(MAKE)" PARALLEL=4 wermit \
  1140.     "CFLAGS= -DBSD4 -DENCORE -DDYNAMIC -DTCPSOCKET $(KFLAGS) -O"
  1141.  
  1142. #Encore 88K UMAX 5.3 with TCP/IP support
  1143. encore88K:
  1144.     @echo 'Making C-Kermit $(CKVER) for Encore 88K UMAX V, TCP/IP...'
  1145.     $(MAKE) wermit \
  1146.     "CFLAGS = -q ext=pcc -DSVR3 -DTCPSOCKET -DDIRENT \
  1147.     -DHDBUUCP -DDYNAMIC $(KFLAGS) -O" "LNKFLAGS ="
  1148.  
  1149. #Berkeley Unix 2.8, 2.9 for PDP-11s with I&D space, maybe also Ultrix-11???
  1150. #C-Kermit(5A) is simply too large (even turning off almost every feature
  1151. #available) to run without both I&D space plus overlays.  The old comment
  1152. #suggested running 'pcc' but that won't help.  Changing 'cc' to 'ckustr.sed'
  1153. #will cause a string extraction to be done, saving D space by moving strings
  1154. #to a file.
  1155. bsd29:
  1156.     @echo Making C-Kermit $(CKVER) for 2.8 or 2.9BSD.
  1157.     @echo Read the makefile if you have trouble with this...
  1158.     $(MAKE) ovwermit \
  1159.     "CFLAGS= -DBSD29 -DNODEBUG -DNOTLOG -DNOCSETS -DNOHELP \
  1160.     -DNOSCRIPT -DNOSPL -DNOXMIT -DNODIAL $(KFLAGS)" \
  1161.     "LNKFLAGS= -i -lndir" "CC= cc " "CC2= cc"
  1162.  
  1163. #Convex C1 with Berkeley Unix
  1164. convex:
  1165.     @echo Making C-Kermit $(CKVER) for Convex C1 / BSD...
  1166.     $(MAKE) wermit "CFLAGS= -DBSD4 $(KFLAGS) -Dmsleep=mnap"
  1167.  
  1168. #Convex C210 with Convex/OS 8
  1169. convex8:
  1170.     @echo Making C-Kermit $(CKVER) for Convex C210 with OS 8
  1171.     $(MAKE) wermit \
  1172.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNODEBUG -DDIRENT -DNOFILEH \
  1173.     -DDYNAMIC $(KFLAGS) -DSIG_V -Dmsleep=mnap"
  1174.  
  1175. #Convex C2 with Convex OS 9.1 (should also work with 8.1 or later)
  1176. #with ANSI C compiler, uses BSD 4.3 uucp lockfile convention.
  1177. convex9:
  1178.     @echo Making C-Kermit $(CKVER) for Convex C210 with OS 9.1
  1179.     $(MAKE) wermit \
  1180.     "CFLAGS= -DPOSIX -DCONVEX9 -DNOIEXTEN -DDIRENT -DNOFILEH -DTCPSOCKET \
  1181.     -DDYNAMIC -D__STDC__ -DLCKDIR -Dmsleep=mnap -O -ext -tm c1 $(KFLAGS)" \
  1182.     "LNKFLAGS = -ext"
  1183.  
  1184. #Convex C2 with Convex OS 10.1 or later
  1185. #with gcc 2.x C compiler
  1186. convex10gcc:
  1187.     @echo Making C-Kermit $(CKVER) for Convex C2 with OS 10.1 using gcc
  1188.     $(MAKE) wermit \
  1189.     "CFLAGS= -DPOSIX -DCONVEX9 -DNOIEXTEN -DDIRENT -DNOFILEH -DTCPSOCKET \
  1190.     -DDYNAMIC -D__STDC__  -Dmsleep=mnap -O2 $(KFLAGS)" CC=gcc CC2=gcc
  1191.  
  1192. #Cray X-MP or Y-MP UNICOS 6.x or 7.x.
  1193. #NOTE: NPROC tells how many parallel makes to run.  If your Cray has multiple
  1194. #processors, you can set NPROC up to the number of CPUs, e.g. NPROC=16.
  1195. cray:
  1196.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 6.x or 7.0...
  1197.     $(MAKE) wermit NPROC=1 \
  1198.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS) -O1"
  1199.  
  1200. #Cray X-MP or Y-MP UNICOS 8.0 Alpha.
  1201. cray8:
  1202.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 8.0 Alpha...
  1203.     $(MAKE) wermit NPROC=1 \
  1204.     "CFLAGS= -DSVR4 -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS) -O1"
  1205.  
  1206. #Cray-2 or Cray 3-CSOS
  1207. #NOTE: NPROC tells how many parallel makes to run.  If your Cray has multiple
  1208. #processors, you can set NPROC up to the number of CPUs, e.g. NPROC=16.
  1209. craycsos:
  1210.     @echo 'Making C-Kermit $(CKVER) for Cray-2/3 CSOS
  1211.     $(MAKE) wermit NPROC=1 \
  1212.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET \
  1213.     $(KFLAGS) -DCK_ANSIC -DCK_CURSES" "LIBS=-lnet"
  1214.  
  1215. #Charles River Data Systems Universe with UNOS Version 9.2
  1216. crds:
  1217.     @echo 'Making C-Kermit $(CKVER) for Charles River Data Systems...'
  1218.     make wermit \
  1219.     "CFLAGS = -DATTSV -DNOANSI -DDIRENT -DDYNAMIC -DLONGFN -DTCPSOCKET \
  1220.     -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETREU \
  1221.     -Dsuspend=ksuspend $(KFLAGS) -O" "LNKFLAGS ="
  1222.  
  1223. #NeXTSTEP 1.0 through 3.2.
  1224. #Includes fullscreen file transfer display (curses) and TCP/IP support.
  1225. #Uses shared library to make executable program about 80K smaller.
  1226. #Remove "LIBS = -lsys_s" if this causes trouble.
  1227. next:
  1228.     @echo Making C-Kermit $(CKVER) for NeXTSTEP...
  1229.     @echo 'If you get errors in ckutio.c about w_S, w_T, etc,'
  1230.     @echo 'add KFGLAGS=-DNOREDIRECT to your make command.'
  1231.     $(MAKE) wermit \
  1232.     "CFLAGS= -DNEXT -DNOSETBUF -DTCPSOCKET -DDYNAMIC -DLCKDIR -DKANJI \
  1233.     -DCK_CURSES $(KFLAGS) -O -w" "LIBS = -lsys_s -lcurses -ltermcap"
  1234.  
  1235. nextc:
  1236.     $(MAKE) "MAKE=$(MAKE)" next
  1237.  
  1238. nextg:
  1239.     $(MAKE) "MAKE=$(MAKE)" next KFLAGS=-Wall
  1240.  
  1241. nextgc:
  1242.     $(MAKE) "MAKE=$(MAKE)" next KFLAGS=-Wall
  1243.  
  1244. #Build for NeXTSTEP with "fat" binaries (MABs) that run on both Motorola
  1245. #and Intel platforms.
  1246. nextfat:
  1247.     $(MAKE) "MAKE=$(MAKE)" next "KFLAGS=-Wall -arch m68k -arch i386" \
  1248.     "LNKFLAGS = -arch m68k -arch i386"
  1249.  
  1250. #NeXTSTEP on Intel Platforms.
  1251. next486:
  1252.     @echo Making C-Kermit $(CKVER) for NeXTSTEP on Intel Platforms...
  1253.     @echo 'If you get errors in ckutio.c about w_S, w_T, etc,'
  1254.     @echo 'add KFGLAGS=D-DNOREDIRECT to your make command.'
  1255.     $(MAKE) wermit \
  1256.     "CFLAGS= -DNEXT -DNOSETBUF -DTCPSOCKET -DDYNAMIC -DLCKDIR -DKANJI \
  1257.     -DNODEBUG -O3 -fno-omit-frame-pointer -fschedule-insns2 -pipe \
  1258.     -DCK_CURSES $(KFLAGS) -w" "LIBS = -lsys_s -lcurses -ltermcap"
  1259.  
  1260. #POSIX
  1261. posix:
  1262.     @echo 'Making C-Kermit $(CKVER) for POSIX, no UUCP lockfile support...'
  1263.     $(MAKE) wermit "CFLAGS= -DPOSIX -DNOUUCP $(KFLAGS) -O"
  1264.  
  1265. #Berkeley Software Design Inc. BSDI
  1266. # Substitute "LIBS= -lnewcurses -ltermcap" if desired.
  1267. bsdi:
  1268.     @echo 'Making C-Kermit $(CKVER) for BSD/386 ...'
  1269.     $(MAKE) wermit \
  1270.     "CFLAGS= -DBSD44 -DSETREUID -DSW_ACC_ID \
  1271.     -DTCPSOCKET -DCK_CURSES -DDYNAMIC -DBPS_57K $(KFLAGS) -O" \
  1272.     "LIBS= -lcurses -ltermcap"
  1273.  
  1274. # (old name for the above)
  1275. bsdiposix:
  1276.     $(MAKE) "MAKE=$(MAKE)" bsdi
  1277.  
  1278. # make 386bsd 0.0new, posix
  1279. # for  386bsd 0.1.24, change /usr/include/termios.h to #define NCCS if
  1280. #  _POSIX_SOURCE is #defined. (source: lewine, posix prgmrs guide, o`reilly)
  1281. #NOTE: Lock directory is /var/spool/lock.  Formerly, it was /var/spool/uucp,
  1282. #but reportedly <wjones@halcyon.com> that was due to a typo in 'man tip'.
  1283. 386bsd:
  1284.     @echo 'Making C-Kermit $(CKVER) for jolix 386BSD 0.0new and 0.1.24...'
  1285.     $(MAKE) wermit \
  1286.     "CFLAGS= -DPOSIX -DSETREUID -DPIDSTRING -DUSLEEP \
  1287.     -D_386BSD -DCK_CURSES -DTCPSOCKET -DDYNAMIC -DNOSETBUF \
  1288.     -DLOCK_DIR=\\\"/var/spool/lock\\\" \
  1289.     $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lcurses -ltermcap"
  1290.  
  1291. freebsd:
  1292.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 1.0 Release'
  1293.     $(MAKE) wermit \
  1294.     "CFLAGS= -DBSD44 -DCK_CURSES -DDYNAMIC -DTCPSOCKET -DNOCOTFMC \
  1295.     $(KFLAGS) -O" "LIBS= -lcurses -ltermcap"
  1296.  
  1297. freebsd2:
  1298.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 2.0 Release'
  1299.     $(MAKE) freebsd "KFLAGS=-DNDSYSERRLIST"
  1300.  
  1301. #Pyramid 9XXX (e.g. 9845) or MIServer T series, OSx 4.4b thru 5.1
  1302. pyramid:
  1303.     @echo Making C-Kermit $(CKVER) for Pyramid Dual Port OSx
  1304.     ucb $(MAKE) wermit "CFLAGS= -DBSD43 -DTCPSOCKET -DDYNAMIC \
  1305.     -DPYRAMID -O $(KFLAGS)" "LNKFLAGS = -s"
  1306.  
  1307. #Pyramid Dual Port OSx using HonyDanBer UUCP, curses and TCP
  1308. pyramid-hdb:
  1309.     @echo Making C-Kermit $(CKVER) for Pyramid Dual Port OSx
  1310.     ucb $(MAKE) wermit "CFLAGS= -DBSD43 -DTCPSOCKET -DDYNAMIC \
  1311.     -DHBDUUCP -DCK_CURSES -O $(KFLAGS)" \
  1312.     "LNKFLAGS = -s" "LIBS = -lcurses -ltermcap"
  1313.  
  1314. #Pyramid DC/OSx (UNIX System V R4).
  1315. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  1316. #are not misplaced in sys (rather than netinet and arpa, respectively).
  1317. #Uses ANSI C constructs, <sys/termiox.h>, etc etc.
  1318. #NOTE: Remove -O and Olimit:1500 from CFLAGS if TELNET connections do not work.
  1319. pyrdcosx:
  1320.     @echo 'Making C-Kermit $(CKVER) for Pyramid DC/OSx...'
  1321.     $(MAKE) wermit \
  1322.     "CFLAGS = -Xa -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1323.     -DCK_CURSES -DSTERMIOX -DTCPSOCKET -DPYRAMID -K Olimit:1500 \
  1324.     $(KFLAGS)" "LIBS= -lcurses -lsocket -lnsl" "LNKFLAGS = -s"
  1325.  
  1326. #SONY NEWS, NEWS-OS 4.01C
  1327. sonynews:
  1328.     @echo Making C-Kermit $(CKVER) for SONY NEWS-OS 4.01C...
  1329.     $(MAKE) wermit "CFLAGS= -DBSD43 -DKANJI -DACUCNTRL \
  1330.     -DTCPSOCKET -O"
  1331.  
  1332. #SUNPOSIX
  1333. #SunOS 4.1.x in the POSIX universe (but with HDB UUCP added)...
  1334. sunposix:
  1335.     @echo Making C-Kermit $(CKVER) for POSIX...
  1336.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2= /usr/5bin/cc " \
  1337.     "CFLAGS= -DPOSIX -DHDBUUCP -DVOID=void -O"
  1338.  
  1339. #IBM's AIX 3.0 on IBM 370 mainframe, tested on AIX F44 thru F50.
  1340. aix370:
  1341.     @echo Making C-Kermit $(CKVER) for IBM System/370 AIX 3.0...
  1342.     $(MAKE) wermit \
  1343.     "CFLAGS= -DAIX370 -DTCPSOCKET -DLCKDIR -DDIRENT -DDYNAMIC $(KFLAGS)" \
  1344.     "LIBS = -lbsd"
  1345.  
  1346. #IBM's AIX/ESA 2.1 (OSF/1) on IBM mainframe
  1347. aixesa:
  1348.     @echo Making C-Kermit $(CKVER) for IBM AIX/ESA...
  1349.     $(MAKE) wermit \
  1350.     "CFLAGS= -DAIXESA -DDYNAMIC -DTCPSOCKET $(KFLAGS) -O"
  1351.  
  1352. #IBM's AIX 1.3 on IBM PS/2, tested on AIX F44 thru F50.
  1353. #This is exactly the same as AIX370 except for the version herald.
  1354. ps2aix3:
  1355.     @echo Making C-Kermit $(CKVER) for IBM PS/2 AIX 3.0...
  1356.     $(MAKE) wermit \
  1357.     "CFLAGS= -DAIXPS2 -DTCPSOCKET -DLCKDIR -DDIRENT -DDYNAMIC $(KFLAGS)" \
  1358.     "LIBS = -lbsd"
  1359.  
  1360. #IBM AIX 3.0, 3.1, or 3.2 for RISC System/6000.
  1361. rs6000:
  1362.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.0 or 3.1, RS/6000...
  1363.     $(MAKE) wermit \
  1364.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR3 -DDIRENT -DDYNAMIC -DCK_ANSIC \
  1365.     -DCK_POLL -DNOSETBUF -DCLSOPN -DKANJI -O $(KFLAGS)" "LNKFLAGS = -s"
  1366.  
  1367. #IBM AIX 3.0, 3.1, or 3.2 for RISC System/6000, with curses.
  1368. rs6000c:
  1369.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.0 or 3.1, RS/6000...
  1370.     $(MAKE) wermit \
  1371.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR3 -DDIRENT -DDYNAMIC -DCK_ANSIC \
  1372.     -DCK_POLL -DNOSETBUF -DCLSOPN -DCK_CURSES -DKANJI -O $(KFLAGS)" \
  1373.     "LIBS= -lcurses -ltermcap" "LNKFLAGS = -s"
  1374.  
  1375. #IBM AIX 3.2 for RISC System/6000.
  1376. #In case of "subprogram too complex" warnings, add "-qmaxmem=4000" to CFLAGS.
  1377. rs6aix32:
  1378.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.2, RS/6000...
  1379.     $(MAKE) wermit \
  1380.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR4 -DDIRENT -DDYNAMIC -DCK_ANSIC \
  1381.     -DCLSOPN -DKANJI -DCK_POLL -O $(KFLAGS)" "LNKFLAGS = -s"
  1382.  
  1383. #IBM AIX 3.2 for RISC System/6000.
  1384. rs6aix32c:
  1385.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.2, RS/6000, TCP+curses...
  1386.     @echo In case of Subprogram Too Complex warnings,
  1387.     @echo add -qmaxmem=4000 to CFLAGS.
  1388.     $(MAKE) wermit \
  1389.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR4 -DDIRENT -DDYNAMIC -DCK_ANSIC \
  1390.     -DCLSOPN -DCK_CURSES -DKANJI -DCK_POLL -O $(KFLAGS)" "LNKFLAGS = -s" \
  1391.     "LIBS=-lcurses"
  1392.  
  1393. #IBM AIX 4.1 (Beta) or AIX 4.1.1 for RISC System/6000.
  1394. rs6aix41c:
  1395.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1, RS/6000...
  1396.     @echo In case of Subprogram Too Complex warnings,
  1397.     @echo add -qmaxmem=4000 to CFLAGS.
  1398.     $(MAKE) wermit \
  1399.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  1400.     -DDYNAMIC -DCK_ANSIC -DCLSOPN -DCK_CURSES -DKANJI -DCK_POLL \
  1401.     -O $(KFLAGS)" \
  1402.     "LNKFLAGS = -s" "LIBS=-lcurses"
  1403.  
  1404. #Bull DPX/2 with BOS/X, somewhat like AIX/RS6000
  1405. bulldpx2:
  1406.     @echo Making C-Kermit $(CKVER) for Bull DPX/2 with BOS/X...
  1407.     $(MAKE) wermit \
  1408.     "CFLAGS= -DSVR3 -DDIRENT -DDYNAMIC -DCK_ANSIC -DCKTYP_H=<sys/types.h> \
  1409.     -DCK_POLL -DNOSETBUF -DCLSOPN -O $(KFLAGS)" "LNKFLAGS = -s"
  1410.  
  1411. #Sun UNIX 3.5 with gcc 2.3.3.
  1412. sunos3gcc:
  1413.     @echo Making C-Kermit $(CKVER) for Sun UNIX 3.5 and gcc...
  1414.     $(MAKE) wermit CC=gcc CC2=gcc \
  1415.     CFLAGS="-g -O -DBSD4 -DTCPSOCKET $(KFLAGS)"
  1416.  
  1417. #SunOS version 4.0, BSD environment, has saved original euid feature.
  1418. # Add "CC=/usr/ucb/cc CC2=/usr/ucb/cc" if necessary.
  1419. sunos4:
  1420.     @echo Making C-Kermit $(CKVER) for SunOS 4.0, BSD environment...
  1421.     $(MAKE) wermit \
  1422.     "CFLAGS= -O -DSUNOS4 -DDIRENT -DTCPSOCKET -DSAVEDUID \
  1423.     -DKANJI -DDYNAMIC $(KFLAGS)"
  1424.  
  1425. #As above, but with SunLink X.25 support
  1426. sunos4x25:
  1427.     @echo SunLink X.25 support
  1428.     $(MAKE) "MAKE=$(MAKE)" sunos4 "KFLAGS=$(KFLAGS) -DSUNX25"
  1429.  
  1430. #SUN OS version 4.1 - 4.1.3, BSD environment, has saved original euid feature.
  1431. #Uses Honey DanBer UUCP.  Requires presence of /usr/spool/locks directory.
  1432. # /var/spool/ should be a symbolic link to  /usr/spool/.
  1433. # ... or 'make wermit "CC= /usr/ucb/cc " \'
  1434. sunos41:
  1435.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 / BSD...
  1436.     $(MAKE) wermit "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  1437.     -DNOSETBUF -DKANJI -DSAVEDUID -DDYNAMIC $(KFLAGS)"
  1438.  
  1439. #As above, but compile with gcc.  Gives 24-32K size reduction
  1440. #with gcc 2.1 or 2.2.2.  CAUTION: make sure "fixincludes" has been run on
  1441. #the include files, so gcc's are in sync with the regular Sun ones!
  1442. #This includes the curses library for fullscreen file transfer display.
  1443. #NDGPWNAM needed for GCC 2.5.6, not needed for 2.4.0, but it's uncertain
  1444. #whether it will do any harm for 2.4.0 compilation -- if so, remove it.
  1445. sunos41gcc:
  1446.     @echo Making C-Kermit $(CKVER) for SunOS 4.1/BSD with gcc and curses...
  1447.     $(MAKE) wermit "CC= gcc " "CC2= gcc" \
  1448.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET -DNOSETBUF \
  1449.     -DNDGPWNAM -DSAVEDUID -DDYNAMIC -DKANJI -DCK_CURSES $(KFLAGS)" \
  1450.     "LIBS= -lcurses -ltermcap"
  1451.  
  1452. # Tenon MachTen, tested on Apple Powerbook with MachTen 2.1.1.D.
  1453. # NOTE: This doesn't do anything about UUCP.  It only works if /usr/spool/uucp
  1454. # has permission of 777, and dialout device is world read/writeable.
  1455. machten:
  1456.     @echo Making C-Kermit $(CKVER) for MachTen...
  1457.     $(MAKE) wermit "CFLAGS= -DBSD43 -DTCPSOCKET -DSIG_V -DNDGPWNAM \
  1458.     -DCK_CURSES -O $(KFLAGS)"  "LIBS=-lcurses -ltermcap"
  1459.  
  1460. #SUNOS 4.1 as sunos41 above, but also with curses support
  1461. sunos41c:
  1462.     @echo Curses support
  1463.     $(MAKE) "MAKE=$(MAKE)" sunos41 "KFLAGS=$(KFLAGS) -DCK_CURSES" \
  1464.     "LIBS= -lcurses -ltermcap"
  1465.  
  1466. #SUNOS 4.1 with SunLink X.25 support
  1467. sunos41x25:
  1468.     @echo SunLink X.25 support
  1469.     $(MAKE) "MAKE=$(MAKE)" sunos41 "KFLAGS=$(KFLAGS) -DSUNX25"
  1470.  
  1471. #SUNOS 4.1 with SunLink X.25 support
  1472. sunos41x25c:
  1473.     @echo SunLink X.25 support, curses
  1474.     $(MAKE) "MAKE=$(MAKE)" sunos41c "KFLAGS=$(KFLAGS) -DSUNX25"
  1475.  
  1476. # NOTE: The sunsolxx and sunos5xx entries should no longer be necessary, but
  1477. # are retained just in case.  Instead, please use the solarisxx entries.
  1478.  
  1479. #SUN with Solaris 2.0 = SunOS 5.0.
  1480. #Mostly the same as System V R4.
  1481. sunsol20:
  1482.     @echo 'Making C-Kermit $(CKVER) for Sun with Solaris 2.0 and curses...'
  1483.     $(MAKE) wermit "CFLAGS = -O -DSVR4 -DSOLARIS \
  1484.     -DDIRENT -DHDBUUCP -DDYNAMIC -DSTERMIOX -DTCPSOCKET -DCK_CURSES \
  1485.     -DCK_POLL $(KFLAGS)" \
  1486.     "LIBS= -lsocket -lnsl -lcurses -ltermlib" "LNKFLAGS = -s"
  1487.  
  1488. #SUN with Solaris 2.0.
  1489. #As above, but built with the gcc compiler from the Cygnus CD-ROM.
  1490. sunsol20gcc:
  1491.     @echo 'Making C-Kermit $(CKVER) for Sun Solaris 2.0, gcc, and curses..'
  1492.     $(MAKE) wermit "CFLAGS = -O -DSVR4 -DSOLARIS \
  1493.     -DDIRENT -DHDBUUCP -DDYNAMIC -DSTERMIOX -DTCPSOCKET -DCK_CURSES \
  1494.     -DCK_POLL $(KFLAGS)" \
  1495.     "LIBS= -lsocket -lnsl -lcurses -ltermlib" "LNKFLAGS = -s" \
  1496.     CC=/opt/cygnus-sol2-1.1/bin/gcc CC2=/opt/cygnus-sol2-1.1/bin/gcc
  1497.  
  1498. #SunOS 5.1 = Solaris 2.1.
  1499. #NOTE: A C compiler is no longer bundled with SunOS 5.1, so to compile C
  1500. #programs, you might have to change your PATH to include the directory
  1501. #/usr/ccs/bin AFTER the directory containing the compiler.  SunPRO C is
  1502. #installed by default in /opt/SUNWspro/bin.  So a sample PATH might be:
  1503. #
  1504. # /usr/local/bin:/usr/bin:/opt/SUNWspro/bin:/usr/ccs/bin:\
  1505. # /usr/ucb:/usr/sbin:/sbin:.
  1506. #
  1507. # or:
  1508. #
  1509. # /usr/openwin/bin:/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin.
  1510. #
  1511. #NOTE 2: Compilation with the Apogee C compiler (apcc) might not work,
  1512. #because it refuses to allow "-Usun".  Reportedly, newer releases of apcc
  1513. #(such as 1.057) work OK, use: "make -e sunos51 CC=apcc CC2=apcc".
  1514. sunos51:
  1515.     @echo 'Making C-Kermit $(CKVER) for SunOS 5.x....'
  1516.     $(MAKE) wermit \
  1517.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP \
  1518.     -DSELECT -DDYNAMIC -DNODEBUG -DSTERMIOX $(KFLAGS)" "LNKFLAGS = -s"
  1519.  
  1520. #C-Kermit for Solaris 2.x compiled with gcc, includes curses and TCP/IP.
  1521. #Change -O2 to -O if -O2 gives trouble.
  1522. #Remove -Usun if it causes trouble.
  1523. #Your PATH should start with something like:
  1524. #  /usr/local/gnu/bin:/usr/ccs/bin:
  1525. #Produces a huge executable -- strip with /usr/ccs/bin/strip (not Gnu strip).
  1526. #Also don't add "LNKFLAGS = -s" - strip manually.
  1527. #Also note: this can NOT be linked statically - Sun makes it impossible.
  1528. solaris2xg:
  1529.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc...'
  1530.     @echo 'Please read the comments that accompany this entry.'
  1531.     $(MAKE) wermit CC=gcc CC2=gcc \
  1532.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DCK_POLL \
  1533.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DDYNAMIC -DNOSETBUF \
  1534.     -DTCPSOCKET -DKANJI $(KFLAGS)" \
  1535.     "LIBS= -ltermlib -lsocket -lnsl"
  1536.  
  1537. sunos51cgcc:
  1538.     $(MAKE) "MAKE=$(MAKE)" solaris2x
  1539.  
  1540. #Solaris 2.x, SunPro compiler, includes curses and TCP/IP.
  1541. #When using SUNWspro CC 2.0.1 under Solaris 2.3, be sure all cc patches
  1542. #are applied, otherwise corrupt or truncated object files can result.
  1543. #To build, set your PATH as follows:
  1544. #  /usr/local/bin:/usr/bin:/opt/SUNWspro/bin:/usr/ccs/bin:\
  1545. #  /usr/ucb:/usr/sbin:/sbin:.
  1546. # or (depending on where the compiler has been installed):
  1547. #  /usr/openwin/bin:/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin.
  1548. solaris2x:
  1549.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with SunPro cc...'
  1550.     $(MAKE) wermit \
  1551.     "CFLAGS = -O -Usun -DSVR4 -DDIRENT -DSOLARIS -DHDBUUCP \
  1552.     -DDYNAMIC -DCK_POLL -DCK_CURSES -DCK_NEWTERM -DSTERMIOX -DNOSETBUF \
  1553.     -DTCPSOCKET -DKANJI $(KFLAGS)" "LNKFLAGS = -s" \
  1554.     "LIBS= -ltermlib -lsocket -lnsl"
  1555.  
  1556. #Solaris 2.x with SunLink X.25 support.
  1557. solaris2x25:
  1558.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x+X.25 with SunPro cc...'
  1559.     $(MAKE) wermit \
  1560.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS -DDIRENT \
  1561.     -DSUNX25 -DTCPSOCKET -DHDBUUCP \
  1562.     -DDYNAMIC -DCK_POLL -DCK_CURSES -DCK_NEWTERM -DSTERMIOX -DNOSETBUF \
  1563.     -DKANJI $(KFLAGS)" "LNKFLAGS = -s" \
  1564.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -lsockx25 -lsocket -lnsl"
  1565.  
  1566. sunos51tcp:
  1567.     $(MAKE) "MAKE=$(MAKE)" solaris2x
  1568.  
  1569. sunos51tcpc:
  1570.     $(MAKE) "MAKE=$(MAKE)" solaris2x
  1571.  
  1572. #The following sunosxxx entries are for debugging and testing only.
  1573.  
  1574. sunos41x:
  1575.     $(MAKE) wermit "CFLAGS= -O -DSUNOS41 -DDIRENT -DNOTLOG -DNOMSEND \
  1576.     -DNOUUCP -DNOSIGWINCH -DNOREDIRECT -DNOPUSH -DNOCCTRAP \
  1577.     -DNOSETBUF -DKANJI -DDYNAMIC -DNOICP -DNOLOCAL $(KFLAGS)"
  1578.  
  1579. #SunOS 4.1.x, debugging with Pure Software, Inc., Purify 2 (commercial runtime
  1580. #error-detection software).
  1581. #Before running the resulting wermit, you'll also need to define and export
  1582. #the following environment variables (as in this example):
  1583. #PURIFYHOME=/usr/local/purify ; export PURIFYHOME
  1584. #PURIFYCACHEDIR=/tmp ; export PURIFYCACHEDIR
  1585. sunos41cp:
  1586.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 / BSD / Curses / Purify...
  1587.     $(MAKE) wermit \
  1588.     "CC2= purify -cache_dir=/usr/tmp cc" \
  1589.     "CFLAGS= -g -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET -DNOSETBUF \
  1590.     -DKANJI -DSAVEDUID -DDYNAMIC -DCK_CURSES $(KFLAGS)" \
  1591.     "LIBS= -lcurses -ltermcap"
  1592.  
  1593. #SunOS version 4.1, gcc, profiling with gprof, no debugging.
  1594. #To get profile, "make sunos4p" (on Sun), then "./wermit".  After running
  1595. #wermit, "gprof ./wermit | lpr" (or whatever) to get execution profile.
  1596. sunos41p:
  1597.     @echo Making C-Kermit $(CKVER) for SunOS 4.x with profiling...
  1598.     $(MAKE) wermit "CC= gcc " "CC2= gcc" \
  1599.     "CFLAGS= -DSUNOS41 -DNODEBUG -DSAVEDUID -DDIRENT -DTCPSOCKET \
  1600.     -DDYNAMIC $(KFLAGS) -pg" "LNKFLAGS = -pg"
  1601.  
  1602. #SunOS version 4.1, BSD environment, minimum size...
  1603. sunos41m:
  1604.     @echo Minimum size
  1605.     $(MAKE) "MAKE=$(MAKE)" sunos41 \
  1606.     "KFLAGS=$(KFLAGS) -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  1607.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOMSEND -UTCPSOCKET" "LNKFLAGS = -s"
  1608.  
  1609. #SunOS version 4.1 or later, BSD environment, minimum size w/command parser.
  1610. sunos41mi:
  1611.     @echo Minimum interactive
  1612.     $(MAKE) "MAKE=$(MAKE)" sunos41 \
  1613.     "KFLAGS=-DNOSPL -DNOXMIT -DNOMSEND -DNOFRILLS -DNORETRY \
  1614.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS \
  1615.     -DNOSHOW -DNOSETKEY -DNOSERVER -DNOUUCP -DNORECALL -DNOREDIRECT \
  1616.     -DNOSETBUF -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ \
  1617.     -DNOCMDL -UTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  1618.  
  1619. #SunOS version 4.1, BSD, no debugging log.
  1620. sunos41nd:
  1621.     @echo No debugging...
  1622.     $(MAKE) "MAKE=$(MAKE)" sunos41 "KFLAGS=$(KFLAGS) -DNODEBUG"
  1623.  
  1624. #SunOS 4.1 with malloc debugger
  1625. sunos41md:
  1626.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 malloc debug...
  1627.     $(MAKE) mermit \
  1628.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  1629.     -DSAVEDUID -DDYNAMIC $(KFLAGS) -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG"
  1630.  
  1631. #SunOS 4.1, System V R3 environment (-i option omitted).
  1632. sunos41s5:
  1633.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  1634.     @echo For testing purposes only - NOT for production use.
  1635.     @echo For a useable version, make sunos41 instead.
  1636.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  1637.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DDYNAMIC -DCK_POLL $(KFLAGS) -O"
  1638.  
  1639. #As above, but with curses support
  1640. sunos41s5c:
  1641.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  1642.     @echo Curses included.
  1643.     @echo For testing purposes only - NOT for production use.
  1644.     @echo For a useable version, make sunos41 instead.
  1645.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  1646.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1647.     -DCK_CURSES -DCK_POLL -DCK_NEWTERM $(KFLAGS) -O" "LIBS= -lcurses"
  1648.  
  1649. #As above, but with curses support AND net support
  1650. sunos41s5tcpc:
  1651.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  1652.     @echo TCP/IP and curses included.  No debug log.
  1653.     @echo For testing purposes only - NOT for production use.
  1654.     @echo For a useable version, make sunos41 instead.
  1655.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  1656.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DDYNAMIC -DNOSETBUF -DCK_POLL \
  1657.     -DNODEBUG -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET $(KFLAGS) -O" \
  1658.     "LIBS= -lcurses -lresolv"
  1659.  
  1660. # (End of SunOS test entries...)
  1661.  
  1662. #Apollo with Domain SR10.0 or later, BSD environment
  1663. #Reportedly, it might also help to add '-A,systype=bsd4.3' to CFLAGS.
  1664. #Reportedly, there is also a problem with getc & putc macros that can
  1665. #be handled by using '#ifdef apollo' somewhere to redefine them???
  1666. #On the other hand, other reports indicate that it works fine as-is.
  1667. #NOTE: This entry was previously like this:
  1668. #    $(MAKE) wermit "CFLAGS= -DNOFILEH -DBSD4 $(KFLAGS) -Uaegis \
  1669. #    -DTCPSOCKET -U__STDC__"
  1670. #Reports (Dec 91) indicate SR10 has an ANSI-compliant C compiler,
  1671. #in addition to an older one that claimed to be ANSI-compliant but wasn't.
  1672. #The following make entry (plus checks that are made in ckcdeb.h) detect
  1673. #which compiler is used and define the CK_ANSIC or NOANSI flags accordingly.
  1674. sr10-bsd:
  1675.     @echo Making C-Kermit $(CKVER) for Apollo SR10.0 / BSD ...
  1676.     $(MAKE) wermit \
  1677.     "CFLAGS= -O -DDYNAMIC -DBSD43 -DTCPSOCKET -DCK_CURSES \
  1678.     -Uaegis $(KFLAGS)" "LIBS= -lcurses -ltermcap"
  1679.  
  1680. #Apollo with Domain SR10.0 or later, System V R3 environment.
  1681. #Don't use the optimizer (-O), it causes problems at runtime.
  1682. sr10-s5r3:
  1683.     @echo Making C-Kermit $(CKVER) for Apollo SR10.0 / Sys V R3 ...
  1684.     $(MAKE) wermit \
  1685.     "CFLAGS= -DNOFILEH -DSVR3 $(KFLAGS) -Uaegis -U__STDC__"
  1686.  
  1687. #Apollo Domain/IX (untested, try this if sr10-bsd doesn't work)
  1688. # -DTCPSOCKET -DYNAMIC can probably be added here.
  1689. apollobsd:
  1690.     @echo Making C-Kermit $(CKVER) for Apollo Domain/IX...
  1691.     $(MAKE) wermit "CC= /bin/cc " "CC2= /bin/cc " \
  1692.     "CFLAGS= -DNOFILEH -DBSD4 $(KFLAGS) -Uaegis"
  1693.  
  1694. #Version 7 Unix (see comments near top of makefile)
  1695. v7:
  1696.     @echo Making C-Kermit $(CKVER) for UNIX Version 7.
  1697.     @echo Read the makefile if you have trouble with this...
  1698.     $(MAKE) wermit "CFLAGS=-DV7 -DPROCNAME=\\\"$(PROC)\\\" \
  1699.     -DBOOTNAME=\\\"$(BOOTFILE)\\\" -DNPROCNAME=\\\"$(NPROC)\\\" \
  1700.     -DNPTYPE=$(NPTYPE) $(DIRECT) -DO_RDWR=2 -DO_NDELAY=0 -DO_SCCS_ID \
  1701.     $(KFLAGS)"
  1702.  
  1703. #AT&T UNIX System V R3, signal() is void rather than int.
  1704. #Uses dirent.h and Honey DanBer UUCP.
  1705. #Add the -i link option if necessary.
  1706. sys5r3:
  1707.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  1708.     $(MAKE) wermit \
  1709.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC $(KFLAGS) -O" \
  1710.     "LNKFLAGS="
  1711.  
  1712. #As above, plus curses.
  1713. sys5r3c:
  1714.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3 + curses...'
  1715.     $(MAKE) wermit \
  1716.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1717.     -DCK_CURSES $(KFLAGS) -O" \
  1718.     "LNKFLAGS=" \
  1719.     "LIBS = -ltermlib"
  1720.  
  1721. iclsys5r3:
  1722.     make sys5r3 KFLAGS=-DICLSVR3
  1723.  
  1724. #AT&T UNIX System V R3.  As above, but no ANSI prototyping.
  1725. sys5r3na:
  1726.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  1727.     $(MAKE) wermit \
  1728.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DNOANSI $(KFLAGS) -O" \
  1729.     "LNKFLAGS="
  1730.  
  1731. #AT&T UNIX System V R3, for 3B computers with Wollongong TCP/IP.
  1732. sys5r3net3b:
  1733.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX SVR3/3B/Wollongong...'
  1734.     $(MAKE) wermit \
  1735.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DWOLLONGONG $(KFLAGS) \
  1736.     -O" "LIBS= -lnet -lnsl_s" "LNKFLAGS ="
  1737.  
  1738. #AT&T UNIX System V R3, signal() is void rather than int.
  1739. #Uses dirent.h and Honey DanBer uucp, has <termiox.h>.
  1740. #Has <termiox.h> for RTS/CTS flow control.
  1741. sys5r3tx:
  1742.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  1743.     $(MAKE) wermit "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1744.     -DTERMIOX $(KFLAGS) -i -O" "LNKFLAGS ="
  1745.  
  1746. #AT&T UNIX System V R3, signal() is void rather than int.
  1747. #Uses dirent.h and Honey DanBer uucp, has <termiox.h>.
  1748. #Has <sys/termiox.h> for RTS/CTS flow control.
  1749. sys5r3sx:
  1750.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  1751.     $(MAKE) wermit "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1752.     -DSTERMIOX $(KFLAGS) -i -O" "LNKFLAGS ="
  1753.  
  1754. #AT&T UNIX System V R4.
  1755. #Has <termiox.h>.
  1756. sys5r4:
  1757.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1758.     $(MAKE) wermit \
  1759.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC -DTERMIOX $(KFLAGS)" \
  1760.     "LNKFLAGS = -s"
  1761.  
  1762. #AT&T UNIX System V R4 with Wollongong TCP/IP.
  1763. #Has <termiox.h>.
  1764. sys5r4net:
  1765.     @echo 'Making C-Kermit $(CKVER) for System V R4 + Wollongong TCP/IP...'
  1766.     @echo ' If sockets-library routines are missing at link time, then'
  1767.     @echo ' try the sys5r4net2 entry.'
  1768.     $(MAKE) wermit \
  1769.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1770.     -DTERMIOX -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  1771.  
  1772. #As above, but needs libs included.
  1773. sys5r4net2:
  1774.     @echo ' PLEASE READ ckuins.doc IF YOU GET MISSING HEADER FILES.'
  1775.     @echo ' (Search for WOLLONGONG...)'
  1776.     $(MAKE) sys5r4net "LIBS= -lsocket -lnsl"
  1777.  
  1778. #DELL UNIX System V R4.
  1779. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  1780. #are not misplaced in sys (rather than netinet and arpa, respectively).
  1781. #Uses ANSI C constructs, advisory file locking on devices, etc.
  1782. #Warning: -DSTERMIOX enables hardware flow control (RTS/CTS), but reportedly
  1783. #this does not work with the normal drivers.  However, it might still work
  1784. #on non-Dell systems, or even Dell systems with different drivers installed.
  1785. dellsys5r4:
  1786.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  1787.     $(MAKE) wermit \
  1788.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DHDBUUCP \
  1789.     -DDYNAMIC -DTCPSOCKET -DSTERMIOX -DCK_POLL -DKANJI $(KFLAGS)" \
  1790.     "LIBS= -lsocket -lnsl" "LNKFLAGS = -s"
  1791.  
  1792. #As above, curses support added...
  1793. dellsys5r4c:
  1794.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  1795.     $(MAKE) wermit \
  1796.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DHDBUUCP \
  1797.     -DDYNAMIC -DTCPSOCKET -DSTERMIOX -DKANJI -DCK_CURSES -DCK_POLL \
  1798.     $(KFLAGS)" "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  1799.  
  1800. #Mininum interactive: As above, but with every conceivable option removed.
  1801. dellsys5r4mi:
  1802.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  1803.     @echo 'Minimum-size interactive'
  1804.     $(MAKE) wermit "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT \
  1805.     -DDYNAMIC -UTCPSOCKET -DNOCMDL -DNOSPL -DNOXMIT -DCK_POLL \
  1806.     -DNOMSEND -DNOFRILLS -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  1807.     -DNOSCRIPT -DNOCSETS -DNOSHOW -DNOSETKEY -DNOSERVER -DNOUUCP \
  1808.     -DNOSETBUF -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ  \
  1809.     $(KFLAGS)" "LNKFLAGS = -s"
  1810.  
  1811. #Command-line only version.
  1812. dellsys5r4m:
  1813.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  1814.     @echo 'Command-line only'
  1815.     $(MAKE) wermit \
  1816.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DDYNAMIC \
  1817.     -UTCPSOCKET -DNOICP -DNOFRILLS -DNODIAL -DNODEBUG -DNOTLOG -DNOCSETS \
  1818.     -DNOSETKEY -DNOESCSEQ -DNOSETBUF -DNOJC -DNOFDZERO -DCK_POLL \
  1819.     $(KFLAGS)" "LNKFLAGS = -s"
  1820.  
  1821. #AT&T UNIX System V R4.
  1822. #Has <sys/termiox.h>.
  1823. sys5r4sx:
  1824.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1825.     $(MAKE) wermit \
  1826.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1827.     -DSTERMIOX $(KFLAGS)" "LNKFLAGS = -s"
  1828.  
  1829. #AT&T UNIX System V R4.
  1830. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  1831. #are not misplaced in sys (rather than netinet and arpa, respectively).
  1832. #Uses ANSI C constructs, <sys/termiox.h>, etc etc.
  1833. sys5r4sxtcp:
  1834.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1835.     $(MAKE) wermit \
  1836.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1837.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  1838.     "LIBS= -lsocket -lnsl" "LNKFLAGS = -s"
  1839.  
  1840. #AT&T UNIX System V R4.
  1841. #As above + curses.
  1842. sys5r4sxtcpc:
  1843.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1844.     $(MAKE) wermit \
  1845.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1846.     -DSTERMIOX  -DCK_CURSES -DTCPSOCKET $(KFLAGS)" \
  1847.     "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  1848.  
  1849. #AT&T UNIX System V R4.  CONSENSYS SVR4.2-1.
  1850. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  1851. #are not misplaced in sys (rather than netinet and arpa, respectively).
  1852. #Uses ANSI C constructs, <sys/termiox.h>, etc. 
  1853. # Fullscreen -DCK_CURSES added (with curses & termcap libs)
  1854. # Submission by Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu
  1855. sys5r4sxtcpf:
  1856.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1857.     $(MAKE) wermit \
  1858.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1859.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES $(KFLAGS)" \
  1860.     "LIBS= -lsocket -lnsl -L/usr/ccs/lib -lcurses -ltermcap" \
  1861.     "LNKFLAGS = -s"
  1862.  
  1863. #Smallest possible version for System V R4
  1864. s5r4m:
  1865.     @echo Minimum size
  1866.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx \
  1867.     "KFLAGS=$(KFLAGS) -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  1868.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOMSEND -UTCPSOCKET" "LNKFLAGS = -s"
  1869.  
  1870. #Smallest possible interactive version of above
  1871. s5r4mi:
  1872.     @echo Minimum interactive
  1873.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx \
  1874.     "KFLAGS=-DNOSPL -DNOXMIT -DNOMSEND -DNOFRILLS -DNOSHOW \
  1875.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOSETKEY \
  1876.     -UTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  1877.  
  1878. #AT&T UNIX System V R4, has <sys/termiox.h>
  1879. #ANSI C function prototyping disabled.
  1880. sys5r4sxna:
  1881.     @echo No ANSI C prototyping...
  1882.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx "KFLAGS=$(KFLAGS) -DNOANSI"
  1883.  
  1884. #Commodore Amiga with AT&T UNIX System V R4 and TCP/IP support.
  1885. #Has <sys/termiox.h>.
  1886. svr4amiganet:
  1887.     @echo 'Making C-Kermit $(CKVER) for Amiga SVR4 + TCP/IP...'
  1888.     $(MAKE) wermit "CC=gcc" "CC2=gcc" \
  1889.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC -DSTERMIOX \
  1890.     -DTCPSOCKET -DCK_CURSES $(KFLAGS)" "LNKFLAGS = -s" \
  1891.     "LIBS = -lsocket -lnsl -ltermlib"
  1892.  
  1893. #Novell UnixWare.  This assumes the Novell SDK 1.0, which has <sys/termiox.h>.
  1894. #UnixWare users with the "Prime Time Freeware" CD-ROM SDK will probably have
  1895. #to use the sys5r4 entry (no termiox.h file, so no hardware flow control).
  1896. unixware:
  1897.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx "KFLAGS=-DUNIXWARE -DCK_POLL"
  1898.  
  1899. unixwarenetc:
  1900.     $(MAKE) "MAKE=$(MAKE)" sys5r4sxtcpc "KFLAGS=-DUNIXWARE -DCK_POLL"
  1901.  
  1902.  
  1903. #ESIX SVR4.0.3 or 4.04 with TCP/IP support.
  1904. #Has <sys/termiox.h>, ANSI C function prototyping disabled.
  1905. #Add -m486 to CFLAGS if desired.
  1906. esixr4:
  1907.     @echo 'Making C-Kermit $(CKVER) for ESIX SVR4 + TCP/IP...'
  1908.     $(MAKE) wermit \
  1909.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC -DNOANSI \
  1910.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s" \
  1911.     "LIBS = -lsocket -lnsl"
  1912.  
  1913. #AT&T UNIX System V R4.
  1914. #Has <sys/termiox.h>, Wollongong WIN/TCP TCP/IP.
  1915. sys5r4sxnet:
  1916.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1917.     $(MAKE) wermit \
  1918.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1919.     -DSTERMIOX -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  1920.  
  1921. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>.
  1922. sys5r4nx:
  1923.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1924.     $(MAKE) wermit \
  1925.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC $(KFLAGS)" \
  1926.     "LNKFLAGS = -s"
  1927.  
  1928. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>, curses, TCP/IP.
  1929. sys5r4nxnetc:
  1930.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1931.     $(MAKE) wermit \
  1932.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1933.     -DCK_CURSES -DTCPSOCKET $(KFLAGS)" \
  1934.     "LIBS = -lcurses -lsocket -lnsl -ltcpip" \
  1935.     "LNKFLAGS = -s"
  1936.  
  1937. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>, Wollongong TCP/IP.
  1938. sys5r4nxtwg:
  1939.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  1940.     $(MAKE) wermit \
  1941.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC \
  1942.     -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  1943.  
  1944. #ICL UNIX System V R4.(DRS N/X) version :-
  1945. #UNIX System V Release 4.0 ICL DRS 6000 (SPARC)
  1946. #DRS/NX 6000 SVR4 Version 5  Level 1  Increment 4
  1947. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  1948. #are not misplaced in sys (rather than netinet and arpa, respectively).
  1949. #Uses ANSI C constructs, advisory file locking on devices, etc.
  1950. iclsys5r4:
  1951.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 (DRS N/X)'
  1952.     $(MAKE) wermit \
  1953.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP \
  1954.     -DDYNAMIC -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  1955.     "LIBS= -lsocket " "LNKFLAGS = -s"
  1956.  
  1957. #ICL UNIX System V R4.(DRS N/X) version :-
  1958. #UNIX System V Release 4.0 ICL DRS 3000 (486)
  1959. #DRS/NX 6000 SVR4 Version 5  Level 1  Increment 4
  1960. #As above, but also needs -lnsl.
  1961. iclsys5r4_486:
  1962.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 (DRS N/X)'
  1963.     $(MAKE) wermit \
  1964.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP \
  1965.     -DDYNAMIC -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  1966.     "LIBS= -lsocket -lnsl " "LNKFLAGS = -s"
  1967.  
  1968. #Data General DG/UX 4.30 (System V R3) for DG AViiON, with TCP/IP support.
  1969. dgux430:
  1970.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 4.30...'
  1971.     $(MAKE) wermit \
  1972.     "CFLAGS = -O -DDGUX430 -DSVR3 -DDIRENT -DDYNAMIC \
  1973.     -DTCPSOCKET $(KFLAGS)"
  1974.  
  1975. #Data General DG/UX 4.30 for DG AViiON, with TCP/IP support with BSDisms.
  1976. dgux430bsd:
  1977.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 4.30...'
  1978.     $(MAKE) wermit "CFLAGS = -O -DDGUX430 -D_BSD_SOURCE -DBSD4 \
  1979.     -DDYNAMIC -DTCPSOCKET $(KFLAGS)"
  1980.  
  1981. #Data General DG/UX 5.4 (System V R4) for DG AViiON, with TCP/IP support.
  1982. dgux540:
  1983.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  1984.     $(MAKE) wermit "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP \
  1985.     -DKANJI -DDYNAMIC -DSTERMIOX -DTCPSOCKET -DCK_POLL $(KFLAGS)"
  1986.  
  1987. dgux54:
  1988.     make dgux540
  1989.  
  1990. #DG/UX 5.4R3.00
  1991. dgux543c:
  1992.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.4R3...'
  1993.     $(MAKE) wermit "CFLAGS = -O -DDGUX540 -DDGUX543 -DDIRENT -DHDBUUCP \
  1994.     -DDYNAMIC -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_POLL $(KFLAGS)" \
  1995.     "LIBS= -lcurses8 -ltermcap" "LNKFLAGS = -s"
  1996.  
  1997. #Data General DG/UX 5.4 (= System V R4) for DG AViiON, with TCP/IP support.
  1998. # And curses.
  1999. dgux540c:
  2000.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.4...'
  2001.     $(MAKE) wermit "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP \
  2002.     -DDYNAMIC -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_POLL $(KFLAGS)" \
  2003.     "LIBS= -lcurses8 -ltermcap" "LNKFLAGS = -s"
  2004.  
  2005. dgux54c:
  2006.     make dgux540c
  2007.  
  2008. #Silicon Graphics System V R3 with BSD file system (IRIS)
  2009. iris:
  2010.     @echo Making C-Kermit $(CKVER) for Silicon Graphics IRIX pre-3.3...
  2011.     $(MAKE) wermit "CFLAGS = -O -DSVR3 -DLONGFN  $(KFLAGS) \
  2012.     -I/usr/include/bsd" "LIBS = -lbsd"
  2013.  
  2014. #Silicon Graphics IRIS System V R3
  2015. irix33:
  2016.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 3.3...'
  2017.     $(MAKE) wermit \
  2018.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC $(KFLAGS) -O" \
  2019.     "LNKFLAGS = -s"
  2020.  
  2021. #Silicon Graphics Iris Indigo with IRIX 4.0.0 or 5.0...
  2022. #Strict ANSI C compilation, TCP/IP support included
  2023. irix40:
  2024.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  2025.     $(MAKE) wermit \
  2026.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DPWID_T=uid_t \
  2027.     -DCK_ANSIC -DTCPSOCKET $(KFLAGS) -O -Olimit 1500 -I/usr/include/bsd" \
  2028.     "LNKFLAGS = -s"
  2029.  
  2030. #As above, but with fullscreen display (curses) and Sun Yellow Pages support.
  2031. irix40ypc:
  2032.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0.'
  2033.     @echo 'Includes fullscreen file display and Sun Yellow Pages...'
  2034.     $(MAKE) wermit \
  2035.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DCK_CURSES \
  2036.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET $(KFLAGS) \
  2037.     -O -Olimit 1500 -I/usr/include/bsd" \
  2038.     "LIBS = -lcurses -lsun" "LNKFLAGS = -s"
  2039.  
  2040. # Silicon Graphics Iris Series 4D/*, IRIX 4.0.x, -O4 ucode optimized.
  2041. # Huge temporary file space needed for ucode optimizer.  If you get an error
  2042. # like "ugen: internal error writing to /tmp/ctmca08777: Error 0", define the
  2043. # the TMPDIR environment variable to point to a file system that has more 
  2044. # space available, e.g. "setenv TMPDIR /usr/tmp".
  2045. irix40u:
  2046.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  2047.     $(MAKE) wermit \
  2048.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DPWID_T=uid_t \
  2049.     -DCK_ANSIC -DTCPSOCKET $(KFLAGS) -O4 -Olimit 1500" \
  2050.     "LNKFLAGS=-O4 -Olimit 1500 -s" "EXT=u"
  2051.  
  2052. # As above, with Curses Support added
  2053. irix40uc:
  2054.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  2055.     $(MAKE) wermit \
  2056.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DPWID_T=uid_t \
  2057.     -DCK_ANSIC -DCK_CURSES -DTCPSOCKET $(KFLAGS) -O4 -Olimit 1500" \
  2058.     "LNKFLAGS=-O4 -Olimit 1500 -s" "EXT=u" "LIBS= -lcurses -ltermcap"
  2059.  
  2060. #As above, but with fullscreen display (curses) and Sun Yellow Pages support.
  2061. #Silicon Graphics Challenge XL with IRIX 5.1 or 5.2 or Indigo Elan with 5.2.
  2062. irix51ypc:
  2063.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 5.1/5.2'
  2064.     @echo 'Includes fullscreen file display and Yellow Pages...'
  2065.     $(MAKE) wermit \
  2066.     "CFLAGS = -DIRIX51 -DSVR4 -DDIRENT -DHDBUUCP -DDYNAMIC -DCK_CURSES \
  2067.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET -DCK_POLL -DKANJI $(KFLAGS) \
  2068.     -O -Olimit 1500" \
  2069.     "LIBS = -lcurses" "LNKFLAGS = -s"
  2070.  
  2071. #In case they type "make sys5"...
  2072. sys5:
  2073.     $(MAKE) "MAKE=$(MAKE)" sys3
  2074.  
  2075. #Generic ATT System III or System V (with I&D space)
  2076. sys3:
  2077.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  2078.     @echo 'or System V R2 or earlier...'
  2079.     $(MAKE) wermit "CFLAGS = -DATTSV $(KFLAGS) -i -O" \
  2080.     "LNKFLAGS = -i"
  2081.  
  2082. #Generic ATT System III or System V R2 or earlier, "no void":
  2083. #special entry to remove "Illegal pointer combination" warnings.
  2084. sys3nv:
  2085.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  2086.     @echo 'or System V R2 or earlier...'
  2087.     $(MAKE) wermit "CFLAGS = -DATTSV -Dvoid=int  $(KFLAGS) -i -O" \
  2088.     "LNKFLAGS = -i"
  2089.  
  2090. #Generic ATT System III or System V (no I&D space)
  2091. sys3nid:
  2092.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  2093.     @echo 'or System V R2 or earlier, no I&D space...'
  2094.     $(MAKE) wermit "CFLAGS = -DATTSV $(KFLAGS) -O" "LNKFLAGS ="
  2095.  
  2096. #AT&T 7300/UNIX PC (3B1) systems, sys3 but special handling for internal modem.
  2097. #Link with the shared library -- the conflict with openi in shared library
  2098. #is solved with -Dopeni=xopeni
  2099. sys3upc:
  2100.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, shared lib...'
  2101.     @echo 'If shared lib causes trouble, use make sys3upcold.'
  2102.     $(MAKE) wermit \
  2103.     "CFLAGS = -O -DATT7300 -DDYNAMIC -DNOSETBUF -DNOMKDIR $(KFLAGS) \
  2104.     -Dopeni=xopeni" \
  2105.     "CC2 = ld /lib/crt0s.o /lib/shlib.ifile" "LNKFLAGS = -s"
  2106.  
  2107. #AT&T 7300/UNIX PC (3B1) systems, with curses support.
  2108. #Curses and the shared library don't get along, so we don't use the
  2109. #shared library.  We need to include CK_NEWTERM to avoid a conflict
  2110. #with curses and buffering on stdout.  Merged with submission by
  2111. #Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu.
  2112. #We don't need -Dopeni=xopeni since we're not using the shared library,
  2113. #but we keep it to be consistent with the other entries.
  2114. sys3upcc:
  2115.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  2116.     $(MAKE) wermit "CFLAGS = -O -DATT7300 -DDYNAMIC -DNOSETBUF \
  2117.     -DCK_CURSES -DCK_NEWTERM -DNOMKDIR $(KFLAGS) -Dopeni=xopeni" \
  2118.     "LIBS = -lcurses" "LNKFLAGS = -s"
  2119.  
  2120. #AT&T 7300 UNIX PC (3B1), as above, but no newterm().
  2121. sys3upcx:
  2122.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  2123.     $(MAKE) wermit "CFLAGS = -O -DATT7300 -DDYNAMIC -DNOSETBUF \
  2124.     -DCK_CURSES -DNOMKDIR $(KFLAGS) -Dopeni=xopeni" \
  2125.     "LIBS = -lcurses -ltermcap" "LNKFLAGS = -s"
  2126.  
  2127. #AT&T 7300/UNIX PC (3B1) systems, with curses and shared library support.
  2128. sys3upcshcc:
  2129.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, shared lib...'
  2130.     @echo 'With curses.  Requires shcc.'
  2131.     $(MAKE) wermit "CFLAGS = -O -DATT7300 -DDYNAMIC -DNOMKDIR \
  2132.     -DNOSETBUF -DCK_NEWTERM -DCK_CURSES $(KFLAGS) -Dopeni=xopeni" \
  2133.     "LNKFLAGS = -i -s" "CC = shcc" "CC2 = shcc" "LIBS = -lcurses"
  2134.  
  2135. #AT&T 7300/UNIX PC (3B1) systems, as above, no curses, but use gcc.
  2136. sys3upcg:
  2137.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC...'
  2138.     $(MAKE) wermit \
  2139.     "CFLAGS = -O -DATT7300 -DDYNAMIC -DNOSETBUF -DNOMKDIR $(KFLAGS) \
  2140.     -Dopeni=xopeni" \
  2141.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s -shlib"
  2142.  
  2143. #AT&T 7300/UNIX PC (3B1) systems, curses and gcc.
  2144. sys3upcgc:
  2145.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  2146.     $(MAKE) wermit "CFLAGS = -O -DATT7300 -DDYNAMIC -DNOSETBUF \
  2147.     -DCK_CURSES -DIFDEBUG -DCK_NEWTERM -DNOMKDIR $(KFLAGS)" \
  2148.     "CC = gcc" "CC2 = gcc" "LIBS = -lcurses" "LNKFLAGS = -s"
  2149.  
  2150. #AT&T 7300/UNIX PC (3B1) systems, special handling for internal modem.
  2151. #No FULLSCREEN file transfer display (curses).
  2152. sys3upcold:
  2153.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC...'
  2154.     $(MAKE) wermit "CFLAGS = -DATT7300 -DNOMKDIR $(KFLAGS) -O" \
  2155.     "LNKFLAGS = -i"
  2156.  
  2157. #AT&T 7300/Unix PC systems, minimum kermit for those with smaller amounts
  2158. #of memory.
  2159. sys3upcm:
  2160.     @echo Minimum interactive
  2161.     $(MAKE) "MAKE=$(MAKE)" sys3upc \
  2162.     "KFLAGS=-DNOSPL -DNOFRILLS -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS \
  2163.     -DNOSETKEY -DNOSETBUF"
  2164.  
  2165. #As above, but with gcc...
  2166. sys3upcgm:
  2167.     @echo Minimum interactive
  2168.     $(MAKE) "MAKE=$(MAKE)" sys3upcg \
  2169.     "KFLAGS=-DNOSPL -DNOFRILLS -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS \
  2170.     -DNOSETKEY -DNOSETBUF"
  2171.  
  2172. #AT&T 6300 PLUS (warning, -O might make it run out of space).
  2173. #NOTE: Remove -DHDBUUCP if not using Honey DanBer UUCP.
  2174. att6300:
  2175.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS...'
  2176.     $(MAKE) wermit "CFLAGS = -DATT6300 -DHDBUUCP -DNOFILEH \
  2177.     $(KFLAGS) -O -Ml -i" "LNKFLAGS = -i -Ml"
  2178.  
  2179. #As above, but with curses support.  Debugging disabled to prevent thrashing.
  2180. att6300c:
  2181.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS...'
  2182.     $(MAKE) wermit \
  2183.     "CFLAGS = -DATT6300 -DHDBUUCP -DNOFILEH -DNOCSETS \
  2184.     -DCK_CURSES -DNODEBUG $(KFLAGS) -O -Ml -i" "LNKFLAGS = -i -Ml" \
  2185.     "LIBS = -lcurses"
  2186.  
  2187. #AT&T 6300 PLUS with no curses, no debugging (about 34K smaller)
  2188. # -Optimization saves about 20K too.
  2189. att6300nd:
  2190.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS, no debugging...'
  2191.     $(MAKE) wermit \
  2192.     "CFLAGS = -DATT6300 -DHDBUUCP -DNODEBUG -DNOFILEH $(KFLAGS) \
  2193.     -O -i -Ml" "LNKFLAGS = -i -Ml"
  2194.  
  2195. #AT&T 3B2, 3B20-series computers running AT&T UNIX System V.
  2196. #This is just generic System V with Honey DanBer UUCP, so refer to sys3hdb.
  2197. #Might need addition of -DNONAWS if ckutio.c compilation fails in ttgwsiz().
  2198. att3bx:
  2199.     $(MAKE) "MAKE=$(MAKE)" sys3hdb
  2200.  
  2201. #AT&T 3B2, 3B20-series computers running AT&T UNIX System V,
  2202. #with fullscreen file transfer display
  2203. att3bxc:
  2204.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  2205.     @echo 'with Honey DanBer UUCP and curses...'
  2206.     $(MAKE) wermit "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) \
  2207.         -DCK_CURSES -DCK_NEWTERM -i -O" \
  2208.     "LNKFLAGS = -i" "LIBS=-lcurses"
  2209.  
  2210. #Any System V R2 or earlier with Honey DanBer UUCP (same as above)
  2211. sys3hdb:
  2212.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  2213.     @echo 'or System V R2 or earlier with Honey DanBer UUCP...'
  2214.     $(MAKE) wermit "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -i -O" \
  2215.     "LNKFLAGS = -i"
  2216.  
  2217. #Sperry/UNISYS 5000 UTS V 5.2 (System V R2), Honey DanBer UUCP
  2218. unisys5r2:
  2219.     @echo 'Making C-Kermit $(CKVER) for Sperry/UNISYS 5000 UTS V 5.2...'
  2220.     $(MAKE) wermit \
  2221.     "CFLAGS = -DATTSV -DUNISYS52 -DHDBUUCP $(KFLAGS) -i -O" \
  2222.     "LNKFLAGS = -i"
  2223.  
  2224. #In case they say "make sys5hdb" instead of "make sys3hdb"...
  2225. sys5hdb:
  2226.     $(MAKE) "MAKE=$(MAKE)" sys3hdb
  2227.  
  2228. #IBM PS/2 with AIX 1.0.
  2229. #  Reports indicate that -O switch must be omitted.
  2230. #  It is also possible that "made bsd" will work (reports welcome).
  2231. #  One report said "make LIBS=-lbsd bsd" did the trick.
  2232. ps2aix:
  2233.     @echo 'Making C-Kermit $(CKVER) for IBM AIX 1.0 PS/2...'
  2234.     $(MAKE) wermit \
  2235.     "CFLAGS = -DATTSV -DPS2AIX10 $(KFLAGS) -i" "LNKFLAGS = -i"
  2236.  
  2237. #IBM RT PC with AIX 2.2.1
  2238. #This one has unique and strange lockfiles.
  2239. rtaix:
  2240.     @echo 'Making C-Kermit $(CKVER) for IBM RT PC, AIX 2.2.1...'
  2241.     $(MAKE) wermit \
  2242.     "CFLAGS = -DATTSV -DRTAIX -DHDBUUCP -DTCPSOCKET \
  2243.     -DCLSOPN $(KFLAGS) -O -w" "LNKFLAGS = -s"
  2244.  
  2245. #IBM RT PC with AIX 2.2.1
  2246. #This one has unique and strange lockfiles.
  2247. rtaixc:
  2248.     @echo 'Making C-Kermit $(CKVER) for IBM RT PC, AIX 2.2.1, curses...'
  2249.     $(MAKE) wermit \
  2250.     "CFLAGS = -DATTSV -DRTAIX -DHDBUUCP -DTCPSOCKET -DCK_CURSES \
  2251.     -DCLSOPN $(KFLAGS) -O -w" "LIBS=-lcurses" "LNKFLAGS = -s"
  2252.  
  2253. #IBM RT PC with AIX 2.2.1 (BSD 4.3)
  2254. # Add -O, -DDYNAMIC, -s, etc, if they work.
  2255. rtacis:
  2256.     @echo Making C-Kermit $(CKVER) for RT PC with ACIS 2.2.1 = BSD 4.3...
  2257.     $(MAKE) wermit \
  2258.     "CFLAGS= -DBSD4 -DTCPSOCKET $(KFLAGS) -U__STDC__" \
  2259.     "LNKFLAGS = -s"
  2260.  
  2261. #HP 9000 series 300, 500, 800, no long filenames and no job control.
  2262. #This is certainly only good for HP-UX versions earlier than 6.5.
  2263. #It definitely works with HP-UX 5.21.
  2264. hpuxpre65:
  2265.     @echo 'Making C-Kermit $(CKVER) for HP-9000 HP-UX, no long filenames.'
  2266.     $(MAKE) wermit \
  2267.     "CFLAGS = -DHPUX -DHPUXPRE65 $(KFLAGS) -O" "LNKFLAGS ="
  2268.  
  2269. hpux:
  2270.     @echo 'Please pick a more specific HP-UX entry.'
  2271.  
  2272. #HP-9000 500 HP-UX 5.21 with Wollongong WIN/TCP 1.2 TCP/IP
  2273. #Requires /usr/wins/usr/include and /usr/lib/libnet.a from Wollongong
  2274. hpux500wintcp:
  2275.     @echo 'Making C-Kermit $(CKVER) for HP-9000 500 HP-UX 5.21 WIN/TCP'
  2276.     $(MAKE) wermit \
  2277.     "CFLAGS = -DHPUX -DHPUXPRE65 -DTCPSOCKET -DDYNAMIC \
  2278.     -I/usr/wins/usr/include $(KFLAGS) -O" \
  2279.     "LIBS = /usr/lib/libnet.a" "LNKFLAGS = "
  2280.  
  2281. #HP-UX 7.0, no long filenames, no network support.
  2282. hpux7sf:
  2283.     @echo 'Making C-Kermit $(CKVER) for HP-9000 HP-UX, no long filenames.'
  2284.     $(MAKE) wermit \
  2285.     "CFLAGS = -DHPUX $(KFLAGS) -DSIG_V -O" "LNKFLAGS ="
  2286.  
  2287. #HP 9000 series 300, 800, long filenames (using BSD file system)
  2288. # (This one is probably necessary for the Series 300)
  2289. hpuxlf:
  2290.     @echo 'Making C-Kermit $(CKVER) for HP-9000 HP-UX, long filenames...'
  2291.     $(MAKE) wermit \
  2292.     "CFLAGS = -DHPUX -DNDIR -DLONGFN -DDYNAMIC $(KFLAGS) -O" \
  2293.     "LNKFLAGS ="
  2294.  
  2295. #HP 9000 series 300, 800, long filenames (using <dirent.h>)
  2296. hpuxde:
  2297.     @echo 'Making C-Kermit $(CKVER) for HP-9000 HP-UX, long filenames...'
  2298.     $(MAKE) wermit \
  2299.     "CFLAGS = -DHPUX -DDIRENT -DDYNAMIC $(KFLAGS) -O" \
  2300.     "LNKFLAGS ="
  2301.  
  2302. #HP 9000 series 300, 800, long filenames (using <dirent.h>) and TCP/IP
  2303. hpuxdetcp:
  2304.     @echo 'Making C-Kermit $(CKVER) for HP-9000 HP-UX, long filenames...'
  2305.     $(MAKE) wermit \
  2306.     "CFLAGS = -DHPUX -DDIRENT -DDYNAMIC -DTCPSOCKET $(KFLAGS) -O" \
  2307.     "LNKFLAGS ="
  2308.  
  2309. #HP 9000 series 300, 800, long filenames, System V R3 or later
  2310. # (Does anybody know what is the earliest release of HP-UX based on SVR3?)
  2311. hpuxs5r3:
  2312.     @echo 'Making C-Kermit $(CKVER) for HP-9000 HP-UX, long filenames...'
  2313.     $(MAKE) wermit \
  2314.     "CFLAGS = -DHPUX -DSVR3 -DDIRENT -DTCPSOCKET -DDYNAMIC \
  2315.     -DNOSETBUF $(KFLAGS) -O" "LNKFLAGS =" "LIBS=-lBSD"
  2316.  
  2317. #HP 9000 series 800 HP-UX 7.0, long filenames, network support, HDB uucp.
  2318. #there must be <arpa/telnet.h> & <arpa/inet.h> present to support this
  2319. #configuration.  To use this, you must have bought the ARPA Services
  2320. #Product from HP, and you must get the files "telnet.h" and "inet.h"
  2321. #from the Berkeley Standard Distribution because (reportedly) they are not
  2322. #part of the HP product.  And you need /usr/lib/libBSD.a.
  2323. #
  2324. hpux70lfn:
  2325.     @echo 'Making C-Kermit $(CKVER) for HP9000/8xx HP-UX V. 7.0'
  2326.     @echo 'supporting: long filenames, networking, HDB uucp...'
  2327.     $(MAKE) wermit \
  2328.     "CFLAGS = -DHPUXDEBUG -DHPUX -DSVR3 -DDIRENT -DLONGFN \
  2329.     -DHDBUUCP -DDYNAMIC -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETBUF \
  2330.     -DTCPSOCKET  $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lBSD"
  2331.  
  2332. hpux70lfnc:
  2333.     @echo 'Making C-Kermit $(CKVER) for HP9000/8xx HP-UX V. 7.0'
  2334.     @echo 'supporting: curses, long filenames, networking, HDB UUCP...'
  2335.     $(MAKE) wermit \
  2336.     "CFLAGS = -DHPUXDEBUG -DHPUX -DSVR3 -DDIRENT -DLONGFN \
  2337.     -DHDBUUCP -DDYNAMIC -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETBUF \
  2338.     -DTCPSOCKET  -DCK_CURSES $(KFLAGS) -O" \
  2339.     "LIBS= -lcurses -ltermcap -lBSD" "LNKFLAGS = -s"
  2340.  
  2341. #HP 9000 Series 300 or 400, HP-UX 8.0, long filenames and TCP/IP support.
  2342. #This one should also work on 700/800, but without PA-specific optimization.
  2343. hpux80:
  2344.     @echo 'Making C-Kermit $(CKVER) for HP9000 HP-UX V. 8.0'
  2345.     @echo 'supporting: long filenames, TCP/IP, HDB UUCP...'
  2346.     $(MAKE) -B wermit "CFLAGS = \
  2347.     -DHPUXDEBUG -DHPUX -DHPUX8 -DSVR3 -DDIRENT -DLONGFN -DRENAME \
  2348.     -DHDBUUCP -DDYNAMIC -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETBUF \
  2349.     -DTCPSOCKET  $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lBSD"
  2350.  
  2351. #Exactly as above + curses.
  2352. hpux80c:
  2353.     @echo 'Making C-Kermit $(CKVER) for HP9000 HP-UX V. 8.0'
  2354.     @echo 'supporting: long filenames, TCP/IP, HDB UUCP, curses...'
  2355.     $(MAKE) -B wermit "CFLAGS = -DCK_CURSES -DRENAME \
  2356.     -DHPUXDEBUG -DHPUX -DHPUX8 -DSVR3 -DDIRENT -DLONGFN \
  2357.     -DHDBUUCP -DDYNAMIC -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETBUF \
  2358.     -DTCPSOCKET -O $(KFLAGS)" "LNKFLAGS = -s" "LIBS = -lBSD -lcurses"
  2359.  
  2360. #HP 9000 Series 700 or 800, HP-UX 8.0, long filenames and TCP/IP support.
  2361. # Like the previous entries, but with PA-specific optimization.
  2362. hpux80pa:
  2363.     $(MAKE) hpux80 "KFLAGS = $(KFLAGS) +Obb700"
  2364.  
  2365. #As above, but with curses.
  2366. hpux80pac:
  2367.     $(MAKE) hpux80c "KFLAGS = $(KFLAGS) +Obb700"
  2368.  
  2369. #As above, but compiled with GCC 2.3.3.
  2370. hpux80pagcc:
  2371.     @echo 'Making C-Kermit $(CKVER) for HP9000 HP-UX 8.0 with gcc,'
  2372.     @echo 'supporting: long filenames, networking, HDB uucp...'
  2373.     $(MAKE) "CC=gcc" "CC2=gcc" hpux80
  2374.  
  2375. #HP 9000 HP-UX 8.0, no TCP/IP because /usr/lib/libBSD.a can't be found,
  2376. #or TCP/IP header files missing.
  2377. hpux80notcp:
  2378.     $(MAKE) "MAKE=$(MAKE)" hpux80 "KFLAGS= $(KFLAGS) -UTCPSOCKET"
  2379.  
  2380. #HP-UX 9.0, 9.01, 9.03, 9.04, 9.05, ..., + TCP/IP + curses, fully configured.
  2381. #Use this entry with restricted compiler: no optimization, no ANSI support.
  2382. #In case libBSD.a is not available, remove "-lBSD" and try without it, and
  2383. #then if you get unresolved references at link time, then also remove
  2384. #-DTCPSOCKET.
  2385. hpux90:
  2386.     @echo 'Making C-Kermit $(CKVER) for HP9000 HP-UX V. 9.0...'
  2387.     @echo 'Read comments in the hpux90 entry if you have trouble.'
  2388.     $(MAKE) wermit "CFLAGS = -DHPUX9 -DDIRENT -DHPUXDEBUG -DLONGFN \
  2389.     -DTCPSOCKET -DCK_CURSES -DHDBUUCP -DDYNAMIC -DNOSETBUF -DKANJI \
  2390.     -DSTERMIOX -DCK_REDIR -DRENAME \
  2391.     -DLOCK_DIR=\\\"/usr/spool/uucp\\\" $(KFLAGS)" \
  2392.     "LNKFLAGS = -s" "LIBS = -lBSD -lcurses" "CC=$(CC)" "CC2=$(CC2)"
  2393.  
  2394. #Like hpux90, but for the "value-added" compiler on all HP 9000 models.
  2395. #Adds optimization and ANSI compilation:
  2396. # +O2 makes smaller executable (= -O = Level-1 and global optimization)
  2397. # +O3 adds interprocedural global optimization, makes bigger executable.
  2398. # If optimization fails on some modules, you can add:
  2399. #  +Obb<n>, +Olimit <n>, or +Onolimit, depending on your cc version,
  2400. # where <n> is a number (use the smallest number that works), e.g. +Obb1000
  2401. hpux90o:
  2402.     $(MAKE) hpux90 \
  2403.     "KFLAGS = $(KFLAGS) -Aa -DCK_ANSIC -D_HPUX_SOURCE +O2"
  2404.  
  2405. #As above but with model-700/800-specific optimizations.
  2406. # +ESlit = consolidate strings in read-only memory.
  2407. # +ESfsc = inline millicode calls when comparing pointers.
  2408. hpux90o700:
  2409.     $(MAKE) hpux90o "KFLAGS = $(KFLAGS) +ESlit +ESsfc"
  2410.  
  2411. #HP-UX 9.0, 9.01, 9.03, 9.04, ..., + TCP/IP + curses, fully configured,
  2412. #built with gcc, all models except 800 series.
  2413. hpux90gcc:
  2414.     $(MAKE) hpux90 CC=gcc CC2=gcc \
  2415.     "KFLAGS = $(KFLAGS) -DCK_ANSIC -O2"
  2416.  
  2417. #HP-9000 HP-UX 10.0 + TCP/IP + curses, fully configured.
  2418. #Use with restricted (bundled) compiler: no optimization, no ANSI support.
  2419. #libBSD needed for TCP/IP, libcurses needed for fullscreen file xfer display.
  2420. #Note: if there is no /bin/sh, you must run this entry like this:
  2421. # make "SHELL=/usr/bin/sh" hpux100
  2422. hpux100:
  2423.     @echo 'Making C-Kermit $(CKVER) for HP9000 HP-UX V. 10.0...'
  2424.     @touch ckuker.cpp
  2425.     $(MAKE) "SHELL=/usr/bin/sh" "CFLAGS=-DHPUX10" manpage
  2426.     $(MAKE) "SHELL=/usr/bin/sh" wermit \
  2427.     "CFLAGS = -DHPUX10 -DDIRENT -DSTERMIOX -DCK_DSYSINI -DHDBUUCP \
  2428.     -DCK_CURSES -DCK_WREFRESH -DKANJI -DDYNAMIC -DNOSETBUF \
  2429.     -DTCPSOCKET -DCK_REDIR -DRENAME $(KFLAGS)" \
  2430.     "LNKFLAGS= -s" "LIBS = -lBSD -lcurses"
  2431.  
  2432. #Synonym for hpux100
  2433. hpux10:
  2434.     $(MAKE) "SHELL=/usr/bin/sh" hpux100
  2435.  
  2436. #HP-9000 HP-UX 10.0 with ANSI prototyping and optimization.
  2437. #The unbundled optional compiler is required.
  2438. #Your path should start with /opt/ansic/bin.
  2439. # -Wl,-Fw = Remove stack unwind table (info used by debuggers).
  2440. # +O2 makes a smaller executable (= -O = Level-1 and global optimization).
  2441. # +O3 adds interprocedural global optimization, makes a bigger executable.
  2442. # If optimization fails on some modules, you can try adding +Onolimit.
  2443. # The following are PA-RISC-specific optimizations:
  2444. # +ESlit = Consolidate strings in read-only memory.
  2445. # +ESfsc = Inline millicode calls when comparing pointers.
  2446. # +DA1.0 = Generate code that runs on both 700 and 800 models.
  2447. hpux100o:
  2448.     $(MAKE) "SHELL=/usr/bin/sh" hpux100 \
  2449.     "KFLAGS = $(KFLAGS) \
  2450.     -Aa -D_HPUX_SOURCE -DCK_ANSIC -DUTIMEH \
  2451.     +O2 -Wl,-Fw +ESlit +ESsfc +DA1.0"
  2452.  
  2453. hpux100xo:
  2454.     $(MAKE) "SHELL=/usr/bin/sh" hpux100o "KFLAGS=-DSUNX25"
  2455.  
  2456. #Regulus on CIE Systems 680/20
  2457. cie:
  2458.     @echo 'Making C-Kermit $(CKVER) for CIE Systems 680/20 Regulus...'
  2459.     $(MAKE) wermit \
  2460.     "CFLAGS = -DATTSV -DNOFILEH -DCIE $(KFLAGS) -O" "LNKFLAGS ="
  2461.  
  2462. # Linux with gcc 2.1, no TCP/IP, dynamic libraries.
  2463. # CK_POSIX_SIG (POSIX signal handling) is good for Linux releases back to at
  2464. # least 0.99.14; if it causes trouble for, just remove it.
  2465. # If you get a link error reporting "no such file or directory..libncurses",
  2466. # then change -lncurses to -lcurses.
  2467. linux:
  2468.     @echo 'Making C-Kermit $(CKVER) for Linux...'
  2469.     @echo 'For FSSTND-recommended UUCP lockfiles, use:'
  2470.     @echo '  make linux "KFLAGS=-DLINUXFSSTND'
  2471.     @echo 'Use "make linuxtcp" to add TCP/IP support.'
  2472.     @echo 'Read comments in makefile for additional options.'
  2473.     $(MAKE) wermit "CC = gcc" "CC2 = gcc" \
  2474.     "CFLAGS = -O -DPOSIX -DDYNAMIC -DCK_CURSES -DCK_POSIX_SIG \
  2475.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lncurses -ltermcap" 
  2476.  
  2477. # As above, with TCP/IP added...
  2478. linuxtcp:
  2479.     $(MAKE) linux "KFLAGS = -DTCPSOCKET $(KFLAGS)"
  2480.  
  2481. linuxnet:
  2482.     $(MAKE) linux "KFLAGS = -DTCPSOCKET $(KFLAGS)"
  2483.  
  2484. # "make linux", but with static linking to avoid confusion with DLL versions.
  2485. # Use this to make a portable binary.  Adds about 100K to the executable.
  2486. linuxs:
  2487.     $(MAKE) linux "KFLAGS = $(KFLAGS)" "LNKFLAGS = -static"
  2488.  
  2489. # "make linuxtcp", but with static linking.
  2490. # Use this to make a portable binary.  Adds about 120K to the executable.
  2491. linuxtcps:
  2492.     $(MAKE) linux "KFLAGS = -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -static"
  2493.  
  2494. linuxtnets:
  2495.     $(MAKE) linux "KFLAGS = -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -static"
  2496.  
  2497. # LynxOS 2.2 with GCC compiler, TCP/IP and fullscreen display.
  2498. # Probably also works with Lynx 2.1, and maybe even Lynx 2.0.
  2499. # -X means use termios serial drivers rather than BSD4.3-style sgtty drivers.
  2500. # If you have trouble with this, try "make bsd KFLAGS=-DNOFDZERO".
  2501. lynx:
  2502.     @echo 'Making C-Kermit $(CKVER) for LynxOS 2.2 with TCP/IP'
  2503.     $(MAKE) wermit "CC = gcc" "CC2 = gcc" \
  2504.     "CFLAGS= -O -DPOSIX -DDIRENT -DSETREUID -DCK_CURSES -DTCPSOCKET \
  2505.     -DCK_ANSIC -DLYNXOS" "LNKFLAGS = -X" "LIBS = -lcurses -lbsd"
  2506.  
  2507. lynx22:
  2508.     $(MAKE) lynx "KFLAGS=$(KFLAGS)"
  2509.  
  2510. # LynxOS 2.1 with GCC compiler 1.40 and TCP/IP.
  2511. lynx21:
  2512.     @echo 'Making C-Kermit $(CKVER) for LynxOS 2.1 with TCP/IP'
  2513.     $(MAKE) kermit "CC = gcc" "CC2 = gcc" \
  2514.     "CFLAGS= -O -DSETREUID -DTCPSOCKET -DCK_ANSIC -DBSD4 -DLYNXOS" \
  2515.     "LIBS = -lbsd"
  2516.  
  2517. #Microport SV/AT for IBM PC/AT 286 and clones, System V R2.
  2518. #The -O flag may fail on some modules (like ckuus2.c), in which case you
  2519. #should compile them by hand, omitting the -O.  If you get "hash table
  2520. #overflow", try adding -DNODEBUG.
  2521. #Also, reportedly this compiles better with gcc than with cc.
  2522. mpsysv:
  2523.     @echo 'Making C-Kermit $(CKVER) for Microport SV/AT 286...'
  2524.     $(MAKE) wermit \
  2525.     "CFLAGS= -DATTSV $(KFLAGS) -O -Ml" "LNKFLAGS = -Ml"
  2526.  
  2527. #Microsoft "Xenix/286" e.g. for IBM PC/AT
  2528. xenix:
  2529.     @echo 'Making C-Kermit $(CKVER) for Xenix/286'
  2530.     $(MAKE) wermit \
  2531.     "CFLAGS= -DXENIX -DNOFILEH $(KFLAGS) -Dunix -F 3000 -i" \
  2532.     "LNKFLAGS = -F 3000 -i"
  2533.  
  2534. #SCO Xenix 2.2.1 for IBM PC, XT, PS2/30, or other 8088 or 8086 machine
  2535. #Should this not work, try some of the tricks from sco286.
  2536. #NOTE: -DRENAME is omitted for early SCO Xenix releases because it didn't
  2537. #exist, or its semantics were different from the later POSIX-compliant
  2538. #version of rename().
  2539. sco86:
  2540.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/86...'
  2541.     $(MAKE) wermit \
  2542.     "CFLAGS= -DXENIX -DNOFILEH $(KFLAGS) -Dunix -F 3000 -i -M0me" \
  2543.     "LNKFLAGS = -F 3000 -i -s -M0me" "LIBS = -lx"
  2544.  
  2545. #SCO Xenix/286 2.2.1, e.g. for IBM PC/AT, PS/2 Model 50, etc.
  2546. #Reportedly, this "make" can fail simply because of the size of this
  2547. #makefile.  If that happens, use "makeL", or edit out some of the
  2548. #other entries.  No debugging or character-set translation.
  2549. sco286:
  2550.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/286...'
  2551.     @echo 'If make fails, try using makeL.'
  2552.     $(MAKE) wermit \
  2553.     "CFLAGS= -s -O -LARGE -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP \
  2554.     -DNODEBUG -DNOTLOG -DNOCSETS \
  2555.     $(KFLAGS) -F 3000 -i -M2let32" \
  2556.     "LIBS = -lx" "LNKFLAGS = -s -O -LARGE -F 3000 -i -M2let32"
  2557.  
  2558. #SCO Xenix/286 2.2.1, e.g. for IBM PC/AT, PS/2 Model 50, etc.
  2559. #As above, but with HDBUUCP
  2560. sco286hdb:
  2561.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/286 with HDB UUCP...'
  2562.     @echo 'If make fails, try using makeL.'
  2563.     $(MAKE) wermit \
  2564.     "CFLAGS= -s -O -LARGE -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP \
  2565.     -DHDBUUCP $(KFLAGS) -F 3000 -i -M2let32" \
  2566.     "LIBS = -lx" "LNKFLAGS = -s -O -LARGE -F 3000 -i -M2let32"
  2567.  
  2568. #SCO Xenix/386 2.2.2
  2569. sco386:
  2570.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.2.2...'
  2571.     $(MAKE) wermit \
  2572.     "CFLAGS= -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP $(KFLAGS) -Otcl -M3e" \
  2573.     "LNKFLAGS = -s" "LIBS = -lx"
  2574.  
  2575. #SCO XENIX/386 2.2.3 with Excelan TCP/IP + curses.
  2576. sco386netc:
  2577.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.2.3 + Excelan TCP'
  2578.     $(MAKE) wermit \
  2579.     "CFLAGS= -I/usr/include/exos -DXENIX -DNOFILEH -DCK_CURSES -DDYNAMIC \
  2580.     -Dunix -DRDCHK -DNAP -DTCPSOCKET -DEXCELAN -DNOJC -DNOMKDIR $(KFLAGS) \
  2581.     -Otcl -M3e" \
  2582.     "LNKFLAGS = -s" "LIBS = -lc -lx -lsocket -lcurses -ltermcap"
  2583.  
  2584. #SCO XENIX/386 2.3.3 with gcc 1.37 or later...
  2585. sco386gcc:
  2586.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.3.3, gcc...'
  2587.     $(MAKE) wermit "CC = gcc" "CC2 = gcc" \
  2588.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  2589.     -DNOJC -DNODEBUG -DDYNAMIC $(KFLAGS) \
  2590.     -traditional -fpcc-struct-return -fstrength-reduce \
  2591.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  2592.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  2593.     -DM_SYSIII -DM_SYSV -DM_WORDSWAP -DM_XENIX \
  2594.     -DPWID_T=int " "LNKFLAGS = -s" "LIBS = -lx"
  2595.  
  2596. #As above, but with curses...
  2597. sco386gccc:
  2598.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.3.3, gcc...'
  2599.     $(MAKE) wermit "CC = gcc" "CC2 = gcc" \
  2600.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  2601.     -DNOJC -DNODEBUG -DDYNAMIC -DCK_CURSES $(KFLAGS) \
  2602.     -traditional -fpcc-struct-return -fstrength-reduce \
  2603.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  2604.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  2605.     -DM_SYSIII -DM_SYSV -DM_WORDSWAP -DM_XENIX \
  2606.     -DPWID_T=int " "LNKFLAGS = -s" "LIBS = -lx -lcurses -ltermlib"
  2607.  
  2608. #SCO UNIX (and ODT) entries...
  2609. #
  2610. #NOTE: All SCO UNIX entry LIBS should have "-lc_s -lc -lx" IN THAT ORDER (if
  2611. #shared C library is desired), or else "-lc -lx" IN THAT ORDER.  Use shared C
  2612. #libraries to save memory, but then don't expect to run the resulting binary
  2613. #on a different machine.  When using -lc_s, you must also use -lc, because the
  2614. #shared C library does not contain all of libc.a.  And in all cases, -lc must
  2615. #ALWAYS precede -lx.
  2616. #
  2617. #ANOTHER NOTE: -DRENAME is included in all SCO UNIX entries.  Remove it if it
  2618. #causes trouble.  No harm is done by removing it (see ckuins.doc).
  2619. #
  2620. #AND ANOTHER: In theory, it should be possible to run SCO UNIX binaries on
  2621. #SCO Xenix 2.3 and later.  In practice, this might not work because of the
  2622. #libraries, etc.  Also, don't add the -link -z switch (which is supposed to
  2623. #root out references to null pointers) because it makes UNIX binaries core
  2624. #dump when they are run under Xenix.
  2625.  
  2626. #NOTE: -Otcl removed and replaced by -O, since -Otcl produced incorrect code.
  2627. #SCO UNIX/386 3.2.0, 3.2.1, and SCO Xenix 2.3.x
  2628. sco3r2:
  2629.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386...'
  2630.     @echo 'Warning: If make blows up, edit the makefile to join'
  2631.     @echo 'the following three continued lines into one line.'
  2632.     @echo 'Also, remove -DRENAME if _rename unresolved at link time.'
  2633.     $(MAKE) wermit \
  2634.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  2635.     -DRENAME -DNOJC $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lc -lx"
  2636.  
  2637. # Exactly the same as above, but enables some special SCO-specific code
  2638. # that allegedly clears up some problems with HANGUP and with uugetty.
  2639. # For satisfactory operation on bidirectional lines that are handled by
  2640. # uugetty, you must install the kermit program with owner=group=uucp
  2641. # and permission 06755.
  2642. sco3r2x:
  2643.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386...'
  2644.     @echo 'Warning: If make blows up, edit the makefile to join'
  2645.     @echo 'the following four continued lines into one line.'
  2646.     @echo 'Also, remove -DRENAME if _rename unresolved at link time.'
  2647.     $(MAKE) wermit \
  2648.     "CFLAGS= -DSCO32 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  2649.     -DNOJC -DRENAME -DNOCOTFMC $(KFLAGS) -Otcl" \
  2650.     "LNKFLAGS = -s" "LIBS = -lc -lx"
  2651.  
  2652. #SCO UNIX/386 3.2.0 and SCO Xenix 2.3.x with Excelan TCP/IP support.
  2653. #In case of compilation or runtime problems, try adding
  2654. #"-DUID_T=int -DGID_T=int" to the CFLAGS.  If that doesn't work, try
  2655. #"-DUID_T=uid_t -DGID_T=gid_t".
  2656. sco3r2net:
  2657.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Excelan...'
  2658.     @echo 'Warning: If make blows up, edit the makefile to join'
  2659.     @echo 'the following three continued lines into one line.'
  2660.     $(MAKE) wermit \
  2661.     "CFLAGS= -I/usr/include/exos -DXENIX -DSVR3 -DDYNAMIC -DNOFILEH \
  2662.     -DHDBUUCP -DRDCHK -DNAP -DRENAME -DTCPSOCKET -DEXCELAN -DNOJC \
  2663.     $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lc -lx -lsocket"
  2664.  
  2665. #SCO UNIX/386 3.2.0 and SCO Xenix 2.3.x with Excelan TCP/IP support.
  2666. #As above, with curses library added for FULLSCREEN file transfer display.
  2667. #See comments for sco3r2net.
  2668. sco3r2netc:
  2669.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Excelan / curses...'
  2670.     @echo 'Warning: If make blows up, edit the makefile to join'
  2671.     @echo 'the following three continued lines into one line.'
  2672.     $(MAKE) wermit \
  2673.     "CFLAGS= -I/usr/include/exos -DXENIX -DSVR3 -DDYNAMIC -DNOFILEH \
  2674.     -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET -DEXCELAN -DNOJC $(KFLAGS) \
  2675.     -DRENAME -DCK_CURSES -O" "LNKFLAGS = -s" \
  2676.     "LIBS = -lc -lx -lsocket -lcurses -ltermcap"
  2677.  
  2678. #SCO UNIX 3.2.x or SCO Xenix 2.3.x with Racal InterLan TCP/IP support
  2679. # Extra compile flags for other version of Racal InterLan TCP/IP:
  2680. # Xenix286/NP621-286, use -Ml -DPARAMH -DINTERLAN -Di286 -DSYSV
  2681. # Xenix386/NP621-386, use -DPARAMH -DINTERLAN -Di386 -DSYSV
  2682. # ISC386ix/NP622I, use -DSYSV -Di386
  2683. # SCO Unix3.2/NP622S, use -DSYSV -Di386 -DSCO_UNIX
  2684. # AT&T SVR3.2/NP622A, use -DSYSV -Di386 -DATT
  2685. sco3r2netri:
  2686.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Racal InterLan...'
  2687.     @echo 'Warning: If make blows up, edit the makefile to join'
  2688.     @echo 'the following five continued lines into one line.'
  2689.     $(MAKE) wermit \
  2690.     "CFLAGS= -I/usr/include/interlan -DXENIX -DNOFILEH -DHDBUUCP \
  2691.     -DSVR3 -DRDCHK -DNAP -DTCPSOCKET -DPARAMH -DINTERLAN -Di386 -DSYSV \
  2692.     -DRENAME -DNOJC $(KFLAGS) -Otcl -M3e" "LNKFLAGS = -s" \
  2693.     "LIBS = -lc -lx -ltcp"
  2694.  
  2695. # SCO XENIX/386 2.3.3 SysV with SCO TCP/IP
  2696. # System V STREAMS TCP developed by Lachman Associates Inc and
  2697. # Convergent Technologies.
  2698. # -DRENAME removed since some reports indicate it is not supported
  2699. # (whereas others say it is.)
  2700. sco3r2lai:
  2701.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX/386 2.3.3 + TCP/IP...'
  2702.     @echo 'Warning: If make blows up, edit the makefile to join'
  2703.     @echo 'the following four continued lines into one line.'
  2704.     $(MAKE) wermit \
  2705.     "CFLAGS= -DLAI_TCP -Di386 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK \
  2706.     -DNAP -DTCPSOCKET -DPWID_T=int $(KFLAGS) -Otcl -i -M3e" \
  2707.     "LNKFLAGS = -i -s" "LIBS = -lc -lx -lsocket"
  2708.  
  2709. sco3r2laic:
  2710.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX/386 2.3.3 + TCP/IP...'
  2711.     @echo 'Warning: If make blows up, edit the makefile to join'
  2712.     @echo 'the following five continued lines into one line.'
  2713.     $(MAKE) wermit \
  2714.     "CFLAGS= -DLAI_TCP -Di386 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK \
  2715.     -DNAP -DTCPSOCKET -DDYNAMIC -DCK_ANSIC -DCK_CURSES -DM_TERMINFO \
  2716.     -DPWID_T=int $(KFLAGS) -Otcl -i -M3e" \
  2717.     "LNKFLAGS = -i -s" "LIBS = -ltinfo -lc -lx -lsocket"
  2718.  
  2719. #SCO UNIX/386 3.2v2 (POSIX job control), shared libraries.
  2720. sco3r22:
  2721.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 ...'
  2722.     @echo 'Warning: If make blows up, edit the makefile to join'
  2723.     @echo 'the following three continued lines into one line.'
  2724.     make wermit \
  2725.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DRENAME \
  2726.     -DPID_T=pid_t -DPWID_T=int -DDIRENT -DDYNAMIC $(KFLAGS) -O" \
  2727.     "LNKFLAGS = -s" "LIBS = -lc_s -lc -lx"
  2728.  
  2729. #SCO UNIX/386 3.2v2, POSIX job control, fullscreen file transfer display,
  2730. #dynamic memory allocation, shared C library
  2731. sco3r22c:
  2732.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 ...'
  2733.     @echo 'Warning: If make blows up, edit the makefile to join'
  2734.     @echo 'the following four continued lines into one line.'
  2735.     make wermit \
  2736.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  2737.     -DCK_CURSES -DDYNAMIC -DDIRENT -DRENAME \
  2738.     -DPID_T=pid_t -DPWID_T=int $(KFLAGS) -O" \
  2739.     "LNKFLAGS = -s" "LIBS = -lcurses -lc_s -lc -lx"
  2740.  
  2741. #SCO UNIX/386 3.2v2 with gcc 1.40 or later (POSIX job control)
  2742. sco3r22gcc:
  2743.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2, gcc'
  2744.     @echo 'Warning: If make blows up, edit the makefile to join'
  2745.     @echo 'the following seven continued lines into one line.'
  2746.     make wermit "CC = gcc" \
  2747.     "CFLAGS= -O -DPOSIX -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  2748.     -DRENAME -traditional -fpcc-struct-return -fstrength-reduce \
  2749.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  2750.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  2751.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  2752.     -DPID_T=pid_t -DPWID_T=int $(KFLAGS) " "LNKFLAGS = -s" \
  2753.     "LIBS = -lc_s -lc -lx"
  2754.  
  2755. #SCO UNIX/386 3.2v2 (ODT 1.1) (POSIX job control) with SCO TCP/IP, shared libs
  2756. sco3r22net:
  2757.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2.2 + TCP/IP...'
  2758.     @echo 'Warning: If make blows up, edit the makefile to join'
  2759.     @echo 'the following three continued lines into one line.'
  2760.     make wermit \
  2761.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET \
  2762.     -DRENAME -DPID_T=pid_t -DPWID_T=int -DDIRENT -DDYNAMIC $(KFLAGS) -O" \
  2763.     "LNKFLAGS = -s" "LIBS = -lsocket -lc_s -lc -lx"
  2764.  
  2765. #As above, but with curses for fullscreen file transfer display.
  2766. sco3r22netc:
  2767.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 + TCP/IP...'
  2768.     @echo 'Warning: If make blows up, edit the makefile to join'
  2769.     @echo 'the following three continued lines into one line.'
  2770.     make wermit "CFLAGS= \
  2771.     -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET -DRENAME \
  2772.     -DCK_CURSES -DDIRENT -DDYNAMIC -DPID_T=pid_t -DPWID_T=int -O" \
  2773.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  2774.  
  2775. #SCO UNIX/386 3.2v4 (POSIX job control), curses, ANSI C compilation,
  2776. #<dirent.h> (EAFS) file system.
  2777. sco32v4:
  2778.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  2779.     @echo 'If you get _ftime redefinition_ complaint,'
  2780.     @echo 'Try adding -DODT30 to CFLAGS.'
  2781.     make wermit \
  2782.     "CFLAGS= -DXENIX -DSVR3 -DDIRENT -DNOFILEH -DHDBUUCP -DCK_POLL -DNAP \
  2783.     -DRENAME -DCK_CURSES -DM_TERMINFO -DNOANSI -DPID_T=pid_t -DPWID_T=int \
  2784.     -DNOSETBUF -DDYNAMIC -DSVR3JC -DCK_RTSCTS $(KFLAGS) -O" \
  2785.     "LNKFLAGS = -s" "LIBS = -lcurses -lc_s -lc -lx"
  2786.  
  2787. #SCO UNIX/386 3.2v4 with gcc 1.40 or later, POSIX job control
  2788. #gcc 1.40 or later
  2789. sco32v4gcc:
  2790.     make wermit "CC = gcc" \
  2791.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DCK_POLL -DNAP \
  2792.     -DNOANSI -DRENAME -DDIRENT -DCK_CURSES -DM_TERMINFO -DNOSETBUF \
  2793.     -traditional -fpcc-struct-return -fstrength-reduce \
  2794.     -D_KR -D_NO_PROTOTYPE -D_SVID \
  2795.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  2796.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  2797.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  2798.     -DPID_T=pid_t -DPWID_T=int -DSVR3JC -DCK_RTSCTS $(KFLAGS) " \
  2799.     "LNKFLAGS = -s" "LIBS = -lcurses -lc_s -lc -lx"
  2800.  
  2801. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  2802. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  2803. #gcc 1.40 or later
  2804. sco32v4netgcc:
  2805.     make wermit "CC = gcc" \
  2806.     "CFLAGS= -O2 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DCK_POLL -DNAP \
  2807.     -DNOANSI -DRENAME -DTCPSOCKET -DDIRENT -DCK_CURSES -DM_TERMINFO \
  2808.     -DNOSETBUF -traditional -fpcc-struct-return -fstrength-reduce \
  2809.     -D_KR -D_NO_PROTOTYPE -D_SVID \
  2810.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  2811.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  2812.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  2813.     -DPID_T=pid_t -DPWID_T=int -DSVR3JC -DCK_RTSCTS $(KFLAGS) " \
  2814.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  2815.  
  2816. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  2817. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  2818. sco32v4net:
  2819.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  2820.     @echo 'If you get _ftime redefinition_ complaint,'
  2821.     @echo 'use make sco_odt30.'
  2822.     $(MAKE) wermit \
  2823.     "CFLAGS= -DXENIX -DSVR3 -DDIRENT -DNOFILEH -DHDBUUCP -DRENAME \
  2824.     -DDYNAMIC -DTCPSOCKET -DCK_ANSIC -DCK_CURSES -DNAP -D_IBCS2 -DCK_POLL \
  2825.     -DNOSETBUF -DPID_T=pid_t -DPWID_T=int -DSVR3JC -DCK_RTSCTS -O \
  2826.     $(KFLAGS)" \
  2827.     "LNKFLAGS = $(LNKFLAGS) -s" \
  2828.     "LIBS = $(LIBS) -lcurses -lsocket -lc_s -lc -lx"
  2829.  
  2830. # Add -DCK_LINGER to KFLAGS if desired - see ckcnet.c.
  2831. sco32v4netnd:
  2832.     @echo sco32v4net with no debug
  2833.     $(MAKE) "MAKE=$(MAKE)" sco32v4net \
  2834.     "KFLAGS=$(KFLAGS) -DNODEBUG -DNOTLOG" "LIBS=$(LIBS)"
  2835.  
  2836. sco3r2netnd:
  2837.     @echo sco32v4netnd built for SCO XENIX 2.3 under SCO UNIX...
  2838.     @echo   requires copying /lib/386/Slibc.a to /lib/386/Slibc_s.a and
  2839.     @echo   getting /lib/386/Slibsocket.a from a XENIX devkit.
  2840.     @echo   WARNING: poll/CK_POLL supported only on XENIX 2.3.4
  2841.     echo    For earlier XENIX systems, replace CK_POLL with RDCHK.
  2842.     $(MAKE) "MAKE=$(MAKE)" sco32v4netnd \
  2843.     "KFLAGS=$(KFLAGS) -x2.3 -DNORENAME" "LNKFLAGS = $(LNKFLAGS) -x2.3" \
  2844.     "LIBS=-ldir $(LIBS)"
  2845.  
  2846. sco_odt30:
  2847.     @echo SCO ODT 3.0
  2848.     $(MAKE) "MAKE=$(MAKE)" sco32v4net "KFLAGS=$(KFLAGS) -DODT30"
  2849.  
  2850. #PC/IX, Interactive Corp System III for IBM PC/XT
  2851. pcix:
  2852.     @echo 'Making C-Kermit $(CKVER) for PC/IX...'
  2853.     $(MAKE) wermit \
  2854.     "CFLAGS= -DPCIX -DISIII $(KFLAGS) -Dsdata=sdatax -O -i" "LNKFLAGS = -i"
  2855.  
  2856. #Integrated Solutions Inc V8S VME 68020
  2857. isi:
  2858.     @echo Making C-Kermit $(CKVER) for 4.2BSD on ISI...
  2859.     $(MAKE) wermit "CC = cc" \
  2860.     "CFLAGS= -DBSD4 -DTCPSOCKET -DINADDRX -DDCLPOPEN -DDEBUG -DNOSETREU \
  2861.     -DCK_CURSES $(KFLAGS)" "LIBS = -lcurses -ltermcap"
  2862.  
  2863. #Interactive Corp System III port in general --
  2864. #is3: (very old, probably not sufficient for 5A)
  2865. #    @echo 'Making C-Kermit $(CKVER) for Interactive System III...'
  2866. #    make wermit "CFLAGS = -DISIII -Ddata=datax -O -i" "LNKFLAGS = -i"
  2867. #The following should work, use it if you don't have gcc.
  2868. #Use is3gcc if you have gcc.
  2869. is3:
  2870.     @echo 'Making C-Kermit $(CKVER) for Interactive System III...'
  2871.     $(MAKE) wermit \
  2872.     "CFLAGS= -DISIII $(KFLAGS) -Ddata=datax -DNAP -DHDBUUCP
  2873.     -DLOCK_DIR=\"/usr/spool/uucp\" -DSIGTYP=void -O -i' "LNKFLAGS = -i"
  2874.  
  2875. #Interactive UNIX System V R3, no network support.  Uses <dirent.h> and Honey
  2876. #DanBer UUCP.  If this entry does not compile correctly, try any or all of the
  2877. #following.  These suggestions also apply more or less to the other is5r3xxx
  2878. #entries that follow this one.
  2879. # . Remove the UID_T and GID_T definitions, or change them as required.
  2880. # . Change -DDIRENT to -DSDIRENT.
  2881. # . Add -DSIGTYP=void.
  2882. # . Remove -g from LNKFLAGS.
  2883. # . Add -DNOANSI to remove compiler complaints about ANSI C constructions
  2884. # . Add other -DNOxxx's to save space (e.g. -DNOCSETS)
  2885. # See the next few makefile entries for related examples.
  2886. is5r3:
  2887.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix or later...'
  2888.     @echo 'If this does not work please read the makefile entry.'
  2889.     $(MAKE) wermit \
  2890.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -g -DNOCSETS \
  2891.     -DUID_T=ushort -DGID_T=ushort -DDYNAMIC -DI386IX $(KFLAGS)" \
  2892.     "LNKFLAGS = -g"
  2893.  
  2894. #Interactive Corp System System V R3 with gcc
  2895. is3gcc:
  2896.     @echo 'Making C-Kermit $(CKVER) for Interactive System V R3 / gcc...'
  2897.     $(MAKE) wermit CC=gcc CC2=gcc \
  2898.     'CFLAGS = -D_SYSV3 -DISIII -Ddata=datax -DNAP -DHDBUUCP \
  2899.     -DLOCK_DIR=\"/usr/spool/uucp\" -DSIGTYP=void -O' "LNKFLAGS ="
  2900.  
  2901. #Interactive UNIX System V R3, POSIX variant.  Untested.
  2902. #Uses dirent.h and Honey DanBer uucp.  Read comments in is5r3 entry.
  2903. is5r3p:
  2904.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix or later...'
  2905.     $(MAKE) wermit \
  2906.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -g -DNOCSETS \
  2907.     -DDYNAMIC -DI386IX -DPOSIX $(KFLAGS)" "LNKFLAGS=" "LIBS=-lcposix"
  2908.  
  2909. #Interactive UNIX SVR3 2.2.1, job control, curses, no net, gcc.
  2910. is5r3gcc:
  2911.     $(MAKE) wermit CC=gcc CC2=gcc \
  2912.     "CFLAGS=-g -posix -DSVR3 -DDIRENT \
  2913.     -DHDBUUCP -O -DNOCSETS -DDYNAMIC -DI386IX -DSVR3JC -DCK_CURSES \
  2914.     $(KFLAGS)" LNKFLAGS="-posix" LIBS="-lcurses -lc_s"
  2915.  
  2916. #Interactive UNIX System V R3 with TCP/IP network support.
  2917. #Needs -linet for net functions.  signal() is void rather than int.
  2918. #Uses dirent.h and Honey DanBer uucp. Read comments in is5r3 entry.
  2919. #Also see is5r3net2 if you have trouble with this entry.
  2920. is5r3net:
  2921.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix...'
  2922.     @echo 'If this does not work please read the makefile entry.'
  2923.     $(MAKE) wermit \
  2924.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  2925.     -DI386IX $(KFLAGS) -O" "LIBS = -linet"
  2926.  
  2927. #Interactive UNIX System V R3, no job control, signal() void rather than int.
  2928. #Uses dirent.h and Honey DanBer uucp.  Needs -linet for net functions.
  2929. #Read comments in is5r3 entry.  Use this entry if is5r3net fails.
  2930. #Saves some space by stripping (-s) and using shared library (-lc_s).
  2931. is5r3net2:
  2932.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix...'
  2933.     $(MAKE) wermit \
  2934.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DTCPSOCKET -DNOJC \
  2935.     -DSIGTYP=void -DNOANSI -DI386IX $(KFLAGS) -O" \
  2936.     "LNKFLAGS= -s" "LIBS = -linet -lc_s"
  2937.  
  2938. #Interactive UNIX System V R3 (version 2.2 or later) with job control & curses.
  2939. #Uses dirent.h and Honey DanBer UUCP.
  2940. is5r3jc:
  2941.     @echo 'Making C-Kermit $(CKVER) for Interactive Unix 2.2 or later...'
  2942.     $(MAKE) wermit \
  2943.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS \
  2944.     -DUID_T=ushort -DGID_T=ushort -DDYNAMIC -DI386IX -DSVR3JC -DCK_CURSES \
  2945.     $(KFLAGS)" "LNKFLAGS = -s" "LIBS=-lcurses -lc_s"
  2946.  
  2947. #Sunsoft/Interactive UNIX System V R3 (version 2.2 or later)
  2948. #with job control, curses, and TCP/IP networking.
  2949. #Uses dirent.h and Honey DanBer UUCP.
  2950. is5r3netjc:
  2951.     @echo 'Making C-Kermit $(CKVER) for Interactive Unix 2.2 or later...'
  2952.     $(MAKE) wermit \
  2953.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS \
  2954.     -DUID_T=ushort -DGID_T=ushort -DDYNAMIC -DI386IX -DSVR3JC -DCK_CURSES \
  2955.     -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s" "LIBS=-linet -lcurses -lc_s"
  2956.  
  2957. #Masscomp System III
  2958. rtu:
  2959.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU System III...'
  2960.     $(MAKE) wermit \
  2961.     "CFLAGS= -UFIONREAD -DATTSV $(KFLAGS) -O" "LNKFLAGS =" "LIBS= -ljobs"
  2962.  
  2963. #Masscomp/Concurrent RTU 4.0 or later, Berkeley environment.
  2964. #Includes <ndir.h> = /usr/include/ndir.h
  2965. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  2966. rtubsd:
  2967.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.1A...'
  2968.     ucb make wermit \
  2969.     "CFLAGS= -DBSD4 -DRTU -DNDIR -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  2970.     "LIBS = -lndir"
  2971.  
  2972. #Masscomp/Concurrent RTU 4.0 or later, same as above,
  2973. #Includes "usr/lib/ndir.h"
  2974. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  2975. rtubsd2:
  2976.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.1A...'
  2977.     ucb make wermit \
  2978.     "CFLAGS= -DBSD4 -DRTU -DXNDIR -DHDBUUCP $(KFLAGS)" \
  2979.     "LIBS = -lndir"
  2980.  
  2981. #Masscomp/Concurrent RTU 4.0 or later, same as above,
  2982. #Includes <sys/ndir.h>
  2983. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  2984. rtubsd3:
  2985.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.x BSD...'
  2986.     ucb make wermit "CFLAGS= -DBSD4 -DRTU -DHDBUUCP $(KFLAGS)" \
  2987.     "LIBS = -lndir"
  2988.  
  2989. #Masscomp/Concurrent RTU 4.0 or later, System V R2, using <dirent.h>.
  2990. #In case of problems, add back the -DRTU switch.
  2991. #In case -DTCPSOCKET gives trouble, remove it.
  2992. rtus5:
  2993.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.x...'
  2994.     $(MAKE) wermit \
  2995.     "CFLAGS= -DATTSV -DHDBUUCP -DDIRENT -DTCPSOCKET -DDYNAMIC \
  2996.     -DNOSETBUF $(KFLAGS)"
  2997.  
  2998. #Masscomp/Concurrent RTU 4.x, System V R3, using <dirent.h>.
  2999. #Use this one if rtus5 gives warnings about pointer type mismatches.
  3000. #In case of problems, add back the -DRTU switch.
  3001. rtus5r3:
  3002.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU Sys V R3...'
  3003.     $(MAKE) wermit "CFLAGS= -DSVR3 -DHDBUUCP -DDIRENT $(KFLAGS)"
  3004.  
  3005. #DEC Pro-3xx with Pro/Venix V1.0 or V1.1
  3006. # Requires code-mapping on non-I&D-space 11/23 processor, plus some
  3007. # fiddling to get interrupt targets into resident code section.
  3008. # This almost certainly doesn't work any more.
  3009. provx1:
  3010.     @echo 'Making C-Kermit $(CKVER) for DEC Pro-3xx, Pro/Venix 1.x...'
  3011.     $(MAKE) wart "CFLAGS= -DPROVX1 $(KFLAGS)" "LNKFLAGS= "
  3012.     $(MAKE) wermit "CFLAGS = -DPROVX1 -DNOFILEH -md780" \
  3013.         "LNKFLAGS= -u _sleep -lc -md780"
  3014.  
  3015. #Nixdorf Targon/31.
  3016. #AT&T UNIX System V R3, signal() is void rather than int.
  3017. #Uses dirent.h without Honey DanBer uucp.
  3018. t31tos40x:
  3019.     @echo 'Making C-Kermit $(CKVER) for Targon/31 with TOS 4.0.xx...'
  3020.         $(MAKE) wermit \
  3021.         "CFLAGS= -DSVR3 -DDIRENT -DDYNAMIC $(KFLAGS) -O" \
  3022.         "LNKFLAGS="
  3023.  
  3024. #NCR Tower 1632, OS 1.02
  3025. tower1:
  3026.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 1632, OS 1.02...'
  3027.     $(MAKE) wermit "CFLAGS= -DTOWER1 $(KFLAGS)"
  3028.  
  3029. #NCR Tower 32, OS Release 1.xx.xx
  3030. tower32-1:
  3031.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 Rel 1 System V R2...'
  3032.     @echo 'Add KFLAGS=-DISDIRBUG if you get errors about S_ISREG/S_ISDIR.'
  3033.     $(MAKE) wermit \
  3034.     "CFLAGS = -DATTSV -DDYNAMIC $(KFLAGS) -O" "LNKFLAGS = -n"
  3035.  
  3036. #NCR Tower 32, OS Release 2.xx.xx
  3037. tower32-2:
  3038.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 Rel 2 System V R2...'
  3039.     $(MAKE) wermit \
  3040.     "CFLAGS = -DATTSV -DHDBUUCP -DDYNAMIC $(KFLAGS) -O2" \
  3041.     "LNKFLAGS = -n"
  3042.  
  3043. #NCR Tower 32, OS Releases based on System V R3
  3044. #Don't add -DNAP (doesn't work right) or -DRDCHK (not available in libc).
  3045. tower32:
  3046.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 System V R3...'
  3047.     $(MAKE) wermit \
  3048.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DNOSYSIOCTLH $(KFLAGS) \
  3049.     -DUID_T=ushort -DGID_T=ushort -O1"
  3050.  
  3051. #NCR Tower 32, OS Releases based on System V R3
  3052. tower32g:
  3053.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 System V R3, gcc...'
  3054.     $(MAKE) wermit "CC = gcc" \
  3055.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DNOSYSIOCTLH $(KFLAGS) \
  3056.     DUID_T=ushort -DGID_T=ushort -O -fstrength-reduce -fomit-frame-pointer"
  3057.  
  3058. #Fortune 32:16, For:Pro 1.8 (mostly like 4.1bsd)
  3059. ft18:
  3060.     @echo 'Making C-Kermit $(CKVER) for Fortune 32:16 For:Pro 1.8...'
  3061.     $(MAKE) wermit \
  3062.     "CFLAGS= -DNODEBUG -DBSD4 -DFT18 -DNOFILEH $(KFLAGS) \
  3063.     -DPID_T=short"
  3064.  
  3065. #Fortune 32:16, For:Pro 2.1 (mostly like 4.1bsd).
  3066. #The modules that break the optimizer are compiled separately.
  3067. ft21:
  3068.     @echo 'Making C-Kermit $(CKVER) for Fortune 32:16 For:Pro 2.1...'
  3069.     $(MAKE) ckuusx.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  3070.     -SYM 800  -DDYNAMIC -DNOSETBUF -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  3071.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  3072.     $(MAKE) ckuxla.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  3073.     -SYM 800  -DDYNAMIC -DNOSETBUF -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  3074.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  3075.     $(MAKE) ckudia.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  3076.     -SYM 800  -DDYNAMIC -DNOSETBUF -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  3077.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  3078.     $(MAKE) wermit \
  3079.     "CFLAGS= -O -DNODEBUG -DBSD4 -DFT21 -DNOFILEH -SYM 800 \
  3080.     -DDYNAMIC -DNOSETBUF -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  3081.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  3082.  
  3083. #Valid Scaldstar
  3084. #Berkeleyish, but need to change some variable names.
  3085. valid:
  3086.     @echo 'Making C-Kermit $(CKVER) for Valid Scaldstar...'
  3087.     $(MAKE) wermit \
  3088.     "CFLAGS= -DBSD4 -DNODEBUG -DNOTLOG -Dcc=ccx -DFREAD=1 $(KFLAGS)"
  3089.  
  3090. #IBM IX/370 on IBM 370 Series mainframes
  3091. #Mostly like sys3, but should buffer packets.
  3092. ix370:
  3093.     @echo 'Making C-Kermit $(CKVER) for IBM IX/370...'
  3094.     $(MAKE) wermit "CFLAGS = -DIX370 -DATTSV $(KFLAGS) -i -O" \
  3095.     "LNKFLAGS = -i"
  3096.  
  3097. #Amdahl UTS 2.4 on IBM 370 series compatible mainframes.
  3098. #Mostly like V7, but can't do initrawq() buffer peeking.
  3099. uts24:
  3100.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTS 2.4...'
  3101.     $(MAKE) wermit "CFLAGS=-DV7 -DPROCNAME=\\\"$(PROC)\\\" \
  3102.     -DUTS24 -DBOOTNAME=\\\"$(BOOTFILE)\\\" -DNPROCNAME=\\\"$(NPROC)\\\" \
  3103.     -DNPTYPE=$(NPTYPE) $(DIRECT) $(KFLAGS)"
  3104.  
  3105. #Amdahl UTSV UNIX System V = System V R2 or earlier.
  3106. utsv:
  3107.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTSV...'
  3108.     $(MAKE) wermit \
  3109.     "CFLAGS = -DUTSV $(KFLAGS) -i -O" "LNKFLAGS = -i"
  3110.  
  3111. #Amdahl UTSV UNIX System V = System V R2 or earlier, with TCP sockets library.
  3112. utsvtcp:
  3113.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTSV w/tcp...'
  3114.     $(MAKE) wermit "CFLAGS = \
  3115.     -DTCPSOCKET -DUTSV $(KFLAGS) -i -O" "LNKFLAGS = -i" \
  3116.     "LIBS = -lsocket"
  3117.  
  3118. #BBN C/70 with IOS 2.0
  3119. #Mostly Berkeley-like, but with some ATTisms
  3120. c70:
  3121.     @echo 'Making C-Kermit $(CKVER) for BBN C/70 IOS 2.0...'
  3122.     $(MAKE) wermit "CFLAGS= -DBSD4 -DC70 $(KFLAGS)"
  3123.  
  3124. #Zilog ZEUS 3.21
  3125. zilog:
  3126.     @echo 'Making C-Kermit $(CKVER) for Zilog Zeus 3.21...'
  3127.     $(MAKE) wermit \
  3128.     "CFLAGS = -DATTSV -DZILOG -DNODEBUG $(KFLAGS) -i -O" \
  3129.     "LNKFLAGS = -i -lpw"
  3130.  
  3131. #Whitechapel MG-1 Genix 1.3
  3132. white:
  3133.     @echo 'Making C-Kermit $(CKVER) for Whitechapel MG-1 Genix 1.3...'
  3134.     @touch ckcpro.c
  3135.     $(MAKE) wermit "CFLAGS= -DBSD4 -Dzkself()=0  $(KFLAGS)"
  3136.  
  3137. #Pixel 1000
  3138. pixel:
  3139.     @echo 'Making C-Kermit $(CKVER) for Pixel 1000...'
  3140.     $(MAKE) wermit "CFLAGS= -DBSD4 -Dzkself()=0 $(KFLAGS)"
  3141.  
  3142. ptx:
  3143.     $(MAKE) "MAKE=$(MAKE)" dynixptx12
  3144.  
  3145. #CDC VX/VE 5.2.1
  3146. vxve:
  3147.     @echo 'Making C-Kermit $(CKVER) for CDC VX/VE 5.2.1...'
  3148.     $(MAKE) wermit \
  3149.     "CFLAGS = -DATTSV -DVXVE -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  3150.     "LNKFLAGS = -i"
  3151.  
  3152. #Tandy 16/6000 with Xenix 3.0
  3153. #Add more -DNOxxx options to remove features if program won't load.
  3154. #Successful operation is a function of program size, physical memory,
  3155. #available swap space, etc.  The following stripped-down configuration
  3156. #seems to work on most Tandy 6000s.
  3157. trs16:
  3158.     @echo 'Making C-Kermit $(CKVER) for Tandy 16/16000, Xenix 3.0...'
  3159.     $(MAKE) wermit \
  3160.     "CFLAGS = -DATTSV -DTRS16 -DNOMKDIR -DDCLPOPEN -DCK_CURSES -DDYNAMIC \
  3161.     -DNODEBUG -DNOTLOG -DNOHELP -DNOSCRIPT -DNOCSETS \
  3162.     $(KFLAGS) -O" "LIBS= -lcurses -ltermcap" "LNKFLAGS = -n -s"
  3163.  
  3164. #DIAB DS90 or LUXOR ABC-9000 with pre-5.2 DNIX.  Sys V with nap() and rdchk().
  3165. # nd = no opendir(), readdir(), closedir(), etc.
  3166. # Some of the modules fail to compile with -O.
  3167. dnixnd:
  3168.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with very old DNIX 5.2.'
  3169.     $(MAKE) wermit \
  3170.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDYNAMIC -DDCLPOPEN \
  3171.     -U__STDC__ $(KFLAGS)"
  3172.  
  3173. #DIAB DS90 with DNIX 5.2.  Sys V with nap() and rdchk().
  3174. # This one has opendir(), readdir(), closedir(), etc.
  3175. # Some of the modules fail to compile with -O.
  3176. dnix:
  3177.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with old DNIX 5.2...'
  3178.     $(MAKE) wermit \
  3179.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDIRENT -DDYNAMIC  \
  3180.     -U__STDC__ $(KFLAGS)"
  3181.  
  3182. #DIAB DS90 with DNIX 5.2.  Sys V with nap() and rdchk().
  3183. # As above, but with curses and TCP/IP.
  3184. # You might get complaints about redefinition of O_RDONLY, etc, because
  3185. # of bugs in the DNIX header files, which can be fixed by adding #ifndef...
  3186. # around the offending definitions in the header files.
  3187. dnixnetc:
  3188.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with old DNIX 5.2...'
  3189.     $(MAKE) wermit \
  3190.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDIRENT -DDYNAMIC  \
  3191.     -DTCPSOCKET -DCK_CURSES -I/usr/include/bsd -U__STDC__ $(KFLAGS)" \
  3192.     "LIBS = -ln -lcurses"
  3193.  
  3194. #DIAB DS90 with DNIX 5.3 or later, with HDB UUCP, nap() and rdchk().
  3195. dnix5r3:
  3196.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  3197.     @echo 'with Honey DanBer UUCP'
  3198.     $(MAKE) wermit \
  3199.     "CFLAGS = -DSVR3 -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  3200.     -DDYNAMIC -DCK_CURSES -DRENAME $(KFLAGS) -O" "LIBS= -lcurses"
  3201.  
  3202. #DIAB DS90 with DNIX 5.3 or later, with HDB UUCP, nap() and rdchk() + TCP/IP
  3203. dnix5r3net:
  3204.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  3205.     @echo 'with Honey DanBer UUCP and TCP/IP'
  3206.     $(MAKE) wermit \
  3207.     "CFLAGS = -DSVR3 -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  3208.     -DTCPSOCKET -DDYNAMIC -DCK_CURSES -DRENAME $(KFLAGS) -O \
  3209.     -I/usr/include/bsd" "LIBS = -ln -lcurses"
  3210.  
  3211. #DIAB DS90 with DNIX 5.3 2.2 or later, with HDB UUCP, nap() and rdchk(),
  3212. #ANSI C compilation and libraries.
  3213. #Note that for DNIX 5.3 2.2 you have to correct a bug in /usr/include/stdlib.h:
  3214. #change "extern    void free(char *str);"
  3215. #to     "extern void free(void *str);"
  3216. #NOTE: This bug is reportedly fixed in DNIX 5.3 2.2.1.
  3217. #Should you get fatal errors caused by harmless pointer-type mismatches,
  3218. #like between signed and unsigned char, just remove -X7.
  3219. dnix5r3ansi:
  3220.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  3221.     @echo 'with ANSI C Honey DanBer UUCP'
  3222.     $(MAKE) wermit \
  3223.     "CFLAGS = -DSVR3 -DDIAB -DHDBUUCP -DNAP -DRDCHK -DDIRENT -DDYNAMIC \
  3224.     -DCK_ANSILIBS -DCK_CURSES -DRENAME -O -X7 -X9 $(KFLAGS)" \
  3225.     "LIBS= -lcurses"
  3226.  
  3227. #DIAB DS90 with DNIX 5.3 2.2 or later, with HDB UUCP, nap() and rdchk(),
  3228. # + TCP/IP, ANSI C compilation and libraries.
  3229. #Should you get fatal errors caused by harmless pointer-type mismatches,
  3230. #like between signed and unsigned char, just remove -X7.
  3231. dnix5r3ansinet:
  3232.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  3233.     @echo 'with ANSI C Honey DanBer UUCP'
  3234.     $(MAKE) wermit \
  3235.     "CFLAGS = -DSVR3 -DDIAB -DHDBUUCP -DNAP -DRDCHK -DDIRENT -DDYNAMIC \
  3236.     -DTCPSOCKET -DCK_ANSILIBS -DCK_CURSES -DRENAME -O -X7 -X9 $(KFLAGS) \
  3237.     -I/usr/include/bsd" "LIBS= -ln -lcurses"
  3238.  
  3239. #QNX 4.2.1 and above, 32-bit version, Watcom C16 9.5, fully configured,
  3240. # except no job control, because QNX 4.2.1 does not support it.
  3241. # -Oatx optimizes to favor speed over size: loop optimization, inline fn's.
  3242. # -Os favors size over speed.  The size difference is about 30-40K.
  3243. # -NOUUCP is included because QNX is shipped without UUCP and no native
  3244. # QNX software uses UUCP lockfiles.  Remove -DNOUUCP if you want to use
  3245. # UUCP lockfiles for exclusive access to dialout devices.
  3246. qnx32:
  3247.     @echo 'Making C-Kermit $(CKVER) for QNX 4.2.1, 32-bit...'
  3248.     $(MAKE) wermit \
  3249.     "CFLAGS = -DQNX -DDYNAMIC -DKANJI -DTCPSOCKET -DCK_CURSES -DNOUUCP \
  3250.     -DCK_WREFRESH -DCK_REDIR -DSELECT -DCK_RTSCTS -DNOJC -DNOSETBUF \
  3251.     -DCK_ANSIC -DPID_T=pid_t -Oatx -zc $(KFLAGS)" \
  3252.     "LIBS= -lcurses -ltermcap"
  3253.  
  3254. #Synonym for qnx32.
  3255. qnx:
  3256.     $(MAKE) qnx32 "KFLAGS=$(KFLAGS)"
  3257.  
  3258. #QNX 4.2.1, 16-bit version, Watcom C 8.5 & above, on i286 PCs & above.
  3259. #Stacksize 26000, objects larger than 100 bytes in their own segments,
  3260. #string constants to the codesegment, etc.  Fully configured except NOJC.
  3261. #This entry works for building a 16-bit executable on a 32-bit system, but
  3262. #has not been tested on a 16-bit system.  Uses large memory model, links
  3263. #explicitly with large-model sockets library.  Correct-model curses library is
  3264. #chosen automatically.  See comment in qnx32 entry about -DNOUUCP.
  3265. qnx16:
  3266.     @echo 'Making C-Kermit $(CKVER) for QNX 4.2.1, 16-bit...'
  3267.     $(MAKE) wermit \
  3268.     "LNKFLAGS = -2 -ml -N 26000" \
  3269.     "CFLAGS = -2 -Oatx -zc -zt100 -ml -DNOSETBUF -DNOUUCP \
  3270.     -DQNX -DDYNAMIC -DCK_REDIR -DSELECT -DNOJC -DTCPSOCKET -DCK_RTSCTS \
  3271.     -DCK_CURSES -DCK_WREFRESH -DCK_ANSIC -DKANJI -DPID_T=pid_t $(KFLAGS)" \
  3272.     "LIBS=-lsocketl -lcurses -ltermcap"
  3273.  
  3274. #QNX 4.1, 16-bit version, with Watcom C 8.5 on i286 PCs and above.
  3275. #stacksize 26000, objects larger than 100 bytes in their own segments,
  3276. #string constants to the codesegment, etc.  Add -DNOUUCP if desired.
  3277. qnx16_41:
  3278.     @echo 'Making C-Kermit $(CKVER) for QNX 4.1, 16-bit...'
  3279.     $(MAKE) wermit \
  3280.     "LNKFLAGS = -mh -N 26000" "CFLAGS = -Wc,-fpc -Wc,-j \
  3281.     -Wc,-Ols -Wc,-zdf -Wc,-zc -Wc,-zt100 -mh -DPOSIX -DQNX -DDIRENT \
  3282.     -DNOCYRIL -DNODEBUG -DNOMSEND -DMINIDIAL -DNOXMIT -DNOSCRIPT -DNOSPL \
  3283.     -DNOSETKEY -DDYNAMIC -DPID_T=pid_t $(KFLAGS)"
  3284.  
  3285. #Ridge 32 with ROS 3.2
  3286. ridge32:
  3287.     @echo 'Making C-Kermit $(CKVER) Ridge 32 ROS 3.2'
  3288.     $(MAKE) wermit \
  3289.     "CFLAGS = -DATTSV -DNOFILEH -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  3290.     "LNKFLAGS = -i"
  3291.  
  3292. #Altos 486, 586, or 986 with Xenix 3.0
  3293. altos:
  3294.     @echo 'Making C-Kermit $(CKVER) for Altos x86 with Xenix 3.0...'
  3295.     $(MAKE) wermit \
  3296.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  3297.     "LNKFLAGS= -i"
  3298.  
  3299. #Altos 986 with Xenix 3.0, as above, but command-line only, minimal size.
  3300. #For systems with small memories.  It might also be necessary to chop certain
  3301. #modules up into smaller pieces, e.g. ckuus3-6, because of symbol table
  3302. #overflow.   If this makefile is too big or complex for the Altos, compile
  3303. #and link by hand or write shell scripts.
  3304. altosc:
  3305.     @echo 'Making C-Kermit $(CKVER) for Altos x86 Xenix 3.0, remote...'
  3306.     $(MAKE) wermit \
  3307.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG -DNOSCRIPT -DNODIAL \
  3308.     -DNOCSETS -DNOANSI -DNOMSEND -DNOSPL -DNOICP $(KFLAGS) -Mm -O" \
  3309.     "LNKFLAGS= -Mm -s"
  3310.  
  3311. #Altos 986 with Xenix 3.0, as above, but interactive only, minimal size.
  3312. altosi:
  3313.     @echo 'Making C-Kermit $(CKVER) for Altos x86 Xenix 3.0, local...'
  3314.     $(MAKE) wermit \
  3315.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG -DNOSCRIPT -DNODIAL \
  3316.     -DNOCSETS -DNOANSI -DNOMSEND -DNOSPL -DNOCMDL -DNOFRILLS -DNOHELP \
  3317.     -DNOSETKEY $(KFLAGS) -Mm -O" "LNKFLAGS= -Mm -s"
  3318.  
  3319. # Altos ACS68000 68000 System, UNIX System 3 Release 2, 512k memory.
  3320. # also needs getcwd() external function; see ckuins.doc file.
  3321. # also, sys/types.h needed modifying:
  3322. #   #ifdef __SYS_TYPES_H__, #define ..., #endif
  3323. # also, ckuus2.c MUST be compiled NOOPT else symbol table is destroyed!
  3324. # Submission by Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu
  3325. #
  3326. altos3:
  3327.     @echo 'Making C-Kermit $(CKVER) for Altos ACS68k UNIX System III'
  3328.     $(MAKE) ckuus2.$(EXT) "CFLAGS = -DATTSV -DNOCSETS -DNOSETKEY -DNOJC \
  3329.       -DNODIAL -DDCLPOPEN -DNOSETBUF -DNOSCRIPT -DNOHELP $(KFLAGS) -i"
  3330.     $(MAKE) wermit \
  3331.        "CFLAGS = -DATTSV -DNOCSETS -DNOSETKEY -DNOJC \
  3332.       -DNODIAL -DDCLPOPEN -DNOSETBUF -DNOSCRIPT -DNOHELP $(KFLAGS) -i -O" \
  3333.         "LNKFLAGS = -i" "LIBS = getcwd.$(EXT)"
  3334.  
  3335. #MINIX - Original PC version with 64K+64K limit.
  3336. # Reportedly, the linker (asld) can run out of space while linking.  The only
  3337. # way around this is to make a copy of libc.a from which all modules that are
  3338. # not used by Kermit are removed.  If you have trouble compiling or running
  3339. # wart, "touch wart".  If that doesn't help, "touch ckcpro.c".
  3340. # The version configured below has no interactive command parser.
  3341. # If you can build this version successfully, maybe there will be room for
  3342. # a minimal interactive command parser too; try replacing -DNOICP with
  3343. # -DNOSPL, plus every other -DNOxxx flag there is, except for -DNOICP
  3344. # (see ckccfg.doc).
  3345. minix:
  3346.     @echo 'Making C-Kermit $(CKVER) for MINIX, no command parser...
  3347.     @echo 'TOTALLY UNTESTED!'
  3348.     $(MAKE) wermit EXT=s \
  3349.     "CFLAGS= -DV7 -DMINIX -i -D_MINIX -D_POSIX_SOURCE -DDYNAMIC \
  3350.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V \
  3351.     -DNOXMIT -DNOMSEND -DNOFRILLS -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  3352.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOSETKEY $(KFLAGS)" \
  3353.     "LNKFLAGS= -i -T"
  3354.  
  3355. #MINIX - PC version with 64K+64K limit, new (as yet unreleased) ACK 2.0 beta C
  3356. #compiler, which outputs .o object files, rather than .s.  But 'make' still
  3357. #expects .s files, so must be patched to use .o.  Tested on Minix 1.5.10.
  3358. minixnew:
  3359.     @echo 'Making C-Kermit $(CKVER) for MINIX (new ACK 2.0 compiler),'
  3360.     @echo 'no command parser...  TOTALLY UNTESTED!'
  3361.     $(MAKE) wermit \
  3362.     "CFLAGS= -DV7 -DMINIX -i -D_MINIX -D_POSIX_SOURCE -DDYNAMIC \
  3363.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V -DNODIAL \
  3364.     -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOICP $(KFLAGS)" \
  3365.     "LNKFLAGS= -i -T"
  3366.  
  3367. #MINIX/386 (PC Minix modified by Bruce Evans in Australia for 386 addressing)
  3368. minix386:
  3369.     @echo 'Making C-Kermit $(CKVER) for MINIX/386...'
  3370.     @echo 'TOTALLY UNTESTED!'
  3371.     $(MAKE) wermit EXT=s \
  3372.     "CFLAGS= -DV7 -DMINIX -D_POSIX_SOURCE -DDYNAMIC $(KFLAGS)"
  3373.  
  3374. #MINIX/386 (PC Minix modifed by Bruce Evans in Australia to use 386 addressing)
  3375. minix386gcc:
  3376.     @echo 'Making C-Kermit $(CKVER) for MINIX/386 with gcc...'
  3377.     @echo 'TOTALLY UNTESTED!'
  3378.     $(MAKE) wermit "CC=gcc -g -O" "CC2=gcc -g" \
  3379.     "CFLAGS= -DV7 -DMINIX -D_POSIX_SOURCE -DDYNAMIC $(KFLAGS)"
  3380.  
  3381. #MINIX - 68k version with ACK compiler.
  3382. # If you have trouble compiling or running wart, "touch wart".
  3383. # If it still doesn't work, "touch ckcpro.c".
  3384. # The version configured below has many features removed, including
  3385. # the TRANSMIT, MSEND, HELP, and SCRIPT commands, international
  3386. # character set support, and the entire script programming language.
  3387. # But it does have an interactive command parser.
  3388. # Make sure make(1) has (at least) 100000 chmemory!
  3389. # If you are using the Amsterdam C compiler, you might have to add "-D__ACK__".
  3390. minix68k:
  3391.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with ACK...
  3392.     $(MAKE) wermit \
  3393.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE -DDYNAMIC \
  3394.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  3395.     -DNOSCRIPT -DNOCSETS -DNOSPL $(KFLAGS) \
  3396.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  3397.  
  3398. #MINIX - 68k version with c68 compiler.
  3399. # If you have trouble compiling or running wart, "touch wart" or
  3400. # "touch ckcpro.c". Compiling ckudia.c (no -DNODIAL!) might fail. :-(
  3401. # Give c68 250000 bytes of stack+heap; make sure make(1) has at least
  3402. # 100000 chmemory.  On a 1Mb Atari ST this means that the recursive
  3403. # call of make fails due to memory shortage.  Try "make -n minixc68 >makeit",
  3404. # followed by ". makeit".  Otherwise, as above.
  3405. minixc68:
  3406.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with c68...
  3407.     $(MAKE) wermit "CC= cc -c68" \
  3408.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE -DDYNAMIC \
  3409.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  3410.     -DNOSCRIPT -DNOCSETS -DNOSPL $(KFLAGS) \
  3411.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  3412.  
  3413. #MIPS Computer Systems with UMIPS RISC/OS 4.52 = AT&T UNIX System V R3.0.
  3414. #Remove -DNOJC if job control can be safely used.
  3415. mips:
  3416.     @echo 'Making C-Kermit $(CKVER) for MIPS RISC/OS...'
  3417.     $(MAKE) wermit \
  3418.     "CFLAGS = -DMIPS -DDIRENT -DDYNAMIC -DCK_POLL -DNOJC -DPID_T=int \
  3419.     -DGID_T=gid_t -DUID_T=uid_t -i -O1500 $(KFLAGS)"
  3420.  
  3421. #As above, but with TCP/IP and fullscreen support.
  3422. mipstcpc:
  3423.     @echo 'Making C-Kermit $(CKVER) for MIPS RISC/OS...'
  3424.     $(MAKE) wermit \
  3425.     "CFLAGS = -DMIPS -DDIRENT -DDYNAMIC -DCK_POLL -DNOJC \
  3426.     -DTCPSOCKET -DCK_CURSES -I/usr/include/bsd \
  3427.     -DPID_T=int -DGID_T=gid_t -DUID_T=uid_t -i -O1500 $(KFLAGS)" \
  3428.     "LIBS = -lcurses -lbsd"
  3429.  
  3430. #Motorola Delta System V/68 R3, signal() is void rather than int.
  3431. #Uses dirent.h and Honey DanBer uucp.  Supports TCP/IP.
  3432. #After building, use "mcs -d" to reduce size of the executable program.
  3433. sv68r3:
  3434.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3...'
  3435.     $(MAKE) wermit "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  3436.     -DTCPSOCKET $(KFLAGS) \
  3437.     -O" "LNKFLAGS ="
  3438.  
  3439. #Motorola Delta System V/68 R3V5, signal() is void rather than int.
  3440. #Uses dirent.h and Honey DanBer UUCP.  Supports TCP/IP.
  3441. #After building, use "mcs -d" to reduce size of the executable program.
  3442. sv68r3v5:
  3443.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V5'
  3444.     $(MAKE) wermit "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  3445.     -DTCPSOCKET -DINADDRX $(KFLAGS) -O" "LNKFLAGS =" "LIBS = -linet"
  3446.  
  3447. #Motorola MVME147 System V/68 R3 V5.1. Requires gcc 2.1 to compile.
  3448. #After building, use "mcs -d" to reduce size of the executable program.
  3449. sv68r3v51:
  3450.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V5.1'
  3451.     $(MAKE) wermit "CC=gcc-delta" "CC2=gcc-delta" \
  3452.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC -DNODEBUG -DNOSETBUF \
  3453.     $(KFLAGS) -O2 -v -ftraditional" "LNKFLAGS = -s -v" "LIBS = -lm881"
  3454.  
  3455. #Motorola Delta System V/88 R32, signal() is void rather than int.
  3456. #Uses dirent.h and Honey DanBer uucp.  Needs <sys/utime.h> for setting
  3457. #file dates.  Supports TCP/IP.
  3458. #After building, use "mcs -d" to reduce size of the executable program.
  3459. sv88r32:
  3460.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R32...'
  3461.     $(MAKE) wermit "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DDYNAMIC \
  3462.     -DTCPSOCKET -DSYSUTIMEH -DCK_CURSES $(KFLAGS) \
  3463.     -O" "LIBS= -lcurses" "LNKFLAGS = -s"
  3464.  
  3465. #Motorola Delta System V/88 R40.  Has <sys/termiox.h>, regular Berkeley
  3466. #sockets library, i.e. in.h and inet.h are not misplaced in sys (rather than
  3467. #netinet and arpa, respectively).  Uses ANSI C constructs, advisory file
  3468. #locking on devices, etc.  curses support added.  Reportedly, the
  3469. #/usr/include/sys/vnode.h file has a bug which must be fixed before this
  3470. #makefile entry can work correctly.  The "if DEBUG" directive at about line
  3471. #320 must be changed to "ifdef DEBUG".
  3472. #After building, use "mcs -d" to reduce size of the executable program.
  3473. sv88r40:
  3474.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R40...'
  3475.     $(MAKE) wermit "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  3476.     -DDYNAMIC -DSTERMIOX -DTCPSOCKET -DCK_CURSES $(KFLAGS)" \
  3477.     "LIBS= -lsocket -lnsl -lcurses" "LNKFLAGS = -s"
  3478.  
  3479. #PFU Compact A Series UNIX System V R3, SX/A TISP V10/L50 (Japan)
  3480. #Maybe the -i link option should be removed?
  3481. sxae50:
  3482.     @echo 'Making C-Kermit $(CKVER) for PFU SX/A V10/L50...'
  3483.     $(MAKE) wermit \
  3484.     "CFLAGS= -DSVR3 -DDIRENT -DsxaE50 -DTCPSOCKET $(KFLAGS) -i -O \
  3485.     -DKANJI" "LNKFLAGS= "
  3486.  
  3487. #Olivetti X/OS R2.3, 3.x.
  3488. #NOTES:
  3489. # . If you build the executable on 2.x X/OS, it will also run on 3.x.
  3490. # . If you build it on 3.x X/OS, it will NOT run on 2.x.
  3491. # . Kermit can run with no privileges unless the uucp lines are protected,
  3492. #   in which case kermit must be owned by uucp with suid bit set:
  3493. #   chown uucp kermit ; chmod 4111 kermit.
  3494. xos23:
  3495.     @echo 'Making C-Kermit $(CKVER) for Olivetti X/OS...'
  3496.     $(MAKE) wermit \
  3497.     'CFLAGS=-OLM -DOXOS -DTCPSOCKET -DHDBUUCP -DDYNAMIC $(KFLAGS)' \
  3498.     "LIBS=" "LNKFLAGS="
  3499.  
  3500. #As above, but with curses.
  3501. xos23c:
  3502.     @echo 'Making C-Kermit $(CKVER) for Olivetti X/OS with curses...'
  3503.     $(MAKE) wermit \
  3504.     'CFLAGS=-OLM -DOXOS -DTCPSOCKET -DHDBUUCP -DDYNAMIC -DCK_CURSES \
  3505.     $(KFLAGS)' "LIBS=-lcurses" "LNKFLAGS="
  3506.  
  3507. #Clean up intermediate and object files
  3508. clean:
  3509.     @echo 'Removing object files...'
  3510.     -rm -f ckcmai.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  3511. ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckcpro.$(EXT) ckcfns.$(EXT) \
  3512. ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) ckucon.$(EXT) ckutio.$(EXT) \
  3513. ckufio.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) ckwart.$(EXT) ckuusx.$(EXT) \
  3514. ckuusy.$(EXT) ckcnet.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) ckcmdb.$(EXT) \
  3515. ckcpro.c wart
  3516.  
  3517. #Run Lint on this mess for the SUN/BSD version.
  3518. lintsun:
  3519.     @echo 'Running Lint on C-Kermit $(CKVER) sources for SunOS version...'
  3520.     lint -x -DSUNOS4 -DDIRENT -DTCPSOCKET -DSAVEDUID -DDYNAMIC \
  3521.     ck[cu]*.c > ckuker.lint.sun
  3522.  
  3523. lintbsd:
  3524.     @echo 'Running Lint on C-Kermit $(CKVER) sources for BSD 4.2 version..'
  3525.     lint -x -DBSD4 -DTCPSOCKET ck[cu]*.c > ckuker.lint.bsd42
  3526.  
  3527. lints5:
  3528.     @echo 'Running Lint on C-Kermit $(CKVER) sources for Sys V version...'
  3529.     lint -x -DATTSV ck[cu]*.c > ckuker.lint.s5
  3530.  
  3531. lintmips:
  3532.     @echo 'Running lint on C-Kermit $(CKVER) sources for MIPS version...'
  3533.     lint -DMIPS -DDIRENT -DPID_T=int -DGID_T=gid_t \
  3534.     -DUID_T=uid_t -DNOJC ck[cu]*.c > ckuker.lint.mips
  3535.  
  3536. ckuuid:
  3537.     @echo 'building C-Kermit $(CKVER) set-UID/set-GID test programs'
  3538.     $(CC) -DANYBSD -DSAVEDUID -o ckuuid1 ckuuid.c
  3539.     $(CC) -DANYBSD -o ckuuid2 ckuuid.c
  3540.     $(CC) -DANYBSD -DNOSETREU -o ckuuid3 ckuuid.c
  3541.     $(CC) -DANYBSD -DSETEUID -DNOSETREU -o ckuuid4 ckuuid.c
  3542.     $(CC) -o ckuuid5 ckuuid.c
  3543.     @echo 'Read the top of ckuuid.c for directions...for testing'
  3544.     @echo 'you must make these programs setuid and setgid'
  3545.  
  3546. #Remember TECO?
  3547. love:
  3548.     @echo 'Not war?'
  3549.