home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / old / ckermit60 / makefile < prev    next >
Makefile  |  2020-01-01  |  176KB  |  4,056 lines

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