home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / ckx201.tar.gz / x.tar / makefile < prev   
Makefile  |  2002-06-09  |  315KB  |  7,138 lines

  1. # makefile / Makefile / ckuker.mak / CKUKER.MAK
  2. #
  3. # Fri Feb  8 10:49:52 2002
  4. BUILDID=20020208
  5. #
  6. CKVER= "8.0.201"
  7. #
  8. # -- Makefile to build C-Kermit for UNIX and UNIX-like platforms --
  9. #
  10. # Copyright (C) 1985, 2002,
  11. #   Trustees of Columbia University in the City of New York.
  12. #   All rights reserved.  See the C-Kermit COPYING.TXT file or the
  13. #   copyright text in the ckcmai.c module for disclaimer and permissions.
  14. #
  15. # Author: Frank da Cruz, Columbia University
  16. # 612 West 115th Street, New York NY 10025-7799, USA
  17. # E-mail: fdc@columbia.edu
  18. # Fax:    +1 212 662-6442
  19. # Web:    http://www.columbia.edu/kermit/
  20. #
  21. # Contributions from many others.  Special thanks to Jeff Altman for the
  22. # secure-target entries, Peter Eichhorn, assyst GmbH, for the consolidated
  23. # HP-UX entries, to Robert Lipe for the updated & consolidated SCO UNIX / ODT
  24. # / OSR5 entries, to Ric Anderson for IRIX 6.x entries.
  25. #
  26. # Most entries use the "xermit" target, which uses the select()-based CONNECT
  27. # module, ckucns.c.  The "wermit" target uses the older fork()-base CONNECT
  28. # module, ckucon.c, which has some drawbacks (but is more portable).  If your
  29. # entry still uses the "wermit" target, please try substituting the "xermit"
  30. # one and if it works, let us know (mailto:kermit-support@columbia.edu).
  31. # When changing a target over from wermit to xermit, also remove -DNOLOEARN.
  32. #
  33. # CAREFUL: Don't put the lowercase word "if", "define", or "end" as the first
  34. # word after the "#" comment introducer in the makefile, even if it is
  35. # separated by whitespace.  Some versions of "make" understand these as
  36. # directives.  Uppercase letters remove the danger, e.g. "# If you have..."
  37. #
  38. # WARNING: This is a huge makefile, and it contains nested makes.  Some "make"
  39. # programs might run out of memory.  If this happens to you, edit away the
  40. # parts that do not apply to your platform and try again.
  41. #
  42. # Certain UNIX variations have their own separate makefiles:
  43. #  . For 2.10 or 2.11 BSD on DEC PDP-11s, use ckubs2.mak.
  44. #  . For Plan 9, use ckpker.mk.
  45. #
  46. # Separate build procedures are provided non-UNIX platforms: VMS, VOS,
  47. # AOS/VS, etc.  See the ckaaaa.txt file for details.
  48. #
  49. #
  50. # DIRECTIONS
  51. #
  52. # Rename this file to "makefile" or "Makefile" if necessary.  Pick out the
  53. # entry most appropriate for your UNIX version from the list below and then
  54. # give the appropriate "make" command, for example "make aix43", "make sys5r4",
  55. # "make linux".  If you experience any difficulties with the build procedure,
  56. # then please also read any comments that accompany the make entry itself
  57. # (search for the make entry name on the left margin).
  58. #
  59. # Other entries:
  60. #  'make install' is an installation script (read accompanying comments!).
  61. #  'make clean' removes intermediate and object files.
  62. #
  63. # IMPORTANT:
  64. #   For more detailed installation instructions, read the files ckuins.txt
  65. #   and ckccfg.txt, also available at the Kermit website in HTML form:
  66. #   http://www.columbia.edu/kermit/ckuins.html
  67. #   http://www.columbia.edu/kermit/ckccfg.html
  68. #
  69. #  For descriptions of known problems and limitations,
  70. #   read the files ckcbwr.txt and ckubwr.txt (the "beware files") or:
  71. #   http://www.columbia.edu/kermit/ckcbwr.html
  72. #   http://www.columbia.edu/kermit/ckubwr.html
  73. #
  74. # Most entries build C-Kermit with its symbol table included.  To reduce the
  75. # size of the executable program, add "LNKFLAGS=-s" to the end of your 'make'
  76. # command or to the makefile entry, or 'strip' the executable after
  77. # building.  To further reduce the size after building, use 'mcs -d' if your
  78. # Unix version has such a command.  For further details on size reduction, read
  79. # ckccfg.txt to find out how to remove features that you don't need.
  80. #
  81. # TCP/IP networking support: If your C-Kermit version does not include TCP/IP
  82. # networking, but your UNIX system does, try adding -DTCPSOCKET to the CFLAGS
  83. # of your makefile entry.  If that doesn't work, look at some of the other
  84. # entries that include this flag for ideas about what libraries might need to
  85. # be included (typically -lsocket and/or -lBSD and/or -lnsl and/or -linet).
  86. # NOTE: In some cases (old versions of SCO or HP-UX), you might need not only
  87. # a C compiler, but also a "TCP/IP developers kit" for the required object
  88. # libraries and header files.
  89. #
  90. # Fullscreen file transfer display support: If you are going to use C-Kermit
  91. # for establishing connections (dialed, network, etc), you can configure it to
  92. # produce a formatted file transfer display by including the curses library
  93. # and adding -DCK_CURSES to the CFLAGS for your option, and linking with the
  94. # appropriate libraries.  There are many examples below, usually ending in
  95. # "c", like sunos41c.  Also add -DCK_WREFRESH if your curses library includes
  96. # clearok() and wrefresh() functions (or remove -DNOWREFRESH if the linker
  97. # complains that it can't find these functions).
  98. #
  99. # Please report modifications, failures (preferably with fixes) or successes
  100. # to the author.
  101. #
  102. # SECURE TARGETS
  103. #  These are described after the next section.  Search for ******* below.
  104. #
  105. # TARGETS FOR DIFFERENT UNIX PLATFORMS AND VERSIONS:
  106. #
  107. # + Marks those that have been tested successfully in the current version.
  108. # - Marks those that are known not to work in the current version.
  109. # ? Marks those that worked in a previous version but have not been tested
  110. #     in the current version.
  111. # --------------------------
  112. # ? for 386BSD (Jolix) 0.0, 0.1, "make 386bsd" (see comments in entry),
  113. #     or (preferably, if it works) "make bsd44" or "make bsd44c".
  114. # ? for Acorn RISCiX, "make riscix" or "make riscix-gcc"
  115. # ? for Alliant FX/8 with Concentrix 4.1 or later, "make bsdlck"
  116. # ? for Altos 486, 586, 986 with Xenix 3.0, "make altos"
  117. # ? for Altos ACS68000, 8Mhz 68000, UNIX System 3 Rel 2, 512K, "make altos3"
  118. # ? for Amdahl UTS 2.4 on IBM 370 series & compatible mainframes, "make uts24"
  119. # ? for Amdahl UTSV IBM 370 series & compatible mainframes, "make utsv"
  120. # ? for Amdahl UTSV IBM 370 series mainframes with TCP/IP, "make utsvtcp"
  121. # ? for Amdahl mainframes with UNIX System V R 5.2.6b 580, "make sys3"
  122. # ? for Apollo Aegis 9.x, DOMAIN/IX 9.x, "make aegis"
  123. #    (Last tested in C-Kermit 5A(189))
  124. # ? for Apollo DOMAIN/IX, if the above fails, try "make apollobsd"
  125. # ? for Apollo with SR10.0 or later, BSD environment, "make sr10-bsd"
  126. # ? for Apollo with SR10.0 or later, System V environment, "make sr10-s5r3"
  127. # ? for Apple Macintosh II with A/UX pre-3.0, "make aux", "auxgcc" or "auxufs"
  128. # ? for Apple Macintosh with A/UX 3.0 and gcc, "make aux3gcc" or aux3gccc
  129. # + for Apple PowerMac with MkLinux, "make mklinux" (read Linux entry first)
  130. # + for Apple PowerMac with LinuxPPC, "make linuxppc"
  131. # ? for Apple Macintosh with Minix 1.5.10, "make minix68k" or "make minixc68"
  132. # + for Apple Macintosh with Mac OS X 1.0 (Rhapsody), "make macosx10"
  133. #     (no curses), "make macosx10c" (curses), or "make macosx10nc" (ncurses).
  134. #     Or "make macosx10ncx" (ncurses but "make macosx10nc" doesn't work).
  135. # ? for Arix System 90 with AT&T SVR3, "make sys5r3na"
  136. # ? for AT&T 6300 with IN/ix, "make sys5"
  137. # ? for AT&T 6300 PLUS, "make att6300" or (with no debugging) "make att6300nd"
  138. # ? for AT&T 6386 WGS UNIX PC, "make sys5r3"
  139. # + for AT&T 3B2, 3B20 systems, "make att3b2".
  140. #   for AT&T 3B1, 7300 UNIX PC (see notes with the entries):
  141. #     In C-Kermit 7.0, only the gcc entries work:
  142. # +   "make sys3upcg", "make sys3upcgc", "make att351gm"
  143. #    The others fail with "too many defines" (usually in ckuusr.h):
  144. # -   "make sys3upc", "make sys3upcold", "make sys3upcc", "make sys3upcx",
  145. #       "make sys3upcm", "make att351m"
  146. # ? for AT&T System III/System V R2 or earlier, "make sys3" or "make sys3nid"
  147. # ? for AT&T System III/System V with Honey DanBer UUCP, "make sys3hdb"
  148. # ? for AT&T System V on DEC VAX, "make sys3" or "make sys5r3"
  149. # + for AT&T System V R3, use "make sys5r3" or "make sys5r3c"
  150. # + for AT&T System V/386 R3.2 built on Interactive 4.1.1, "make sys5r32is".
  151. # ? for AT&T System V/386 R320.0 Versyss Systems, use "make sys5r3"
  152. #     or "make sys5r3c".
  153. # + for AT&T System V R4, "make sys5r4", "make sys5r4sx", or "make sys5r4nx",
  154. #     or if the ANSI C function prototyping makes trouble, add -DNOANSI,
  155. #     as in "sys5r4sxna" entry
  156. # + for AT&T (USL) System V R4.2 use the sys5r4* entries.
  157. # ? for Atari Falcon with MiNT, "make posix"
  158. # ? for Atari ST with Minix ST 1.5.10.3, "make minix68k" or "make minixc68"
  159. # ? for BBN C/70 with IOS 2.0, "make c70"
  160. # ? for BeBox with Be OS 1.x DR7, "make beboxdr7"
  161. #     Compiles OK but doesn't link with default linker which is limited to 64K.
  162. #     Links OK with "Code Warrior Gold".  Many hacks in the source code need
  163. #     to be removed when DR8 and later come out.
  164. #     (Last tested in C-Kermit 6.0)
  165. # - for BeBox with Be OS 1.x DR8, "make bebox"
  166. #     (Needed functions missing from operating system and/or not working.)
  167. # - for Bell Labs UNIX Version 6 (6th Edition), there is no makefile entry.
  168. # ? for Bell Labs UNIX Version 7 (7th Edition), "make v7" (but see notes below)
  169. #    (last built successfully in C-Kermit 5A188)
  170. # ? for Bell Labs Research UNIX Version 10, "make bellv10"
  171. #    (last built successfully in C-Kermit 6.0)
  172. # + for Bell Labs / Lucent Plan 9, use separate makefile ckpker.mk:
  173. #    can be built for Intel, MIPS, 680x0, and PowerPC.
  174. # + for BSDI BSD/386 1.x, "make bsdi"
  175. # + for BSDI BSD/OS 2.x, "make bsdi2"
  176. # + for BSDI BSD/OS 3.0 or 3.1, "make bsdi3"
  177. # + for BSDI BSD/OS 4.x, "make bsdi4"
  178. # + for BSDI BSD/OS 4.x, to build a binary that also works on FreeBSD,
  179. #     "make bsdix".
  180. # ? for Berkeley Unix 2.4, "make v7" (but read v7 material below)
  181. # ? for Berkeley Unix 2.9 (DEC PDP-11 or Pro-3xx), "make bsd29"
  182. # - for Berkeley Unix 2.10, use ckubs2.mak (a separate makefile)
  183. # - for Berkeley Unix 2.11, use ckubs2.mak (a separate makefile)
  184. #     This makefile is too big.  Read the instructions in ckubs2.mak.
  185. #     "make -f ckubs2.mak bsd210" or "make -f ckubs2.mak bsd211".
  186. #     (last built successfully in C-Kermit 6.0 - later versions too big)
  187. # + for Berkeley Unix 2.11 "make -f ckubs2.mak bsd210noicp" (no command parser)
  188. # ? for Berkeley Unix 4.1, "make bsd41"
  189. # + for Berkeley Unix 4.2 on VAX, "make bsd42" or "make bsd42c"
  190. # ? for Berkeley Unix 4.2 or 4.3 with HoneyDanBer UUCP, "make bsdhdb"
  191. # + for Berkeley Unix 4.3 on VAX, "make bsd43", "make bsd43nc".
  192. # + for Berkeley Unix 4.3 on VAX, no networking "make bsd43nonet.
  193. # + for Berkeley Unix 4.3 without acucntrl program, "make bsd42" or "bsd42c"
  194. #     NOTE: all the C-Kermit 7.0 full builds for old BSDs fail with
  195. #     "too many defines" in CPP, even on big architectures like VAX.  This
  196. #     can be worked around with a clever ruse.  See comments at target.
  197. # + for Berkeley Unix 4.3, command-line only, "make bsdm".
  198. # + for Berkeley Unix 4.3-Tahoe, same as 4.3 BSD
  199. # + for Berkeley Unix 4.3-Reno, "make bsd43" or "make bsd44" or "make bsd44c"
  200. # + for Berkeley Unix 4.3-Carson City, "make bsd44" or "make bsd44c"
  201. # + for Berkeley Unix 4.4-Networking/2 or -Alpha, "make bsd44" or "make bsd44c"
  202. # + for Berkeley Unix 4.4, "make bsd44" or "make bsd44c"
  203. # + for Berkeley Unix 4.4-Lite, "make bsd44" or "make bsd44c"
  204. # ? for Bull DPX/2 with BOS/X, "make bulldpx2"
  205. # ? for Cadmus, "make sys3"
  206. #   for Caldera, see SCO, Linux.
  207. # ? for Callan Unistar, "make sys3"
  208. # ? for CDC VX/VE 5.2.1 System V emulation, "make vxve"
  209. # ? for Charles River Data Systems Universe 680x0 with UNOS 9.2, maybe
  210. #     also other UNOS versions, "make crds"
  211. # ? for CIE Systems 680/20 with Regulus, "make cie"
  212. # + for Commodore Amiga 3000UX Sys V R4, "make sys5r4sx"
  213. # + for Commodore Amiga 3000UX Sys V R4 and TCP/IP, "make svr4amiganet"
  214. # ? for Commodore Amiga with Minix 1.5.10, "make minix68k" of "make minixc68"
  215. # ? for Concurrent/Masscomp with RTU 4.0 or later, BSD environment, "make
  216. #     rtubsd", "make rtubsd2", "make rtubsd3" (depending on where ndir.h
  217. #     is stored, see entries below).
  218. # ? for Concurrent/Masscomp with RTU 4.0 or later, System V R2, "make rtus5"
  219. # ? for Concurrent (Perkin-Elmer) 3200 series, "make sys5".
  220. # ? for Concurrent (Perkin-Elmer) 3200 series with <dirent.h>, "make ccop1"
  221. # ? for Consensys UNIX SV/386 R4V3, "make sys5r4sxtcpc" or "make sys5r4sx"
  222. # ? for Convergent with CTIX Sys V R2, "make sys5"
  223. # ? for Convergent with CTIX 6.4.1, "make ctix"
  224. # ? for Convex C1, "make convex"
  225. # ? for Convex C210 with Convex/OS 8, "make convex8"
  226. # ? for Convex C2 with Convex/OS 9.1, "make convex9"
  227. # ? for Convex C2 with Convex/OS 10.1 and gcc 2.x, "make convex10gcc"
  228. # ? for Cray Research X/MP or YMP or C90 with UNICOS 6.x (System V R3),
  229. #    "make cray"
  230. # ? for Cray Research X/MP or YMP or C90 with UNICOS 7.x (System V R4),
  231. #    "make cray"
  232. # ? for Cray Research X/MP or YMP or C90 with UNICOS 8.0 Alpha, "make cray8"
  233. # ? for Cray Computer Cray-2 or Cray3 with CSOS, "make craycsos"
  234. # ? for Cyber 910 (Silicon-Graphics Iris) with Irix 3.3, "irix33"
  235. # ? for Data General AViiON with DG/UX 5.4 before R3.00, "make dgux540"
  236. #     or "make dgux540c" (compile ckwart separately if necessary)
  237. # + for DG/UX 5.4 on AViiON Intel models, "make dgux540i" or dgux540ic.
  238. # ? for DG/UX 5.4R4.11 on AViiON, all models, "make dgux54411"
  239. # + for DG/UX 5.4R4.20 on AViiON, all models, "make dgux54420"
  240. # + for Data General AViiON with DG/UX 4.3x using Sys V-isms, "make dgux430"
  241. # ? for Data General AViiON with DG/UX 4.3x using BSD-isms, "make dgux430bsd"
  242. # ? for Data General AViiON, earlier UNIX versions,
  243. #     "make sys5r3" (maybe compile ckwart separately, or "touch ckcpro.c")
  244. # ? for Data General MV systems with DG/UX, ???
  245. # ? for Data General MV systems with MV/UX, use AOS/VS C-Kermit (CKDKER.MAK)
  246. # + for Data General MV systems with AOS/VS, use CKDKER.MAK.
  247. #   for DEC PDP-11 with Berkeley UNIX 2.x, see Berkeley UNIX 2.x.
  248. # ? for DEC PDP-11 with Mini-UNIX (Bell 6th Edition for PDP-11 with no MMU),
  249. #     probably no way to fit C-Kermit without I&D space.
  250. # ? for DEC PDP-11 with Ultrix-11 3.x, ??? (probably needs overlays)
  251. # ? for DEC VAX with Ultrix 1.x "make bsd"
  252. # ? for DEC VAX with Ultrix 2.x "make ultrix2x"
  253. # ? for DEC VAX or DECstation with Ultrix 3.0, 3.1, "make ultrix3x"
  254. # ? for DECstation or VAX with Ultrix 4.0 or 4.1, "make ultrix40"
  255. # ? for DECstation or VAX with Ultrix 4.2, "make ultrix42" or "make ultrix42c"
  256. # ? for DECstation or VAX with Ultrix 4.x, POSIX world, "make posix"
  257. # + for DECstation or VAX with Ultrix 4.3, "make ultrix43".
  258. # + for DECstation or VAX with Ultrix 4.4, "make ultrix44".
  259. # ? for DECstation 5000/50, /150 or /260 (R4x00 MIPS CPU), Ultrix 4.3A or later
  260. #     "make ultrix43-mips3" or "make ultrix43c-mips3"
  261. # ? for DECstation (MIPS) with Berkeley Sprite, "make bsd44"?
  262. # ? for DECstation (MIPS) with OSF/1 V1.0 to 1.3, "make dec-osf"
  263. # ? for DEC Alpha with OSF/1 1.0 to 1.3, "make dec-osf"
  264. # ? for DEC PC 486 with OSF/1, "make dec-osf"
  265. # ? for DEC Alpha with OSF/1 2.x, "make dec-osf20"
  266. # + for DEC Alpha with OSF/1 3.0, "make dec-osf30"
  267. # + for DEC Alpha with Digital UNIX 3.2, "make du32"
  268. # + for DEC Alpha with Digital UNIX 4.0-4.0D, "make du40" or "make du40gcc"
  269. # + for DEC Alpha with Digital UNIX 4.0E or higher, see Tru64.
  270. # - for DEC Pro-350 with Pro/Venix V1.x, "make provx1" (version 5A is too big)
  271. # ? for DEC Pro-380 with Pro/Venix V2.0 (Sys V), "make sys3" or "make sys3nid"
  272. # ? for DEC Pro-380 with 2.9, 2.10, or 2.11 BSD, "make bsd29" or "make bsd210"
  273. #   for DEC PDP-11 with 2.xBSD (use separate makefile ckubs2.mak)
  274. # ? for Dell UNIX Issue 2.x (= USL Sys V/386 R4.x + fixes), "make dellsys5r4"
  275. #     or "make dellsys5r4c" (last tested in C-Kermit 5A).
  276. # ? for DIAB DS90 with DNIX (any version) create an empty <sys/file.h> if
  277. #     this file does not already exist (or add -DNOFILEH to the make entry).
  278. # ? for DIAB DS90 with DNIX 5.2 (Sys V.2) or earlier, "make dnix",
  279. #     "make dnixnd", or (to add curses and TCP/IP) "make dnixnetc",
  280. # ? for DIAB DS90 with DNIX 5.3 (Sys V.3), "make dnix5r3"
  281. # ? for DIAB DS90 with DNIX 5.3 (Sys V.3) and TCP/IP, "make dnix5r3net"
  282. # ? for DIAB DS90 with DNIX 5.3 2.2 (Sys V.3), ANSI C, "make dnix5r3ansi"
  283. #     or, to include TCP/IP, "make dnix5r3ansinet",
  284. #     but you have to fix a bug in /usr/include/stdlib.h first:
  285. #     change "extern void free(char *str);" to "extern void free(void *str);"
  286. # ? for Dolphin Server Technology Triton 88/17 with SV/88 R3.2, "make sv88r32"
  287. # ? for Encore Multimax 310, 510 with Umax 4.2, "make umax42"
  288. # ? for Encore Multimax 310, 510 with Umax 4.3, "make umax43"
  289. # ? for Encore Multimax 310, 510 with Umax V 2.2, use Berkeley cc, "make bsd"
  290. # ? for Encore 88K with Umax V 5.2, "make encore88k"
  291. # ? for ESIX System V R4.0.3 or 4.04 with TCP/IP support, "make esixr4"
  292. #     NOTE: You can also build on Unixware 2.x with "make esixr4", and run
  293. #     on ESIX, but there you must first:
  294. #       ln /usr/lib/libsocket.so /usr/lib/libsocket.so.1
  295. #       ln /usr/lib/libnsl.so /usr/lib/libnsl.so.1
  296. #     (This worked for C-Kermit 6.0 but does not work for 7.0)
  297. #     (But you can probably still build a non-networking version this way)
  298. # ? for Everex STEP 386/25 Rev G with ESIX Sys V R3.2D, "make sys5r3"
  299. # ? for Fortune 32:16, For:Pro 1.8, "make ft18"
  300. # ? for Fortune 32:16, For:Pro 2.1, "make ft21"
  301. # ? for FPS 500 with FPX 4.1, "made bsd"
  302. # ? for FreeBSD 1.0, "make freebsd"
  303. # + for FreeBSD 2.x, "make freebsd2" (ncurses) or "make freebsd2c" (curses)
  304. # + for FreeBSD 3.x, "make freebsd3" (ncurses) or "make freebsd3c" (curses)
  305. # + for FreeBSD 4.0, "make freebsd4"
  306. # + for FreeBSD 4.1, "make freebsd41"
  307. # + for FreeBSD 4.2, "make freebsd42"
  308. # + for FreeBSD 4.3, "make freebsd43"
  309. # + for FreeBSD 4.4, "make freebsd44"
  310. # + for FreeBSD 4.5, "make freebsd45"
  311. # ? for Harris HCX-2900, "make sys5r3"
  312. # ? for Harris Night Hawk 88K or 68K with CX/UX pre-6.1, "make sys5r3"
  313. # ? for Harris Night Hawk 88K or 68K with CX/UX 6.1 or later, "make cx_ux"
  314. # ? for Heurikon, "make sys3"
  315. # ? for HP-3000, MPE/ix, "make posix"?
  316. # + for HP-9000 Series 300 with 4.4BSD, "make bsd44"
  317. # + for HP-9000 Series 500, HP-UX 5.21 and no networking "make hpux0500"
  318. # + for HP-9000 Series 500, HP-UX 5.21 with WIN/TCP 1.2 "make hpux0500wintcp"
  319. # + for HP-9000 Series, HP-UX 6.5, without long filenames,
  320. #     "make hpux0650" or "make hpux0650c"
  321. # + for HP-9000 Series, HP-UX 7.0 or later no long filenames, "make hpux0700sf"
  322. #     or (to include tcp/ip, curses, etc) "make hpux0700sftcpc"
  323. # + for HP-9000 Series with HP-UX 7.0, TCP/IP,long filenames,"make hpux0700lfn"
  324. # + for HP-9000 300/400 Series (680x0) with HP-UX 8.0, TCP/IP, "make hpux0800"
  325. #      or "make hpux0800c"
  326. # + for HP-9000 700/800 Series (PA-RISC), HP-UX 8.0, TCP/IP, "make hpux0800pa"
  327. #      or "make hpux0800pac"
  328. # + for HP-9000 Series with HP-UX 8.0, no TCP/IP, long filenames,
  329. #      "make hpux0800notcp"
  330. # + for HP-9000 Series, HP-UX 9.0 - 9.10, TCP/IP, curses, restricted compiler
  331. #     (no optimization, no ANSI), all models, "make hpux0900".  Read the
  332. #     hpux0900 entry below for more info.
  333. # + for HP-9000 700 and 800 Series, HP-UX 9.x, TCP/IP, curses,
  334. #     HP optimizing ANSI C compiler, "make hpux0900o700".
  335. # + for HP-9000 with Motorola CPUs, HP-UX 9.x, TCP/IP, curses,
  336. #     HP optimizing ANSI C compiler, "make hpux0900mot".
  337. # + for HP-9000 on other CPUs, HP-UX 9.x, TCP/IP, curses,
  338. #     HP optimizing ANSI C compiler, "make hpux0900o".
  339. # + for HP-9000 series, HP-UX 9.x, TCP/IP, curses, gcc, all models,
  340. #     "make hpux0900gcc"
  341. # + for HP-9000 700/800 Series, HP-UX 10.00,10.01,10.10,10.20,10.30, TCP/IP,
  342. #     curses, restricted compiler (no optimization, no ANSI) "make hpux1000".
  343. # + for HP-9000 700/800 Series, HP-UX 10.00,10.01,10.10,10.20,10.30, TCP/IP,
  344. #     curses, HP ANSI/optimizing compiler "make hpux1000o" or "make hpux1000o+"
  345. # + for HP-9000 HP-UX 10.00 or later with gcc, "make hpux1000gcc"
  346. # + for Trusted HP-UX 10.xx "make hpux1000t", "make hpux1000to",
  347. #     or make hpux1000to+"
  348. # + for HP-9000 700/800 Series, HP-UX 11.00,TCP/IP,curses, restricted compiler
  349. #     (no optimization, no ANSI) "make hpux1100".
  350. # + for HP-9000 700/800 Series, HP-UX 11.00,TCP/IP,curses, restricted compiler
  351. #     HP ANSI/optimizing compiler "make hpux1100o" or "make hpux1100o+"
  352. # + for Trusted HP-UX 11.xx "make hpux1100t", "make hpux1100to",
  353. #     make hpux1100to+"
  354. # + for HP-9000 PA-RISC models with NeXTSTEP 3.3, "make nextquadfat".
  355. # + for HP-9000 PA-RISC models with OPENSTEP/Mach 4.1, "make nextquadfat".
  356. # ? for IBM 370 Series with IX/370, "make ix370"
  357. # ? for IBM 370 Series with AIX/370 1.2, "make aix370"
  358. # ? for IBM 370 Series with AIX/370 3.0, "make aix370"
  359. # ? for IBM 370 Series with AIX/ESA 2.1, "make aixesa"
  360. # - for IBM PC/AT 286 & compatibles with Mark Williams Coherent OS,
  361. #     command-line-only version, "make coherent" (version 5A & later too big)
  362. # ? for IBM PC 386 & compatibles with Mark Williams Coherent OS,
  363. #     minimum interactive version, "make coherentmi"
  364. # ? for IBM PC 386 & compatibles with Mark Williams Coherent OS,
  365. #     full interactive version, prior to v4.2, "make coherentmax"
  366. # + for IBM PC 386 & compatibles with Mark Williams Coherent OS 4.2,
  367. #     "make coherent42"
  368. # ? for IBM PC 386 & compatibles with LynxOS 2.0 or 2.1, "make lynx21"
  369. # ? for IBM PC 386 & compatibles with LynxOS 2.2, "make lynx"
  370. # - for IBM PC/AT & compatibles with original MINIX, "make minix" (too big)
  371. # ? for IBM PC family, 386-based, with MINIX/386 1.5, "make minix386"
  372. #     or if you have GNU CC, "make minix386gcc"
  373. # + for IBM PC family, 386-based, with MINIX 2.0, "make minix20"
  374. # + for IBM PS/2 with PS/2 AIX 1.0, 1.1, or 1.2, "make ps2aix" or ps2aixnetc.
  375. # ? for IBM PS/2 with PS/2 AIX 1.3, "make ps2aix3"
  376. # ? for IBM RISC System/6000 with AIX 3.0, "make aix30"
  377. # ? for IBM RISC System/6000 with AIX 3.1.x, "make aix31"
  378. # + for IBM RISC System/6000 with AIX 3.2.0 thru 3.2.5, "make aix32"
  379. # + for IBM RS/6000 or Power Series with AIX 4.1.x, "make aix41"
  380. # + for IBM RS/6000 or Power Series with AIX 4.1.x with gcc, "make aix41g"
  381. # + for IBM RS/6000 or Power Series with AIX 4.1 with X.25, "make aix41x25"
  382. # + for IBM RS/6000 or Power Series with AIX 4.2, "make aix42"
  383. # + for IBM RS/6000 or Power Series with AIX 4.3, "make aix43" or "make aix43g"
  384. # ? for IBM RS/6000 or Power Series with AIX 4.4, "make aix44"
  385. # ? for IBM RS/6000 or Power Series with AIX 4.5, "make aix45"
  386. # ? for IBM RS/6000 or Power Series with AIX 5.0, "make aix50"
  387. # ? for IBM RS/6000 or Power Series with AIX 5.1, "make aix51"
  388. # ? for IBM RT PC with AIX 2.1, "make sys3"
  389. # + for IBM RT PC with AIX 2.2.1, "make rtaix" or "make rtaixc"
  390. # ? for IBM RT PC with ACIS 4.2, "make bsd"
  391. # ? for IBM RT PC with ACIS 4.3, "make rtacis" or "make bsd KFLAGS=-DNOANSI"
  392. # ? for IBM RT PC with 4.3BSD/Reno, "make bsd44" or "make bsd44c"
  393. # ? for ICL DRS400 or 400E, "make iclsys5r3"
  394. # ? for ICL DRS3000 (80486) with DRS/NX, "make iclsys5r4_486"
  395. # ? for ICL DRS6000 (SPARC) with DRS/NX, "make iclsys5r4"
  396. # + for ICL DRS6000 (SPARC) with DRS/NX 4.2MP 7MPlus, "make iclsys5r4m+"
  397. # ?     Ditto but with IKSD support included, "make iclsys5r4m+iksd"
  398. # ? for Integrated Solutions Inc V8S VME 68020, "make isi"
  399. # ? for Intel 302 with Bell Tech Sys V/386 R3.2, "make sys5r3"
  400. # ? for Intel Xenix/286, "make sco286"
  401. # ? for Interactive System III (PC/IX), "make pcix" or "make is3"
  402. # ? for Interactive System III (PC/IX) with gcc, "make is3gcc"
  403. # ? for Interactive 386/ix 1.0.6 with TCP/IP networking, "make is5r3net2"
  404. # ? for Interactive 386/ix 2.0.x, "make is5r3" or (POSIX) "make is5r3p"
  405. # ? for Interactive 386/ix 2.0.x with TCP/IP networking, "make is5r3net"
  406. #     or "make is5r3net2"
  407. # ? for Interactive 386/ix 2.2.1, job control, curses, no net, gcc,
  408. #     "make is5r3gcc"
  409. # + for Interactive UNIX Sys V R3.2 V2.2 - 4.0 without TCP/IP, "make is5r3jc"
  410. # + for Interactive UNIX Sys V R3.2 V2.2 - 4.0 with TCP/IP, "make is5r3netjc"
  411. # + for Intergraph Clipper, "make clix" or "make clixnet"
  412. # ? for Jolix (see 386BSD)
  413. # + for Red Hat Linux 7.1 fully configured (krb5, SSL, etc): "make redhat71"
  414. #     NOTE: You must use this target for Red Hat 7.1 since it also includes
  415. #     a workaround for its broken curses library.
  416. # + for Linux 1.2 and later, "make linux".  Uses ncurses.  This version
  417. #     handles serial speeds up to 460800 bps, Linux FSSTD 1.2, TCP/IP, and
  418. #     should work on both libc and glibc systems.  For static linking, use
  419. #     "make linux LNKFLAGS=-static".  Please read the comments that accompany
  420. #     the linux entry.
  421. # + for Linux builds that fail with "sys/select.h: No such file or directory",
  422. #     "make linuxns"
  423. # + for Linux 1.2 and later but with curses.h and libcurses (rather than
  424. #     ncurses.h and libncurses), use "make linuxc".
  425. # + for Linux 1.2 and later with no curses support at all, "make linuxnc".
  426. # + for Linux on PowerMac (Mklinux DR3), "make mklinux".
  427. # + for Linux 1.2 and later, to build with egcs, "make linuxegcs".
  428. # + for Linux with no TCP/IP, "make linuxnotcp"
  429. # + for Linux with lcc compiler, no TCP/IP, "make linuxnotcp-lcc"
  430. # ? for Linux 1.0 or earlier, "make linux10", or (to remove TCP/IP)
  431. #     "make linuxnotcp".
  432. #     IMPORTANT: Read the comments that accompany the "linux:" entry.
  433. # ? for Mach 2.6 on (anything, e.g. DECstation), "make bsd42" or "make bsd43".
  434. # ? for MachTen (Tenon) 2.1.1.D on (e.g.) Apple Powerbook, "make machten".
  435. # ? for Masscomp RTU AT&T System III, "make rtu"
  436. #   for other Masscomp, see Concurrent.
  437. # ? for Microport SV/AT (System V R2), "make mpsysv" (last edit tested: 144)
  438. # ? for Microport SVR4 2.2, 3.1, or 4.1 "make sys5r4sx"
  439. # ? for Microsoft,IBM Xenix (/286, PC/AT, etc), "make xenix" or "make sco286"
  440. # ? for MIPS System with RISC/os (UMIPS) 4.52 = AT&T SVR3, "make mips"
  441. #     or "make mipstcpc"
  442. # + for MkLinux on Power Macintosh, "make mklinux"
  443. # ? for Modcomp 9730, Real/IX, "make sys5r3" (or modify to use gcc = GLS cc)
  444. # ? for Modcomp Realstar 1000 with REAL/IX D.1, "make sv88r32"
  445. # ? for Motorola Four Phase, "make sys3" or "make sys3nid"
  446. # + for Motorola Delta System V/68 R3, "make sv68r3"
  447. # + for Motorola Delta System V/68 R3V5, "make sv68r3v5"
  448. # + for Motorola Delta System V/68 R3V5.1, "make sv68r3v51"
  449. # + for Motorola Delta System V/68 R3V6 with NSE TCP/IP, "make sv68r3v6"
  450. # + for Motorola Delta System V/88 R32, "make sv88r32"
  451. # + for Motorola Delta System V/88 R40, "make sv88r40"
  452. # ? for Mt Xinu Mach386 on 386/486-based PCs, "make bsd43"
  453. # ? for NCR Tower 1632, OS 1.02, "make tower1"
  454. # ? for NCR Tower 1632 or Minitower with System V R2, "make sys3"
  455. #     or "make sys3nv"
  456. # ? for NCR Tower 32, OS Release 1.xx.xx, "make tower32-1"
  457. # ? for NCR Tower 32, OS Release 2.xx.xx, "make tower32-2"
  458. # ? for NCR Tower 32, OS Releases based on Sys V R3, "make tower32"
  459. # ? for NCR Tower 32, OS Releases based on Sys V R3 with gcc "make tower32g"
  460. # ? for NCR System 3000, AT&T UNIX System V R4 2.0, "make sys5r4sxna"
  461. # ? for NCR System 3000, AT&T UNIX System V R4 2.0 with Wollongong TCP/IP,
  462. #     "make sys5r4net2" or "make sys5r4net2c".
  463. #      Some header files might be misplaced; try this:
  464. #       ln /usr/include/netinet/in.h /usr/include/sys/in.h
  465. #       ln /usr/include/arpa/inet.h /usr/include/sys/inet.h
  466. #       ln /usr/include/sys/termiox.h /usr/include/termiox.h
  467. # ? for NCR System 3000, NCR UNIX 02.02.01, same as above.
  468. # + for NCR MP-RAS System V R4 V2.03 or 3.02, "make mpras" or "make mprastcpc"
  469. # + for NetBSD through 1.4.x on any architecture, "make netbsd"
  470. # + for NetBSD 1.5.0 and later, "make netbsd15"
  471. # + for NeXT with NeXTSTEP 1.0 through 3.2, "make next" (on a NeXT)
  472. # + for NeXT with NeXTSTEP 3.3, "make next33"
  473. # ? for NeXT with OPENSTEP/Mach 4.1, "make nextquadfat".
  474. # + for NeXT with OPENSTEP/Mach 4.2, "make openstep42".
  475. # ? for NeXTSTEP/486, "make next" (on a PC)
  476. # ? for NeXTSTEP portable binary (runs on Intel or Motorola), "make nextfat"
  477. # ? for NeXTSTEP portable binary (Intel, Motorola, HP PA-RISC, or SPARC),
  478. #     "make nextquadfat"
  479. # ? for Nixdorf Targon/31, "make t31tos40x"
  480. # ? for Norsk Data Uniline 88/17 with SV/88 R3.2, "make sv88r32"
  481. #   for Novell UnixWare - see UnixWare
  482. # ? for OSF/1 (vanilla, from OS/F), "make posix"
  483. # ? for OkiStation 7300 Series, "make sys5r4sxtcp"
  484. # ? for Olivetti LSX-3020 with X/OS R.2.3, "make xos23" or "make xos23c"
  485. # + for OpenBSD, "make openbsd"
  486. # ? for OPENSTEP/Mach 4.1, "make nextquadfat" (NeXT, Intel, PA-RISC, SPARC)
  487. # + for OPENSTEP/Mach 4.2, "make openstep42" (tested on NeXT)
  488. # ? for Perkin-Elmer (Concurrent) 3200 series, "make sys5".
  489. # ? for Perkin-Elmer (Concurrent) 3200 series with <dirent.h>, "make ccop1"
  490. # ? for Perkin-Elmer/Concurrent 3200 with Xelos R02, "make ccop1"
  491. # ? for PFU Compact A Series SX/A TISP V10/E50 (Japan), "make sxae50"
  492. # ? for Plexus, "make sys3"
  493. # + for Pyramid 9XXX (e.g. 9845) or MIServer T series, OSx 4.4b thru 5.1,
  494. #     "ucb make pyramid" or for HDB UUCP, "ucb make pyramid-hdb" or:
  495. # + for Pyramid MIServer S or ES Series, DataCenter/OSx, "make pyrdcosx"
  496. # + for Pyramid MIS-S MIPS R3000, DataCenter OSx System V R4, "make pyrdcosx"
  497. # + for POSIX on anything, "make posix" (but adjustments might be necessary).
  498. # ? for Prime 8000 MIPS, SVR3, "make mips" or "make mipstcpc"
  499. # - for QNX 2.x (sorry we don't have a version of C-Kermit for QNX 2.x)
  500. # ? for QNX 4.0 or 4.1, 16-bit, on 286 PC, Watcom C 8.5, "make qnx16_41"
  501. # + for QNX 4.21 - 4.22A (286+), and 4.23 (386+), or higher, 16-bit,
  502. #     Watcom C 9.5x or higher, "make qnx16"
  503. # + for QNX 4.21-4.25, 32-bit, 386 or above, Watcom C 10.6, "make qnx32"
  504. #     NOTE: ("make qnx" == "make qnx32")
  505. # ? for QNX Neutrino 2+, "make qnx_nto2+" (crosscompiled on QNX4 with Watcom C)
  506. # + for QNX 6 = Neutrino 2.xx, "make qnx6"
  507. # ? for Ridge 32 (ROS3.2), "make ridge32"
  508. # ? for Samsung MagicStation, "make sys5r4"
  509. # ? for SCO Xenix 2.2.1 with development system 2.2 on 8086/8 "make sco86"
  510. # ? for SCO Xenix/286 2.2.1 with development system 2.2 on 80286, "make sco286"
  511. #     NOTE: reportedly this makefile is too long for SCO Xenix/286 make, but it
  512. #     works with "makeL", or if some of the other make entries are edited out.
  513. # ? for SCO Xenix/386 2.2.2, "make sco386"
  514. # ? for SCO Xenix/386 2.3.x, "make sco3r2"
  515. # ? for SCO Xenix/386 SCO 2.3.3 or 2.3.4 with gcc 1.37 or later,
  516. #     "make sco386gcc" or (to add curses) "make sco386gccc".
  517. # ? for SCO Xenix/386 or UNIX/386 with Excelan TCP/IP, "make sco3r2net"
  518. #     or (to add curses support) "make sco3r2netc" or "sco386netc"
  519. # + for SCO XENIX 2.3.4, "make sco234" or "make sco234c" to add curses.
  520. # + for SCO XENIX 2.3.4 with SCO TCP/IP & curses, "make sco234netc".
  521. # ? for SCO Xenix 2.3.x with Racal-InterLan TCP/IP, "make sco3r2netri"
  522. #   for other UNIX varieties with Racal Interlan TCP/IP, read sco3r2netri entry
  523. # ? for SCO Xenix 2.3.x with SCO (Lachman) TCP/IP, "make sco3r2lai"
  524. #     or (to add curses) "make sco3r2laic"
  525. #   for SCO UNIX...  ALSO READ COMMENTS in the SCO UNIX entries for more info!
  526. # ? for SCO UNIX/386 3.2.0 or 3.2.1, "make sco3r2" or "make sco3r2x"
  527. # ? for SCO UNIX/386 3.2.2, "make sco3r22" or "make sco3r22gcc"
  528. #     or "make sco3r22c"
  529. # ? for SCO UNIX/386 3.2.2 with SCO TCP/IP, "make sco3r22net"
  530. #     or "make sco3r22netc" (curses)
  531. # ? for SCO ODT 1.1, "make sco3r22net" or "make sco3r22netc" (curses)
  532. # + for SCO UNIX/386 3.2 V4.x, no network support, "make sco32v4"
  533. # +   or "make sco32v4ns" (this one uses no select() or sockets library)
  534. # + for SCO UNIX/386 3.2 V4.x with TCP/IP, "make sco32v4net"
  535. #     (also sco32v4gcc, sco32v4netgcc)
  536. # + for SCO UNIX/386 3.2 V5.0 - see SCO OpenServer.
  537. # + for SCO UNIX 3.2v4.x with TCP/IP, <dirent.h> for Extended Acer File
  538. #     System (EAFS), curses, ANSI C compilation, "make sco32v4net"
  539. # +   or (to use select()-based CONNECT module) "make sco32v4netx".
  540. # + for SCO UNIX 3.2v4.2, "make sco-odt30" (includes TCP/IP).
  541. # + for SCO MPX 3.0 - The SCO UNIX binary runs on the corresponding MPX system.
  542. #
  543. # NOTE: Also see below for other entries that are variations on these.
  544. # Also be sure to read the comments accompanying each SCO entry.
  545. # And yes, I know it's called Caldera now instead of SCO.
  546. # Also see Unixware section; Unixware has had so many owners there's no point
  547. # keeping track.
  548. #
  549. # + for SCO ODT 2.0, "make sco32v4net"
  550. # + for SCO ODT 3.0, "make sco-odt30"
  551. # + for SCO OpenServer 5.0 (OSR5), "make sco32v500"
  552. # + for SCO OpenServer 5.0 (OSR5) with networking, "make sco32v500net"
  553. # + for SCO OpenServer 5.0 (OSR5), gcc, "make sco32v500gcc"
  554. # + for SCO OpenServer 5.0 (OSR5), gcc, with networking, "make sco32v500netgcc"
  555. # + for SCO OpenServer 5.0 (OSR5), as above, ELF, "make sco32v500netgccelf"
  556. # + for SCO OpenServer 5.0.2, use "make sco32v502xxx" entries as above.
  557. # + for SCO OpenServer 5.0.4, use "make sco32v504xxx" entries as above.
  558. # + for SCO OpenServer 5.0.5, use "make sco32v505xxx" entries as above.
  559. #     Use the sco32v505udkxxx entries if you have the UDK rather than /bin/cc.
  560. # + for SCO OpenServer 5.0.6, use "make sco32v506xxx" entries as above.
  561. # + for SCO OpenServer 5.0.6a,use "make sco32v506axxx" entries as above.
  562. # ? for SCO (Univel) UnixWare 1.x, "make unixware" or "make unixwarenetc".
  563. #     If there are problems with this in C-K 7+ see notes at unixware entry.
  564. # + for SCO UnixWare 2.0.x, "make uw20"
  565. # + for SCO UnixWare 2.1.0, "make uw21"
  566. # + for SCO UnixWare 2.1.3, "make uw213"
  567. # + for SCO UnixWare 7, "make uw7"
  568. # + for SCO UnixWare 7 with IKSD support, "make uw7iksd" or "make uw7iksdudk"
  569. # + for SCO UnixWare 7 with OpenSSL, "make uw7ssl"
  570. # + for SCO (Caldera) Open UNIX 8, "make ou8"
  571. # + for Sharp Zaurus SL5500 PDA, "make sl5500".
  572. # ? for Sequent with DYNIX/ptx 1.2.1, "make dynixptx12"
  573. # ? for Sequent with DYNIX/ptx 1.3 or 1.4 with TCP/IP, "make dynixptx13"
  574. # ? for Sequent with DYNIX/ptx 2.0 or 2.1 with TCP/IP, "make dynixptx20"
  575. #     or "dynixptx20c"
  576. # + for Sequent with DYNIX/ptx 2.1.6 on i486, "dynixptx216c"
  577. # ? for Sequent with DYNIX/ptx V4.1.3 with TCP/IP, "make dynixptx41c"
  578. # + for Sequent with DYNIX/ptx V4.4.2 with TCP/IP, "make dynixptx44"
  579. # ? for Sequent Balance 8000 or B8 with DYNIX 3.0.xx, "make dynix3"
  580. #    or "make dynix3noacu"
  581. # ? for Sequent Symmetry S81 with DYNIX 3.0.xx, "make dynix3"
  582. # ? for Sequent DYNIX 3.1.xx, "make dynix31" or "make dynix31c"
  583. # + for Siemens/Nixdorf SINIX-L Intel V5.41, "make sinix541i"
  584. # + for Siemens/Nixdorf SINIX-N MIPS V5.42, "make sinix542"
  585. # + for Siemens/Nixdorf SINIX-Z Intel V5.42, "make sinix542i"
  586. # + for Siemens/Nixdorf Reliant UNIX V5.43, "make sni543"
  587. # + for Siemens/Nixdorf Reliant UNIX V5.44, "make sni544"
  588. # ? for Silicon Graphics Iris System V IRIX 3.2 or earlier, "make iris"
  589. # ? for Silicon Graphics Sys V R3 with IRIX 3.3 or later, "make sys5r3"
  590. # ? for Silicon Graphics Iris Indigo with IRIX 4.0 or 5.0, "make irix40" or
  591. #     (to include Yellow Pages and Curses) "make irix40ypc"
  592. # ? for Silicon Graphics Iris Indigo or Elan with IRIX 4.0.x with microcode
  593. #     optimization and -O4, "make irix40u" or "irix40uc" (and read notes
  594. #     accompanying these entries).
  595. # + for Silicon Graphics IRIX 5.1, "make irix51" or "irix51x" (no optimize)
  596. # + for Silicon Graphics IRIX 5.2, "make irix52"
  597. # + for Silicon Graphics IRIX 5.3, "make irix53" or "irix53x" (no optimize)
  598. # + for Silicon Graphics IRIX 6.0, "make irix60".
  599. # + for Silicon Graphics IRIX 6.2, "make irix62".
  600. # + for Silicon Graphics IRIX 6.3, "make irix63".
  601. # + for Silicon Graphics IRIX 6.4, "make irix64" or "make irix64gcc".
  602. # + for Silicon Graphics IRIX 6.5, "make irix65".
  603. # + for SGI IRIX 6.5.5 (new company name) "make irix65"
  604. # ? for Solaris 2.0-2.3 on SPARC or Intel, SunPro CC, "make solaris2x",
  605. # ?   or to add SunLink X.25 8.0x support, "make solaris2x25".
  606. # + for Solaris 2.4 build with gcc, "make solaris24g".
  607. # + for Solaris 2.0-2.3 on SPARC or Intel, GNU CC, "make solaris2xg".
  608. # + for Solaris 2.4 with X.25, "make solaris24x25".
  609. # + for Solaris 2.5 on SPARC or Intel, SunPro CC, "make solaris25".
  610. # +   or to add SunLink X.25 8.0x support, "make solaris25x25".
  611. # + for Solaris 2.5 on SPARC or Intel, GNU CC, "make solaris25g".
  612. # + for Solaris 2.6 on SPARC or Intel, "make solaris26".
  613. # + for Solaris 7 on SPARC or Intel, SunPro CC, "make solaris7".
  614. # + for Solaris 7 on SPARC or Intel, GNU CC, "make solaris7g".
  615. # + for Solaris 8 on SPARC or Intel, SunPro CC, "make solaris8".
  616. # + for Solaris 8 on SPARC or Intel, GNU CC, "make solaris8g".
  617. # ? for Solaris 9 on SPARC (or Intel?), SunPro CC, "make solaris9".
  618. # ? for Solaris 9 on SPARC (or Intel?), GNU CC, "make solaris9g".
  619. # + for Solbourne 4/500 with OS/MP 4 "make sunos4"
  620. # + for Solbourne 4/500 with OS/MP 4.1 "make sunos41" or "make sunos41c"
  621. # ? for SONY NEWS with NEWS-OS 4.0.1C, "make sonynews"
  622. # ? for SONY NEWS with NEWS-OS 4.1.2C, "make sonynews"
  623. # ? for Sperry/UNISYS 5000/20, UTS V 5.2 3R1, "make sys5"
  624. # ? for Sperry/UNISYS 5000/30/35/50/55, UTS V 5.2 2.01, "make unisys5r2"
  625. # ? for Sperry/UNISYS 5000/80 with System V R3, "make sys5r3"
  626. # ? for Sperry/UNISYS 5000/95 with System V R3, "make sys5r3"
  627. #     For UNISYS SVR3 it might be necessary to "make sys5r3 KFLAGS=-UDYNAMIC"
  628. # ? for Stardent 1520, "make sys5r3"
  629. # ? for Stratus FTX 2.x, try "make ftx" or else "make sys5r4" or "sys5r4sx"
  630. # + for Stratus FTX 3.x, PA-RISC 1.0 or 2.0, "make ftx" or "make ftxtcp"
  631. # ? for Sun with Sun UNIX 3.5 and gcc, "make sunos3gcc"
  632. # ? for Sun with pre-4.0 SunOS versions, "make bsd" (or appropriate variant)
  633. # ? for Sun with SunOS 4.0, BSD environment, "make sunos4"
  634. # ? for Sun with SunOS 4.0, BSD, with SunLink X.25, make sunos4x25
  635. # + for Sun with SunOS 4.1 or 4.1.1, BSD environment, "make sunos41"
  636. #     or "make sunos41c" (curses) or "make sunos41gcc" (compile with gcc)
  637. # + for Sun with SunOS 4.1.x, BSD, with SunLink X.25 7.00 or earlier,
  638. #     "make sunos41x25" or "make sunos41x25c" (curses)
  639. # + for Sun with SunOS 4.1, 4.1.1, AT&T Sys V R3 environment, "make sunos41s5"
  640. # + for Sun with SunOS 4.1.2, "make sunos41" or any of its variations.
  641. #     NOTE:  All SunOS 4.x systems -- Shared libraries are used by default.
  642. #       If this causes problems, add -Bstatic to CFLAGS.
  643. #     NOTE2: When building C-Kermit under SunOS for the BSD universe,
  644. #       but /usr/5bin/cc is ahead of /usr/ucb/cc in your PATH, add
  645. #       "CC=/usr/ucb/cc CC2=/usr/ucb/cc" to the make entry.
  646. #     NOTE3: If an executable built on one type of Sun hardware does not work
  647. #       on another type, rebuild the program from source on the target machine.
  648. #   for Sun with Solaris 1.x use SunOS 4.1 entries.
  649. #   for Sun with Solaris 2.0 and higher use Solaris entries.
  650. # + for Sun SPARC with Linux, "make linux"
  651. # ? for Sun SPARC with OPENSTEP/Mach 4.1, "make nextquadfat"
  652. # ? for Sun SPARC with OPENSTEP/Mach 4.2, "make openstep42"
  653. # - for Tandy 16/6000 with Xenix 3.0, "make trs16" (C-Kermit 7.0 is too big)
  654. # ? for Tektronix 6130/4132/43xx (e.g.4301) with UTek OS, "make utek"
  655. #     or (for models without hardware flow control), "make uteknohwfc"
  656. # ? for Tektronix XD88 series with UTekV OS, "make utekvr3"
  657. # ? for Tri Star Flash Cache with Esix SVR3.2, "make sys5r3"
  658. # + for Tru-64 UNIX 4.0E, "make tru64-40e"
  659. # + for Tru-64 UNIX 4.0F, "make tru64-40f"
  660. # + for Tru-64 UNIX 4.0G, "make tru64-40g"
  661. # + for Tru-64 UNIX 5.0A, "make tru64-50a"
  662. # + for Tru-64 UNIX 5.1A, "make tru64-51a"
  663. # ? for Unistar, "make sys5"
  664. # ? for Unisys S/4040 68040 CTIX SVR3.2 6.4.1, "make ctix" or "make sys5r3"
  665. # ? for Unisys U5000 UNIX SVR3 6.x, "make sys5r3" or "make sys5r3c"
  666. # ? for Unisys U6000 UNIX SVR4 1.x, "make sys5r4nx" or "make sys5r4nxnetc"
  667. #   for Unisys ... (also see Sperry)
  668. #   for Univel - see UnixWare
  669. #   for Unixware - see SCO
  670. # ? for Valid Scaldstar, "make valid"
  671. # ? for Whitechapel MG01 Genix 1.3, "make white"
  672. # ? for Zilog ZEUS 3.21, "make zilog"
  673. #
  674. # The result should be a runnable program called "wermit" in the current
  675. # directory.  After satisfactory testing, you can rename wermit to "kermit"
  676. # and put it where users can find it.
  677. #
  678. # To remove intermediate and object files, "make clean".
  679. # If your C compiler produces files with an extension other than "o",
  680. # then "make clean EXT=u", "make clean EXT=s", or whatever.
  681. #
  682. # To run lint on the source files, "make lintsun", "make lintbsd",
  683. # "make lints5", as appropriate.
  684. #
  685. # ******************************
  686. # SECURE TARGETS
  687. #
  688. # Beginning with C-Kermit 7.0, secure targets are included, as are the
  689. # source modules (ckuat*.[ch], ck_*.[ch]) needed to build them.  Secure
  690. # target names are like the regular names, but with security features
  691. # indicated by plus (+) signs.  The features are:
  692. #
  693. # krb4     MIT Kerberos IV
  694. # krb5     MIT Kerberos V
  695. # openssl  OpenSSL (SSL/TLS)
  696. # zlib     ZLIB compression for SSL/TLS
  697. # srp      Stanford Secure Remote Password
  698. # pam      PAM
  699. # shadow   Shadow Password File
  700. #
  701. # You can build these targets if you have the Kermit source files and the
  702. # required libraries (Kerberos, OpenSSL, SRP, etc).  See:
  703. #   http://www.columbia.edu/kermit/security.html 
  704. # for specific details regarding supported versions.
  705. #
  706. # The following symbols are used to specify library and header file locations
  707. # Redefine them to the values used on your system by:
  708. # . editing this file
  709. # . defining the values on the command line
  710. # . defining the values in the environment and use the -e option
  711. #
  712. K4LIB=-L/usr/kerberos/lib
  713. K4INC=-I/usr/kerberos/include
  714. K5LIB=-L/usr/kerberos/lib
  715. K5INC=-I/usr/kerberos/include
  716. SRPLIB=-L/usr/local/lib
  717. SRPINC=-I/usr/local/include
  718. SSLLIB=-L/usr/local/ssl/lib
  719. SSLINC=-I/usr/local/ssl/include
  720. #
  721. # aix41+krb5+krb4:                    IBM AIX 4.1 with Kerberos IV and V
  722. # aix43gcc+krb5+krb4:                 IBM AIX 4.3 built with gcc, ditto
  723. # aix43gcc+krb5+krb4+openssl:         Ditto, plus SSL/TLS
  724. # irix6x+krb5:
  725. # irix65+krb5:
  726. # linux+krb5:
  727. # linux+krb5+krb4:
  728. # linux+srp:
  729. # linux+srp+pam:
  730. # linux+srp+gmp:
  731. # linux+srp+gmp+no-des:
  732. # linux+srp+gmp-export:
  733. # linux+srp+gmp+pam:
  734. # linux+shadow+pam:
  735. # linux+openssl:
  736. # linux+openssl+shadow:
  737. # linux+openssl+zlib+shadow+pam:
  738. # linux+srp+openssl:
  739. # linux+krb5+krb4+srp:
  740. # linux+krb5+krb4+srp+openssl:
  741. # linux+krb5+krb4+openssl:
  742. # linux+krb5+krb4+openssl+shadow:
  743. # linux+krb5+krb4+openssl+zlib+shadow:
  744. # linux+krb5+krb4+srp-export:
  745. # linux+krb5+krb4+srp+pam:
  746. # linux+krb5+krb4+srp+openssl+pam-debug:
  747. # linux+krb5+krb4+srp+openssl+pam:
  748. # linux+krb5+krb4+srp+openssl+zlib+pam:
  749. # linux+krb5+openssl+zlib+shadow+pam:
  750. # solaris2x+krb4:  
  751. # solaris2xg+krb4:
  752. # solaris2xg+openssl+pam+shadow:
  753. # solaris2xg+openssl+zlib+pam+shadow:
  754. # solaris2xg+krb5+krb4+openssl+shadow:
  755. # solaris25+krb4:
  756. # solaris25g+krb4:
  757. # solaris26g+openssl:
  758. # solaris8g+openssl+zlib+pam+shadow:
  759. # solaris8g+krb4:
  760. # sunos41gcc+krb4:                    SunOS 4.1 built with gcc with Kerberos IV
  761. # sunos41gcc+openssl:                 SunOS 4.1 built with gcc with OpenSSL
  762. # sunos41gcc+krb4+openssl:            ...with Kerberos IV and OpenSSL
  763. # sunos41gcc+krb4+openssl+zlib:       ditto, plus ZLIB compression
  764. # sunos41gcc+krb4+srp+openssl+zlib:   ditto, plus SRP
  765. # sunos41gcc+srp+openssl+zlib:        
  766. # uw7ssl
  767. #
  768. # redhat71:
  769. # Default Red Hat 7.1 full install includes krb5, openssl, shadow, pam, zlib
  770. #
  771. ##############################################################################
  772. #
  773. # NOTES FOR V7 AND 2.X BSD (BASED ON VERSION 4E OF C-KERMIT, 1987):
  774. #
  775. # For Unix Version 7, several variables must be defined to the values
  776. # associated with your system.  BOOTNAME=/edition7 is the kernel image on
  777. # okstate's Perkin-Elmer 3230.  Others will probably be /unix.  PROCNAME=proc
  778. # is the name of the structure assigned to each process on okstate's system.
  779. # This may be "_proc" or some other variation.  See <sys/proc.h> for more
  780. # info on your systems name conventions.  NPROCNAME=nproc is the name of a
  781. # kernel variable that tells how many "proc" structures there are.  Again
  782. # this may be different on your system, but nproc will probably be somewhere.
  783. # The variable NPTYPE is the type of the nproc variable -- int, short, etc.
  784. # which can probably be gleaned from <sys/param.h>.  The definition of DIRECT
  785. # is a little more complicated.  If nlist() returns, for "proc" only, the
  786. # address of the array, then you should define DIRECT as it is below.  If
  787. # however, nlist() returns the address of a pointer to the array, then you
  788. # should give DIRECT a null definition (DIRECT= ).  The extern declaration in
  789. # <sys/proc.h> should clarify this for you.  If it is "extern struct proc
  790. # *proc", then you should NOT define DIRECT.  If it is "extern struct proc
  791. # proc[]", then you should probably define DIRECT as it is below.  See
  792. # ckuv7.hlp for further information.
  793. #
  794. # For 2.9 BSD, the makefile may use pcc rather than cc for compiles; that's
  795. # what the CC and CC2 definitions are for (the current version of the
  796. # makefile uses cc for both; this was tested in version 4E of C-Kermit and
  797. # worked OK on the DEC Pro 380, but all bets are off for version 5A).  2.9
  798. # support basically follows the 4.1 path.  Some 2.9 systems use "dir.h" for
  799. # the directory header file, others will need to change this to "ndir.h".
  800. #
  801. # The v7 and 2.9bsd versions assume I&D space on a PDP-11.  When building
  802. # C-Kermit for v7 on a PDP-11, you should probably add the -i option to the
  803. # link flags.  Without I&D space, overlays will be necessary (if available),
  804. # or code segment mapping (a`la Pro/Venix) if that's available.
  805. #
  806. # C-Kermit 5A (and 6.0?) can be built for 2.10 and 2.11BSD, using overlays,
  807. # but a separate makefile is used because this one is too big.
  808. #
  809. ##############################################################################
  810. #
  811. # V7-specific variables.
  812. # These are set up for Perkin-Elmer 3230 V7 Unix:
  813. #
  814. PROC=proc
  815. DIRECT=
  816. NPROC=nproc
  817. NPTYPE=int
  818. BOOTFILE=/edition7
  819. #
  820. # ( For old Tandy TRS-80 Model 16A or 6000 V7-based Xenix, use PROC=_proc,
  821. #   DIRECT=-DDIRECT, NPROC=_Nproc, NPTYPE=short, BOOTFILE=/xenix )
  822. #
  823. ###########################################################################
  824. #
  825. #  Compile and Link variables:
  826. #
  827. #  EXT is the extension (file type) for object files, normally o.
  828. #  See MINIX entry for what to do if another filetype must be used.
  829. #
  830. EXT=o
  831. #LNKFLAGS=
  832. SHAREDLIB=
  833. CC= cc
  834. CC2= cc
  835. MAKE= make
  836. SHELL=/bin/sh
  837.  
  838. ###########################################################################
  839. # SAMPLE INSTALLATION SCRIPT
  840. #
  841. # Modify to suit your own computer's file organization and permissions.  If
  842. # you don't have write access to the destination directories, "make install"
  843. # fails.  In most cases, a real installation also requires you to chown /
  844. # chgrp the Kermit binary for the UUCP lockfile and/or tty devices, and
  845. # perhaps also to chmod +s the corresponding permission fields.
  846. #
  847. # Default binary, man, and doc directories are supplied below.  You can
  848. # override them in your 'make' command.  Examples:
  849. #
  850. #   make install                                   # Accept defaults.
  851. #   make "INFODIR=/usr/share/lib/kermit" install   # Override INFODIR default.
  852. #   make "BINARY=krbmit" install                   # Install Kerberized binary.
  853. #
  854. # You can also build and install in one step, e.g.:
  855. #
  856. #   make solaris8 install
  857. #
  858. WERMIT = makewhat
  859. BINARY = wermit
  860. DESTDIR = 
  861. BINDIR = /usr/local/bin
  862. MANDIR = /usr/man/man1
  863. MANEXT = 1
  864. SRCDIR =
  865. INFODIR =
  866. CERTDIR =
  867.  
  868. TEXTFILES = COPYING.TXT ckcbwr.txt ckubwr.txt ckuins.txt ckccfg.txt \
  869.         ckcplm.txt ckermit.ini ckermod.ini ckermit70.txt ckermit80.txt
  870.  
  871. ALL = $(WERMIT)
  872.  
  873. all: $(ALL)
  874.  
  875. .c.o:
  876.     $(CC) $(CFLAGS) -DKTARGET=\"$(KTARGET)\" -c $<
  877.  
  878. #Clean up intermediate and object files
  879. clean:
  880.     @echo 'Removing object files...'
  881.     -rm -f ckcmai.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  882. ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckcpro.$(EXT) ckcfns.$(EXT) \
  883. ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) ckucon.$(EXT) ckutio.$(EXT) \
  884. ckufio.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) ckwart.$(EXT) ckuusx.$(EXT) \
  885. ckuusy.$(EXT) ckcnet.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) ckusig.$(EXT) \
  886. ckucns.$(EXT) ckcmdb.$(EXT) ckuath.$(EXT) ckctel.$(EXT) ckclib.$(EXT) \
  887. ckcuni.$(EXT) ck_crp.$(EXT) ck_ssl.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  888. ckcpro.c wart
  889.  
  890. # Install C-Kermit after building -- IMPORTANT: Read the instructions above
  891. # (SAMPLE INSTALLATION SCRIPT).  For secure versions, note the that binary
  892. # generated by this makefile might have a different name, like krbmit.  Also
  893. # note that ca_certs.pem file should be installed in the appropriate place
  894. # for your OpenSSL library, e.g.:
  895. #   cp ca_certs.pem /usr/local/ssl/
  896. #   cp ca_certs.pem /usr/share/ssl/
  897. #
  898. # To make sure 'man' notices the new source file and doesn't keep
  899. # showing the old formatted version, remove the old formatted version,
  900. # something like this:
  901. #        rm -f $(MANDIR)/../cat$(MANEXT)/kermit.$(MANEXT)
  902. # or this (which requires CATDIR to be defined):
  903. #        rm -f $(CATDIR)/kermit.$(MANEXT)
  904. install:
  905.     @if test 1 -eq 1; then \
  906.         echo "DESTDIR=$(DESTDIR)" ; \
  907.         if test "$(DESTDIR)" != ""; then \
  908.             if test -d $(DESTDIR); then \
  909.             echo  "$(DESTDIR) exists..." ; \
  910.         else \
  911.             echo "Creating $(DESTDIR)..." ; \
  912.             mkdir $(DESTDIR) || exit 1 ; \
  913.         fi ; \
  914.         chmod 755 $(DESTDIR) || exit 1 ; \
  915.         fi ; \
  916.         echo "BINARY=$(BINARY)" ; \
  917.         if test -f $(BINARY) ; then \
  918.         ls -l $(BINARY) ; \
  919.         else \
  920.             echo "?$(BINARY) not found" ; \
  921.             exit 1; \
  922.         fi ; \
  923.         if test "$(DESTDIR)$(BINDIR)" = ""; then \
  924.         echo "Binary directory not specified" ; \
  925.         exit 1; \
  926.         fi ; \
  927.         if test -d $(DESTDIR)$(BINDIR); then \
  928.         echo   "$(DESTDIR)$(BINDIR) exists..." ; \
  929.         else \
  930.         echo "Creating $(DESTDIR)$(BINDIR)/..." ; \
  931.         mkdir     $(DESTDIR)$(BINDIR) || exit 1 ; \
  932.         chmod 755 $(DESTDIR)$(BINDIR) ; \
  933.         fi ; \
  934.         cp $(BINARY) $(DESTDIR)$(BINDIR)/kermit || exit 1 ; \
  935.         chmod 755    $(DESTDIR)$(BINDIR)/kermit || exit 1 ; \
  936.         rm -f        $(DESTDIR)$(BINDIR)/kermit-sshsub ; \
  937.         ln -s        $(DESTDIR)$(BINDIR)/kermit \
  938.              $(DESTDIR)$(BINDIR)/kermit-sshsub || exit 1 ; \
  939.         if test -f ckermit.ini; then \
  940.         echo "#!$(DESTDIR)$(BINDIR)/kermit" > \
  941.             $(DESTDIR)$(BINDIR)/_tmp.ini ; \
  942.         cat ckermit.ini >> $(DESTDIR)$(BINDIR)/_tmp.ini ; \
  943.         mv $(DESTDIR)$(BINDIR)/_tmp.ini \
  944.            $(DESTDIR)$(BINDIR)/ckermit.ini ; \
  945.         chmod 755 $(DESTDIR)$(BINDIR)/ckermit.ini ; \
  946.         fi ; \
  947.         echo ; \
  948.         echo "Kermit binary installed:" ; \
  949.         ls -l $(DESTDIR)$(BINDIR)/kermit \
  950.               $(DESTDIR)$(BINDIR)/ckermit.ini ; \
  951.         echo ; \
  952.         echo " WARNING: If C-Kermit is to be used for dialing out," ; \
  953.         echo " you must change its owner and group and permissions" ; \
  954.         echo " to match the 'cu' program.  See the ckuins.txt file" ; \
  955.         echo " for details." ; \
  956.         echo ; \
  957.         echo "MANDIR=$(MANDIR)" ; \
  958.         if test "$(MANDIR)" != ""; then \
  959.             echo "Installing man page..." ; \
  960.         cp -f ckuker.nr $(MANDIR)/kermit.$(MANEXT) || exit 1 ; \
  961.         chmod 644       $(MANDIR)/kermit.$(MANEXT) || exit 1 ; \
  962.         else \
  963.         echo "Not installing man page" ; \
  964.         fi ; \
  965.         echo CERTDIR=$(CERTDIR) ; \
  966.         if test "$(CERTDIR)" != ""; then \
  967.         if test -f ca_certs.pem; then \
  968.             echo "Installing certificates file..." ; \
  969.             cp ca_certs.pem $(CERTDIR) || exit 1 ; \
  970.         fi ; \
  971.         else \
  972.         echo "Not installing certificates file" ; \
  973.         fi ; \
  974.         echo SRCDIR=$(DESTDIR)$(SRCDIR) ; \
  975.         if test "$(SRCDIR)" != ""; then \
  976.         echo "Installing source files..." ; \
  977.         if test -d $(DESTDIR)$(SRCDIR); then \
  978.             echo  "$(DESTDIR)$(SRCDIR) exists..." ; \
  979.         else \
  980.             echo "Creating $(DESTDIR)$(SRCDIR)/..." ; \
  981.             mkdir     $(DESTDIR)$(SRCDIR) || exit 1 ; \
  982.             chmod 755 $(DESTDIR)$(SRCDIR) ; \
  983.         fi ; \
  984.         echo "Copying source files to $(DESTDIR)$(SRCDIR)..." ; \
  985.         cp COPYING.TXT ck[cuw_]*.[cwh] makefile $(DESTDIR)$(SRCDIR); \
  986.         ( cd $(DESTDIR)$(SRCDIR)/ && \
  987.               ls -l COPYING.TXT ck[cuw_]*.[cwh] makefile ) ; \
  988.         else \
  989.         echo "Not installing source code" ; \
  990.         fi ; \
  991.         echo INFODIR=$(DESTDIR)$(INFODIR) ; \
  992.         if test "$(INFODIR)" != ""; then \
  993.         echo "Installing info files..." ; \
  994.         if test -d $(DESTDIR)$(INFODIR); then \
  995.             echo  "$(DESTDIR)$(INFODIR) exists..." ; \
  996.         else \
  997.             echo "Creating $(DESTDIR)$(INFODIR)/..." ; \
  998.             mkdir     $(DESTDIR)$(INFODIR) || exit 1 ; \
  999.             chmod 755 $(DESTDIR)$(INFODIR) ; \
  1000.         fi ; \
  1001.         echo "Copying text files to $(DESTDIR)$(INFODIR)..." ; \
  1002.         FileCopyList='' ; \
  1003.         for TextFile in $(TEXTFILES) ; do \
  1004.             if test -f $$TextFile; then \
  1005.                cp      $$TextFile $(DESTDIR)$(INFODIR) && \
  1006.                FileCopyList="$$FileCopyList $$TextFile" ; \
  1007.             fi ; \
  1008.         done ; \
  1009.         ( cd $(DESTDIR)$(INFODIR)/ && chmod  644   $$FileCopyList ) ; \
  1010.         ( cd $(DESTDIR)$(INFODIR)/ && pwd && ls -l $$FileCopyList ) ; \
  1011.         else \
  1012.         echo "Not installing text files" ; \
  1013.         fi ; \
  1014.     fi
  1015.  
  1016. makewhat:
  1017.     @echo 'make what?  You must tell which platform to make C-Kermit for.'
  1018.     @echo Examples: make linux, make hpux1100, make aix43, make solaris8.
  1019.     @echo Please read the comments at the beginning of the makefile.
  1020.  
  1021. ###########################################################################
  1022. #
  1023. # Dependencies Section:
  1024.  
  1025. # Normal version
  1026.  
  1027. wermit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1028.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1029.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1030.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1031.         ckucon.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1032.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1033.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1034.     $(CC2) $(LNKFLAGS) -o wermit \
  1035.         ckcmai.$(EXT) ckclib.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1036.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1037.         ckcpro.$(EXT) ckucmd.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) \
  1038.         ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) \
  1039.         ckuusx.$(EXT) ckuusy.$(EXT) ckuusr.$(EXT) ckucon.$(EXT) \
  1040.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) \
  1041.         ckusig.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  1042.         $(LIBS)
  1043.  
  1044. # Version with CONNECT module that uses select() instead of fork()
  1045.  
  1046. xermit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1047.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1048.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1049.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1050.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1051.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1052.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1053.     $(CC2) $(LNKFLAGS) -o wermit \
  1054.         ckcmai.$(EXT) ckclib.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1055.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1056.         ckcpro.$(EXT) ckucmd.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) \
  1057.         ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) \
  1058.         ckuusx.$(EXT) ckuusy.$(EXT) ckuusr.$(EXT) ckucns.$(EXT) \
  1059.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckusig.$(EXT) \
  1060.         ckctel.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  1061.         $(LIBS)
  1062.  
  1063. # Malloc Debugging version
  1064.  
  1065. mermit:    ckcmdb.$(EXT) ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) \
  1066.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1067.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1068.         ckcpro.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) \
  1069.         ckuxla.$(EXT) ckucon.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1070.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) \
  1071.         ckusig.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1072.     $(CC2) $(LNKFLAGS) -o mermit ckcmdb.$(EXT) ckclib.$(EXT) ckcmai.$(EXT)\
  1073.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1074.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1075.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1076.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1077.         ckuusr.$(EXT) ckucon.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1078.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckcuni.$(EXT) \
  1079.         ckupty.$(EXT) ckcftp.$(EXT) $(LIBS)
  1080.  
  1081. # Kerberized Version - Subject to USA export restrictions.
  1082.  
  1083. krbmit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1084.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1085.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1086.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1087.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1088.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1089.         ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) \
  1090.         ckcftp.$(EXT) ck_ssl.$(EXT)
  1091.     $(CC2) $(LNKFLAGS) -o krbmit ckcmai.$(EXT) ckclib.$(EXT) \
  1092.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1093.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1094.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1095.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1096.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1097.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1098.         ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  1099.         ck_ssl.$(EXT) $(LIBS)
  1100.  
  1101. krbmit-debug:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) \
  1102.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1103.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1104.         ckcpro.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) \
  1105.         ckuxla.$(EXT) ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1106.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) \
  1107.         ckusig.$(EXT) ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) \
  1108.         ckupty.$(EXT) ck_ssl.$(EXT) ckcmdb.$(EXT) ckcftp.$(EXT)
  1109.     $(CC2) $(LNKFLAGS) -o krbmit ckcmdb.$(EXT) ckcmai.$(EXT) \
  1110.         ckclib.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) \
  1111.         ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) \
  1112.         ckucmd.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) \
  1113.         ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) \
  1114.         ckuusy.$(EXT) ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) \
  1115.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1116.         ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) \
  1117.         ckcftp.$(EXT) ck_ssl.$(EXT) $(LIBS)
  1118.  
  1119. # SRP(TM) Version - Subject to USA export restrictions.
  1120.  
  1121. srpmit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1122.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1123.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1124.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1125.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1126.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1127.         ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) \
  1128.         ckcftp.$(EXT) ck_ssl.$(EXT)
  1129.     $(CC2) $(LNKFLAGS) -o srpmit ckcmai.$(EXT) ckclib.$(EXT) \
  1130.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1131.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1132.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1133.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1134.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1135.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1136.         ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ck_ssl.$(EXT) \
  1137.         ckcftp.$(EXT) $(LIBS)
  1138.  
  1139. # Kerberized Version - Not subject to USA export restrictions.
  1140.  
  1141. krbmit-export:    ckcmai.$(EXT) \
  1142.         ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1143.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1144.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1145.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1146.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1147.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1148.         ckuath.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1149.     $(CC2) $(LNKFLAGS) -o krbmit-export ckcmai.$(EXT) ckclib.$(EXT) \
  1150.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1151.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1152.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1153.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1154.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1155.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1156.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) $(LIBS)
  1157.  
  1158. # SRP(TM) Version - Not subject to USA export restrictions.
  1159.  
  1160. srpmit-export:    ckcmai.$(EXT) \
  1161.         ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1162.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1163.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1164.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1165.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1166.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1167.         ckuath.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1168.     $(CC2) $(LNKFLAGS) -o srpmit-export ckcmai.$(EXT) ckclib.$(EXT) \
  1169.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1170.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1171.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1172.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1173.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1174.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1175.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) $(LIBS)
  1176.  
  1177. ###########################################################################
  1178. # man page...
  1179. #
  1180. ckuker.nr:
  1181.     @echo This target is obsolete.
  1182.     @echo The ckuker.nr file no longer needs any preprocessing.
  1183.  
  1184. ###########################################################################
  1185. # Dependencies for each module...
  1186. #
  1187. ckcmai.$(EXT): ckcmai.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcnet.h ckcsig.h \
  1188.         ckuusr.h ckctel.h ckclib.h
  1189.  
  1190. ckclib.$(EXT): ckclib.c ckclib.h ckcdeb.h ckcasc.h ckcsym.h
  1191.  
  1192. ckcpro.$(EXT): ckcpro.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckclib.h
  1193.  
  1194. ckcpro.c: ckcpro.w wart ckcdeb.h ckcsym.h ckcasc.h ckcker.h ckcnet.h ckctel.h \
  1195.      ckclib.h
  1196.     ./wart ckcpro.w ckcpro.c
  1197.  
  1198. ckcfns.$(EXT): ckcfns.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h ckcuni.h \
  1199.         ckuxla.h ckclib.h ckcnet.h
  1200.  
  1201. ckcfn2.$(EXT): ckcfn2.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h \
  1202.         ckuxla.h ckctel.h ckclib.h ckcnet.h ckcuni.h
  1203.  
  1204. ckcfn3.$(EXT): ckcfn3.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h \
  1205.         ckuxla.h ckclib.h ckcuni.h
  1206.  
  1207. ckuxla.$(EXT): ckuxla.c ckcker.h ckcsym.h ckcdeb.h ckcxla.h ckuxla.h ckclib.h \
  1208.          ckcuni.h
  1209.  
  1210. ckcuni.$(EXT): ckcuni.c ckcdeb.h ckcker.h ckucmd.h ckcuni.h ckcxla.h \
  1211.         ckuxla.h ckcuni.h
  1212.  
  1213. ckuusr.$(EXT): ckuusr.c ckucmd.h ckcker.h ckuusr.h ckcsym.h ckcdeb.h ckcxla.h \
  1214.         ckuxla.h ckcasc.h ckcnet.h ckctel.h ckclib.h ckcuni.h
  1215.  
  1216. ckuus2.$(EXT): ckuus2.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1217.         ckcasc.h ckcnet.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1218.  
  1219. ckuus3.$(EXT): ckuus3.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1220.         ckcasc.h ckcnet.h ckcsym.h ckctel.h ckctel.h ckclib.h ckcuni.h
  1221.  
  1222. ckuus4.$(EXT): ckuus4.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1223.         ckcasc.h ckcnet.h ckuver.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1224.  
  1225. ckuus5.$(EXT): ckuus5.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcnet.h \
  1226.          ckcsym.h ckctel.h ckclib.h ckcxla.h ckuxla.h ckcuni.h
  1227.  
  1228. ckuus6.$(EXT): ckuus6.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcnet.h \
  1229.          ckcsym.h ckctel.h ckclib.h
  1230.  
  1231. ckuus7.$(EXT): ckuus7.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1232.         ckcasc.h ckcnet.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1233.  
  1234. ckuusx.$(EXT): ckuusx.c ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcsym.h \
  1235.         ckcsig.h ckcnet.h ckctel.h ckclib.h ckcxla.h ckuxla.h ckcuni.h
  1236.  
  1237. ckuusy.$(EXT): ckuusy.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h ckctel.h \
  1238.          ckclib.h
  1239.  
  1240. ckucmd.$(EXT): ckucmd.c ckcasc.h ckucmd.h ckcdeb.h ckcsym.h ckctel.h ckclib.h
  1241.  
  1242. ckufio.$(EXT): ckufio.c ckcdeb.h ckuver.h ckcsym.h ckclib.h \
  1243.         ckcxla.h ckuxla.h ckcuni.h
  1244.  
  1245. ckutio.$(EXT): ckutio.c ckcdeb.h ckcnet.h ckuver.h ckcsym.h ckctel.h ckclib.h
  1246.  
  1247. ckucon.$(EXT): ckucon.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h ckctel.h \
  1248.          ckclib.h
  1249.  
  1250. ckucns.$(EXT): ckucns.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h ckctel.h \
  1251.          ckclib.h ckcxla.h ckuxla.h ckcuni.h
  1252.  
  1253. ckcnet.$(EXT): ckcnet.c ckcdeb.h ckcker.h ckcnet.h ckcsym.h ckcsig.h ckctel.h \
  1254.          ckclib.h
  1255.  
  1256. ckctel.$(EXT): ckcsym.h ckcdeb.h ckcker.h ckcnet.h ckctel.h ckclib.h
  1257.  
  1258. wart: ckwart.$(EXT)
  1259.     $(CC) $(LNKFLAGS) -o wart ckwart.$(EXT) $(LIBS)
  1260.  
  1261. ckcmdb.$(EXT): ckcmdb.c ckcdeb.h ckcsym.h ckclib.h
  1262.  
  1263. ckwart.$(EXT): ckwart.c
  1264.  
  1265. ckudia.$(EXT): ckudia.c ckcker.h ckcdeb.h ckucmd.h ckcasc.h ckcsym.h ckcsig.h \
  1266.         ckcnet.h ckctel.h ckclib.h
  1267.  
  1268. ckuscr.$(EXT): ckuscr.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h ckcsig.h \
  1269.         ckcnet.h ckctel.h ckclib.h
  1270.  
  1271. ckusig.$(EXT): ckusig.c ckcasc.h ckcdeb.h ckcker.h ckcnet.h ckuusr.h \
  1272.         ckcsig.h ckctel.h ckclib.h
  1273.  
  1274. ckcftp.$(EXT): ckcftp.c ckcdeb.h ckcasc.h ckcker.h ckucmd.h ckuusr.h \
  1275.         ckcnet.h ckctel.h ckcxla.h ckuxla.h ckcuni.h
  1276.  
  1277. ckupty.$(EXT): ckupty.c ckupty.h ckcdeb.h
  1278.  
  1279. ckuath.$(EXT): ckuath.c ckcdeb.h ckucmd.h ckuath.h ckuat2.h ckctel.h \
  1280.          ckclib.h ckcnet.h
  1281.  
  1282. ck_crp.$(EXT): ck_crp.c ckcdeb.h ckcnet.h ckuath.h ckclib.h
  1283.  
  1284. ck_ssl.$(EXT): ck_ssl.c ckcdeb.h ckucmd.h ckuath.h ckuat2.h ckctel.h \
  1285.          ckclib.h ck_ssl.h
  1286.  
  1287. ###########################################################################
  1288. #
  1289. # Entries to make C-Kermit for specific systems.
  1290. #
  1291. # Put the ones that need short makefiles first.
  1292.  
  1293. #Apollo Aegis 9.x.  Includes TCP/IP support.
  1294. #You can also add processor-dependent optimization switches like -M570.
  1295. aegis:
  1296.     @echo Making C-Kermit $(CKVER) for Apollo Aegis 9.x...
  1297.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1298.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNOCSETS -DCK_CURSES -O $(KFLAGS)" \
  1299.     "LIBS = -lcurses -ltermcap"
  1300.  
  1301. #Apple Mac II, A/UX pre-3.0
  1302. #Warning, if "send *" doesn't work, try the auxufs makefile entry below.
  1303. aux:
  1304.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  1305.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1306.     "CFLAGS = -DAUX -DTCPSOCKET $(KFLAGS) -i -O" "LNKFLAGS = -i"
  1307.  
  1308. #Apple Mac II, A/UX pre-3.0, compiled with gcc
  1309. auxgcc:
  1310.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  1311.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1312.     "CFLAGS = -DAUX -DTCPSOCKET -traditional $(KFLAGS) -i -O" \
  1313.     "LNKFLAGS = " "CC = gcc" "CC2 = gcc"
  1314.  
  1315. #Apple Mac II, A/UX, pre-3.0, but with ufs file volumes, uses <dirent.h>.
  1316. auxufs:
  1317.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  1318.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1319.     "CFLAGS = -DAUX -DTCPSOCKET -DDIRENT $(KFLAGS) -i -O" "LNKFLAGS = -i"
  1320.  
  1321. #Apple Mac II, A/UX 3.0, compiled with gcc
  1322. aux3gcc:
  1323.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX 3.0...
  1324.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1325.     "CFLAGS = -DAUX -DHDBUUCP -DLFDEVNO -DTCPSOCKET -DDIRENT $(KFLAGS)" \
  1326.     "LNKFLAGS = -s" "LIBS = $(LIBS)" \
  1327.     "CC=gcc -pipe -traditional" "CC2=gcc -pipe -traditional"
  1328.  
  1329. #Apple Mac II, A/UX 3.0, compiled with gcc, uses curses
  1330. aux3cgcc:
  1331.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX 3.0...
  1332.     $(MAKE) "MAKE=$(MAKE)" aux3gcc KTARGET=$${KTARGET:-$(@)} \
  1333.     "KFLAGS=$(KFLAGS) -DCK_CURSES" "LIBS = -lcurses $(LIBS)"
  1334.  
  1335. # Tenon MachTen, tested on Apple Powerbook with MachTen 2.1.1.D.
  1336. # NOTE: This doesn't do anything about UUCP.  It only works if /usr/spool/uucp
  1337. # has permission of 777, and dialout device is world read/writeable.
  1338. machten:
  1339.     @echo Making C-Kermit $(CKVER) for MachTen...
  1340.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1341.     "CFLAGS= -DBSD43 -DTCPSOCKET -DSIG_V -DNDGPWNAM -DCK_CURSES -O \
  1342.     $(KFLAGS)"  "LIBS=-lcurses -ltermcap"
  1343.  
  1344. #Bell Labs Research UNIX V10
  1345. #Can't add TCP/IP because there is no sockets library.  It would have to
  1346. #be done using streams, but there is no code in C-Kermit for that.
  1347. #Remove -DNOJC if desired (if your system has csh, ksh, or bash).
  1348. bellv10:
  1349.     @echo Making C-Kermit $(CKVER) for Bell Labs Research UNIX V10...
  1350.     $(MAKE) wermit KTARGET=$${KTARGET-$(@)} \
  1351.     "CFLAGS= -DBELLV10 -DBSD4 -DNDIR -DNOJC -DNOSYSIOCTLH -DNOSETREU \
  1352.     -DNOCSETS -MINIDIAL $(KFLAGS)"
  1353.  
  1354. # WARNING: The early BSD entries do not build in version 7.0 with the stock
  1355. # BSD compiler: "Too many defines".  Unless you can rebuild cpp to have more
  1356. # space for defines, these builds must be accomplished by:
  1357. # copying the /usr/include tree to someplace else, preprocessing there with cc
  1358. # -E -I./include or whatever (plus all the same -D's, adding any necessary
  1359. # -U/-D to override the architecture)), renaming the the resulting files back
  1360. # to their original names, bringing them back to the original BSD system, and
  1361. # running the make target there.  This technique was used for 4.2 and 4.3 BSD
  1362. # on a VAX in C-Kermit 7.0.
  1363.  
  1364. #Berkeley Unix 4.1
  1365. bsd41:
  1366.     @echo Making C-Kermit $(CKVER) for 4.1BSD...
  1367.     $(MAKE) wermit KTARGET=$${KTARGET-$(@)} \
  1368.     "CFLAGS= -DBSD41" "LIBS = -ljobs"
  1369.  
  1370. #Berkeley 4.2, 4.3, also Ultrix-32 1.x, 2.x, 3.x, many others
  1371. # Add -O, -s, etc, if they work.
  1372. # If you have a version of BSD but signal() is void rather than int,
  1373. # "make bsd KFLAGS=-DSIG_V".
  1374. bsd42:
  1375.     @echo Making C-Kermit $(CKVER) for 4.2BSD...
  1376.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1377.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNOREALPATH -DNOTIMEH -DNOIKSD \
  1378.     -DCK_CURSES -DSYSTIMEBH -DNOPUTENV -DNOANSI -DBIGBUFOK -DBSD42HACK \
  1379.     $(KFLAGS)" "LIBS=-lcurses -ltermcap $(LIBS)"
  1380.  
  1381. bsd:
  1382.     $(MAKE) bsd42 KTARGET=$${KTARGET-$(@)}
  1383.  
  1384. #Berkeley Unix 4.2 or 4.3 with HoneyDanBer UUCP
  1385. bsdhdb:
  1386.     @echo Making C-Kermit $(CKVER) for 4.2BSD with HDB UUCP...
  1387.     $(MAKE) bsd KTARGET=$${KTARGET-$(@)} \
  1388.     "KFLAGS= -DHDBUUCP $(KFLAGS)"
  1389.  
  1390. #Berkeley Unix 4.3 with acucntrl program, curses, TCP/IP included.
  1391. bsd43:
  1392.     @echo Making C-Kermit $(CKVER) for 4.3BSD...
  1393.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1394.     "CFLAGS= -DBSD4 -DBSD43 -DTCPSOCKET -DNOREALPATH -DNOTIMEH -DNOIKSD \
  1395.     -DCK_CURSES -DACUCNTRL -DSYSTIMEBH -DNOPUTENV -DNOANSI -DBIGBUFOK \
  1396.     -DBSD42HACK $(KFLAGS)" "LIBS=-lcurses -ltermcap $(LIBS)"
  1397.  
  1398. #4.3BSD, curses excluded
  1399. bsd43nc:
  1400.     @echo Making C-Kermit $(CKVER) for 4.3BSD...
  1401.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1402.     "CFLAGS= -DBSD4 -DBSD43 -DTCPSOCKET -DNOREALPATH -DNOTIMEH \
  1403.     -DACUCNTRL -DSYSTIMEBH -DNOIKSD -DNOPUTENV -DNOANSI -DBIGBUFOK \
  1404.     -DBSD42HACK $(KFLAGS)" "LIBS=$(LIBS)"
  1405.  
  1406. #4.3BSD, TCP/IP excluded.
  1407. bsd43nonet:
  1408.     @echo Making C-Kermit $(CKVER) for 4.3BSD + curses...
  1409.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1410.     "CFLAGS= -DBSD4 -DBSD43 -DTCPSOCKET -DNOREALPATH -DNOTIMEH -DNOIKSD \
  1411.     -DCK_CURSES -DACUCNTRL -DSYSTIMEBH -DNOPUTENV -DNOANSI -DBIGBUFOK \
  1412.     -DBSD42HACK -DNONET $(KFLAGS)" "LIBS=-lcurses -ltermcap $(LIBS)"
  1413.  
  1414. #Berkeley Unix 4.2 or 4.3 with lock directory /usr/spool/uucp/LCK/LCK..ttyxx,
  1415. #but without acucntrl program
  1416. bsdlck:
  1417.     @echo Making C-Kermit $(CKVER) for 4.2BSD, /usr/spool/uucp/LCK/...
  1418.     $(MAKE) bsd KTARGET=$${KTARGET-$(@)} \
  1419.     "KFLAGS= -DLCKDIR $(KFLAGS)"
  1420.  
  1421. #Berkeley UNIX 4.4-Lite, 4.4-Encumbered, Net/2, etc (Post-Reno),
  1422. #with TCP/IP networking.  This includes NetBSD, FreeBSD, etc.
  1423. #NOTE: This is not a pure POSIX configuration.  Using -DPOSIX instead of
  1424. # -DBSD44 prevents any kind of directory-reading (for wildcard expansion),
  1425. #and disallows use of ENOTCONN symbol for detecting broken network
  1426. #connections, and disallows RTS/CTS flow control, and would also require
  1427. #definition of the appropriate UUCP lockfile convention.
  1428. #Do not add -DCK_POSIX_SIG without reading <signal.h> first!  For example,
  1429. #sigsetjmp(), etc, tend to be defined but not implemented.
  1430. bsd44:
  1431.     @echo Making C-Kermit $(CKVER) for 4.4BSD...
  1432.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1433.     "CFLAGS= -DBSD44 -DTCPSOCKET $(KFLAGS) -O"
  1434.  
  1435. #Berkeley UNIX 4.4, as above, but with curses for fullscreen display
  1436. #Please read notes for bsd44 entry just above.
  1437. # NOTE: This one dumps core on the real 4.4BSD system at UC Berkeley
  1438. # (an HP-9000 300), so use the no-curses version for that one.
  1439. bsd44c:
  1440.     @echo Making C-Kermit $(CKVER) for 4.4BSD with curses...
  1441.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1442.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET $(KFLAGS) -O" \
  1443.     "LIBS= -lcurses -ltermcap $(LIBS)"
  1444.  
  1445. #For FreeBSD 1.x.  Not tested recently - might need ncurses.
  1446. freebsd1:
  1447.     @echo 'Making C-Kermit $(CKVER) for FreeBSD...'
  1448.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1449.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -funsigned-char \
  1450.     -DFNFLOAT $(KFLAGS) -O -pipe" \
  1451.     "LIBS= -lcurses -ltermcap -lcrypt -lm $(LIBS)"
  1452.  
  1453. #FreeBSD 2.x with ncurses
  1454. freebsd2:
  1455.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 2.x with ncurses...'
  1456.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1457.     "CFLAGS= -DBSD44 -DCK_NCURSES -DTCPSOCKET -DNOCOTFMC -DUSE_STRERROR \
  1458.     -DTPUTSARGTYPE=int -DTPUTSARG1CONST -DFREEBSD2 -funsigned-char \
  1459.     -DFNFLOAT $(KFLAGS) -O -pipe" \
  1460.     "LIBS= -lncurses -ltermlib -lcrypt -lm $(LIBS)"
  1461.  
  1462. #For FreeBSD 2.x -- Uses curses rather than ncurses
  1463. freebsd2c:
  1464.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 2.x with curses...'
  1465.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1466.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -DUSE_STRERROR \
  1467.     -DTPUTSARGTYPE=int -DTPUTSARG1CONST -DFREEBSD2 -DFNFLOAT \
  1468.     -funsigned-char $(KFLAGS) -O -pipe" \
  1469.     "LIBS= -lcurses -ltermlib -lcrypt -lm $(LIBS)"
  1470.  
  1471. #FreeBSD 3.x with ncurses and uu_lock()
  1472. #(Note: uu_lock() goes back to 2.2.2, but not necessarily 2.0)
  1473. freebsd3:
  1474.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 3.x with ncurses...'
  1475.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1476.     "CFLAGS= -DBSD44 -DCK_NCURSES -DTCPSOCKET -DNOCOTFMC -funsigned-char \
  1477.     -DTPUTSARGTYPE=int -DUSE_STRERROR -DFREEBSD3 -DUSE_UU_LOCK -DFNFLOAT \
  1478.     $(KFLAGS) -O -pipe" \
  1479.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1480.  
  1481. #As above but with curses rather than ncurses.
  1482. freebsd3c:
  1483.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 3.x with curses...'
  1484.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1485.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -DUSE_UU_LOCK \
  1486.     -DTPUTSARGTYPE=int -DUSE_STRERROR -DFREEBSD3 $(KFLAGS) -DFNFLOAT \
  1487.     -funsigned-char -pipe -O" \
  1488.     "LIBS= -lcurses -lcrypt -lutil -lm $(LIBS)"
  1489.  
  1490. #FreeBSD 4.0 with ncurses and uu_lock().  Note - there is no curses in 4.0.
  1491. #ncurses 5.0 is broken requiring us to work around with setbuf().
  1492. freebsd4:
  1493.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.x with ncurses...'
  1494.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1495.     "CFLAGS= -DBSD44 -DCK_NCURSES -DTCPSOCKET -DNOCOTFMC -DFNFLOAT \
  1496.     -funsigned-char -DTPUTSARGTYPE=int -DUSE_STRERROR -DFREEBSD4 \
  1497.     -DNONOSETBUF -DUSE_UU_LOCK $(KFLAGS) -O -pipe" \
  1498.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1499.  
  1500. #FreeBSD 4.1, as above but without the NONOSETBUF hack and with CK_NEWTERM.
  1501. #This works with ncurses 5.1.
  1502. freebsd41:
  1503.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.1 with ncurses...'
  1504.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1505.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1506.     -DFREEBSD4 -DFREEBSD41 -DUSE_UU_LOCK -DFNFLOAT \
  1507.     -funsigned-char -DTPUTSARGTYPE=int -DUSE_STRERROR $(KFLAGS) -O -pipe" \
  1508.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1509.  
  1510. #Default FreeBSD make for C-Kermit 8.0...
  1511. freebsd:
  1512.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} freebsd41
  1513.  
  1514. #FreeBSD 4.2, like 4.1.
  1515. freebsd42:
  1516.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.2 with ncurses...'
  1517.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1518.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1519.     -DFREEBSD4 -DFREEBSD41 -DFREEBSD42 -DUSE_UU_LOCK -DFNFLOAT \
  1520.     -funsigned-char -DTPUTSARGTYPE=int -DUSE_STRERROR $(KFLAGS) -O -pipe" \
  1521.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1522.  
  1523. #FreeBSD 4.3, like 4.2.
  1524. freebsd43:
  1525.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.3 with ncurses...'
  1526.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1527.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1528.     -DFREEBSD4 -DFREEBSD41 -DFREEBSD42 -DFREEBSD43 -DUSE_UU_LOCK \
  1529.     -DFNFLOAT -funsigned-char -DTPUTSARGTYPE=int -DUSE_STRERROR $(KFLAGS) \
  1530.     -O -pipe" "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1531.  
  1532. #FreeBSD 4.4, like 4.3.
  1533. freebsd44:
  1534.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.3 with ncurses...'
  1535.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1536.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1537.     -DFREEBSD4 -DFREEBSD41 -DFREEBSD42 -DFREEBSD43 -DFREEBSD44 \
  1538.     -DUSE_UU_LOCK -DFNFLOAT -funsigned-char -DTPUTSARGTYPE=int \
  1539.     -DUSE_STRERROR $(KFLAGS) -O -pipe" \
  1540.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1541.  
  1542. #FreeBSD 4.5, like 4.3 and 4.4.
  1543. freebsd45:
  1544.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.3 with ncurses...'
  1545.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1546.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1547.     -DFREEBSD4 -DUSE_UU_LOCK -DFNFLOAT -funsigned-char -DTPUTSARGTYPE=int \
  1548.     -DFREEBSD41 -DFREEBSD42 -DFREEBSD43 -DFREEBSD44 -DFREEBSD45 \
  1549.     -DUSE_STRERROR $(KFLAGS) -O -pipe" \
  1550.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1551.  
  1552. freebsd44+srp+openssl:
  1553.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.3 with SRP,SSL...'
  1554.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  1555.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1556.     -DFREEBSD4 -DFREEBSD41 -DFREEBSD42 -DFREEBSD43 -DFREEBSD44 \
  1557.     -DCK_AUTHENTICATION -DCK_SRP \
  1558.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  1559.     -DCK_CURSES -DTCPSOCKET  \
  1560.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  1561.     "LIBS = $(SRPLIB) $(SSLLIB) \
  1562.     -lncurses -ltermcap -lsrp -lssl -lkrypto -lcrypto \
  1563.     -lcrypt "
  1564.  
  1565. #NetBSD - all versions - with curses, not ncurses.
  1566. #Some builds seem to need KFLAGS=-DTPUTSFNTYPE=int, others don't.
  1567. #(Only to get rid of a warning -- the binaries are identical.)
  1568. netbsd:
  1569.     @echo Making C-Kermit $(CKVER) for NetBSD with curses...
  1570.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1571.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DUSE_STRERROR -DTPUTSISVOID \
  1572.     -DCK_DTRCD -DCK_DTRCTS -DTPUTSARGTYPE=int -DFNFLOAT $(KFLAGS) -O" \
  1573.     "LIBS= -lcurses -lcrypt -lm $(LIBS)"
  1574.  
  1575. #NetBSD 1.5.x in which the return type of the function pointer that is the 
  1576. #third argument of tputs() was changed from void to int...  The regular NetBSD
  1577. #target builds OK here but this one eliminates the (harmless) warning.
  1578. netbsd15:
  1579.     @echo Making C-Kermit $(CKVER) for NetBSD with curses...
  1580.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1581.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DUSE_STRERROR -DNETBSD15 \
  1582.     -DCK_DTRCD -DCK_DTRCTS -DTPUTSARGTYPE=int -DFNFLOAT $(KFLAGS) -O" \
  1583.     "LIBS= -lcurses -lcrypt -lm $(LIBS)"
  1584.  
  1585. #NetBSD with ncurses requested explicitly rather than curses-which-is-ncurses
  1586. netbsdn:
  1587.     @echo Making C-Kermit $(CKVER) for NetBSD with ncurses...
  1588.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1589.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -DCK_DTRCD \
  1590.     -DCK_DTRCTS -DFNFLOAT -DUSE_STRERROR -DTPUTSISVOID -DTPUTSARGTYPE=int \
  1591.     $(KFLAGS) -O" \
  1592.     "LIBS= -L/usr/pkg/lib -lncurses -lcrypt -lm $(LIBS)"
  1593.  
  1594. #OpenBSD - All versions.
  1595. #Uses ncurses as its curses so use -ltermlib, not -ltermcap
  1596. #But it doesn't use uu_lock() which was introduced in OpenBSD 2.3.
  1597. #For that use the next entry.
  1598. #Add -DMAINTYPE=int if you get complaints about main: return type is not int.
  1599. openbsdold:
  1600.     @echo Making C-Kermit $(CKVER) for OpenBSD...
  1601.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1602.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1603.     -DFNFLOAT -DNDSYSERRLIST $(KFLAGS) -O" "LIBS= -lcurses -ltermlib -lm"
  1604.  
  1605. #OpenBSD 2.3 or later
  1606. #Add -DMAINTYPE=int if you get complaints about main: return type is not int.
  1607. #For C-Kermit 8.0 (Christian Weisgerber):
  1608. # -ltermlib removed (presumably because -lcurses==ncurses already includes it)
  1609. # -DUSE_UU_LOCK and -lutil added for uu_lock()
  1610. # -DNDSYSERRLIST changed to -DUSE_STRERROR
  1611. #If this gives you trouble use the previous entry.
  1612. openbsd:
  1613.     @echo Making C-Kermit $(CKVER) for OpenBSD 2.3 or later...
  1614.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1615.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1616.     -DUSE_UU_LOCK -DFNFLOAT -DUSE_STRERROR $(KFLAGS) -O" \
  1617.     "LIBS= -lcurses -lutil -lm"
  1618.  
  1619. # make 386bsd 0.0new, posix
  1620. # for  386bsd 0.1.24, change /usr/include/termios.h to #define NCCS if
  1621. #  _POSIX_SOURCE is #defined. (source: lewine, posix prgmrs guide, o`reilly)
  1622. #NOTE: Lock directory is /var/spool/lock.  Formerly, it was /var/spool/uucp,
  1623. #but reportedly <wjones@halcyon.com> that was due to a typo in 'man tip'.
  1624. 386bsd:
  1625.     @echo 'Making C-Kermit $(CKVER) for jolix 386BSD 0.0new and 0.1.24...'
  1626.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1627.     "CFLAGS= -DPOSIX -DSETREUID -DPIDSTRING -DUSLEEP \
  1628.     -D_386BSD -DCK_CURSES -DTCPSOCKET \
  1629.     -DLOCK_DIR=\\\"/var/spool/lock\\\" \
  1630.     $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lcurses -ltermcap"
  1631.  
  1632. #Mac OS X 1.0 (Rhapsody, Darwin) -- TCP/IP but no curses.
  1633. macosx10:
  1634.     @echo Making C-Kermit $(CKVER) for `uname -s`...
  1635.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1636.     "CFLAGS= -DMACOSX10 -DTCPSOCKET -O $(KFLAGS)"
  1637.  
  1638. #Mac OS X 1.0 (Rhapsody, Darwin) -- TCP/IP and curses.
  1639. #Note: curses must be obtained separately.  See next entry for ncurses.
  1640. #Add "LIBS = -lcurses -ltermcap" if necessary (but reportedly it is not).
  1641. macosx10c:
  1642.     @echo Making C-Kermit $(CKVER) for `uname -s` + curses...
  1643.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1644.     "CFLAGS= -DMACOSX10 -DCK_CURSES -DTPUTSFNTYPE=void -DTPUTSISVOID \
  1645.     -DTCPSOCKET -O $(KFLAGS)"
  1646.  
  1647. #Mac OS X 1.0 (Rhapsody, Darwin) -- TCP/IP and ncurses.
  1648. #Note: ncurses must be obtained separately.
  1649. #In the event of trouble with this one try the next one.
  1650. macosx10nc:
  1651.     @echo Making C-Kermit $(CKVER) for `uname -s` + ncurses...
  1652.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1653.     "CFLAGS= -DMACOSX10 -DCK_NCURSES -DTCPSOCKET -O $(KFLAGS) " \
  1654.     "LIBS= -lncurses $(LIBS)"
  1655.  
  1656. #The problem here is that if curses.h also exists, it conflicts with
  1657. #ncurses.h and and we have fatal errors.  If this happens to you, then
  1658. #try this entry.
  1659. macosx10ncx:
  1660.     @echo Making C-Kermit $(CKVER) for `uname -s` + ncurses...
  1661.     @rm -f ./curses.h; touch ./curses.h
  1662.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1663.     "CFLAGS= -DMACOSX10 -DCK_NCURSES -DTCPSOCKET -I. -O $(KFLAGS) " \
  1664.     "LIBS= -lncurses $(LIBS)"
  1665.     @rm -f ./curses.h
  1666.  
  1667. #Acorn RISCiX, based on ...
  1668. #Berkeley Unix 4.2 or 4.3 with lock directory /usr/spool/uucp/LCK/LCK..ttyxx,
  1669. #but without acucntrl program
  1670. riscix:
  1671.     @echo Making C-Kermit $(CKVER) for RISCiX, /usr/spool/uucp/LCK..ttyxx
  1672.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1673.         "CFLAGS= -DBSD42 -DBSD4 -DRISCIX -DNOCSETS \
  1674.         -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DDIRENT -DCK_CURSES \
  1675.         -DMAXSP=9024 -DMAXRD=9024 -DSBSIZ=9050 -DRBSIZ=9050 \
  1676.         -DDFTTY=\\\"/dev/serial\\\" -DNOCSETS -DNOCYRIL \
  1677.         -DNOANSI -w -O2 -fomit-frame-pointer" \
  1678.         "LIBS= -lcurses -ltermcap " \
  1679.         "CC= /usr/ucb/cc" \
  1680.         "CC2= /usr/ucb/cc"
  1681.  
  1682. #Acorn RISCiX, as above, but using gcc
  1683. riscix-gcc:
  1684.     @echo Making C-Kermit $(CKVER) for RISCiX, /usr/spool/uucp/LCK..ttyxx
  1685.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1686.         "CFLAGS= -DBSD42 -DBSD4 -DRISCIX -DNOCSETS \
  1687.         -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DDIRENT -DCK_CURSES \
  1688.         -DMAXSP=9024 -DMAXRD=9024 -DSBSIZ=9050 -DRBSIZ=9050 \
  1689.         -DDFTTY=\\\"/dev/serial\\\" -DNOCSETS -DNOCYRIL \
  1690.         -DNOANSI -w -O2 -fomit-frame-pointer" \
  1691.         "LIBS= -lcurses -ltermcap " \
  1692.         "CC= gcc -mbsd" \
  1693.         "CC2= gcc -mbsd"
  1694.  
  1695. #Convergent CTIX 6.4.1
  1696. ctix:
  1697.     @echo 'Making C-Kermit $(CKVER) for Convergent CTIX 6.4.1'
  1698.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1699.     "CFLAGS= -DSVR3 -DDIRENT -DTCPSOCKET -DHDBUUCP -DCK_CURSES \
  1700.     -DNONAWS -DNOLEARN $(KFLAGS) -XO" \
  1701.     "LNKFLAGS=-s" "LIBS=-lsocket -lcurses -lc_s"
  1702.     mcs -d wermit
  1703.  
  1704. # The following makefile entry should work for any Harris Night Hawk system
  1705. # (either 88k or 68k based) running release 6.1 or later of the CX/UX
  1706. # operating system. This is a POSIX and ANSI-C compliant system which also
  1707. # supports BSD networking. (Earlier CX/UX releases will probably work with
  1708. # sys5r3, but this has not been verified).
  1709. #
  1710. cx_ux:
  1711.     @echo Making C-Kermit $(CKVER) for Harris Night Hawk CX/UX 6.1 or later
  1712.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1713.     "CFLAGS=-DPOSIX -DTCPSOCKET -DHDBUUCP -DPID_T=pid_t -DWAIT_T=int \
  1714.     -Dd_ino=d_fileno -DUID_T=uid_t -DGID_T=gid_t $(KFLAGS) -Xa \
  1715.     -O3 -g" "LNKFLAGS=-O3"
  1716.  
  1717. #Intergraph Clipper, CLIX, job control, HDB UUCP.
  1718. clix:
  1719.     @echo 'Making C-Kermit $(CKVER) for Intergraph CLIX...'
  1720.     $(MAKE) wermit "CC=acc" "CC2=acc" KTARGET=$${KTARGET:-$(@)} \
  1721.     "CFLAGS= -w -DSVR3 -DCLIX -DDIRENT -DHDBUUCP -DNOSYSLOG -DUSE_MEMCPY \
  1722.     -DNOGETUSERSHELL -DNOREALPATH -DNOLEARN $(KFLAGS) -O" \
  1723.     "LNKFLAGS=" "LIBS= -lbsd"
  1724.  
  1725. #As above + TCP/IP...
  1726. clixnet:
  1727.     @echo 'Making networked C-Kermit $(CKVER) for Intergraph CLIX...'
  1728.     $(MAKE) wermit "CC=acc" "CC2=acc" KTARGET=$${KTARGET:-$(@)} \
  1729.     "CFLAGS= -w -DSVR3 -DCLIX -DDIRENT -DHDBUUCP -DNOSYSLOG -DUSE_MEMCPY \
  1730.     -DTCPSOCKET -DNOGETUSERSHELL -DNOLEARN -DNOREALPATH $(KFLAGS) -O" \
  1731.     "LNKFLAGS=" "LIBS= -lbsd"
  1732.  
  1733. #Mark Williams Coherent 286 or 386 on IBM PC family.
  1734. #There is a 64K limit on program size, so this is a command-line only version.
  1735. coherent:
  1736.     $(MAKE) "CFLAGS = -O -DCOHERENT -DNOANSI -DNOICP -DNOSETKEY -DNOLEARN \
  1737.     -DNOCSETS -DNOHELP -DNODIAL -DNOSCRIPT -DNODEBUG -DNOTLOG -DNOXMIT \
  1738.     -DNOMSEND -DNOFRILLS -DNOSYSIOCTLH -DSELECT_H $(KFLAGS) -VSUVAR" \
  1739.     -DNOFLOAT KTARGET=$${KTARGET:-$(@)} wermit
  1740.  
  1741. #Mark Williams Coherent 386 on IBM PC family.
  1742. #This will make a "minimum interactive" version - no scripts,
  1743. #no character sets, no help, no dial, no debug/transaction logging, no
  1744. #transmit, msend, mail, type, etc.
  1745. coherentmi:
  1746.     $(MAKE) "CFLAGS = -O -DCOHERENT -DNOANSI -DNOSETKEY -DNOLEARN \
  1747.     -DNOSHOW -DNOCSETS -DNOHELP -DNODIAL -DNOSCRIPT -DNODEBUG -DNOTLOG \
  1748.     -DNOXMIT -DNOMSEND -DNOFRILLS -DNOSYSIOCTLH -DNOSERVER -DNOUUCP \
  1749.     -DNOSPL -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ -DNOFLOAT \
  1750.     -DNOCMDL $(KFLAGS) -VSUVAR -DSELECT_H" KTARGET=$${KTARGET:-$(@)} \
  1751.     wermit
  1752.  
  1753. #Mark Williams Coherent 386 on IBM PC/AT family.
  1754. coherentmax:
  1755.     $(MAKE) "CFLAGS = -O -DCOHERENT -DNOANSI -DSELECT_H -DNOLEARN \
  1756.     -DNOFLOAT -DNOSYSIOCTLH $(KFLAGS) -VSUVAR" "LNKFLAGS = -O -s" \
  1757.     KTARGET=$${KTARGET:-$(@)} wermit
  1758.  
  1759. #Mark Williams Coherent 386 4.2.  Includes curses but not TCP/IP.
  1760. #Requires updates to the 4.2.10 compiler; the regular compiler fails to
  1761. #to handle "complex expressions".  NOFLOAT is so it can work on old PCs
  1762. #without floating-point hardware.
  1763. coherent42:
  1764.     $(MAKE) "CFLAGS = -T500000 -DNOFLOAT -DCOHERENT -DNOANSI -DSELECT \
  1765.     -DNOSYSLOG -DDIRENT -DCK_CURSES -DCK_NEWTERM -DCK_WREFRESH -VSUVAR \
  1766.     -DDCLGETCWD -DNOSYSIOCTLH -DNOINITGROUPS -DNOSYMLINK -DSELECT_H \
  1767.     -DDCLGETCWD -O $(KFLAGS)" \
  1768.     "LNKFLAGS = -O -s" KTARGET=$${KTARGET:-$(@)} \
  1769.     "LIBS  = -lsocket -lcurses" wermit
  1770.  
  1771. #DEC Ultrix 2.x
  1772. # Add -O, -DDYNAMIC, -s, etc, if they work.
  1773. ultrix2x:
  1774.     @echo Making C-Kermit $(CKVER) for Ultrix 2.x ...
  1775.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1776.     "CFLAGS= -DBSD4 -DTCPSOCKET -DDU2 -DNOGETUSERSHELL $(KFLAGS)"
  1777.  
  1778. du2:
  1779.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix2x
  1780.  
  1781. #DEC Ultrix 3.0 and 3.1
  1782. ultrix30:
  1783.     @echo Making C-Kermit $(CKVER) for Ultrix 3.0...
  1784.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1785.     "CFLAGS= -DBSD4 -DTCPSOCKET -DDIRENT -DSIG_V -DNOGETUSERSHELL \
  1786.     -DULTRIX3 -DCK_CURSES $(KFLAGS) -O" "LIBS= -lcurses -ltermcap"
  1787.  
  1788. du3:
  1789.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix30
  1790.  
  1791. ultrix3x:
  1792.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix30
  1793.  
  1794. #DEC Ultrix 4.0 or 4.1 on DECstation, VAXstation, VAX, etc.
  1795. ultrix40:
  1796.     @echo Making C-Kermit $(CKVER) for Ultrix 4.0 or 4.1...
  1797.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1798.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDU4 -DNOGETUSERSHELL \
  1799.     $(KFLAGS) -Olimit 1450" "LNKFLAGS = -s"
  1800.  
  1801. #DEC Ultrix 4.2-4.5 on DECstation, DECsystem, VAXstation, VAX, etc.
  1802. #Like ultrix40, except now C compiler supports -O2 optimization.
  1803. ultrix42:
  1804.     @echo Making C-Kermit $(CKVER) for Ultrix 4.2 or later...
  1805.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1806.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL $(KFLAGS) \
  1807.     -O2 -Olimit 1750" "LNKFLAGS = -s"
  1808.  
  1809. du42:
  1810.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix42
  1811.  
  1812. #DEC Ultrix 4.2-4.5 on DECstation, DECsystem, VAXstation, VAX, etc.
  1813. #Like du42, but with curses support added and a couple features.
  1814. ultrix42c:
  1815.     @echo Making C-Kermit $(CKVER) for Ultrix 4.2 or later...
  1816.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1817.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL \
  1818.     -DCK_CURSES -DNOIKSD $(KFLAGS)-G6 -O2 -Olimit 3000 " \
  1819.     "LNKFLAGS = -s" "LIBS= -lcurses -ltermcap"
  1820.  
  1821. ultrix43:
  1822.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DULTRIX43 $(KFLAGS)" \
  1823.     KTARGET=$${KTARGET-$(@)} ultrix42c
  1824.  
  1825. ultrix43notcp:
  1826.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DULTRIX43 -DNONET $(KFLAGS)" \
  1827.     KTARGET=$${KTARGET-$(@)} ultrix42c
  1828.  
  1829. # NOTE: need -DNODEBUG on MIPS to avoid relocation errors at link time.
  1830. # Actually now (8.0) that we have discovered the -G option maybe debugging 
  1831. # can be put back.
  1832. ultrix44:
  1833.     $(MAKE) "MAKE=$(MAKE)" \
  1834.     "KFLAGS=-DULTRIX44 -G7 -DNODEBUG -DNETPTY -DNO_DEVTTY $(KFLAGS)" \
  1835.     KTARGET=$${KTARGET-$(@)} ultrix42c
  1836.  
  1837. ultrix45:
  1838.     $(MAKE) "MAKE=$(MAKE)" \
  1839.     "KFLAGS=-DULTRIX45 $(KFLAGS)-DNETPTY -DNO_DEVTTY $(KFLAGS)" \
  1840.     KTARGET=$${KTARGET-$(@)} ultrix42c
  1841.  
  1842. du42c:
  1843.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix42c
  1844.  
  1845. #DEC Ultrix 4.3A or later on DECsystem and DECstation 5000/50, /150 or /260
  1846. #with MIPS R4x00 processor.  The "-mips3" switch generates R4000-specific
  1847. #code, which is faster and more compact, but *won't* run on earlier
  1848. #DECsystems and DECstations.
  1849. ultrix43-mips3:
  1850.     @echo Making C-Kermit $(CKVER) for Ultrix 4.3A or later, R4000 cpu...
  1851.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1852.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL \
  1853.     $(KFLAGS) -O2 -Olimit 1750 -mips3" "LNKFLAGS = -s -mips3"
  1854.  
  1855. du43-mips3:
  1856.     $(MAKE) "MAKE=$(MAKE)" ultrix43-mips3
  1857.  
  1858. #DEC Ultrix 4.3A or later on MIPS R4x000 based systems.
  1859. #Like ultrix43-mips3 but with curses support added
  1860. ultrix43c-mips3:
  1861.     @echo Making C-Kermit $(CKVER) for Ultrix 4.3A or later, R4000 cpu...
  1862.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1863.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL -DCK_CURSES \
  1864.     $(KFLAGS) -O2 -Olimit 3000 -mips3" "LNKFLAGS = -s -mips3" \
  1865.     "LIBS= -lcurses -ltermcap"
  1866.  
  1867. du43c-mips3:
  1868.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix43c-mips3
  1869.  
  1870. #DEC Ultrix 4.4 on DECstation 5000/50 or /150 with R4000 MIPS processor,
  1871. #or 5000/260 with R4400.  The "-mips3" switch generates R4000-specific code,
  1872. #which is faster and more compact but *won't* run on earlier DECstations.
  1873. ultrix44-mips3:
  1874.     @echo Making C-Kermit $(CKVER) for Ultrix 4.4, R4000 cpu ...
  1875.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1876.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL \
  1877.     $(KFLAGS) -O2 -Olimit 1450 -mips3" "LNKFLAGS = -s -mips3"
  1878.  
  1879. du44-mips3:
  1880.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix44c-mips3
  1881.  
  1882. #DEC Ultrix 4.2 on DECstation, VAXstation, VAX, etc, System V R4 environment
  1883. ultrix42s5r4:
  1884.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4 on Ultrix...'
  1885.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1886.     "CFLAGS = -O2 -Olimit 1500 -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  1887.     -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  1888.  
  1889. #OSF/1
  1890. osf:
  1891.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  1892.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  1893.     -DCK_CURSES -DCK_RTSCTS -DFNFLOAT $(KFLAGS)" \
  1894.     "LNKFLAGS = -s" "LIBS = -lbsd -lcurses -ltermcap -lm"
  1895.  
  1896. #DEC OSF/1 V1.0-1.3 on DECstation, VAX, Alpha, or PC.
  1897. dec-osf:
  1898.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  1899.     "CFLAGS= -DBSD4 -DOSF -DOSF13 -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  1900.     -DNOREALPATH -DNOIKSD -DCK_CURSES -DCK_RTSCTS -DFNFLOAT -DNODEBUG \
  1901.     -DNOUNICODE $(KFLAGS)" \
  1902.     "LNKFLAGS = -non_shared" "LIBS = -lbsd -lcurses -ltermcap -lm"
  1903.  
  1904. # This one causes "relocation out-of-range" errors in the linker.
  1905. old-dec-osf:
  1906.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V1.x...
  1907.     @echo If you are building for DEC OSF/1 2.0, please use dec-osf20.
  1908.     @echo Remove or adjust -O2 and/or -Olimit if they cause trouble.
  1909.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1910.     "KFLAGS= -O2 -Olimit 2400 $(KFLAGS)"
  1911.  
  1912. #DEC OSF/1 2.0 on Alpha and probably nowhere else.
  1913. #The only difference from OSF/1 is that optimization is omitted.
  1914. #The optimized version gets strange runtime errors, like the PAUSE command
  1915. #not working.  Add "-unsigned" to make all chars unsigned.
  1916. dec-osf20:
  1917.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V2.0...
  1918.     @echo Optimization omitted because it causes runtime errors.
  1919.     @echo See comments in makefile.
  1920.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} "KFLAGS= -DOSF20 $(KFLAGS)"
  1921.  
  1922. dec-osf30:
  1923.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V3.0...
  1924.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1925.     "KFLAGS= -DOSF30 -O2 -Olimit 2400 $(KFLAGS)"
  1926.  
  1927. #Digital UNIX 3.2
  1928. # Must compile ckuus[6x].c separately without optimization otherwise
  1929. # the optimizer dumps core - keep CFLAGS here in sync with those from osf.
  1930. du32:
  1931.     @echo Making C-Kermit $(CKVER) for Digital UNIX 3.2...
  1932.     $(MAKE) ckuus6.$(EXT) \
  1933.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  1934.     -DCK_CURSES -DCK_RTSCTS -DFNFLOAT -DOSF32 -DHDBUUCP $(KFLAGS)"
  1935.     $(MAKE) ckuusx.$(EXT) \
  1936.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  1937.     -DCK_CURSES -DCK_RTSCTS -DFNFLOAT -DOSF32 -DHDBUUCP $(KFLAGS)"
  1938.     $(MAKE) osf "KFLAGS= -DOSF32 -DHDBUUCP -O2 -Olimit 3200 $(KFLAGS)"
  1939.  
  1940. dec-osf32:
  1941.     $(MAKE) "MAKE=$(MAKE)" du32 KTARGET=$${KTARGET:-$(@)}
  1942.  
  1943. #Digital UNIX 4.0 through 4.0D (use tru64 targets for 4.0E and above)...
  1944. du40:
  1945.     @echo Making C-Kermit $(CKVER) for Digital UNIX 4.0...
  1946.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1947.     "KFLAGS= -DOSF40 -DHDBUUCP -DFNFLOAT \
  1948.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  1949.  
  1950. du40gcc:
  1951.     @echo Making C-Kermit $(CKVER) for Digital UNIX 4.0 with gcc ...
  1952.     $(MAKE) osf CC=gcc CC2=gcc KTARGET=$${KTARGET:-$(@)} \
  1953.     "KFLAGS= -DOSF40 -DHDBUUCP $(KFLAGS)"
  1954.  
  1955. #Tru64 Unix 4.0E
  1956. tru64-40e:
  1957.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 4.0E...
  1958.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1959.     "KFLAGS= -DOSF40 -DOSF40E -DTRU64 -DHDBUUCP -DFNFLOAT -DNOCOTFMC \
  1960.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  1961.  
  1962. tru64-40f:
  1963.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 4.0F...
  1964.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1965.     "KFLAGS= -DOSF40 -DOSF40F -DTRU64 -DHDBUUCP -DFNFLOAT -DNOCOTFMC \
  1966.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  1967.  
  1968. tru64-40g:
  1969.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 4.0G...
  1970.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1971.     "KFLAGS= -DOSF40 -DOSF40G -DTRU64 -DHDBUUCP -DFNFLOAT -DNOCOTFMC \
  1972.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  1973.  
  1974. tru64-50a:
  1975.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 5.0A...
  1976.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1977.     "KFLAGS= -DTRU64 -DOSF50 -DHDBUUCP \
  1978.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)"
  1979.  
  1980. tru64-51a:
  1981.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 5.1A...
  1982.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1983.     "KFLAGS= -DTRU64 -DOSF50 -DOSF51A -DHDBUUCP \
  1984.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)"
  1985.  
  1986. du50:
  1987.     $(MAKE) tru64-50a KTARGET=$${KTARGET:-$(@)}
  1988.  
  1989. du40-ridiculous-checking:
  1990.     @echo Making C-Kermit $(CKVER) for Digital UNIX 4.0.
  1991.     @echo Checking everything - assumes DECC...
  1992.     $(MAKE) osf KTARGET=$${KTARGET:-$(@)} \
  1993.     "KFLAGS= -DOSF40 -DHDBUUCP -w0 -warnprotos -check -portable \
  1994.     -unsigned -std1 -O3 -Olimit 1760 $(KFLAGS)"
  1995.  
  1996. #Sequent DYNIX/ptx 1.2.1
  1997. dynixptx12:
  1998.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX/ptx 1.2.1...
  1999.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2000.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DPTX -DNOGETUSERSHELL -DNOLEARN \
  2001.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t $(KFLAGS) -i -O" \
  2002.     "LNKFLAGS = -i"
  2003.  
  2004. #Sequent DYNIX/ptx 1.3 or 1.4
  2005. dynixptx13:
  2006.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX/ptx 1.3 TCP/IP...
  2007.     $(MAKE) xermit "CFLAGS= -O KTARGET=$${KTARGET:-$(@)} \
  2008.     -DSVR3 -DDIRENT -DHDBUUCP -DPTX -DCK_POLL -DNOGETUSERSHELL \
  2009.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DTCPSOCKET $(KFLAGS) -i" \
  2010.     "LNKFLAGS = -i" "LIBS = -lsocket -linet -lnsl"
  2011.  
  2012. #Sequent DYNIX/ptx 2.0, ANSI C compilation
  2013. #Should work on any hardware platform when DYNIX/ptx runs, including
  2014. #386, 486, Pentium.
  2015. dynixptx20:
  2016.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.0...'
  2017.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2018.     "CFLAGS= -DPOSIX -DHDBUUCP -DTCPSOCKET \
  2019.     -DWAIT_T=int -DPTX -DNOGETUSERSHELL $(KFLAGS) -O" \
  2020.     "LIBS = -lsocket -linet -lnsl"
  2021.  
  2022. #Sequent DYNIX/ptx 2.0, ANSI C compilation, with curses
  2023. dynixptx20c:
  2024.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.0...'
  2025.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2026.     "CFLAGS= -DPOSIX -DHDBUUCP -DTCPSOCKET -DWAIT_T=int -DPTX -DCK_CURSES \
  2027.     -DCK_NEWTERM -DNOGETUSERSHELL $(KFLAGS) -O" \
  2028.     "LIBS = -lsocket -linet -lnsl -lcurses -ltermcap"
  2029.  
  2030. #Sequent DYNIX/ptx 2.1.6, 80486, ANSI C compilation, with curses:
  2031. # -Xa -- use ANSI compiler.
  2032. # -Wc,-pw -- suppress portability warnings.
  2033. # -Wc,-i386 -- 80386 cpu.
  2034. # -Wc,-i486 -- 80486 cpu.
  2035. # -Wc,-P5 -- Pentium (default).
  2036. # -Wc,-O3 -- highest optimization.
  2037. # -Wa,-N17061 -- increase symbol table from default of 15013 for ckcuni.c.
  2038. # Early versions of DYNIX/ptx 2.1.x may need -DCK_POLL instead of -DSELECT.
  2039. # Add "$&" after the colon in the "xermit" target for parallel makes.
  2040. dynixptx216c:
  2041.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.1.6'
  2042.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2043.     "CFLAGS= -DPOSIX -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  2044.     -DSELECT -DCK_REDIR -DCK_NAWS -DCK_WREFRESH -DSW_ACC_ID \
  2045.     -DTCP_NODELAY=1 -DTRMBUFL=2048 -DBIGBUFOK -DHADDRLIST \
  2046.     -DPTX  -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL -DNOREALPATH \
  2047.     $(KFLAGS) -Xa -Wc,-pw -Wc,-i486 -Wc,-O3 -Wa,-N17061" \
  2048.     "LIBS = -lXbsd -lseq -lsocket -linet -lnsl -lmalloc -lm -lcurses" \
  2049.     "LNKFLAGS = -s"
  2050.  
  2051. #Sequent DYNIX/ptx 2.1.6, gcc 2.7.2.2, with curses:
  2052. dynixptx216cgcc:
  2053.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.1.6 gcc'
  2054.     $(MAKE) xermit "CC = gcc" "CC2 = gcc" KTARGET=$${KTARGET:-$(@)} \
  2055.     "CFLAGS= -DPOSIX -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  2056.     -DSELECT -DCK_REDIR -DCK_NAWS -DCK_WREFRESH -DSW_ACC_ID \
  2057.     -DTCP_NODELAY=1 -DTRMBUFL=2048 -DBIGBUFOK -DHADDRLIST \
  2058.     -DPTX  -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL -DNOREALPATH \
  2059.     $(KFLAGS) -O3 -pipe -funsigned-char" \
  2060.     "LIBS = -lXbsd -lseq -lsocket -linet -lnsl -lmalloc -lm -lcurses" \
  2061.     "LNKFLAGS = -s"
  2062.  
  2063. #Sequent DYNIX/ptx 4.0, ANSI C compilation, with curses
  2064. dynixptx41c:
  2065.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 4.0...'
  2066.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2067.     "CFLAGS= -DPOSIX -DHDBUUCP -DTCPSOCKET \
  2068.     -DWAIT_T=int -DPTX -DPTX4 -DCK_CURSES -DCK_NEWTERM \
  2069.     -DNOGETUSERSHELL $(KFLAGS) -O" \
  2070.     "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  2071.  
  2072. #Sequent DYNIX/ptx 4.4, ANSI C compilation, with curses
  2073. dynixptx44:
  2074.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 4.4...'
  2075.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2076.     "CFLAGS= -DPTX -DPTX4 -DPOSIX -DHDBUUCP -DTCPSOCKET -DWAIT_T=int \
  2077.     -DCK_CURSES -DCK_NEWTERM -DBIGBUFOK -DSELECT -DNOGETUSERSHELL \
  2078.     $(KFLAGS) -O" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  2079.  
  2080. #Sequent DYNIX 3.0.x
  2081. dynix3:
  2082.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.0.x...
  2083.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2084.     "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET -O \
  2085.     -DPWUID_T=int -DGID_T=int $(KFLAGS)"
  2086.  
  2087. #Sequent DYNIX 3.0.x, no ACUCNTRL
  2088. dynix3noacu:
  2089.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.0.x...
  2090.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2091.     "CFLAGS= -DBSD43 -DLCKDIR -DTCPSOCKET -O \
  2092.     -DUID_T=int -DGID_T=int $(KFLAGS)"
  2093.  
  2094. #Sequent DYNIX 3.1.x
  2095. dynix31:
  2096.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.1.x...
  2097.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2098.     "CFLAGS= -O -DDCLPOPEN -DLCKDIR -DBSD4 -DTCPSOCKET $(KFLAGS)"
  2099.  
  2100. #Sequent DYNIX 3.1.2, as above but with curses, to be compiled by gcc 2.3.3.
  2101. dynix31c:
  2102.     @echo 'Making C-Kermit $(CKVER) for Sequent DYNIX 3.1.2, curses...'
  2103.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2104.     "CFLAGS= -O2 -DDCLPOPEN -DACUCNTRL \
  2105.     -DBSD43 -DTCPSOCKET -DCK_CURSES -DUID_T=int \
  2106.     $(KFLAGS)" "LIBS= -lcurses -ltermcap"
  2107.  
  2108. #Convex C1 with Berkeley Unix
  2109. convex:
  2110.     @echo Making C-Kermit $(CKVER) for Convex C1 / BSD...
  2111.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2112.     "CFLAGS= -DBSD4 -DNOLEARN $(KFLAGS) -Dmsleep=mnap"
  2113.  
  2114. #Convex C210 with Convex/OS 8
  2115. convex8:
  2116.     @echo Making C-Kermit $(CKVER) for Convex C210 with OS 8
  2117.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2118.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNODEBUG -DDIRENT -DNOFILEH \
  2119.     $(KFLAGS) -DSIG_V -Dmsleep=mnap"
  2120.  
  2121. #Convex C2 with Convex OS 9.1 (should also work with 8.1 or later)
  2122. #with ANSI C compiler, uses BSD 4.3 uucp lockfile convention.
  2123. convex9:
  2124.     @echo Making C-Kermit $(CKVER) for Convex C210 with OS 9.1
  2125.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2126.     "CFLAGS= -DPOSIX -DCONVEX9 -DNOIEXTEN -DDIRENT -DNOFILEH -DTCPSOCKET \
  2127.     -D__STDC__ -DLCKDIR -Dmsleep=mnap -O -ext -tm c1 $(KFLAGS)" \
  2128.     "LNKFLAGS = -ext"
  2129.  
  2130. #Convex C2 with Convex OS 10.1 or later
  2131. #with gcc 2.x C compiler
  2132. convex10gcc:
  2133.     @echo Making C-Kermit $(CKVER) for Convex C2 with OS 10.1 using gcc
  2134.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2135.     "CFLAGS= -DPOSIX -DCONVEX9 -DNOIEXTEN -DDIRENT -DNOFILEH -DTCPSOCKET \
  2136.     -D__STDC__  -Dmsleep=mnap -O2 $(KFLAGS)" CC=gcc CC2=gcc
  2137.  
  2138. #Cray X-MP or Y-MP UNICOS 6.x or 7.x.
  2139. #NOTE: NPROC tells how many parallel makes to run.  If your Cray has multiple
  2140. #processors, you can set NPROC up to the number of CPUs, e.g. NPROC=16.
  2141. cray:
  2142.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 6.x or 7.0...
  2143.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2144.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS) -O1"
  2145.  
  2146. #Cray X-MP or Y-MP UNICOS 8.0 Alpha.
  2147. cray8:
  2148.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 8.0 Alpha...
  2149.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2150.     "CFLAGS= -DSVR4 -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS) -O1"
  2151.  
  2152. #Cray-2 or Cray 3-CSOS
  2153. #NOTE: NPROC tells how many parallel makes to run.  If your Cray has multiple
  2154. #processors, you can set NPROC up to the number of CPUs, e.g. NPROC=16.
  2155. craycsos:
  2156.     @echo 'Making C-Kermit $(CKVER) for Cray-2/3 CSOS
  2157.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2158.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET \
  2159.     $(KFLAGS) -DCK_ANSIC -DCK_CURSES" "LIBS=-lnet"
  2160.  
  2161. #NeXTSTEP 1.0 through 3.2.
  2162. #Includes fullscreen file transfer display (curses) and TCP/IP support.
  2163. #Uses shared library to make executable program about 80K smaller.
  2164. #Remove "LIBS = -lsys_s" if this causes trouble.
  2165. next:
  2166.     @echo Making C-Kermit $(CKVER) for NeXTSTEP...
  2167.     @echo 'If you get errors in ckutio.c about w_S, w_T, etc,'
  2168.     @echo 'add KFGLAGS=-DNOREDIRECT to your make command.'
  2169.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2170.     "CFLAGS= -DNEXT -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2171.     -pipe -DCK_CURSES $(KFLAGS) -O -w" "LIBS = -lsys_s -lcurses -ltermcap"
  2172.  
  2173. nextc:
  2174.     $(MAKE) "MAKE=$(MAKE)" next KTARGET=$${KTARGET:-$(@)}
  2175.  
  2176. nextg:
  2177.     $(MAKE) "MAKE=$(MAKE)" next KFLAGS=-Wall KTARGET=$${KTARGET:-$(@)}
  2178.  
  2179. nextgc:
  2180.     $(MAKE) "MAKE=$(MAKE)" next KFLAGS=-Wall KTARGET=$${KTARGET:-$(@)}
  2181.  
  2182. #NeXTSTEP 3.3.
  2183. #Includes fullscreen file transfer display and TCP/IP.
  2184. next33:
  2185.     @echo Making C-Kermit $(CKVER) for NeXTSTEP 3.3...
  2186.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2187.     "CFLAGS= -DNEXT33 -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2188.     -pipe -DCK_CURSES $(KFLAGS) -O -w" "LIBS = -lsys_s -lcurses -ltermcap"
  2189.  
  2190. #OPENSTEP 4.2 for Sparc, m680x0, HP PA-RISC, and Intel.
  2191. #Includes fullscreen file transfer display and TCP/IP.
  2192. #ckcpro.c compiled without optimization because it crashes the compiler.
  2193. openstep42:
  2194.     @echo Making C-Kermit $(CKVER) for OPENSTEP 4.2...
  2195.     $(MAKE) ckcpro.$(EXT) \
  2196.     "CFLAGS= -DOPENSTEP42 -DNEXT33 -DTCPSOCKET -DLCKDIR -DNOPUTENV \
  2197.     -DFNFLOAT -pipe -DCK_CURSES $(KFLAGS) -w"
  2198.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2199.     "CFLAGS= -DOPENSTEP42 -DNEXT33 -DTCPSOCKET -DLCKDIR -DNOPUTENV \
  2200.     -DFNFLOAT -pipe -DCK_CURSES $(KFLAGS) -O -w" \
  2201.     "LIBS = -lsys_s -lcurses -ltermcap"
  2202.  
  2203. #NeXT with malloc debugger
  2204. nextmd:
  2205.     @echo Making C-Kermit $(CKVER) for NeXT with malloc debugging...
  2206.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} \
  2207.     "CFLAGS= -DNEXT -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2208.     -DCK_CURSES $(KFLAGS) -O -w -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG" \
  2209.     "LIBS = -lsys_s -lcurses -ltermcap"
  2210.  
  2211. #Build for NeXTSTEP with "fat" binaries (MABs) that run on both Motorola
  2212. #and Intel platforms.
  2213. nextfat:
  2214.     $(MAKE) "MAKE=$(MAKE)" next KTARGET=$${KTARGET:-$(@)} \
  2215.     "KFLAGS=-Wall -arch m68k -arch i386" "LNKFLAGS = -arch m68k -arch i386"
  2216.  
  2217. #NeXTSTEP on Intel Platforms.
  2218. next486:
  2219.     @echo Making C-Kermit $(CKVER) for NeXTSTEP on Intel Platforms...
  2220.     @echo 'If you get errors in ckutio.c about w_S, w_T, etc,'
  2221.     @echo 'add KFGLAGS=D-DNOREDIRECT to your make command.'
  2222.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2223.     "CFLAGS= -DNEXT -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2224.     -DNODEBUG -O3 -fno-omit-frame-pointer -fschedule-insns2 -pipe \
  2225.     -DCK_CURSES $(KFLAGS) -w" "LIBS = -lsys_s -lcurses -ltermcap"
  2226.  
  2227. #Single binary that runs on NeXT 68030 and 68040, Intel, HP, and Sparc,
  2228. #as well as on OpenStep/Mach.
  2229. nextquadfat:
  2230.     $(MAKE) "MAKE=$(MAKE)" next KTARGET=$${KTARGET:-$(@)} \
  2231.     "KFLAGS=-Wall -arch m68k -arch i386 -arch hppa -arch sparc" \
  2232.     "LNKFLAGS = -arch m68k -arch i386 -arch hppa -arch sparc"
  2233.  
  2234. #BeBox
  2235. beboxdr7:
  2236.     @echo 'Making C-Kermit $(CKVER) for the BeBox...'
  2237.     @echo 'Link step will fail with default Metroworks linker 64K limit.'
  2238.     @echo 'Code Warrior Gold required to link big programs.'
  2239.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2240.     "CC=/boot/develop/tools/mwcc" "CC2=/boot/develop/tools/mwld" \
  2241.     "CFLAGS= -DBEBOX -DBE_DR_7 -DPOSIX -DNOUUCP -DNOLEARN $(KFLAGS) -O"
  2242.  
  2243. #BeBox BeOS DR7 only
  2244. bebox:
  2245.     @echo 'Making C-Kermit $(CKVER) for BeBox...'
  2246.     @echo 'Link step will fail with default Metroworks linker 64K limit.'
  2247.     @echo 'Code Warrior Pro 3.0 for BeBox required to link big programs.'
  2248.     $(MAKE) wermit "CC=mwcc" "CC2=mwld" KTARGET=$${KTARGET:-$(@)} \
  2249.     "CFLAGS= -DBEBOX -DPOSIX -DNOLEARN -DNOUUCP $(KFLAGS) -O"
  2250.  
  2251. #BeOS 4.5
  2252. #We have to use the wermit target because 'fd_set' is unknown.
  2253. beos45:
  2254.     $(MAKE) wermit "CC=$(CC)" "CC2=$(CC2)" KTARGET=$${KTARGET:-$(@)} \
  2255.     "CFLAGS= -DBEOS -DBEOS45 -DPOSIX -DNOIKSD -DNOREALPATH -DSYSTIMEH \
  2256.     -DNOCOTFMC -DNOUUCP -DNOLEARN $(KFLAGS) -O" \
  2257.     "LIBS = $(LIBS)"
  2258.  
  2259. #BeOS 4.5
  2260. beos45net:
  2261.     $(MAKE) beos45 "KFLAGS=-DTCPSOCKET -DNO_DNS_SRV $(KFLAGS)" \
  2262.     "LIBS=-lnet -lnetapi"
  2263.  
  2264. #Plan 9 from Bell Labs
  2265. plan9:
  2266.     @echo 'C-Kermit for Plan 9 from Bell Labs - calling ckpker.mk...'
  2267.     make -f ckpker.mk
  2268.  
  2269. #POSIX
  2270. posix:
  2271.     @echo 'Making C-Kermit $(CKVER) for pure POSIX...'
  2272.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2273.     "CFLAGS= -DPOSIX -DNOUUCP -DNOLEARN $(KFLAGS) -O"
  2274.  
  2275. #Berkeley Software Design Inc. BSDI
  2276. # Substitute "LIBS= -lnewcurses -ltermcap" if desired.
  2277. bsdi:
  2278.     @echo 'Making C-Kermit $(CKVER) for BSDI ...'
  2279.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2280.     "CFLAGS= -DBSD44 -DSETREUID -DSW_ACC_ID -DBIGBUFOK -DFIXCRTSCTS \
  2281.     -DTCPSOCKET -DCK_CURSES -DFNFLOAT $(KFLAGS) -O" \
  2282.     "LIBS= -lcurses -ltermcap -lm"
  2283.  
  2284. #Berkeley Software Design Inc. BSDI - has higher serial speeds than 1.x.
  2285. bsdi2:
  2286.     $(MAKE) "MAKE=$(MAKE)" bsdi KTARGET=$${KTARGET:-$(@)} \
  2287.     "KFLAGS=-DBSDI2 $(KFLAGS)"
  2288.  
  2289. bsdi3:
  2290.     $(MAKE) "MAKE=$(MAKE)" bsdi KTARGET=$${KTARGET:-$(@)} \
  2291.     "KFLAGS=-DBSDI2 -DBSDI3 $(KFLAGS)"
  2292.  
  2293. bsdi4:
  2294.     $(MAKE) "MAKE=$(MAKE)" bsdi KTARGET=$${KTARGET:-$(@)} \
  2295.     "KFLAGS=-DBSDI2 -DBSDI3 -DBSDI4 -DTPUTSFNTYPE=void -DTPUTSISVOID \
  2296.     -m486 $(KFLAGS)"
  2297.  
  2298. # (old name for the above)
  2299. bsdiposix:
  2300.     $(MAKE) "MAKE=$(MAKE)" bsdi
  2301.  
  2302.  
  2303. #Build a BSDI 4.x binary that also runs under FreeBSD (Terry Kennedy).
  2304. #But watch out for details like serial-port locking.
  2305. bsdix:
  2306.     $(MAKE) "MAKE=$(MAKE)" bsdi KTARGET=$${KTARGET:-$(@)} \
  2307.     "KFLAGS=-DBSDI2 -DBSDI3 -DBSDI4 -DTPUTSFNTYPE=void -DTPUTSISVOID \
  2308.     -m486 $(KFLAGS)" "LNKFLAGS=-static -Wl,-m,i386bsdi -Wl,-e,_start"
  2309.  
  2310. #Pyramid 9XXX (e.g. 9845) or MIServer T series, OSx 4.4b thru 5.1
  2311. pyramid:
  2312.     @echo Making C-Kermit $(CKVER) for Pyramid Dual Port OSx
  2313.     ucb $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2314.     "CFLAGS= -DBSD43 -DTCPSOCKET -DPYRAMID -O $(KFLAGS)" "LNKFLAGS = -s"
  2315.  
  2316. #Pyramid Dual Port OSx using HoneyDanBer UUCP, curses and TCP
  2317. pyramid-hdb:
  2318.     @echo Making C-Kermit $(CKVER) for Pyramid Dual Port OSx
  2319.     ucb $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2320.     "CFLAGS= -DBSD43 -DTCPSOCKET -DHBDUUCP -DCK_CURSES -O $(KFLAGS)" \
  2321.     "LNKFLAGS = -s" "LIBS = -lcurses -ltermcap"
  2322.  
  2323. #Pyramid DC/OSx (UNIX System V R4).
  2324. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  2325. #are not misplaced in sys (rather than netinet and arpa, respectively).
  2326. #Uses ANSI C.
  2327. #NOTE: Remove -O and Olimit:2500 from CFLAGS if TELNET connections do not work.
  2328. pyrdcosx:
  2329.     @echo 'Making C-Kermit $(CKVER) for Pyramid DC/OSx...'
  2330.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2331.     "CFLAGS = -Xa -O -DSVR4 -DDIRENT -DHDBUUCP -DSELECT -DNOGETUSERSHELL \
  2332.     -DCK_CURSES -DSTERMIOX -DTCPSOCKET -DPYRAMID -K Olimit:3100 \
  2333.     -DNO_DNS_SRV $(KFLAGS)" "LIBS= -lcurses -lsocket -lnsl" "LNKFLAGS = -s"
  2334.  
  2335. #IBM's AIX 3.0 on IBM 370 mainframe, tested on AIX F44 thru F50.
  2336. aix370:
  2337.     @echo Making C-Kermit $(CKVER) for IBM System/370 AIX 3.0...
  2338.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2339.     "CFLAGS= -DAIX370 -DTCPSOCKET -DLCKDIR -DDIRENT $(KFLAGS)" \
  2340.     "LIBS = -lbsd"
  2341.  
  2342. #IBM's AIX/ESA 2.1 (OSF/1) on IBM mainframe
  2343. aixesa:
  2344.     @echo Making C-Kermit $(CKVER) for IBM AIX/ESA...
  2345.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2346.     "CFLAGS= -DAIXESA -DTCPSOCKET $(KFLAGS) -O"
  2347.  
  2348. #IBM PS/2 with AIX 1.0 thru 1.3.
  2349. #  Reports indicate that -O switch must be omitted.
  2350. #  It is also possible that "make bsd" will work (reports welcome).
  2351. #  One report said "make LIBS=-lbsd bsd" did the trick.
  2352. #  NOTLOG is to get around a 'tlog' symbol defined in one of the headers.
  2353. ps2aix:
  2354.     @echo 'Making C-Kermit $(CKVER) for IBM AIX 1.x PS/2...'
  2355.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2356.     "CFLAGS = -DATTSV -DNOREALPATH -DPS2AIX10 -DSIG_V \
  2357.     -DNOUNICODE -DNOTLOG -DNOLEARN $(KFLAGS) -i" \
  2358.     "LNKFLAGS = -i"
  2359.  
  2360. ps2aixnetc:
  2361.     @echo 'Making C-Kermit $(CKVER) for IBM AIX 1.x PS/2...'
  2362.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2363.     "CFLAGS = -DATTSV -DNOREALPATH -DPS2AIX10 -DTCPSOCKET -DCK_CURSES \
  2364.     -DSIG_V -DNOUNICODE -DNOTLOG -DNOLEARN $(KFLAGS) -i" \
  2365.     "LIBS = -lcurses" "LNKFLAGS = -i"
  2366.  
  2367. ps2aix3:
  2368.     $(MAKE) ps2aix KTARGET=$${KTARGET:-$(@)}
  2369.  
  2370. #IBM RT PC with AIX 2.2.1, valid as of C-Kermit 8.0.
  2371. #NOTLOG because of a conflict in <sys/termio.h>.
  2372. #This one has unique and strange lockfiles.
  2373. #  -O removed on purpose (8.0).
  2374. #  In case of "compiler error: symbol table full", increase the -Nn number.
  2375. #  In case of "compiler error: Constant pool too big", boost the -Np number.
  2376. #  Add -DNOPUTENV if putenv() causes trouble.
  2377. #  Put -DNOIKSD back if IKSD-related problems occur.
  2378. rtaix:
  2379.     @echo 'Making C-Kermit $(CKVER) for IBM RT PC, AIX 2.2.1...'
  2380.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2381.     "CFLAGS = -DATTSV -DRTAIX -DHDBUUCP -DDIRENT -DNOTLOG -DTCPSOCKET \
  2382.     -DNOGETUSERSHELL -DCLSOPN -DNOREALPATH -DNOUNICODE -DBSD_INCLUDES \
  2383.     -DUSE_LSTAT -DFNFLOAT -Nn2500 -Np1000 -Wq,-SJ2 -a -w $(KFLAGS)" \
  2384.     "LIBS = -lm $(LIBS)" "LNKFLAGS = -s"
  2385.  
  2386. #IBM RT PC with AIX 2.2.1 + curses
  2387. rtaixc:
  2388.     $(MAKE) rtaix "KFLAGS=-DCK_CURSES" "LIBS=-lcurses"
  2389.  
  2390. #IBM RT PC with AIX (ACIS) 2.2.1 (BSD 4.3)
  2391. # Add -O, -DDYNAMIC, -s, etc, if they work.
  2392. rtacis:
  2393.     @echo Making C-Kermit $(CKVER) for RT PC with ACIS 2.2.1 = BSD 4.3...
  2394.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2395.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNOREALPATH -DNOIKSD -DNOPUTENV \
  2396.     $(KFLAGS) -U__STDC__" "LNKFLAGS = -s"
  2397.  
  2398. #IBM AIX 3.0, 3.1, or 3.2 for RISC System/6000.
  2399. rs6000:
  2400.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.0 or 3.1, RS/6000...
  2401.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2402.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR3 -DDIRENT -DCK_ANSIC \
  2403.     -DCK_POLL -DCLSOPN -DSELECT_H -DNOTTYLOCK -O $(KFLAGS)" \
  2404.     "LNKFLAGS = -s"
  2405.  
  2406. #IBM AIX 3.0, 3.1, or 3.2 for RISC System/6000, with curses.
  2407. rs6000c:
  2408.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.0 or 3.1, RS/6000...
  2409.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2410.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR3 -DDIRENT -DCK_ANSIC \
  2411.     -DCK_POLL -DCLSOPN -DCK_CURSES -DSELECT_H -DNOTTYLOCK -DNOREALPATH \
  2412.     -O $(KFLAGS)" "LIBS= -lcurses -ltermcap" "LNKFLAGS = -s"
  2413.  
  2414. aix30:
  2415.     $(MAKE) rs6000 KTARGET=$${KTARGET:-$(@)}
  2416.  
  2417. aix31:
  2418.     $(MAKE) rs6000 KTARGET=$${KTARGET:-$(@)}
  2419.  
  2420. #IBM AIX 3.2 for RISC System/6000.
  2421. #In case of "subprogram too complex" warnings, add "-qmaxmem=16000" to CFLAGS.
  2422. rs6aix32:
  2423.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.2, RS/6000...
  2424.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2425.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR4 -DDIRENT -DCK_ANSIC -DNOREALPATH \
  2426.     -DSELECT_H -DCLSOPN -DNOTTYLOCK -O $(KFLAGS)" "LNKFLAGS = -s"
  2427.  
  2428. #IBM AIX 3.2 for RISC System/6000.
  2429. rs6aix32c:
  2430.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.2, RS/6000, TCP+curses...
  2431.     @echo In case of Subprogram Too Complex warnings,
  2432.     @echo add -qmaxmem=16000 to CFLAGS.
  2433.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2434.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR4 -DDIRENT -DCK_ANSIC -DNOREALPATH \
  2435.     -DCLSOPN -DCK_CURSES -DSELECT_H -DNOTTYLOCK -O $(KFLAGS)" \
  2436.     "LNKFLAGS = -s" "LIBS=-lcurses"
  2437.  
  2438. aix32:
  2439.     $(MAKE) rs6aix32c KTARGET=$${KTARGET:-$(@)}
  2440.  
  2441. #IBM AIX 4.1, 4.1.x on RISC System/6000 or Power Series.
  2442. #Generates common binary for all platforms if using xlc (IBM C compiler).
  2443. #When using gcc, add -mcpu=common to generate common binary.
  2444. #Note that this one needs CK_NEWTERM.
  2445. # Add -bbigtoc in case ld fails with TOC overflow.
  2446. aix41:
  2447.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  2448.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2449.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  2450.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  2451.     -DNOGETUSERSHELL -qmaxmem=16000 -O $(KFLAGS)" \
  2452.     "LNKFLAGS = -s" "LIBS=-lcurses"
  2453.  
  2454. #Ditto but with gcc.
  2455. #Remove "CC=gcc CC2=gcc" if you have gcc installed as cc.
  2456. aix41g:
  2457.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  2458.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC=gcc" "CC2=gcc" \
  2459.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  2460.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  2461.     -DNOGETUSERSHELL -O $(KFLAGS)" \
  2462.     "LNKFLAGS = -s -Xlinker -bbigtoc" "LIBS=-lcurses"
  2463.  
  2464. # Add -bbigtoc in case ld fails with TOC overflow.
  2465. aix41+krb5+krb4:
  2466.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  2467.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} \
  2468.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  2469.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  2470.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  2471.     -DCK_ENCRYPTION -DCK_DES $(K5INC) $(K5INC)/krb5  \
  2472.     -DNOGETUSERSHELL -qmaxmem=16000 -O $(KFLAGS)" \
  2473.     "LNKFLAGS = -s" \
  2474.     "LIBS = $(K5LIB) -lcurses -lkrb4 -ldes425 -lkrb5 \
  2475.     -lcom_err -lk5crypto -lgssapi_krb5"
  2476.  
  2477. #Old name for "aix41".
  2478. rs6aix41c:
  2479.     $(MAKE) aix41 KTARGET=$${KTARGET:-$(@)}
  2480.  
  2481. #IBM AIX 4.1, 4.1.x, or 4.2 on RISC System/6000 or Power Series,
  2482. # with X.25 support
  2483. #Generates common binary for all platforms if using xlc (IBM C compiler).
  2484. #When using gcc, add -mcpu=common to generate common binary.
  2485. # Add -bbigtoc in case ld fails with TOC overflow.
  2486. aix41x25:
  2487.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  2488.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2489.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  2490.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  2491.     -DIBMX25 -DDEBUG -DNOGETUSERSHELL -qmaxmem=16000 -g $(KFLAGS)" \
  2492.     "LNKFLAGS = -g -bI:/lib/pse.exp" "LIBS=-lcurses -lodm -lcfg"
  2493.     -@echo "]0;kermit done\c"
  2494.  
  2495. #As above but without -g in LNKFLAGS.
  2496. # Add -bbigtoc in case ld fails with TOC overflow.
  2497. aix41x25o:
  2498.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  2499.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2500.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  2501.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  2502.     -DIBMX25 -DNODEBUG -DNOGETUSERSHELL -qmaxmem=16000 $(KFLAGS)" \
  2503.     "LNKFLAGS = -bI:/lib/pse.exp" "LIBS=-lcurses -lodm -lcfg"
  2504.     -@echo "]0;kermit done\c"
  2505.  
  2506. #AIX 4.2 -- Must have CK_NEWTERM or echoing is lost after curses.
  2507. # Add -bbigtoc in case ld fails with TOC overflow.
  2508. aix42:
  2509.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.2 or higher...
  2510.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2511.     "CFLAGS= -DAIXRS -DAIX41 -DAIX42 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  2512.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DFNFLOAT \
  2513.     -DSELECT -DSELECT_H -DNOGETUSERSHELL -qmaxmem=16000 -O $(KFLAGS)" \
  2514.     "LNKFLAGS = -s" "LIBS=-lcurses -lm"
  2515.  
  2516. #AIX 4.3 -- Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  2517. # -bbigtoc needed on some systems but not others to avoid TOC overflow.
  2518. # "man ld" says -bbigtoc makes program run slower.
  2519. aix43:
  2520.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher...
  2521.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2522.     "CFLAGS= -DAIXRS -DAIX41 -DAIX43 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  2523.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2524.     -DFNFLOAT -DNOGETUSERSHELL -qmaxmem=16000 -bbigtoc -O $(KFLAGS)" \
  2525.     "LNKFLAGS = -s" "LIBS=-lcurses -lm"
  2526.  
  2527. #AIX 4.3 with IBM X.25.
  2528. aix43x25:
  2529.     @echo "Making C-Kermit $(CKVER) for IBM AIX 4.3 with X.25..."
  2530.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2531.     "CFLAGS= -DAIXRS -DAIX41 -DAIX43 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  2532.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2533.     -DFNFLOAT -DNOGETUSERSHELL -DIBMX25 \
  2534.     -qmaxmem=16000 -bbigtoc -O $(KFLAGS)" \
  2535.     "LNKFLAGS = -bI:/lib/pse.exp" "LIBS=-lcurses -lodm -lcfg -lm"
  2536.  
  2537. #AIX 4.3 -- Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  2538. # -mminimal-toc needed on some systems but not others to avoid TOC overflow.
  2539. # "man ld" says -bbigtoc makes program run slower.
  2540. aix43g:
  2541.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  2542.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2543.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  2544.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2545.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  2546.     "LIBS=-lcurses -lm"
  2547.  
  2548. aix43gcc:
  2549.     $(MAKE) aix43g
  2550.  
  2551. # None of the following aix43gcc attempts work on a gcc-only AIX 4.3.3 box.
  2552. # It just plain can't find the math routines (fmod, pow, exp, sqrt, log10,...)
  2553. # Which is odd because nm /usr/lib/libC.a finds them...
  2554.  
  2555. #in case aix43gcc can't find its math library...
  2556. aix43gccx:
  2557.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  2558.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2559.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  2560.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2561.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  2562.     "LIBS= -L/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.1.0/2.95.2 \
  2563.     -lcurses -bloadmap -bnoquiet"
  2564.  
  2565. #in case aix43gccx can't find its math library...
  2566. aix43gccy:
  2567.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  2568.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2569.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  2570.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2571.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  2572.     "LIBS= -lcurses -bloadmap -bnoquiet"
  2573.  
  2574. #in case aix43gccx can't find its math library...
  2575. aix43gccz:
  2576.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  2577.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2578.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  2579.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2580.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  2581.     "LIBS= -L. -lcurses -bloadmap -bnoquiet"
  2582.  
  2583.  
  2584. #AIX 4.3 with MIT Kerberos 5 and Kerberos 4 compatibility mode
  2585. # Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  2586. # -mminimal-toc needed on some systems but not others to avoid TOC overflow.
  2587. # "man ld" says -bbigtoc makes program run slower.
  2588. aix43gcc+krb5+krb4:
  2589.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher w/Kerberos...
  2590.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2591.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  2592.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2593.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL \
  2594.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  2595.     -DCK_ENCRYPTION -DCK_DES -funsigned-char $(K5INC) $(K5INC)/krb5 \
  2596.     $(KFLAGS)" \
  2597.     "LIBS=$(K5LIB) -lcurses -lm -lkrb4 -ldes425 -lkrb5 \
  2598.     -lcom_err -lk5crypto -lcrypt -lgssapi_krb5"
  2599.  
  2600. #AIX 4.3 with MIT Kerberos 5, Kerberos 4 compatibility mode and OpenSSL
  2601. # Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  2602. # -mminimal-toc needed on some systems but not others to avoid TOC overflow.
  2603. # "man ld" says -bbigtoc makes program run slower.
  2604. aix43gcc+krb5+krb4+openssl:
  2605.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher w/Kerberos...
  2606.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2607.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  2608.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  2609.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL \
  2610.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  2611.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST -DLIBDES -DCK_SSL \
  2612.     -funsigned-char $(K5INC) $(K5INC)/krb5 $(SSLINC) $(KFLAGS)" \
  2613.     "LIBS=$(K5LIB) $(SSLLIB) -lssl -lcrypto \
  2614.     -lcurses -lm -lkrb4 -ldes425 -lkrb5 -lcom_err -lk5crypto -lcrypt \
  2615.     -lgssapi_krb5"
  2616.  
  2617. aix44:
  2618.     $(MAKE) aix42 "KFLAGS=-DAIX44 -qmaxmem=20000 $(KFLAGS)" \
  2619.     KTARGET=$${KTARGET:-$(@)}
  2620.  
  2621. aix45:
  2622.     $(MAKE) aix42 "KFLAGS=-DAIX45 -qmaxmem=20000 $(KFLAGS)" \
  2623.     KTARGET=$${KTARGET:-$(@)}
  2624.  
  2625. aix50:
  2626.     $(MAKE) aix42 "KFLAGS=-DAIX50 -qmaxmem=20000 $(KFLAGS)" \
  2627.     KTARGET=$${KTARGET:-$(@)}
  2628.  
  2629. aix51:
  2630.     $(MAKE) aix42 "KFLAGS=-DAIX51 -qmaxmem=20000 $(KFLAGS)" \
  2631.     KTARGET=$${KTARGET:-$(@)}
  2632.  
  2633. #Bull DPX/2 with BOS/X, like AIX/RS6000
  2634. bulldpx2:
  2635.     @echo Making C-Kermit $(CKVER) for Bull DPX/2 with BOS/X...
  2636.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2637.     "CFLAGS= -DSVR3 -DDIRENT -DCK_ANSIC -DCKTYP_H=<sys/types.h> \
  2638.     -DCK_POLL -DNOGETUSERSHELL -DCLSOPN -DNOLEARN -O $(KFLAGS)" \
  2639.     "LNKFLAGS = -s"
  2640.  
  2641. #Sun UNIX 3.5 with gcc 2.3.3.
  2642. sunos3gcc:
  2643.     @echo Making C-Kermit $(CKVER) for Sun UNIX 3.5 and gcc...
  2644.     $(MAKE) xermit CC=gcc CC2=gcc KTARGET=$${KTARGET:-$(@)} \
  2645.     CFLAGS="-g -O -DBSD4 -DTCPSOCKET $(KFLAGS)"
  2646.  
  2647. #SunOS version 4.0, BSD environment, has saved original euid feature.
  2648. # Add "CC=/usr/ucb/cc CC2=/usr/ucb/cc" if necessary.
  2649. # Note: Including Unicode crashes the assembler in ckcuni.c.
  2650. sunos4:
  2651.     @echo Making C-Kermit $(CKVER) for SunOS 4.0, BSD environment...
  2652.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2653.     "CFLAGS= -O -DSUNOS4 -DFNFLOAT -DNOUNICODE $(KFLAGS)" \
  2654.     "LIBS=-lm"
  2655.  
  2656. #As above, but with SunLink X.25 support
  2657. sunos4x25:
  2658.     @echo SunLink X.25 support
  2659.     $(MAKE) "MAKE=$(MAKE)" sunos4 KTARGET=$${KTARGET:-$(@)} \
  2660.     "KFLAGS=$(KFLAGS) -DFNFLOAT -DSUNX25" \
  2661.     "LIBS=-lm"
  2662.  
  2663. #SUN OS version 4.1 - 4.1.3, BSD environment, has saved original euid feature.
  2664. #Uses Honey DanBer UUCP.  Requires presence of /usr/spool/locks directory.
  2665. # /var/spool/ should be a symbolic link to  /usr/spool/.
  2666. # ... or 'make xermit "CC= /usr/ucb/cc " \'
  2667. # Note: "xermit" means use the select() version of the CONNECT module.
  2668. sunos41:
  2669.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 / BSD...
  2670.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2671.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNOUNICODE $(KFLAGS)" \
  2672.     "LIBS= $(LIBS) -lresolv -lm"
  2673.  
  2674. #As above, but compiled with gcc.  Gives 24-32K size reduction
  2675. #with gcc 2.1 or 2.2.2.  CAUTION: make sure "fixincludes" has been run on
  2676. #the include files, so gcc's are in sync with the regular Sun ones!
  2677. #This includes the curses library for fullscreen file transfer display.
  2678. #NDGPWNAM needed for GCC 2.5.6, not needed for 2.4.0, but it's uncertain
  2679. #whether it will do any harm for 2.4.0 compilation -- if so, remove it.
  2680. sunos41gcc:
  2681.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  2682.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2683.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2684.     -funsigned-char $(KFLAGS)" "LIBS= -lcurses -ltermcap -lresolv -lm"
  2685.  
  2686. # As above, but without -funsigned-char so I can see the warnings that
  2687. # everybody else will get when they use ANSI compilers that don't have this
  2688. # option (gsc = gcc signed char).
  2689. sunos41gsc:
  2690.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  2691.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2692.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2693.     $(KFLAGS)" "LIBS= -lcurses -ltermcap -lresolv -lm"
  2694.  
  2695. #As above but with ckucon.c rather than ckucns.c (for testing only)
  2696. sunos41gccfork:
  2697.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  2698.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2699.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2700.     -DNOLEARN -funsigned-char $(KFLAGS)" \
  2701.     "LIBS= -lcurses -ltermcap -lresolv -lm"
  2702.  
  2703. #as above but configured for Kerberos IV
  2704. sunos41gcc+krb4:
  2705.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, krb4...
  2706.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2707.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2708.     -DTCPSOCKET -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB4 \
  2709.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST -DBIGBUFOK -funsigned-char \
  2710.     $(K4INC) $(KFLAGS)" \
  2711.     "LIBS= $(K4LIB) -lcurses -ltermcap -lresolv -lm -lkrb -ldes"
  2712.  
  2713. #as above but configured for SSL/TLS
  2714. sunos41gcc+openssl:
  2715.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, ssl...
  2716.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2717.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2718.     -DCK_AUTHENTICATION -funsigned-char \
  2719.     -DCK_SSL -DTCPSOCKET -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  2720.     "LIBS= $(SSLLIB) -lcurses -ltermcap -lresolv -lm -lssl -lcrypto"
  2721.  
  2722. #as above but configured for Kerberos IV and SSL/TLS
  2723. sunos41gcc+krb4+openssl:
  2724.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, krb4...
  2725.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2726.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2727.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB4 -DCK_ENCRYPTION -DCK_DES \
  2728.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  2729.     $(K4INC) $(SSLINC) $(KFLAGS)" \
  2730.     "LIBS= $(K4LIB) $(SSLLIB) \
  2731.     -lcurses -ltermcap -lresolv -lm -lkrb -lssl -lcrypto"
  2732.  
  2733. #as above but configured for Kerberos IV and ZLIB enabled SSL/TLS
  2734. sunos41gcc+krb4+openssl+zlib:
  2735.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, krb4...
  2736.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2737.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2738.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB4 -DCK_ENCRYPTION -DCK_DES \
  2739.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  2740.     -DZLIB $(K4INC) $(SSLINC) \
  2741.     $(KFLAGS)" \
  2742.     "LIBS= $(K4LIB) $(SSLLIB) \
  2743.     -lcurses -ltermcap -lresolv -lm -lkrb -lssl -lcrypto -lz"
  2744.  
  2745. #as above but configured for Kerberos IV and SRP and ZLIB enabled SSL/TLS
  2746. sunos41gcc+krb4+srp+openssl+zlib:
  2747.     @echo "C-Kermit $(CKVER) SunOS 4.1: gcc,curses,krb4,srp,ssl,zlib..."
  2748.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2749.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2750.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB4 -DCK_ENCRYPTION -DCK_DES \
  2751.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  2752.     -DZLIB -DCK_SRP $(K4INC) $(SRPINC) $(SSLINC) $(KFLAGS)" \
  2753.     "LIBS= $(K4LIB) $(SRPLIB) $(SSLLIB) \
  2754.     -lcurses -ltermcap -lresolv -lm -lkrb -lkrypto \
  2755.     -lsrp -lssl -lcrypto -lz"
  2756.  
  2757. #as above but configured for Kerberos IV and SRP and ZLIB enabled SSL/TLS
  2758. sunos41gcc+srp+openssl+zlib:
  2759.     @echo "C-Kermit $(CKVER) SunOS 4.1: gcc,curses,srp,ssl,zlib..."
  2760.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2761.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  2762.     -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_DES \
  2763.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  2764.     -DZLIB -DCK_SRP $(SRPINC) $(SSLINC) \
  2765.     $(KFLAGS)" \
  2766.     "LIBS= $(SRPLIB) $(SSLLIB) \
  2767.     -lcurses -ltermcap -lresolv -lm -lkrypto -lsrp -lssl -lcrypto -lz "
  2768.  
  2769. #SUNOS 4.1 as sunos41 above, but also with curses support
  2770. sunos41c:
  2771.     @echo Curses support
  2772.     $(MAKE) "MAKE=$(MAKE)" sunos41 KTARGET=$${KTARGET:-$(@)} \
  2773.     "KFLAGS=$(KFLAGS) -DCK_CURSES -DFNFLOAT " \
  2774.     "LIBS= -lcurses -ltermcap"
  2775.  
  2776. #As SunOS 4.1.x, gcc, configured as Internet Kermit Server.
  2777. # . NOLOCAL removes capability to make connections
  2778. # . TNCODE allows server-side Telnet negotiation.
  2779. # . used to include -lpwent, why?
  2780. # . used to include -L/usr/local/lib -lm, why?
  2781. sunos41giks:
  2782.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc for IKS...
  2783.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  2784.     "CFLAGS= -O -DSUNOS41 -DNDGPWNAM -DFNFLOAT \
  2785.     -DNOLOCAL -DTCPSOCKET -DTNCODE -DNOPUSH $(KFLAGS)" \
  2786.     "LIBS= -lm -lresolv"
  2787.  
  2788. #SUNOS 4.1 with SunLink X.25 support
  2789. sunos41x25:
  2790.     @echo SunLink X.25 support
  2791.     $(MAKE) "MAKE=$(MAKE)" wermit KTARGET=$${KTARGET:-$(@)} \
  2792.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNOUNICODE -DFNFLOAT -DSUNX25 \
  2793.     -DNOLEARN $(KFLAGS)" "LIBS= $(LIBS) -lresolv -lm"
  2794.  
  2795. #SUNOS 4.1 with SunLink X.25 support and curses
  2796. sunos41x25c:
  2797.     @echo SunLink X.25 support + curses
  2798.     $(MAKE) "MAKE=$(MAKE)" wermit KTARGET=$${KTARGET:-$(@)} \
  2799.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNOUNICODE -DFNFLOAT -DSUNX25 \
  2800.     -DCK_CURSES -DNOLEARN $(KFLAGS)" \
  2801.     "LIBS= $(LIBS) -lcurses -ltermcap -lresolv -lm"
  2802.  
  2803. #SUN with Solaris 2.0 = SunOS 5.0.
  2804. #Mostly the same as System V R4.  Don't use this with later Solaris versions.
  2805. solaris20:
  2806.     @echo 'Making C-Kermit $(CKVER) for Sun with Solaris 2.0 and curses...'
  2807.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2808.     "CFLAGS = -O -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP -DSTERMIOX \
  2809.     -DTCPSOCKET -DCK_CURSES -DFNFLOAT -DCK_POLL $(KFLAGS)" \
  2810.     "LIBS= -lsocket -lnsl -lcurses -ltermlib -lm" "LNKFLAGS = -s"
  2811.  
  2812. #SUN with Solaris 2.0.
  2813. #As above, but built with the gcc compiler from the Cygnus CD-ROM.
  2814. solaris20g:
  2815.     @echo 'Making C-Kermit $(CKVER) for Sun Solaris 2.0, gcc, and curses..'
  2816.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2817.     "CFLAGS = -O -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP -DSTERMIOX \
  2818.     -DTCPSOCKET -DCK_CURSES -DCK_POLL -DFNFLOAT $(KFLAGS)" \
  2819.     "LIBS= -lsocket -lnsl -lcurses -ltermlib -lm" "LNKFLAGS = -s" \
  2820.     CC=/opt/cygnus-sol2-1.1/bin/gcc CC2=/opt/cygnus-sol2-1.1/bin/gcc
  2821.  
  2822. #SunOS 5.1 = Solaris 2.1.
  2823. #NOTE: A C compiler is no longer bundled with SunOS 5.1, so to compile C
  2824. #programs, you might have to change your PATH to include the directory
  2825. #/usr/ccs/bin AFTER the directory containing the compiler.  SunPRO C is
  2826. #installed by default in /opt/SUNWspro/bin.  So a sample PATH might be:
  2827. #
  2828. # /usr/local/bin:/usr/bin:/opt/SUNWspro/bin:/usr/ccs/bin:\
  2829. # /usr/ucb:/usr/sbin:/sbin:.
  2830. #
  2831. # or:
  2832. #
  2833. # /usr/openwin/bin:/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin.
  2834. #
  2835. #NOTE 2: Compilation with the Apogee C compiler (apcc) might not work,
  2836. #because it refuses to allow "-Usun".  Reportedly, newer releases of apcc
  2837. #(such as 1.2.17) work OK, use: "make -e sunos51 CC=apcc CC2=apcc".
  2838. solaris21:
  2839.     @echo 'Making C-Kermit $(CKVER) for SunOS 5.x....'
  2840.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2841.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP -DFNFLOAT \
  2842.     -DSELECT -DNODEBUG -DSTERMIOX $(KFLAGS)" "LIBS = -lm" "LNKFLAGS = -s"
  2843.  
  2844. #C-Kermit for Solaris 2.0-2.4 compiled with gcc, includes curses and TCP/IP.
  2845. #Change -O2 to -O if -O2 gives trouble.
  2846. #Remove -Usun if it causes trouble.
  2847. #Your PATH should start with something like:
  2848. #  /usr/local/gnu/bin:/usr/ccs/bin:
  2849. #Produces a huge executable -- strip with /usr/ccs/bin/strip (not Gnu strip).
  2850. #Also don't add "LNKFLAGS = -s" -- strip manually instead.
  2851. #Also note: this can NOT be linked statically - Sun makes it impossible.
  2852. #And for Solaris 2.4, you might have to replace:
  2853. # /usr/local/lib/gcc-lib/i486-sun-solaris2/2.4.5/include/sys/stat.h
  2854. #with /usr/include/sys/stat.h.
  2855. solaris2xg:
  2856.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc...'
  2857.     @echo 'Please read the comments that accompany the solaris2xg target.'
  2858.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2859.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  2860.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  2861.     "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv"
  2862.  
  2863. #ditto but no curses.
  2864. solaris2xgnc:
  2865.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc...'
  2866.     @echo 'Please read the comments that accompany the solaris2xg target.'
  2867.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2868.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  2869.     -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  2870.     "LIBS= -lsocket -lnsl -lm -lresolv"
  2871.  
  2872. #and with Kerberos IV
  2873. solaris2xg+krb4:
  2874.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc, krb4...'
  2875.     @echo 'Please read the comments that accompany the solaris2xg target.'
  2876.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2877.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  2878.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  2879.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB4 -DCK_ENCRYPTION \
  2880.     -DCK_DES -DCK_CAST -DBIGBUFOK $(K4INC) $(KFLAGS)" \
  2881.     "LIBS= $(K4LIB) -ltermlib -lsocket -lnsl -lm -lresolv -lkrb -ldes" 
  2882.  
  2883. #and with OpenSSL,ZLIB,PAM,SHADOW
  2884. solaris2xg+openssl+zlib+pam+shadow:
  2885.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc, OpenSSL...'
  2886.     @echo 'Please read the comments that accompany the solaris2xg target.'
  2887.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2888.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  2889.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  2890.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DCK_SHADOW  -DZLIB \
  2891.     -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  2892.     "LIBS= $(SSLLIB) -ltermlib \
  2893.     -lsocket -lnsl -lm -lresolv -lssl -lcrypto -lpam -lz" 
  2894.  
  2895. #and with Krb5,Krb4,OpenSSL,SHADOW
  2896. solaris2xg+krb5+krb4+openssl+shadow:
  2897.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc,k5,k4,ssl...'
  2898.     @echo 'Please read the comments that accompany the solaris2xg target.'
  2899.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2900.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  2901.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  2902.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  2903.     -DCK_ENCRYPTION -DCK_SSL -DCK_DES -DCK_CAST -DBIGBUFOK \
  2904.     $(K5INC) $(K5INC)/krb5 $(SSLINC) $(KFLAGS)" \
  2905.     "LIBS= $(K5LIB) $(SSLLIB) -ltermlib -lsocket -lnsl -lm -lresolv \
  2906.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto"
  2907.  
  2908. #and with OpenSSL
  2909. solaris2xg+openssl+pam+shadow:
  2910.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc, OpenSSL...'
  2911.     @echo 'Please read the comments that accompany the solaris2xg target.'
  2912.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  2913.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  2914.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  2915.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DCK_SHADOW \
  2916.     -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  2917.     "LIBS= $(SSLLIB) -ltermlib \
  2918.     -lsocket -lnsl -lm -lresolv -lssl -lcrypto -lpam" 
  2919.  
  2920. solaris22g:
  2921.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DPOSIX_CRTSCTS $(KFLAGS)" solaris2xg \
  2922.     KTARGET=$${KTARGET:-$(@)}
  2923.  
  2924. solaris23g:
  2925.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DPOSIX_CRTSCTS $(KFLAGS)" solaris2xg \
  2926.     KTARGET=$${KTARGET:-$(@)}
  2927.  
  2928. #Solaris 2.4 built with gcc
  2929. solaris24g:
  2930.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} \
  2931.     solaris2xg "KFLAGS=-DSOLARIS24 -DPOSIX_CRTSCTS $(KFLAGS)"
  2932.  
  2933. #Solaris 2.5 built with gcc
  2934. solaris25g:
  2935.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  2936.     "KFLAGS=-funsigned-char -DSOLARIS25 $(KFLAGS)"
  2937.  
  2938. #Solaris 2.5 built with gcc and Kerberos IV
  2939. solaris25g+krb4:
  2940.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb4 KTARGET=$${KTARGET:-$(@)} \
  2941.     "KFLAGS=-funsigned-char -DSOLARIS25 $(KFLAGS)"
  2942.  
  2943. #Solaris 2.5 built with gcc and Kerberos V/IV, SSL, ...
  2944. solaris25g+krb5+krb4+openssl+shadow:
  2945.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb5+krb4+openssl+shadow \
  2946.     KTARGET=$${KTARGET:-$(@)} \
  2947.     "KFLAGS=-funsigned-char -DSOLARIS25 $(KFLAGS)"
  2948.  
  2949. #Solaris 2.6 with gcc
  2950. solaris26g:
  2951.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xg \
  2952.     "KFLAGS= -DSOLARIS26 $(KFLAGS)"
  2953.  
  2954. #Solaris 2.6 with gcc and SSL
  2955. solaris26g+openssl:
  2956.     $(MAKE) "MAKE=$(MAKE)"  solaris2xg+openssl+pam+shadow \
  2957.     KTARGET=$${KTARGET:-$(@)} "KFLAGS= -DSOLARIS26 $(KFLAGS)"
  2958.  
  2959. #Solaris 2.6 with gcc, no curses (e.g. because libtermlib is missing).
  2960. solaris26gnc:
  2961.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xgnc \
  2962.     "KFLAGS= -DSOLARIS26 $(KFLAGS)"
  2963.  
  2964. #Solaris 7 with gcc (32-bit)
  2965. solaris7g:
  2966.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  2967.     "KFLAGS=-DSOLARIS7 $(KFLAGS)"
  2968.  
  2969. #Solaris 7 with gcc + OpenSSL (32-bit)
  2970. solaris7g+openssl+zlib+pam+shadow:
  2971.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+openssl+zlib+pam+shadow \
  2972.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DSOLARIS7 $(KFLAGS)"
  2973.  
  2974. #Solaris 7 with gcc + Kerberos IV (32-bit)
  2975. solaris7g+krb4:
  2976.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb4 KTARGET=$${KTARGET:-$(@)} \
  2977.     "KFLAGS=-DSOLARIS7 $(KFLAGS)"
  2978.  
  2979. #Solaris 8 with gcc (32-bit)
  2980. solaris8g:
  2981.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  2982.     "KFLAGS=-DSOLARIS8 $(KFLAGS)"
  2983.  
  2984. #Solaris 9 with gcc (32-bit)
  2985. solaris9g:
  2986.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  2987.     "KFLAGS=-DSOLARIS9 $(KFLAGS)"
  2988.  
  2989. #Solaris 8 with gcc + OpenSSL (32-bit)
  2990. solaris8g+openssl+zlib+pam+shadow:
  2991.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+openssl+zlib+pam+shadow \
  2992.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DSOLARIS8 $(KFLAGS)"
  2993.  
  2994. #Solaris 8 with gcc + Kerberos IV (32-bit)
  2995. solaris8g+krb4:
  2996.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb4 KTARGET=$${KTARGET:-$(@)} \
  2997.     "KFLAGS=-DSOLARIS8 $(KFLAGS)"
  2998.  
  2999. #Solaris 2.0-2.4, gcc, SunLink X.25 added.
  3000. #NOTE: Can't use xermit target with X.25.
  3001. solaris2xgx25:
  3002.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x + X.25 with GNU cc...'
  3003.     @echo 'Please read the comments that accompany the solaris2xg entry.'
  3004.     $(MAKE) wermit CC=gcc CC2=gcc KTARGET=$${KTARGET:-$(@)} \
  3005.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DSUNX25 \
  3006.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET -DFNFLOAT \
  3007.     -DNOLEARN $(KFLAGS)" \
  3008.     "LIBS= -ltermlib -lm -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3009.     -lsockx25 -lsocket -lnsl"
  3010.  
  3011. #Solaris 2.5, gcc, SunLink X.25 added.
  3012. solaris25gx25:
  3013.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xgx25 \
  3014.     "KFLAGS=-DSOLARIS25 $(KFLAGS)"
  3015.  
  3016. #Solaris 2.6, gcc, SunLink X.25 added.
  3017. solaris26gx25:
  3018.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xgx25 \
  3019.     "KFLAGS=-DSOLARIS26 $(KFLAGS)"
  3020.  
  3021. #Solaris 2.0 - 2.4, SunPro compiler, includes curses and TCP/IP.
  3022. #When using SUNWspro CC 2.0.1 under Solaris 2.3, be sure all cc patches
  3023. #are applied, otherwise corrupt or truncated object files can result.
  3024. #To build, set your PATH as follows:
  3025. #  /usr/local/bin:/usr/bin:/opt/SUNWspro/bin:/usr/ccs/bin:\
  3026. #  /usr/ucb:/usr/sbin:/sbin:.
  3027. # or (depending on where the compiler has been installed):
  3028. #  /usr/openwin/bin:/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin.
  3029. #For additional optimization try using "-fast -xO4 -xdepend".
  3030. solaris2x:
  3031.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with SunPro cc...'
  3032.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3033.     "CFLAGS = -O -Usun -i -DSVR4 -DDIRENT -DSOLARIS -DHDBUUCP -DFNFLOAT \
  3034.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  3035.     "LNKFLAGS = -s" "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv"
  3036.  
  3037. #as above but configured for Kerberos IV
  3038. solaris2x+krb4:  
  3039.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x, SunPro cc, krb4...'
  3040.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} \
  3041.     "CFLAGS = -O -Usun -i -DSVR4 -DDIRENT -DSOLARIS -DHDBUUCP -DFNFLOAT \
  3042.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX -DTCPSOCKET  \
  3043.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB4 \
  3044.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST $(K4INC) $(KFLAGS)" \
  3045.     "LNKFLAGS = -s" \
  3046.     "LIBS= $(K4LIB) -ltermlib -lsocket -lnsl -lm -lresolv -lkrb -ldes"
  3047.  
  3048. solaris23:
  3049.     $(MAKE) "MAKE=$(MAKE)" solaris2x KTARGET=$${KTARGET:-$(@)} \
  3050.     "KFLAGS=$(KFLAGS)"
  3051.  
  3052. solaris24:
  3053.     $(MAKE) "MAKE=$(MAKE)" solaris2x KTARGET=$${KTARGET:-$(@)} \
  3054.     "KFLAGS=-DSOLARIS24 -DPOSIX_CRTSCTS $(KFLAGS)"
  3055.  
  3056. # template for Solaris 2.5 and above.
  3057. solaris25x:
  3058.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with SunPro cc...'
  3059.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3060.     "CFLAGS = -DFNFLOAT -O -Usun -i $(KFLAGS)" \
  3061.     "LNKFLAGS = -s" "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv"
  3062.  
  3063. #Solaris 2.5, SunPro compiler, curses, TCP/IP
  3064. solaris25:
  3065.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3066.     "KFLAGS=-DSOLARIS25 $(KFLAGS)"
  3067.  
  3068. #Solaris 2.5, SunPro compiler, curses, TCP/IP, Kerberos IV
  3069. solaris25+krb4:
  3070.     $(MAKE) "MAKE=$(MAKE)" solaris25x+krb4 KTARGET=$${KTARGET:-$(@)} \
  3071.     "KFLAGS=-DSOLARIS25 $(KFLAGS)"
  3072.  
  3073. #Solaris 2.6, SunPro compiler, curses, TCP/IP
  3074. solaris26:
  3075.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3076.     "KFLAGS=-DSOLARIS26 $(KFLAGS)"
  3077.  
  3078. #Solaris 7 (aka 2.7)
  3079. solaris7:
  3080.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3081.     "KFLAGS=-DSOLARIS7 $(KFLAGS)"
  3082.  
  3083. #Solaris 8
  3084. solaris8:
  3085.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3086.     "KFLAGS=-DSOLARIS8 $(KFLAGS)"
  3087.  
  3088. #Solaris 9
  3089. solaris9:
  3090.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3091.     "KFLAGS=-DSOLARIS9 $(KFLAGS)"
  3092.  
  3093. #Solaris 2.0-2.3, SunPro compiler, with SunLink X.25 support.
  3094. #This will only run if user has /opt/SUNWconn/lib/libsockx25.so.1
  3095. #exists and can be dynamically linked.
  3096. #NOTE: Do not change target to xermit -- it doesn't support X.25.
  3097. solaris2x25:
  3098.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x+X.25 with SunPro cc...'
  3099.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3100.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS -DDIRENT \
  3101.     -DSUNX25 -DTCPSOCKET -DHDBUUCP -DFNFLOAT -DNOLEARN \
  3102.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX $(KFLAGS)" \
  3103.     "LNKFLAGS = -s" \
  3104.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3105.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3106.  
  3107. #Solaris 2.4, SunPro compiler, with SunLink X.25 support.
  3108. #This will only run if user has /opt/SUNWconn/lib/libsockx25.so.1
  3109. #exists and can be dynamically linked.
  3110. solaris24x25:
  3111.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.4+X.25 with SunPro cc...'
  3112.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3113.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS -DSOLARIS24 -DDIRENT -DNOLEARN \
  3114.     -DSUNX25 -DTCPSOCKET -DHDBUUCP -DFNFLOAT -DPOSIX_CRTSCTS \
  3115.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX $(KFLAGS)" \
  3116.     "LNKFLAGS = -s" \
  3117.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3118.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3119.  
  3120. #Solaris 2.5, SunPro compiler, with SunLink X.25 support.
  3121. solaris25x25:
  3122.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.5+X.25 with SunPro cc...'
  3123.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3124.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS25 -DDIRENT -DSUNX25 \
  3125.     -DTCPSOCKET -DHDBUUCP -DSELECT -DCK_CURSES \
  3126.     -DCK_NEWTERM -DSTERMIOX -DFNFLOAT -DPOSIX_CRTSCTS -DNOLEARN \
  3127.     -I/opt/SUNWconn/include $(KFLAGS)" \
  3128.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3129.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3130.  
  3131. #Solaris 2.6, SunPro compiler, with SunLink X.25 support.
  3132. solaris26x25:
  3133.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.6+X.25 with SunPro cc...'
  3134.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3135.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS26 -DDIRENT -DSUNX25 \
  3136.     -DTCPSOCKET -DHDBUUCP -DSELECT -DCK_CURSES \
  3137.     -DCK_NEWTERM -DSTERMIOX -DFNFLOAT -DPOSIX_CRTSCTS -DNOLEARN \
  3138.     -I/opt/SUNWconn/include $(KFLAGS)" \
  3139.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3140.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3141.  
  3142. #The following sunosxxx entries are for debugging and testing only.
  3143.  
  3144. sunos41x:
  3145.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3146.     "CFLAGS= -O -DSUNOS41 -DDIRENT -DNOTLOG -DNOMSEND \
  3147.     -DNOUUCP -DNOSIGWINCH -DNOREDIRECT -DNOPUSH -DNOCCTRAP \
  3148.     -DNOICP -DNOLOCAL $(KFLAGS)"
  3149.  
  3150. #SunOS 4.1.x, debugging with Pure Software, Inc., Purify 2 (commercial runtime
  3151. #error-detection software for catching wild array references, etc).
  3152. #Before running the resulting wermit, you'll also need to define and export
  3153. #the following environment variables (as in this example):
  3154. #PURIFYHOME=/usr/local/purify ; export PURIFYHOME
  3155. #PURIFYCACHEDIR=/tmp ; export PURIFYCACHEDIR
  3156. sunos41cp:
  3157.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 / BSD / Curses / Purify...
  3158.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3159.     "CC2= purify -cache_dir=/usr/tmp cc" \
  3160.     "CFLAGS= -g -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  3161.     -DSAVEDUID -DCK_CURSES $(KFLAGS)" \
  3162.     "LIBS= -lcurses -ltermcap"
  3163.  
  3164. #SunOS 4.1 with malloc debugger
  3165. sunos41md:
  3166.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 malloc debug...
  3167.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} \
  3168.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  3169.     -DSAVEDUID $(KFLAGS) -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG"
  3170.  
  3171. sunos41gmd:
  3172.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  3173.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} "CC= gcc " "CC2= gcc" \
  3174.     "CFLAGS= -g -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  3175.     -DNDGPWNAM -DSAVEDUID -DCK_CURSES -DRLOGCODE \
  3176.     $(KFLAGS) -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG" \
  3177.     "LIBS= -lcurses -ltermcap"
  3178.  
  3179. #SunOS version 4.1, gcc, profiling with gprof, no debugging.
  3180. #To get profile, "make sunos41p" (on Sun), then "./wermit".  After running
  3181. #wermit, "gprof ./wermit | lpr" (or whatever) to get execution profile.
  3182. sunos41p:
  3183.     @echo Making C-Kermit $(CKVER) for SunOS 4.x with profiling...
  3184.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc " "CC2= gcc" \
  3185.     "CFLAGS= -DSUNOS41 -DNODEBUG -DSAVEDUID -DDIRENT -DTCPSOCKET \
  3186.     -DNDGPWNAM $(KFLAGS) -pg" "LNKFLAGS = -pg"
  3187.  
  3188. #SunOS version 4.1 or later, BSD environment, minimum features.
  3189. sunos41min:
  3190.     @echo Minimum interactive
  3191.     $(MAKE) "MAKE=$(MAKE)" sunos41 KTARGET=$${KTARGET:-$(@)} \
  3192.     "KFLAGS=-DNOSPL -DNOXMIT -DNOMSEND -DNOFRILLS -DNORETRY \
  3193.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS \
  3194.     -DNOSHOW -DNOSETKEY -DNOUUCP -DNORECALL -DNOREDIRECT \
  3195.     -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ \
  3196.     -DNONET -DCK_SMALL -DNOCKSPEED -DNOCKTIMERS -DNOLOGIN \
  3197.     -DNOCKXYZ -DNOKERBEROS -DNOMKDIR -DNOPATTERNS -DNOPERMS -DNOPIPESEND \
  3198.     -DNORECURSIVE -DNORENAME -DNORESEND -DNOSETKEY \
  3199.     -DNOTRIGGER -DNOTUNING $(KFLAGS)" "LNKFLAGS = -s"
  3200.  
  3201. #SunOS version 4.1, BSD environment, min size, command-line only...
  3202. sunos41m:
  3203.     @echo Minimum size
  3204.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  3205.     "KFLAGS=-DNOICP $(KFLAGS)"
  3206.  
  3207. #SunOS version 4.1, BSD environment, min size, cmd-line only, remote only...
  3208. #
  3209. sunos41mr:
  3210.     @echo Minimum size
  3211.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  3212.     "KFLAGS=-DNOICP -DNOLOCAL $(KFLAGS)"
  3213.  
  3214. #SunOS version 4.1, BSD environment, min size, interactive...
  3215. sunos41mi:
  3216.     @echo Minimum size
  3217.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  3218.     "KFLAGS=-DNOCMDL $(KFLAGS)"
  3219.  
  3220. #SunOS version 4.1, BSD environment, min size, interactive, remote only...
  3221. sunos41mir:
  3222.     @echo Minimum size
  3223.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  3224.     "KFLAGS=-DNOCMDL -DNOLOCAL $(KFLAGS)"
  3225.  
  3226. #SunOS 4.1, System V R3 environment (-i option omitted).
  3227. sunos41s5:
  3228.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  3229.     @echo For testing purposes only - NOT for production use.
  3230.     @echo For a useable version, make sunos41 instead.
  3231.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  3232.     KTARGET=$${KTARGET:-$(@)} \
  3233.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DNOLEARN -DCK_POLL $(KFLAGS) -O"
  3234.  
  3235. #As above, but with curses support
  3236. sunos41s5c:
  3237.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  3238.     @echo Curses included.
  3239.     @echo For testing purposes only - NOT for production use.
  3240.     @echo For a useable version, make sunos41 instead.
  3241.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  3242.     KTARGET=$${KTARGET:-$(@)} \
  3243.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DNOLEARN \
  3244.     -DCK_POLL -DCK_CURSES -DCK_NEWTERM $(KFLAGS) -O" "LIBS= -lcurses"
  3245.  
  3246. #As above, but with curses support AND net support
  3247. sunos41s5tcpc:
  3248.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  3249.     @echo TCP/IP and curses included.  No debug log.
  3250.     @echo For testing purposes only - NOT for production use.
  3251.     @echo For a useable version, make sunos41 instead.
  3252.     $(MAKE) xermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  3253.     KTARGET=$${KTARGET:-$(@)} \
  3254.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DCK_POLL \
  3255.     -DNODEBUG -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET $(KFLAGS) -O" \
  3256.     "LIBS= -lcurses -lresolv"
  3257.  
  3258. # (End of SunOS test entries...)
  3259.  
  3260. #Apollo with Domain SR10.0 or later, BSD environment
  3261. #Reportedly, it might also help to add '-A,systype=bsd4.3' to CFLAGS.
  3262. #Reportedly, there is also a problem with getc & putc macros that can
  3263. #be handled by using '#ifdef apollo' somewhere to redefine them???
  3264. #On the other hand, other reports indicate that it works fine as-is.
  3265. #NOTE: This entry was previously like this:
  3266. #    $(MAKE) wermit "CFLAGS= -DNOFILEH -DBSD4 $(KFLAGS) -Uaegis \
  3267. #    -DTCPSOCKET -U__STDC__"
  3268. #Reports (Dec 91) indicate SR10 has an ANSI-compliant C compiler,
  3269. #in addition to an older one that claimed to be ANSI-compliant but wasn't.
  3270. #The following make entry (plus checks that are made in ckcdeb.h) detect
  3271. #which compiler is used and define the CK_ANSIC or NOANSI flags accordingly.
  3272. sr10-bsd:
  3273.     @echo Making C-Kermit $(CKVER) for Apollo SR10.0 / BSD ...
  3274.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3275.     "CFLAGS= -O -DAPOLLOSR10 -DBSD43 -DTCPSOCKET -DCK_CURSES -DNOLEARN \
  3276.     -Uaegis $(KFLAGS)" "LIBS= -lcurses -ltermcap"
  3277.  
  3278. #Apollo with Domain SR10.0 or later, System V R3 environment.
  3279. #Don't use the optimizer (-O), it causes problems at runtime.
  3280. sr10-s5r3:
  3281.     @echo Making C-Kermit $(CKVER) for Apollo SR10.0 / Sys V R3 ...
  3282.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3283.     "CFLAGS= -DNOFILEH -DSVR3 -DAPOLLOSR10 -DNOLEARN $(KFLAGS) \
  3284.     -Uaegis -U__STDC__"
  3285.  
  3286. #Apollo Domain/IX (untested, try this if sr10-bsd doesn't work)
  3287. # -DTCPSOCKET can probably be added here.
  3288. apollobsd:
  3289.     @echo Making C-Kermit $(CKVER) for Apollo Domain/IX...
  3290.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3291.     "CC= /bin/cc " "CC2= /bin/cc " \
  3292.     "CFLAGS= -DNOFILEH -DBSD4 -DAPOLLOBSD -DNOLEARN $(KFLAGS) -Uaegis"
  3293.  
  3294. #Version 7 Unix (see comments near top of makefile)
  3295. v7:
  3296.     @echo Making C-Kermit $(CKVER) for UNIX Version 7.
  3297.     @echo Read the makefile if you have trouble with this...
  3298.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3299.     "CFLAGS=-DV7 -DPROCNAME=\\\"$(PROC)\\\" \
  3300.     -DBOOTNAME=\\\"$(BOOTFILE)\\\" -DNPROCNAME=\\\"$(NPROC)\\\" \
  3301.     -DNPTYPE=$(NPTYPE) $(DIRECT) -DO_RDWR=2 -DO_NDELAY=0 -DO_SCCS_ID \
  3302.     -DNOLEARN $(KFLAGS)"
  3303.  
  3304. #AT&T UNIX System V R3, signal() is void rather than int.
  3305. #Uses dirent.h and Honey DanBer UUCP.
  3306. #Add the -i link option if necessary.
  3307. #If you get errors like "ws_row undefined" in ckutio.c, add -DNONAWS.
  3308. sys5r3:
  3309.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  3310.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3311.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DNOLEARN $(KFLAGS) -O" \
  3312.     "LNKFLAGS="
  3313.  
  3314. #As above, plus curses.
  3315. sys5r3c:
  3316.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3 + curses...'
  3317.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3318.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DCK_CURSES -DNONAWS -DNOLEARN \
  3319.     $(KFLAGS) -O" "LNKFLAGS=" "LIBS = -ltermlib"
  3320.  
  3321. #System V R3.2 for PCs built on Interactive UNIX SV/386 R4.x
  3322. #but with all calls to dup2() disabled because generic SVR3 does not have dup2.
  3323. # (The -linet library might not need to be in this one.)
  3324. sys5r32is:
  3325.     @echo 'Making C-Kermit $(CKVER) for System V/386 R32
  3326.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  3327.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  3328.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES -DNONAWS \
  3329.     -DPOSIX_JC -DCK_REDIR -DCK_POLL -DDCLGETCWD -DNOFDZERO -DNOREDIRECT \
  3330.     -DNOZEXEC -DNOLEARN $(KFLAGS)" "LIBS=-lcurses -lc_s -linet"
  3331.  
  3332. #System V R3.2 for PCs built on Interactive UNIX SV/386 R4.x
  3333. #but with all calls to dup2() disabled because generic SVR3 does not have dup2.
  3334. #With TCP/IP added.
  3335. sys5r32isnet:
  3336.     @echo 'Making C-Kermit $(CKVER) for System V/386 R32 + TCP/IP
  3337.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  3338.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  3339.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES -DNONAWS \
  3340.     -DPOSIX_JC -DCK_REDIR -DCK_POLL -DDCLGETCWD -DNOFDZERO -DNOREDIRECT \
  3341.     -DNOLEARN -DNOZEXEC -DTCPSOCKET $(KFLAGS)" "LIBS=-lcurses -lc_s -linet"
  3342.  
  3343. iclsys5r3:
  3344.     make sys5r3 KTARGET=$${KTARGET:-$(@)} KFLAGS=-DICLSVR3
  3345.  
  3346. #AT&T UNIX System V R3.  As above, but no ANSI prototyping.
  3347. sys5r3na:
  3348.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  3349.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3350.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DNOANSI -DNOLEARN $(KFLAGS) -O" \
  3351.     "LNKFLAGS="
  3352.  
  3353. #AT&T UNIX System V R3, for 3B computers with Wollongong TCP/IP.
  3354. sys5r3net3b:
  3355.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX SVR3/3B/Wollongong...'
  3356.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3357.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DWOLLONGONG -DNOLEARN $(KFLAGS) \
  3358.     -O" "LIBS= -lnet -lnsl_s" "LNKFLAGS ="
  3359.  
  3360. #AT&T UNIX System V R3, signal() is void rather than int.
  3361. #Uses dirent.h and Honey DanBer uucp, has <termiox.h>.
  3362. #Has <termiox.h> for RTS/CTS flow control.
  3363. sys5r3tx:
  3364.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  3365.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3366.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DTERMIOX -DNOLEARN \
  3367.     $(KFLAGS) -i -O" "LNKFLAGS ="
  3368.  
  3369. #AT&T UNIX System V R3, signal() is void rather than int.
  3370. #Uses dirent.h and Honey DanBer uucp, has <termiox.h>.
  3371. #Has <sys/termiox.h> for RTS/CTS flow control.
  3372. sys5r3sx:
  3373.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  3374.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3375.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DSTERMIOX -DNOLEARN \
  3376.     $(KFLAGS) -i -O" "LNKFLAGS ="
  3377.  
  3378. #AT&T UNIX System V R4.
  3379. #Has <termiox.h>.
  3380. sys5r4:
  3381.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3382.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3383.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DTERMIOX -DNOLEARN $(KFLAGS)" \
  3384.     "LNKFLAGS = -s"
  3385.  
  3386. #AT&T UNIX System V R4 with Wollongong TCP/IP.
  3387. #Has <termiox.h>.
  3388. sys5r4net:
  3389.     @echo 'Making C-Kermit $(CKVER) for System V R4 + Wollongong TCP/IP...'
  3390.     @echo ' If sockets-library routines are missing at link time, then'
  3391.     @echo ' try the sys5r4net2 entry.'
  3392.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3393.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOLEARN \
  3394.     -DTERMIOX -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  3395.  
  3396. #As above, but needs libs included.
  3397. sys5r4net2:
  3398.     @echo ' PLEASE READ ckuins.txt IF YOU GET MISSING HEADER FILES.'
  3399.     @echo ' (Search for WOLLONGONG...)'
  3400.     $(MAKE) sys5r4net KTARGET=$${KTARGET:-$(@)} "LIBS= -lsocket -lnsl"
  3401.  
  3402. #As above plus curses.
  3403. sys5r4net2c:
  3404.     echo 'Making C-Kermit $(CKVER) for System V R4 + Wollongong TCP/IP...'
  3405.     @echo ' PLEASE READ ckuins.txt IF YOU GET MISSING HEADER FILES.'
  3406.     @echo ' (Search for WOLLONGONG...)'
  3407.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3408.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOLEARN \
  3409.     -DTERMIOX -DWOLLONGONG -DCK_CURSES $(KFLAGS)" "LNKFLAGS = -s" \
  3410.     "LIBS= -lsocket -lnsl -lcurses"
  3411.  
  3412. #DELL UNIX System V R4.
  3413. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  3414. #are not misplaced in sys (rather than netinet and arpa, respectively).
  3415. #Uses ANSI C constructs, advisory file locking on devices, etc.
  3416. #Warning: -DSTERMIOX enables hardware flow control (RTS/CTS), but reportedly
  3417. #this does not work with the normal drivers.  However, it might still work
  3418. #on non-Dell systems, or even Dell systems with different drivers installed.
  3419. dellsys5r4:
  3420.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  3421.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3422.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DHDBUUCP \
  3423.     -DTCPSOCKET -DSTERMIOX -DCK_POLL $(KFLAGS)" \
  3424.     "LIBS= -lsocket -lnsl" "LNKFLAGS = -s"
  3425.  
  3426. #As above, curses support added...
  3427. dellsys5r4c:
  3428.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  3429.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3430.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DHDBUUCP \
  3431.     -DTCPSOCKET -DSTERMIOX -DCK_CURSES -DCK_POLL \
  3432.     $(KFLAGS)" "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  3433.  
  3434. #Minimum interactive: As above, but with every conceivable option removed.
  3435. dellsys5r4mi:
  3436.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  3437.     @echo 'Minimum-size interactive'
  3438.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3439.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT \
  3440.     -UTCPSOCKET -DNOCMDL -DNOSPL -DNOXMIT -DCK_POLL \
  3441.     -DNOMSEND -DNOFRILLS -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  3442.     -DNOSCRIPT -DNOCSETS -DNOSHOW -DNOSETKEY -DNOSERVER -DNOUUCP \
  3443.     -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ  \
  3444.     $(KFLAGS)" "LNKFLAGS = -s"
  3445.  
  3446. #Command-line only version.
  3447. dellsys5r4m:
  3448.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  3449.     @echo 'Command-line only'
  3450.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3451.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT \
  3452.     -UTCPSOCKET -DNOICP -DNOFRILLS -DNODIAL -DNODEBUG -DNOTLOG -DNOCSETS \
  3453.     -DNOSETKEY -DNOESCSEQ -DNOJC -DNOFDZERO -DCK_POLL \
  3454.     $(KFLAGS)" "LNKFLAGS = -s"
  3455.  
  3456. #AT&T UNIX System V R4.
  3457. #Has <sys/termiox.h>.
  3458. sys5r4sx:
  3459.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3460.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3461.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DSTERMIOX -DNOLEARN \
  3462.     $(KFLAGS)" "LNKFLAGS = -s" "LIBS=$(LIBS)"
  3463.  
  3464. #AT&T UNIX System V R4.
  3465. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  3466. #are not misplaced in sys (rather than netinet and arpa, respectively).
  3467. #Uses ANSI C constructs, <sys/termiox.h>, etc etc.
  3468. sys5r4sxtcp:
  3469.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3470.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3471.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  3472.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  3473.     "LIBS= -lsocket -lnsl $(LIBS)" "LNKFLAGS= -s"
  3474.  
  3475. #AT&T UNIX System V R4.
  3476. #As above + curses.
  3477. sys5r4sxtcpc:
  3478.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3479.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3480.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  3481.     -DSTERMIOX  -DCK_CURSES -DTCPSOCKET $(KFLAGS)" \
  3482.     "LIBS= -lsocket -lnsl -lcurses -ltermcap $(LIBS)" "LNKFLAGS = -s"
  3483.  
  3484. #AT&T UNIX System V R4.  CONSENSYS SVR4.2-1.
  3485. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  3486. #are not misplaced in sys (rather than netinet and arpa, respectively).
  3487. #Uses ANSI C constructs, <sys/termiox.h>, etc.
  3488. # Fullscreen -DCK_CURSES added (with curses & termcap libs)
  3489. # Submission by Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu
  3490. sys5r4sxtcpf:
  3491.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3492.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3493.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  3494.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES $(KFLAGS)" \
  3495.     "LIBS= -lsocket -lnsl -L/usr/ccs/lib -lcurses -ltermcap" \
  3496.     "LIBS=$(LIBS)" "LNKFLAGS = -s"
  3497.  
  3498. #Smallest possible version for System V R4
  3499. s5r4m:
  3500.     @echo Minimum size
  3501.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx KTARGET=$${KTARGET:-$(@)} \
  3502.     "KFLAGS=$(KFLAGS) -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  3503.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOMSEND -UTCPSOCKET" "LNKFLAGS = -s"
  3504.  
  3505. #Smallest possible interactive version of above
  3506. s5r4mi:
  3507.     @echo Minimum interactive
  3508.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx \
  3509.     "KFLAGS=-DNOSPL -DNOXMIT -DNOMSEND -DNOFRILLS -DNOSHOW \
  3510.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOSETKEY \
  3511.     -UTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  3512.  
  3513. #AT&T UNIX System V R4, has <sys/termiox.h>
  3514. #ANSI C function prototyping disabled.
  3515. sys5r4sxna:
  3516.     @echo No ANSI C prototyping...
  3517.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx KTARGET=$${KTARGET:-$(@)} \
  3518.     "KFLAGS=$(KFLAGS) -DNOANSI"
  3519.  
  3520. #Stratus FTX.
  3521. ftx:
  3522.     @echo 'Making C-Kermit $(CKVER) for Stratus FTX 3.x...'
  3523.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3524.     "CFLAGS = -O -DSVR4 -DFTX -DDIRENT -DHDBUUCP -DSTERMIOX 
  3525.     -DNOGETUSERSHELL -DNOLEARN +DA1.1 $(KFLAGS)" \
  3526.     "LNKFLAGS = -s" "LIBS=$(LIBS)"
  3527.  
  3528. #Stratus FTX + TCP/IP.
  3529. ftxtcp:
  3530.     @echo 'Making C-Kermit $(CKVER) for Stratus FTX 3.x...'
  3531.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3532.     "CFLAGS = -O -DSVR4 -DFTX -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  3533.     -DSTERMIOX -DTCPSOCKET -DNO_DNS_SRV +DA1.1 $(KFLAGS)" \
  3534.     "LIBS= -lsocket -lnsl $(LIBS)" "LNKFLAGS= -s"
  3535.  
  3536. #NCR MP-RAS 2.03 or 3.02
  3537. mpras:
  3538.     @echo 'Making C-Kermit $(CKVER) for NCR MP-RAS...'
  3539.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3540.     "CFLAGS = -O -DSVR4 -DNCRMPRAS -DDIRENT -DHDBUUCP -DSTERMIOX \
  3541.     -DNOGETUSERSHELL -DNOLEARN -DNO_DNS_SRV $(KFLAGS)" \
  3542.     "LNKFLAGS = -s" "LIBS=$(LIBS)"
  3543.  
  3544. #NCR MP-RAS 2.03 or 3.02 with TCP/IP and curses
  3545. mprastcpc:
  3546.     @echo 'Making C-Kermit $(CKVER) for NCR MP-RAS + TCP/IP + curses...'
  3547.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CFLAGS=-DTCPSOCKET \
  3548.     -DCK_CURSES -DSVR4 -DNCRMPRAS -DDIRENT -DHDBUUCP -DSTERMIOX -DNOLEARN \
  3549.     -DNOGETUSERSHELL -DNO_DNS_SRV -O $(KFLAGS)" "LNKFLAGS = -s" \
  3550.     "LIBS= -lsocket -lnsl -lcurses -ltermcap $(LIBS)"
  3551.  
  3552. #SINIX-L V5.41 - includes curses, tcp/ip - Use this one for i386.
  3553. #This version of SINIX doesn't like fdopen() or popen().
  3554. sinix541:
  3555.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf SINIX V5.41/i386'
  3556.     $(MAKE) ckcpro.$(EXT) "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP \
  3557.     -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DNO_DNS_SRV \
  3558.     -DSNI541 -DNOGETUSERSHELL -DNONETCMD -DNOPOPEN -kansi -W0 $(KFLAGS)"
  3559.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3560.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DNO_DNS_SRV -DNOPOPEN \
  3561.     -DFNFLOAT -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC \
  3562.     -DSNI541 -DNOGETUSERSHELL -DNONETCMD -kansi -W0 -O $(KFLAGS)" \
  3563.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" "LNKFLAGS = -s"
  3564.  
  3565. sinix541i:
  3566.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sinix541
  3567.  
  3568. #SINIX V5.42 - includes curses, tcp/ip, everything - Use this one for MIPS.
  3569. # As of C-Kermit 7.1, optimization removed -- takes (literally) forever.
  3570. sinix542:
  3571.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3572.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DNO_DNS_SRV \
  3573.     -DFNFLOAT -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC \
  3574.     -DSNI542 -DNOGETUSERSHELL -kansi -W0 $(KFLAGS)" \
  3575.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" "LNKFLAGS = -s"
  3576.  
  3577. #SINIX V5.42 - includes curses, tcp/ip, everything - Use this one for Intel.
  3578. # (Note: SNI discontinued Intel support after 5.42.)
  3579. sinix542i:
  3580.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf SINIX-Z V5.42...'
  3581.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3582.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DFNFLOAT -DSTERMIOX \
  3583.     -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DNO_DNS_SRV -kansi \
  3584.     -DSNI542 $(KFLAGS)" \
  3585.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" \
  3586.     "LNKFLAGS = -s"
  3587.  
  3588. #Siemens Nixdorf Reliant UNIX V5.43 - includes curses, tcp/ip, everything:
  3589. # . gettimeofday() suddenly has only one arg instead of two (GTODONEARG).
  3590. # . The syntax of the Olimit specifier changed.
  3591. # . The name was changed from SINIX to Reliant UNIX in version 5.43C.
  3592. sni543:
  3593.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf Reliant UNIX V5.43'
  3594.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3595.     "CFLAGS = -DSINIX -DSNI543 -DSVR4 -DDIRENT -DHDBUUCP \
  3596.     -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DGTODONEARG \
  3597.     -DNO_DNS_SRV -kansi -W0 -O -F Olimit,3100 $(KFLAGS)" \
  3598.     "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  3599.  
  3600. #Siemens Nixdorf Reliant UNIX V5.44 - Like 5.43 but with different banner.
  3601. sni544:
  3602.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf Reliant UNIX V5.44'
  3603.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3604.     "CFLAGS = -DSINIX -DSNI544 -DSVR4 -DDIRENT -DHDBUUCP \
  3605.     -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DGTODONEARG \
  3606.     -DNO_DNS_SRV -kansi -W0 -O -K Olimit,3100 $(KFLAGS)" \
  3607.     "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  3608.  
  3609. #Commodore Amiga with AT&T UNIX System V R4 and TCP/IP support.
  3610. #Has <sys/termiox.h>.
  3611. svr4amiganet:
  3612.     @echo 'Making C-Kermit $(CKVER) for Amiga SVR4 + TCP/IP...'
  3613.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC=gcc" "CC2=gcc" \
  3614.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DSTERMIOX \
  3615.     -DTCPSOCKET -DCK_CURSES $(KFLAGS)" "LNKFLAGS = -s" \
  3616.     "LIBS = -lsocket -lnsl -ltermlib"
  3617.  
  3618. #SCO (Novell (Univel)) UnixWare 1.x or 2.0, no TCP/IP.
  3619. #This assumes the Novell SDK 1.0, which has <sys/termiox.h>.
  3620. #UnixWare users with the "Prime Time Freeware" CD-ROM SDK will probably have
  3621. #to use the sys5r4 entry (no termiox.h file, so no hardware flow control).
  3622. #Change -DSELECT to -DCK_POLL if -DSELECT causes problems.
  3623. # NOTE: Unixware 1.x builds have not been tried in C-Kermit 7.0.
  3624. unixware:
  3625.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx KTARGET=$${KTARGET:-$(@)} \
  3626.     "KFLAGS=-DOLD_UNIXWARE -DCK_NEWTERM -DSELECT -DNOGETUSERSHELL \
  3627.     -DNOSYSLOG $(KFLAGS)" "LIBS=-lcrypt"
  3628.  
  3629. #UnixWare 1.x or 2.0 with TCP/IP and curses.
  3630. #fork()-based CONNECT - no high serial speeds.
  3631. unixwarenetc:
  3632.     $(MAKE) "MAKE=$(MAKE)" sys5r4sxtcpc KTARGET=$${KTARGET:-$(@)} \
  3633.     "KFLAGS=-DOLD_UNIXWARE -DCK_NEWTERM -DSELECT -DNOGETUSERSHELL \
  3634.     -DNOSYSLOG $(KFLAGS)" "LIBS=-lcrypt -lresolv"
  3635.  
  3636. uw10:
  3637.     $(MAKE) unixwarenetc KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  3638.  
  3639. #This is for Unixware 2.0.x only - use unixware21 for UW 2.1.x.
  3640. #Has special library search and enables special kludge around library
  3641. #foulup regarding vfork() (which Kermit doesn't use).  Forces POSIX-style
  3642. #hangup.
  3643. unixware20:
  3644.     @echo 'Making C-Kermit $(CKVER) for UnixWare 2.0.x...'
  3645.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3646.     "CFLAGS = -O -DOLD_UNIXWARE -DUNIXWARE2 -DSELECT -DSVR4 -DDIRENT \
  3647.     -DHDBUUCP -DBIGBUFOK -DNOGETUSERSHELL -DSTERMIOX  -DCK_CURSES \
  3648.     -DTCPSOCKET -DUW200 -DFNFLOAT -DCK_NEWTERM -DNOSYSLOG $(KFLAGS)" \
  3649.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lcrypt -lgen -lm -lresolv" \
  3650.     "LNKFLAGS = -s"
  3651.  
  3652. uw20:
  3653.     $(MAKE) unixware20 KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  3654.  
  3655. #Adds big buffers ("large memory model") - otherwise the same as UnixWare 1.x.
  3656. unixware21:
  3657.     @echo 'Making C-Kermit $(CKVER) for UnixWare 2.1.x...'
  3658.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3659.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  3660.     -DNOGETUSERSHELL -DNOSYSLOG -DSTERMIOX  -DCK_CURSES -DTCPSOCKET \
  3661.     -DCK_NEWTERM -DFNFLOAT -DUNIXWARE2 $(KFLAGS)" \
  3662.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv \
  3663.     $(LIBS)" "LNKFLAGS = -s"
  3664.  
  3665. #Unixware 2.1.0
  3666. uw21:
  3667.     $(MAKE) unixware21 KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  3668.  
  3669. #Unixware 2.1.3
  3670. uw213:
  3671.     $(MAKE) unixware21 KTARGET=$${KTARGET:-$(@)} \
  3672.     "KFLAGS=-DUSE_FILE__CNT $(KFLAGS)"
  3673.  
  3674. #Unixware 2.1 with IKSD support
  3675. uw21iksd:
  3676.     $(MAKE) unixware21 KTARGET=$${KTARGET:-$(@)} \
  3677.     "KFLAGS=-DCK_SHADOW $(KFLAGS)" "LIBS= -lgen"
  3678.  
  3679. #UnixWare 7 with tc[gs]etspeed() high serial speeds & select()-based CONNECT
  3680. #NOTE: This is the one we use.
  3681. unixware7t:
  3682.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 with POSIX i/o...'
  3683.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3684.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  3685.     -DFNFLOAT -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DPOSIX \
  3686.     -DUW7 -DUSETCSETSPEED -DCK_NEWTERM -DNOLSTAT -DDCLTIMEVAL \
  3687.     -DNEEDMDMDEFS $(KFLAGS)" \
  3688.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  3689.     "LNKFLAGS = -s"
  3690.  
  3691. #UnixWare 7 - select()-based CONNECT - no POSIX i/o - no high serial speeds.
  3692. #In other words, just like the UnixWare 1 and 2 builds.
  3693. unixware7x:
  3694.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7...'
  3695.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3696.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  3697.     -DUW7 -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DNOLSTAT \
  3698.     -DFNFLOAT -DCK_NEWTERM $(KFLAGS)" \
  3699.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  3700.     "LNKFLAGS = -s"
  3701.  
  3702. #UnixWare 7 with POSIX cfset[oi]speed() to allow high serial speeds.
  3703. #(but the high speeds don't work)
  3704. unixware7p:
  3705.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 with POSIX i/o...'
  3706.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3707.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  3708.     -DUW7 -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DPOSIX \
  3709.     -DFNFLOAT -DCK_NEWTERM -DNOLSTAT $(KFLAGS)" \
  3710.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  3711.     "LNKFLAGS = -s"
  3712.  
  3713. # UnixWare 7 built with gcc - This does not work at all...
  3714. # Reportedly gcc 2.8.1 is broken on Unixware 7.  Try egcs?
  3715. unixware7g:
  3716.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 with gcc...'
  3717.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3718.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s -shlib"
  3719.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  3720.     -DUW7 -DNOGETUSERSHELL -DSTERMIOX  -DCK_CURSES -DTCPSOCKET -DNOLSTAT \
  3721.     -DFNFLOAT -DCK_NEWTERM $(KFLAGS)" \
  3722.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  3723.     "LNKFLAGS = -s"
  3724.  
  3725. unixware7:
  3726.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" unixware7t \
  3727.     KTARGET=$${KTARGET:-$(@)}
  3728.  
  3729. uw7:
  3730.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" unixware7t \
  3731.     KTARGET=$${KTARGET:-$(@)}
  3732.  
  3733. #SCO OpenUNIX 8.0
  3734. ou8:
  3735.     @echo 'Making C-Kermit $(CKVER) for Open UNIX 8...'
  3736.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DOU8 $(KFLAGS)" unixware7t \
  3737.     KTARGET=$${KTARGET:-$(@)}
  3738.  
  3739. #UnixWare 7 with OpenSSL
  3740. uw7ssl:
  3741.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 and OpenSSL...'
  3742.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} \
  3743.     "CFLAGS = -O -DCK_AUTHENTICATION -DCK_SSL -DCK_SHADOW \
  3744.     -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  3745.     -DFNFLOAT -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DPOSIX \
  3746.     -DUW7 -DUSETCSETSPEED -DCK_NEWTERM -DNOLSTAT -DDCLTIMEVAL \
  3747.     $(SSLINC) $(KFLAGS)" \
  3748.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv \
  3749.     -lgen -lcudk70 $(SSLLIB) -lssl -lcrypto $(LIBS)" \
  3750.     "LNKFLAGS = -s"
  3751.  
  3752. #As above but includes Shadow password support needed for IKSD.
  3753. uw7iksd:
  3754.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DCK_SHADOW $(KFLAGS)" \
  3755.     KTARGET=$${KTARGET:-$(@)} "LIBS= -lgen" unixware7t
  3756.  
  3757. #As above but links with static API for realpath() so a binary built
  3758. #with this target on UW7.1 will also work on 7.0.  Requires SCO UDK
  3759. #rather than the stock compiler.
  3760. uw7iksdudk:
  3761.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DCK_SHADOW $(KFLAGS)" \
  3762.     KTARGET=$${KTARGET:-$(@)} "LIBS= -lgen -lcudk70" unixware7t
  3763.  
  3764. #ESIX SVR4.0.3 or 4.04 with TCP/IP support.
  3765. #Has <sys/termiox.h>, ANSI C function prototyping disabled.
  3766. #Add -m486 to CFLAGS if desired.
  3767. esixr4:
  3768.     @echo 'Making C-Kermit $(CKVER) for ESIX SVR4 + TCP/IP...'
  3769.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3770.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOANSI \
  3771.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s" \
  3772.     "LIBS = -lsocket -lnsl"
  3773.  
  3774. #AT&T UNIX System V R4.
  3775. #Has <sys/termiox.h>, Wollongong WIN/TCP TCP/IP.
  3776. sys5r4sxnet:
  3777.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3778.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3779.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  3780.     -DSTERMIOX -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  3781.  
  3782. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>.
  3783. sys5r4nx:
  3784.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3785.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3786.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOLEARN $(KFLAGS)" \
  3787.     "LNKFLAGS = -s"
  3788.  
  3789. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>, curses, TCP/IP.
  3790. sys5r4nxnetc:
  3791.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3792.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3793.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  3794.     -DCK_CURSES -DTCPSOCKET $(KFLAGS)" \
  3795.     "LIBS = -lcurses -lsocket -lnsl -ltcpip" \
  3796.     "LNKFLAGS = -s"
  3797.  
  3798. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>, Wollongong TCP/IP.
  3799. sys5r4nxtwg:
  3800.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  3801.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3802.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DWOLLONGONG $(KFLAGS)"
  3803.     "LNKFLAGS = -s"
  3804.  
  3805. #ICL UNIX System V R4.(DRS N/X) version :-
  3806. #UNIX System V Release 4.0 ICL DRS 6000 (SPARC)
  3807. #DRS/NX 6000 SVR4 Version 5  Level 1  Increment 4
  3808. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  3809. #are not misplaced in sys (rather than netinet and arpa, respectively).
  3810. #Uses ANSI C constructs, advisory file locking on devices, etc.
  3811. #Remove -lnsl if it causes trouble.
  3812. iclsys5r4:
  3813.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 (DRS N/X)'
  3814.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3815.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  3816.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  3817.     "LIBS= -lsocket -lnsl -lresolv " "LNKFLAGS = -s"
  3818.  
  3819. #As above but for DRS/NX 4.2MP 7MPlus.
  3820. iclsys5r4m+:
  3821.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 DRS/NX 4.2MP+'
  3822.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3823.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP -DNOIKSD \
  3824.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  3825.     "LIBS= -lsocket -lnsl -lm -lc -g -lgen " "LNKFLAGS = -s"
  3826.  
  3827. #As above but for DRS/NX 4.2MP 7MPlus with IKSD support.
  3828. iclsys5r4m+iksd:
  3829.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 DRS/NX 4.2MP+'
  3830.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3831.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  3832.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  3833.     "LIBS= -lsocket -lnsl -lm -lc -g -lgen -lresolv " "LNKFLAGS = -s"
  3834.  
  3835. iclsys5r4_486:
  3836.     $(MAKE) "MAKE=$(MAKE)" iclsys5r4 KTARGET=$${KTARGET:-$(@)}
  3837.  
  3838. #Data General DG/UX 4.30 (System V R3) for DG AViiON, with TCP/IP support.
  3839. dgux430:
  3840.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 4.30...'
  3841.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3842.     "CFLAGS = -O -DDGUX430 -DSVR3 -DDIRENT -DTCPSOCKET \
  3843.     -DNOINADDRX -DNOGETUSERSHELL $(KFLAGS)"
  3844.  
  3845. #Data General DG/UX 4.30 for DG AViiON, with TCP/IP support with BSDisms.
  3846. dgux430bsd:
  3847.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 4.30...'
  3848.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3849.     "CFLAGS = -O -DDGUX430 -D_BSD_SOURCE -DBSD4 \
  3850.     -DNOINADDRX -DTCPSOCKET -DNOGETUSERSHELL $(KFLAGS)"
  3851.  
  3852. #Data General DG/UX 5.4 (System V R4) for DG AViiON, with TCP/IP support.
  3853. #Add -lsocket -lnsl if inet_addr comes up missing...
  3854. #Hmmm - I really think CK_POLL can be removed from this one in which case
  3855. #there is no difference between dgux540 and dgux540i.
  3856. dgux540:
  3857.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  3858.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3859.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  3860.     -DSTERMIOX -DTCPSOCKET -DCK_POLL -DNOGETUSERSHELL $(KFLAGS)"
  3861.  
  3862. #Data General DG/UX 5.40 (System V R4) for Intel AViiON, with TCP/IP support.
  3863. dgux540i:
  3864.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  3865.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3866.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  3867.     -DSTERMIOX -DTCPSOCKET -DNOGETUSERSHELL $(KFLAGS)" \
  3868.     "LIBS = -lsocket -lnsl"
  3869.  
  3870. dgux54:
  3871.     make dgux540 KTARGET=$${KTARGET:-$(@)}
  3872.  
  3873. #Data General DG/UX 5.4 (= System V R4) for DG AViiON, with TCP/IP support.
  3874. # And curses.
  3875. dgux540c:
  3876.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.4...'
  3877.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3878.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  3879.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  3880.     $(KFLAGS)" "LIBS= -lcurses8 -ltermcap" "LNKFLAGS = -s"
  3881.  
  3882. #As above but for Intel - only difference is name library names.
  3883. dgux540ic:
  3884.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  3885.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3886.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  3887.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  3888.     $(KFLAGS)" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  3889.  
  3890. dgux54c:
  3891.     make dgux540c KTARGET=$${KTARGET:-$(@)}
  3892.  
  3893. #DG/UX 5.4R3.10
  3894. dgux54310:
  3895.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.4R3...'
  3896.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3897.     "CFLAGS = -DDGUX540 -DDGUX54310 -DDIRENT -DHDBUUCP -DSELECT \
  3898.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM    -DNOGETUSERSHELL \
  3899.     -DNOINADDRX $(KFLAGS)" "LIBS= -lcurses8 -ltermcap" "LNKFLAGS = -s"
  3900.  
  3901. #DG/UX 5.4R4.10 - Includes everything.
  3902. dgux54410:
  3903.     @echo 'Making C-Kermit $(CKVER) for DG/UX 5.4R4.10...'
  3904.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3905.     "CFLAGS = -O -DDGUX540 -DDGUX54410 -DDIRENT -DHDBUUCP -DSELECT \
  3906.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  3907.     -DNOINADDRX $(KFLAGS)" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  3908.  
  3909. #DG/UX 5.4R4.11 - Includes everything.
  3910. dgux54411:
  3911.     @echo 'Making C-Kermit $(CKVER) for DG/UX 5.4R4.11...'
  3912.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3913.     "CFLAGS = -O -DDGUX540 -DDGUX54411 -DDIRENT -DHDBUUCP -DSELECT \
  3914.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  3915.     -DNOINADDRX $(KFLAGS)" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  3916.  
  3917. #DG/UX 5.4R4.20 - Includes everything.
  3918. dgux54420:
  3919.     @echo 'Making C-Kermit $(CKVER) for DG/UX 5.4R4.20...'
  3920.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3921.     "CFLAGS = -O -DDGUX540 -DDGUX54420 -DDIRENT -DHDBUUCP -DSELECT \
  3922.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  3923.     -DNOINADDRX $(KFLAGS)" \
  3924.     "LIBS = -lsocket -lresolv -lnsl -lcurses -ltermcap"
  3925.  
  3926. #Silicon Graphics System V R3 with BSD file system (IRIS)
  3927. iris:
  3928.     @echo Making C-Kermit $(CKVER) for Silicon Graphics IRIX pre-3.3...
  3929.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3930.     "CFLAGS = -O -DSVR3 -DLONGFN -DNOLEARN $(KFLAGS) -I/usr/include/bsd" \
  3931.     "LIBS = -lbsd"
  3932.  
  3933. #Silicon Graphics IRIS System V R3
  3934. irix33:
  3935.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 3.3...'
  3936.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3937.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNOLEARN $(KFLAGS) -O" \
  3938.     "LNKFLAGS = -s"
  3939.  
  3940. #Silicon Graphics Iris Indigo with IRIX 4.0.0 or 5.0...
  3941. #Strict ANSI C compilation, TCP/IP support included
  3942. irix40:
  3943.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  3944.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3945.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DPWID_T=uid_t \
  3946.     -DCK_ANSIC -DTCPSOCKET $(KFLAGS) -O -Olimit 1600 -I/usr/include/bsd" \
  3947.     "LNKFLAGS = -s"
  3948.  
  3949. #As above, but with fullscreen display (curses) and Sun Yellow Pages support.
  3950. #NOTE: IRIX versions prior to 5 run COFF binaries.
  3951. irix40ypc:
  3952.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0.'
  3953.     @echo 'Includes fullscreen file display and Sun Yellow Pages...'
  3954.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3955.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DCK_CURSES \
  3956.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET $(KFLAGS) \
  3957.     -O -Olimit 1600 -I/usr/include/bsd" \
  3958.     "LIBS = -lcurses -lsun" "LNKFLAGS = -s"
  3959.  
  3960. # Silicon Graphics Iris Series 4D/*, IRIX 4.0.x, -O4 ucode optimized.
  3961. # Huge temporary file space needed for ucode optimizer.  If you get an error
  3962. # like "ugen: internal error writing to /tmp/ctmca08777: Error 0", define the
  3963. # the TMPDIR environment variable to point to a file system that has more
  3964. # space available, e.g. "setenv TMPDIR /usr/tmp".
  3965. irix40u:
  3966.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  3967.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3968.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DPWID_T=uid_t \
  3969.     -DCK_ANSIC -DTCPSOCKET $(KFLAGS) -O4 -Olimit 1600" \
  3970.     "LNKFLAGS=-O4 -Olimit 1600 -s" "EXT=u"
  3971.  
  3972. # As above, with Curses Support added
  3973. irix40uc:
  3974.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  3975.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3976.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DPWID_T=uid_t \
  3977.     -DCK_ANSIC -DCK_CURSES -DTCPSOCKET $(KFLAGS) -O4 -Olimit 1600" \
  3978.     "LNKFLAGS=-O4 -Olimit 1600 -s" "EXT=u" "LIBS= -lcurses -ltermcap"
  3979.  
  3980. #Silicon Graphics IRIX 5.x.
  3981. #Yellow Pages and Curses support included.
  3982. #IRIX version 5.x can run COFF or ELF binaries.
  3983. irix51:
  3984.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 5.x'
  3985.     @echo 'Includes fullscreen file display and Yellow Pages...'
  3986.     @echo 'Add -mips<n> to CFLAGS specify a particular hardware target.'
  3987.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3988.     "CFLAGS = -DIRIX51 -DSVR4 -DDIRENT -DHDBUUCP -DCK_CURSES -DCK_NEWTERM \
  3989.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET -DSELECT -DNOGETUSERSHELL \
  3990.     -DSYSTIMEH -DDCLPOPEN -DDCLFDOPEN $(KFLAGS) -ansi -O -Olimit 3000" \
  3991.     "LIBS = -lcurses" "LNKFLAGS = -s"
  3992.  
  3993. #Use this one if irix51 blows up due to lack of swap space or whatever.
  3994. irix51x:
  3995.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 5.x'
  3996.     @echo 'Includes fullscreen file display and Yellow Pages...'
  3997.     @echo 'Add -mips<n> to CFLAGS specify a particular hardware target.'
  3998.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3999.     "CFLAGS = -DIRIX51 -DSVR4 -DDIRENT -DHDBUUCP -DCK_CURSES -DCK_NEWTERM \
  4000.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET -DSELECT -DNOGETUSERSHELL \
  4001.     -DSYSTIMEH -DDCLPOPEN -DDCLFDOPEN $(KFLAGS)" \
  4002.     "LIBS = -lcurses" "LNKFLAGS = -s"
  4003.  
  4004. irix51ypc:
  4005.     $(MAKE) "MAKE=$(MAKE)" irix51 KTARGET=$${KTARGET:-$(@)} \
  4006.     "KFLAGS= $(KFLAGS)"
  4007.  
  4008. #IRIX 5.2 adds RTS/CTS
  4009. irix52:
  4010.     $(MAKE) "MAKE=$(MAKE)" irix51 KTARGET=$${KTARGET:-$(@)} \
  4011.     "KFLAGS=-DIRIX52 -DCK_RTSCTS $(KFLAGS)"
  4012.  
  4013. irix53:
  4014.     $(MAKE) "MAKE=$(MAKE)" irix51 KTARGET=$${KTARGET:-$(@)} \
  4015.     "KFLAGS=-DIRIX52 -DIRIX53 -DCK_RTSCTS $(KFLAGS)"
  4016.  
  4017. irix53x:
  4018.     $(MAKE) "MAKE=$(MAKE)" irix51x KTARGET=$${KTARGET:-$(@)} \
  4019.     "KFLAGS=-DIRIX52 -DIRIX53 -DCK_RTSCTS $(KFLAGS)"
  4020.  
  4021. #Silicon Graphics IRIX 6.[024] common stuff.
  4022. #Yellow Pages and Curses support included.
  4023. #IRIX version 6.0 and later runs only ELF binaries.
  4024. #Depends on code changes in ckudeb.h that make -DIRIX6x define all
  4025. #lower IRIX6x values and IRIX51.
  4026. irix6x:
  4027.     @echo 'Includes fullscreen file display and Yellow Pages...'
  4028.     @echo 'Add -mips<n> to specify a particular hardware target.'
  4029.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4030.     "CFLAGS = -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4031.     -DCK_CURSES -DCK_NEWTERM -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET \
  4032.     -DSELECT -DCK_RTSCTS -O $(KFLAGS)" \
  4033.     "LIBS = -lcurses" "LNKFLAGS = -s $(LNKFLAGS)"
  4034.  
  4035. #Silicon Graphics IRIX 6.0.
  4036. irix60:
  4037.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.0'
  4038.     @$(MAKE) "MAKE=$(MAKE)" \
  4039.     "KFLAGS=-DIRIX60 -Olimit 2138 $(KFLAGS)" \
  4040.     irix6x KTARGET=$${KTARGET:-$(@)}
  4041.  
  4042. #Silicon Graphics IRIX 6.2.
  4043. #Serial speeds > 38400 are available in IRIX 6.2 on O-class machines only.
  4044. #Note: Olimit must be a number > 0.
  4045. irix62:
  4046.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.2'
  4047.     @$(MAKE) "MAKE=$(MAKE)" \
  4048.     LNKFLAGS="-Wl,-woff,84" \
  4049.     "KFLAGS=-DIRIX62 -Olimit 4700 $(KFLAGS)" \
  4050.     irix6x KTARGET=$${KTARGET:-$(@)}
  4051.  
  4052. #Silicon Graphics IRIX 6.3.
  4053. irix63:
  4054.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.3'
  4055.     @$(MAKE) "MAKE=$(MAKE)" irix62 KTARGET=$${KTARGET:-$(@)} \
  4056.     "KFLAGS=-DIRIX63"
  4057.  
  4058. #Silicon Graphics IRIX 6.4.
  4059. # -woff,84 to linker stops complaints about no symbols loaded from
  4060. # curses, and -woff 1110 stops complaints about unreachable "break;"
  4061. # statements in ckcpro.c among others.
  4062. # tested on SGI Octane, running IRIX 6.4 up to 115200 bps.
  4063. # -Olimit 0 means infinite.
  4064. irix64:
  4065.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.4'
  4066.     @$(MAKE) "MAKE=$(MAKE)" \
  4067.     LNKFLAGS="-Wl,-woff,84" \
  4068.     "KFLAGS=-DIRIX64 -DCK_RTSCTS -Olimit 3000 -woff 1110 $(KFLAGS)" \
  4069.     irix6x KTARGET=$${KTARGET:-$(@)}
  4070.  
  4071. irix64gcc:
  4072.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.4 gcc'
  4073.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  4074.     "CFLAGS= -DSVR4 -DIRIX64 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC \
  4075.     $(KFLAGS) -O" "LIBS= -lcurses -ltermcap -lcrypt"
  4076.  
  4077. #Note the new Optimization option syntax for MIPSpro CC 7.2.1.2m.
  4078. irix65:
  4079.     @echo 'Making C-Kermit $(CKVER) for SGI IRIX 6.5'
  4080.     @$(MAKE) "MAKE=$(MAKE)" LNKFLAGS="-Wl,-woff,84" \
  4081.     "KFLAGS=-DIRIX65 -DCK_RTSCTS -OPT:Olimit=0 -woff 1110,1552,1174 \
  4082.     $(KFLAGS)" \
  4083.     irix6x KTARGET=$${KTARGET:-$(@)}
  4084.  
  4085. irix6x+krb5:
  4086.     @echo 'Includes fullscreen file display and Yellow Pages...'
  4087.     @echo 'Add -mips<n> to specify a particular hardware target.'
  4088.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} \
  4089.     "CFLAGS = -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4090.     -DCK_CURSES -DCK_NEWTERM -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET\
  4091.     -DSELECT -DCK_RTSCTS -O \
  4092.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DCK_ENCRYPTION -DCK_DES \
  4093.     $(K5INC) $(K5INC)/krb5 $(KFLAGS)" \
  4094.     "LIBS = -lcurses $(K5LIB) -ldes425 -lkrb5 \
  4095.     -lcom_err -lcrypto -lcrypt -lgssapi_krb5" \
  4096.     "LNKFLAGS = -s $(LNKFLAGS)"
  4097.  
  4098. irix65+krb5:
  4099.     @echo 'Making C-Kermit $(CKVER) for SGI IRIX 6.5'
  4100.     @$(MAKE) "MAKE=$(MAKE)" \
  4101.     LNKFLAGS="-Wl,-woff,84" \
  4102.     "KFLAGS=-DIRIX65 -DCK_RTSCTS -OPT:Olimit=0 -woff 1110,1552,1174 \
  4103.     $(KFLAGS)" \
  4104.     irix6x+krb5 KTARGET=$${KTARGET:-$(@)}
  4105.  
  4106. #In case they type "make sys5"...
  4107. sys5:
  4108.     $(MAKE) "MAKE=$(MAKE)" sys3 KTARGET=$${KTARGET:-$(@)}
  4109.  
  4110. #Generic ATT System III or System V (with I&D space)
  4111. sys3:
  4112.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  4113.     @echo 'or System V R2 or earlier...'
  4114.     @echo 'add -DNOMKDIR if mkdir is an undefined symbol.'
  4115.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4116.     "CFLAGS = -DATTSV -DNOUNICODE -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL \
  4117.     -DNOINITGROUPS -DNOFTRUNCATE -DNOREALPATH -DNOLEARN $(KFLAGS) -i -O" \
  4118.     "LNKFLAGS = -i"
  4119.  
  4120. #Generic ATT System III or System V (no I&D space)
  4121. sys3nid:
  4122.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  4123.     @echo 'or System V R2 or earlier, no I&D space...'
  4124.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4125.     "CFLAGS = -DATTSV -DNOREALPATH -DNOUNICODE -DNOSYSLOG -DNOSYMLINK \
  4126.     -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE -DNOLEARN $(KFLAGS) -O" \
  4127.     "LNKFLAGS ="
  4128.  
  4129. #Generic ATT System III or System V R2 or earlier, "no void":
  4130. #special entry to remove "Illegal pointer combination" warnings.
  4131. sys3nv:
  4132.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  4133.     @echo 'or System V R2 or earlier...'
  4134.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4135.     "CFLAGS= -DATTSV -DNOREALPATH -DNOUNICODE -DNOSYSLOG -DNOGETUSERSHELL \
  4136.     -DNOSYMLINK -DNOFTRUNCATE -DNOINITGROUPS -DNOLEARN \
  4137.     -Dvoid=int $(KFLAGS) -i -O" \
  4138.     "LNKFLAGS = -i"
  4139.  
  4140. # AT&T 7300 UNIX PC.  As of C-Kermit 6.1, many of these entries don't work
  4141. # any more due to "Out of memory" or "Too many defines" errors during
  4142. # compilation, at least not on systems without lots of memory.  The sys3upcgc
  4143. # entry works (using gcc) with optimization removed, and might also work
  4144. # with optimization enabled on machines with larger memories.
  4145.  
  4146. #AT&T 7300/UNIX PC (3B1) systems, sys3 but special handling for internal modem.
  4147. #Link with the shared library -- the conflict with openi in shared library
  4148. #is solved with -Dopeni=xopeni.  Note that the xermit target can't be used
  4149. #for the Unix PC; there is no select().
  4150. sys3upc:
  4151.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, shared lib...'
  4152.     @echo 'If shared lib causes trouble, use make sys3upcold.'
  4153.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4154.     "CFLAGS = -O -DATT7300 -DNOMKDIR -DUSE_MEMCPY -DNOREALPATH -DNOLEARN \
  4155.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4156.     -DNOREDIRECT -DNOGFTIMER -DNOUNICODE $(KFLAGS) -Dopeni=xopeni" \
  4157.     "CC2 = ld /lib/crt0s.o /lib/shlib.ifile" "LNKFLAGS = -s"
  4158.  
  4159. #AT&T 7300/Unix PC systems, minimum kermit for those with smaller amounts
  4160. #of memory.
  4161. sys3upcm:
  4162.     @echo Minimum interactive
  4163.     $(MAKE) "MAKE=$(MAKE)" sys3upc KTARGET=$${KTARGET:-$(@)} \
  4164.     "KFLAGS=-DNOSPL -DNOFRILLS -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS \
  4165.     -DNOSYSLOG -DNOSETKEY -DNOREALPATH"
  4166.  
  4167. #AT&T 7300/UNIX PC (3B1) systems, with curses support.
  4168. #Curses and the shared library don't get along, so we don't use the
  4169. #shared library.  We need to include CK_NEWTERM to avoid a conflict
  4170. #with curses and buffering on stdout.  Merged with submission by
  4171. #Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu.
  4172. #We don't need -Dopeni=xopeni since we're not using the shared library,
  4173. #but we keep it to be consistent with the other entries.
  4174. sys3upcc:
  4175.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  4176.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4177.     "CFLAGS = -O -DATT7300 -DNOREALPATH \
  4178.     -DCK_CURSES -DCK_NEWTERM -DNOMKDIR -DNOREDIRECT -DNOGFTIMER -DNOLEARN \
  4179.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4180.     -DUSE_MEMCPY -DNOUNICODE $(KFLAGS) -Dopeni=xopeni" \
  4181.     "LIBS = -lcurses" "LNKFLAGS = -s"
  4182.  
  4183. #Like sys3upcc but for AT&T UNIX 3.51m (released as a patch on Fix Disk 2),
  4184. #adds hardware flow control.
  4185. att351m:
  4186.     $(MAKE) "MAKE=$(MAKE)" sys3upcc KTARGET=$${KTARGET:-$(@)} \
  4187.     "KFLAGS=-DCK_RTSCTS -DUNIX351M"
  4188.  
  4189. #As above but with gcc.
  4190. att351gm:
  4191.     $(MAKE) "MAKE=$(MAKE)" sys3upcgc KTARGET=$${KTARGET:-$(@)} \
  4192.     "KFLAGS=-DCK_RTSCTS -DUNIX351M"
  4193.  
  4194. #AT&T 7300 UNIX PC (3B1), as above, but no newterm().
  4195. sys3upcx:
  4196.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  4197.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4198.     "CFLAGS = -O -DATT7300 -DNOREALPATH -DNOUNICODE -DNOLEARN \
  4199.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4200.     -DCK_CURSES -DNOMKDIR -DNOREDIRECT -DNOGFTIMER -DUSE_MEMCPY $(KFLAGS) \
  4201.     -Dopeni=xopeni" "LIBS = -lcurses -ltermcap" "LNKFLAGS = -s"
  4202.  
  4203. #AT&T 7300/UNIX PC (3B1) systems, with curses and shared library support.
  4204. sys3upcshcc:
  4205.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, shared lib...'
  4206.     @echo 'With curses.  Requires shcc.'
  4207.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4208.     "CFLAGS = -O -DATT7300 -DNOMKDIR -DNOREALPATH -DNOLEARN \
  4209.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4210.     -DCK_NEWTERM -DCK_CURSES  -DNOREDIRECT -DNOGFTIMER \
  4211.     -DUSE_MEMCPY -DNOUNICODE $(KFLAGS) -Dopeni=xopeni" \
  4212.     "LNKFLAGS = -i -s" "CC = shcc" "CC2 = shcc" "LIBS = -lcurses"
  4213.  
  4214. #AT&T 7300/UNIX PC (3B1) systems, as above, no curses, but use gcc.
  4215. sys3upcg:
  4216.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC...'
  4217.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4218.     "CFLAGS = -DATT7300 -DNOREDIRECT -DUSE_MEMCPY -DNOUNICODE -DNOLEARN \
  4219.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4220.     -DNOGFTIMER -DNOMKDIR -DNOREALPATH $(KFLAGS) -Dopeni=xopeni" \
  4221.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s -shlib"
  4222.  
  4223. #AT&T 7300/UNIX PC (3B1) systems, curses and gcc.
  4224. #Optimization omitted -- add it back in if your machine has lots of memory.
  4225. sys3upcgc:
  4226.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  4227.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4228.     "CFLAGS = -DATT7300 -DNOREDIRECT -DUSE_MEMCPY -DNOGFTIMER -DNOUNICODE \
  4229.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4230.     -DCK_CURSES -DCK_NEWTERM -DNOMKDIR -DNOREALPATH -DNOLEARN $(KFLAGS)" \
  4231.     "CC = gcc" "CC2 = gcc" "LIBS = -lcurses" "LNKFLAGS = -s"
  4232.  
  4233. #AT&T 7300/UNIX PC (3B1) systems, special handling for internal modem.
  4234. #No FULLSCREEN file transfer display (curses).
  4235. sys3upcold:
  4236.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC...'
  4237.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4238.     "CFLAGS = -DATT7300 -DNOMKDIR -DUSE_MEMCPY -DNOUNICODE -DNOLEARN \
  4239.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4240.     -DNOGFTIMER -DNOREDIRECT -DNOREALPATH $(KFLAGS) -O" "LNKFLAGS = -i"
  4241.  
  4242. #As above, but with gcc. mininum features - fits on a 400K UNIX PC floppy
  4243. #after compression with room to spare; add -DNOSHOW or other -DNOxxxx items
  4244. #to reduce size even further.
  4245. sys3upcgm:
  4246.     @echo Minimum interactive
  4247.     $(MAKE) "MAKE=$(MAKE)" sys3upcg KTARGET=$${KTARGET:-$(@)} \
  4248.     "KFLAGS=-DNOSPL -DNOFRILLS -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS \
  4249.     -DNOSETKEY $(KFLAGS)"
  4250.  
  4251. #This target is designed to create a version with the most features possible
  4252. #that, after compression, still fits on a 400K UNIX PC floppy.
  4253. sys3upcgfd:
  4254.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC floppy...'
  4255.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4256.     "CFLAGS = -DATT7300 -DNOREDIRECT -DUSE_MEMCPY -DNOSPL -DNOLEARN \
  4257.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4258.     -DNOGFTIMER -DNOREALPATH -Dopeni=xopeni \
  4259.     -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS -DNOSETKEY -DNOMKDIR $(KFLAGS)" \
  4260.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s"
  4261.  
  4262. #AT&T 6300 PLUS (warning, -O might make it run out of space).
  4263. #NOTE: Remove -DHDBUUCP if not using Honey DanBer UUCP.
  4264. att6300:
  4265.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS...'
  4266.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4267.     "CFLAGS = -DATT6300 -DHDBUUCP -DNOFILEH -DNOREALPATH -DNOLEARN \
  4268.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4269.     -DNOUNICODE $(KFLAGS) -O -Ml -i" "LNKFLAGS = -i -Ml"
  4270.  
  4271. #As above, but with curses support.  Debugging disabled to prevent thrashing.
  4272. att6300c:
  4273.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS...'
  4274.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4275.     "CFLAGS = -DATT6300 -DHDBUUCP -DNOFILEH -DNOCSETS -DNOREALPATH \
  4276.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4277.     -DCK_CURSES -DNODEBUG -DNOUNICODE -DNOLEARN $(KFLAGS) -O -Ml -i" \
  4278.     "LNKFLAGS = -i -Ml" "LIBS = -lcurses"
  4279.  
  4280. #AT&T 6300 PLUS with no curses, no debugging (about 34K smaller)
  4281. # -Optimization saves about 20K too.
  4282. att6300nd:
  4283.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS, no debugging...'
  4284.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4285.     "CFLAGS = -DATT6300 -DHDBUUCP -DNODEBUG -DNOFILEH -DNOREALPATH \
  4286.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4287.     -DNOUNICODE -DNOLEARN $(KFLAGS) -O -i -Ml" "LNKFLAGS = -i -Ml"
  4288.  
  4289. #AT&T 3B2 and maybe 3B20-series computers running AT&T UNIX System V R3.
  4290. #This one was actually used to build C-Kermit 7.0 successfully on a 3B2/300.
  4291. att3b2:
  4292.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2'
  4293.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4294.     "CFLAGS = -DATTSV -DNOREDIRECT -DUSE_MEMCPY \
  4295.     -DNOTIMEVAL -DNOTIMEZONE -DMINIDIAL -DNOCHANNELIO -DNOBIGBUF \
  4296.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4297.     -DNOGFTIMER -DNOREALPATH -Dopeni=xopeni -DNOFRILLS -DNOLEARN \
  4298.     -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS -DNOSETKEY -DNOMKDIR $(KFLAGS)" \
  4299.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s"
  4300.  
  4301. # The next two are likely not to work as-is.
  4302.  
  4303. #AT&T 3B2, 3B20-series computers running AT&T UNIX System V.
  4304. #This is just generic System V with Honey DanBer UUCP, so refer to sys3hdb.
  4305. #Remove -DNONAWS if you can get away with it.
  4306. att3bx:
  4307.     $(MAKE) "MAKE=$(MAKE)" sys3hdb KTARGET=$${KTARGET:-$(@)} \
  4308.     "KFLAGS=$(KFLAGS) -DNONAWS -DNOTIMEVAL"
  4309.  
  4310. # 3Bx with charsets (except Unicode) but no curses.
  4311. att3bx1:
  4312.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  4313.     @echo 'with Honey DanBer UUCP  no curses...'
  4314.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4315.     "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -DNOREDIRECT \
  4316.     -DNOTIMEVAL -DNOTIMEZONE -DMINIDIAL -DNOCHANNELIO -DNOBIGBUF \
  4317.     -DNOHELP -DNODEBUG -DNOGFTIMER -DNOLEARN \
  4318.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4319.     -DNOREALPATH -DNOUNICODE -i" \
  4320.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -i -s"
  4321.  
  4322. #AT&T 3B2, 3B20-series computers running AT&T UNIX System V,
  4323. #with fullscreen file transfer display.
  4324. att3bxc:
  4325.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  4326.     @echo 'with Honey DanBer UUCP and curses...'
  4327.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4328.     "CFLAGS = -DATTSV -DHDBUUCP -DNONAWS -DNOTIMEVAL $(KFLAGS) \
  4329.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4330.     -DNOREALPATH -DCK_CURSES -DCK_NEWTERM -DNOUNICODE -DNOLEARN -i -O" \
  4331.     "LNKFLAGS = -i" "LIBS=-lcurses"
  4332.  
  4333. #3bx with curses but no charsets
  4334. att3bxc3:
  4335.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  4336.     @echo 'with Honey DanBer UUCP with curses...  no CSETS'
  4337.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4338.     "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -DNOREDIRECT \
  4339.     -DNOTIMEVAL -DNOTIMEZONE -DMINIDIAL -DNOCHANNELIO -DNOBIGBUF \
  4340.     -DNOHELP -DNODEBUG -DNOGFTIMER -DNOLEARN \
  4341.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4342.     -DNOREALPATH -DNOCSETS -DCK_CURSES -DCK_NEWTERM -i" \
  4343.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -i -s" "LIBS = -lcurses"
  4344.  
  4345. #Any System V R2 or earlier with Honey DanBer UUCP (same as above)
  4346. sys3hdb:
  4347.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  4348.     @echo 'or System V R2 or earlier with Honey DanBer UUCP...'
  4349.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4350.     "CFLAGS = -DATTSV -DHDBUUCP -DNOREALPATH -DNOUNICODE -DNOLEARN \
  4351.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4352.     $(KFLAGS) -i -O" "LNKFLAGS = -i"
  4353.  
  4354. #Sperry/UNISYS 5000 UTS V 5.2 (System V R2), Honey DanBer UUCP
  4355. unisys5r2:
  4356.     @echo 'Making C-Kermit $(CKVER) for Sperry/UNISYS 5000 UTS V 5.2...'
  4357.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4358.     "CFLAGS = -DATTSV -DUNISYS52 -DHDBUUCP -DNOREALPATH -DNOUNICODE \
  4359.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  4360.     -DNOLEARN $(KFLAGS) -i -O" "LNKFLAGS = -i"
  4361.  
  4362. #In case they say "make sys5hdb" instead of "make sys3hdb"...
  4363. sys5hdb:
  4364.     $(MAKE) "MAKE=$(MAKE)" sys3hdb
  4365.  
  4366. #Create the common header line for all hpux[5-10]* entries. This extra entry is
  4367. #here because our header message length may differ for each C-Kermit version.
  4368. #Don't use 'fold -s' for HP-UX 5.x - 7.x! This option is there only since
  4369. #HP-UX 8.0!
  4370. hpux-header:
  4371.     @HPUX=`uname -r | sed -e 's/^[^1-9]*//' -e 's/\.00$$/.0/'` ; \
  4372.     [ "$(MESSAGE0)" ] && MESSAGE1="$(MESSAGE0)" ; \
  4373.     Message0='Making C-Kermit $(CKVER) for HP9000 HP-UX' ; \
  4374.     Message1=$${MESSAGE1:='without any extra compiler optimization'} ; \
  4375.     MessageH="$$Message0 $$HPUX" ; \
  4376.     case $$HPUX in \
  4377.       [567].*) echo "$$MessageH\n$$Message1" ;; \
  4378.           *.*) echo "$$MessageH $${Message1}$(MESSAGE1A)" | fold -s ;; \
  4379.     esac | sed -e 's/^ //' -e 's/ *$$//'
  4380.  
  4381. # Peter E's updated HP-UX 5.xx entries Oct 2001.
  4382.  
  4383. #HP-9000 500 HP-UX 5.xx, no TCP/IP.
  4384. hpux0500:
  4385.     @MESSAGE0="no TCP/IP and no compiler optimization";\
  4386.     MESSAGE0=$${MESSAGE1:-$$MESSAGE0} \
  4387.     $(MAKE) hpux-header
  4388.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4389.     "CFLAGS = -DHPUX -DHPUX5 -DHPUXPRE65 -DNOREDIRECT -DDCLGETCWD \
  4390.     -DNOGETUSERSHELL -DNOGFTIMER -DNOSYSLOG -DNOTOMACROS -DNOLSTAT \
  4391.     -DNOSYMLINK -DNOINITGROUPS -DNOUNICODE -DNOLEARN $(KFLAGS)" \
  4392.     "LIBS = $(LIBS)" "LNKFLAGS = "
  4393.  
  4394. #HP-9000 500 HP-UX 5.21 with Wollongong WIN/TCP 1.2 TCP/IP.
  4395. #Requires /usr/wins/usr/include and /usr/lib/libnet.a from Wollongong.
  4396. #Optimization skipped - takes forever.    Really.
  4397. hpux0500wintcp:
  4398.     @MESSAGE1="with WIN/TCP but without any extra compiler optimization" \
  4399.     $(MAKE) hpux0500 KTARGET=$${KTARGET:-$(@)} \
  4400.     "KFLAGS = -DTCPSOCKET -DHPUX5WINTCP -DINADDRX -DNO_DNS_SRV -DNOMHHOST \
  4401.     -DNOHADDRLIST -I/usr/wins/usr/include $(KFLAGS)" \
  4402.     "LIBS = /usr/lib/libnet.a"
  4403.  
  4404. #HP-UX 6.5, short filenames, no network and no curses support.
  4405. #ckcpro, ckuusr, ckuus3 and others are broken out because they make the
  4406. #optimizer run away.  Note that xermit target does not work with this one!
  4407. #If you get compiler warnings like 'Switch table overflow' increase the '...'
  4408. #value in '-Wc,-Nw...'!
  4409. hpux0650:
  4410.     @$(MAKE) hpux-header
  4411.     @echo 'supporting: NO long filenames, NO network${MESSAGE2}.'
  4412.  
  4413.     $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4414.         ckuusr.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  4415.             ckuus6.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) \
  4416.     "CFLAGS = -DHPUX -DHPUX6 -DSIG_V -DNOSYSLOG -DNOSELECT -DFNFLOAT \
  4417.     -DDCLGETCWD -DNOGETUSERSHELL -DNO_DNS_SRV -DNOLEARN $(KFLAGS) \
  4418.     -Wc,-Nw260"
  4419.  
  4420.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4421.     "CFLAGS = -DHPUX -DHPUX6 -DSIG_V -DNOSYSLOG -DNOSELECT -DFNFLOAT \
  4422.     -DDCLGETCWD -DNOGETUSERSHELL -DNO_DNS_SRV -DNOLEARN $(KFLAGS) \
  4423.     -Wc,-Nw260 $(OFLAGS)" "LNKFLAGS = -s" "LIBS = -lm $(LIBS)"
  4424.  
  4425. #Exactly as above, plus curses:
  4426. hpux0650c:
  4427.     @MESSAGE2=", but with curses" \
  4428.     $(MAKE) hpux0650 KTARGET=$${KTARGET:-$(@)} \
  4429.     "KFLAGS= -DCK_CURSES $(KFLAGS)" \
  4430.     "LIBS= -lcurses"
  4431.  
  4432. #Exactly as above, plus curses + network:
  4433. #(doesn't work -- HP-UX 6 lacks the FD_SET macros -- this can be addressed
  4434.  
  4435. hpux0650tcpc:
  4436.     @MESSAGE2=", but with curses and with tcp/ip" \
  4437.     $(MAKE) hpux0650 KTARGET=$${KTARGET:-$(@)} \
  4438.     "KFLAGS= -DCK_CURSES -DTCPSOCKET -DNOHADDRLIST $(KFLAGS)" \
  4439.     "LIBS= -lcurses"
  4440.  
  4441. #Exactly as hpux0650 but with compiler optimization:
  4442. hpux0650o:
  4443.     @MESSAGE1="with compiler optimization" \
  4444.     $(MAKE) hpux0650 KTARGET=$${KTARGET:-$(@)} \
  4445.     "KFLAGS= $(KFLAGS)" "OFLAGS = -O"
  4446.  
  4447. #Exactly as hpux0650c but with compiler optimization:
  4448. hpux0650oc:
  4449.     @MESSAGE1="with compiler optimization" \
  4450.     $(MAKE) hpux0650c KTARGET=$${KTARGET:-$(@)} \
  4451.     "KFLAGS= $(KFLAGS)" "OFLAGS = -O"
  4452.  
  4453. #Take this as startup entry for all 'none optimized' files under HP-UX 7.x!
  4454. #Make sure we doesn't call it with the '-O' option because this will blow up
  4455. #the compiler!
  4456. hpux0700noopt:
  4457.     @case "$(CFLAGS)" in \
  4458.     *-O*) echo "Don't use CFLAGS= -O here!" ;; \
  4459.        *) $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4460.           ckuusr.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  4461.           ckuus6.$(EXT) ckuus7.$(EXT) ckuxla.$(EXT) \
  4462.           ckcuni.$(EXT) ckcftp.$(EXT) ckcpro.$(EXT) \
  4463.           ;; \
  4464.     esac
  4465.  
  4466. #HP-UX 7.0, no long filenames, no network support, no curses.
  4467. #If you get compiler warnings like 'Switch table overflow' increase the '...'
  4468. #value in '-Wc,-Nw...'!
  4469. hpux0700sf:
  4470.     @$(MAKE) hpux-header
  4471.     @echo 'supporting: NO long filenames, NO network, NO curses.'
  4472.     $(MAKE) hpux0700noopt KTARGET=$${KTARGET:-$(@)} \
  4473.     "CFLAGS = -DHPUX -DHPUX7 -DSIG_V -DNOGETUSERSHELL -DFNFLOAT \
  4474.     -DNO_DNS_SRV $(KFLAGS) -Wc,-Nw260"
  4475.  
  4476.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4477.     "CFLAGS = -DHPUX -DHPUX7 -DSIG_V -DNOGETUSERSHELL -DFNFLOAT \
  4478.     -DNO_DNS_SRV $(KFLAGS) -Wc,-Nw260 $(OFLAGS)" \
  4479.     "LNKFLAGS = -s" "LIBS = -lm $(LIBS)"
  4480.  
  4481. #Exactly as hpux0700sf but with compiler optimization:
  4482. hpux0700osf:
  4483.     @MESSAGE1="with compiler optimization" \
  4484.     $(MAKE) hpux0700sf KTARGET=$${KTARGET:-$(@)} \
  4485.     "KFLAGS= $(KFLAGS)" "OFLAGS = -O"
  4486.  
  4487. #HP-UX 7.0, short filenames, but with tcp/ip and curses.
  4488. #To use this, you must have bought the ARPA Services Product from HP, and you 
  4489. #must have /usr/lib/libBSD.a.
  4490. hpux0700sftcpc:
  4491.     @$(MAKE) hpux-header
  4492.     @echo 'supporting: NO long filenames, \c'
  4493.     @echo 'but with networking, curses, HDB uucp...'
  4494.     $(MAKE) hpux0700noopt KTARGET=$${KTARGET:-$(@)} \
  4495.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V \
  4496.     -DCK_REDIR -DCK_RTSCTS -DCK_CURSES -DNOGETUSERSHELL -DFNFLOAT \
  4497.     -DNO_DNS_SRV -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" $(KFLAGS) \
  4498.     -Wc,-Nw260"
  4499.  
  4500.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4501.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V \
  4502.     -DCK_REDIR -DCK_RTSCTS -DCK_CURSES -DNOGETUSERSHELL -DFNFLOAT \
  4503.     -DNO_DNS_SRV -DHDBUUCP  -DLOCK_DIR=\\\"/usr/spool/uucp\\\" $(KFLAGS) \
  4504.     -Wc,-Nw260 $(OFLAGS)" "LNKFLAGS = -s" "LIBS= -lm -lBSD -lcurses"
  4505.  
  4506. #Exactly as above but with compiler optimization:
  4507. hpux0700osftcpc:
  4508.     @MESSAGE1="with compiler optimization" \
  4509.     $(MAKE) hpux0700sftcpc KTARGET=$${KTARGET:-$(@)} \
  4510.     "KFLAGS= $(KFLAGS)" "OFLAGS = -O"
  4511.  
  4512. #HP 9000 series 300/800 HP-UX 7.0, long filenames, network support, HDB uucp,
  4513. #but NO curses. See comments in hpux0700sftcpc about TCP/IP support.
  4514. hpux0700lfn:
  4515.     @$(MAKE) hpux-header
  4516.     @echo 'supporting: long filenames, networking, HDB uucp$(MESSAGE2)...'
  4517.     $(MAKE) hpux0700noopt KTARGET=$${KTARGET:-$(@)} \
  4518.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V -DFNFLOAT \
  4519.     -DNOGETUSERSHELL -DNOSETBUF -DCK_REDIR -DCK_RTSCTS -DLONGFN \
  4520.     -DNO_DNS_SRV -DDIRENT -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" \
  4521.     $(KFLAGS) -Wc,-Nw260"
  4522.  
  4523.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4524.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V -DFNFLOAT \
  4525.     -DNOGETUSERSHELL -DNOSETBUF -DCK_REDIR -DCK_RTSCTS -DLONGFN \
  4526.     -DNO_DNS_SRV -DDIRENT -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" \
  4527.     $(KFLAGS) -Wc,-Nw260 \
  4528.     $(OFLAGS)" "LNKFLAGS = -s" "LIBS = -lm -lBSD $(LIBS)"
  4529.  
  4530. #Exactly as above + curses.
  4531. hpux0700lfnc:
  4532.     @MESSAGE2=', curses' \
  4533.     $(MAKE) hpux0700lfn KTARGET=$${KTARGET:-$(@)} \
  4534.     "KFLAGS= -DCK_CURSES $(KFLAGS)" \
  4535.     "LIBS= -lcurses"
  4536.  
  4537. #Exactly as above hpux0700lfn but with compiler optimization:
  4538. hpux0700olfn:
  4539.     @MESSAGE1="with compiler optimization" \
  4540.     $(MAKE) hpux0700lfn KTARGET=$${KTARGET:-$(@)} \
  4541.     "KFLAGS= $(KFLAGS)" "OFLAGS = -O"
  4542.  
  4543. #Exactly as above hpux0700lfnc but with compiler optimization:
  4544. hpux0700olfnc:
  4545.     @MESSAGE1="with compiler optimization" \
  4546.     $(MAKE) hpux0700lfnc KTARGET=$${KTARGET:-$(@)} \
  4547.     "KFLAGS= $(KFLAGS)" "OFLAGS = -O"
  4548.  
  4549. #HP 9000 Series 300 or 400, HP-UX 8.0, long filenames and TCP/IP support.
  4550. #This one should also work on 700/800, but without PA-specific optimization.
  4551. #In case -DCK_RTSCTS and -DCK_REDIR make trouble, remove them.
  4552. #NOTE: ckcpro.c, ckuusr.c and ckuus3.c blow up the optimizer, so don't optimize
  4553. #them.
  4554. #For HP-UX 8.0 on Motorola CPUs, you might have to reinstall your kernel with
  4555. #maxdsiz >= 0x03000000.  But if physical memory is small, that still will not
  4556. #help much.
  4557. hpux0800:
  4558.     @$(MAKE) hpux-header
  4559.     @MESSAGE3=$${MESSAGE3:='TCP/IP'}; \
  4560.     echo "supporting: long filenames, $$MESSAGE3, HDB UUCP$(MESSAGE2)..."
  4561.     $(MAKE) -B "CC=$(CC)" "CC2=$(CC2)" KTARGET=$${KTARGET:-$(@)} \
  4562.     ckcpro.$(EXT) ckuusr.$(EXT) ckuus3.$(EXT) \
  4563.     "CFLAGS =  -DCK_REDIR -DHPUXDEBUG -DHPUX -DHPUX8 -DRENAME -DSIG_V \
  4564.     -DNOSETBUF -DDIRENT -DCK_RTSCTS -DSTERMIOX -DLONGFN -DTCPSOCKET \
  4565.     -DHDBUUCP  -DNO_DNS_SRV -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT \
  4566.     $(KFLAGS)"
  4567.  
  4568.     $(MAKE) -B "CC=$(CC)" "CC2=$(CC2)" xermit KTARGET=$${KTARGET:-$(@)} \
  4569.     "CFLAGS =  -DCK_REDIR -DHPUXDEBUG -DHPUX -DHPUX8 -DRENAME -DSIG_V \
  4570.     -DNOSETBUF -DDIRENT -DCK_RTSCTS -DSTERMIOX -DLONGFN -DTCPSOCKET \
  4571.     -DHDBUUCP  -DNO_DNS_SRV -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT \
  4572.     $(KFLAGS) $(OFLAGS)" "LNKFLAGS = -s" "LIBS = -lm -lBSD $(LIBS)"
  4573.  
  4574. #Exactly as above hpux0800 + curses.
  4575. hpux0800c:
  4576.     @MESSAGE2=', curses' \
  4577.     $(MAKE) hpux0800  KTARGET=$${KTARGET:-$(@)} \
  4578.     "KFLAGS = $(KFLAGS) -DCK_CURSES" "LIBS = -lcurses"
  4579.  
  4580. #HP 9000 HP-UX 8.0, no TCP/IP because /usr/lib/libBSD.a can't be found,
  4581. #or TCP/IP header files missing.
  4582. hpux0800notcp:
  4583.     @MESSAGE3='NO network, NO curses' \
  4584.     $(MAKE) "MAKE=$(MAKE)" hpux0800 KTARGET=$${KTARGET:-$(@)} \
  4585.     "KFLAGS = $(KFLAGS) -UTCPSOCKET"
  4586.  
  4587. #Now the same as above hpux0800 but with compiler optimization
  4588. hpux0800o:
  4589.     @MESSAGE1="with compiler optimization" \
  4590.     $(MAKE) hpux0800 KTARGET=$${KTARGET:-$(@)} \
  4591.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  4592.  
  4593. #Exactly as above hpux0800 + curses and with compiler optimization.
  4594. hpux0800oc:
  4595.     @MESSAGE1="with compiler optimization" \
  4596.     $(MAKE) hpux0800c KTARGET=$${KTARGET:-$(@)} \
  4597.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O" "LIBS = -lcurses"
  4598.  
  4599. #Exactly as above hpux0800notcp but with compiler optimization
  4600. hpux0800onotcp:
  4601.     @MESSAGE1="with compiler optimization" \
  4602.     $(MAKE) "MAKE=$(MAKE)" hpux0800notcp KTARGET=$${KTARGET:-$(@)} \
  4603.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  4604.  
  4605. #HP 9000 Series 700 or 800, HP-UX 8.0, long filenames and TCP/IP support.
  4606. # Like the previous entries, but with PA-RISC-specific optimization.
  4607. hpux0800pa:
  4608.     @MESSAGE1="with PA-RISC-specific optimization" \
  4609.     $(MAKE) hpux0800 KTARGET=$${KTARGET:-$(@)} \
  4610.     "KFLAGS = $(KFLAGS) +Obb1100"
  4611.  
  4612. #As above, but with curses.
  4613. hpux0800pac:
  4614.     @MESSAGE1="with PA-RISC-specific optimization" \
  4615.     $(MAKE) hpux0800c KTARGET=$${KTARGET:-$(@)} \
  4616.     "KFLAGS = $(KFLAGS) +Obb1100"
  4617.  
  4618. #As above, but compiled with GCC 2.3.3.
  4619. hpux0800pagcc:
  4620.     @MESSAGE1='using the gcc compiler' \
  4621.     $(MAKE) hpux0800 KTARGET=$${KTARGET:-$(@)} \
  4622.     "CC=gcc" "CC2=gcc" "KFLAGS= -funsigned-char $(KFLAGS)"
  4623.  
  4624. #HP-UX 9.0, 9.01, 9.03, 9.04, 9.05, 9.07, 9.10 ..., + TCP/IP + curses, fully
  4625. #configured.  Use this entry with the restricted compiler: no optimization, no
  4626. #ANSI support.  If you get unresolved sockets library references at link time,
  4627. #then try adding -lBSD to LIBS, or else remove -DTCPSOCKET to build a version
  4628. #without TCP/IP support.
  4629. hpux0900:
  4630.     @MESSAGE1A='. Read hpux0900 entry comments if you have trouble.' \
  4631.     $(MAKE) hpux-header
  4632.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4633.     "CFLAGS = -DHPUXDEBUG -DHPUX9 -DSTERMIOX -DDIRENT -DUTIMEH \
  4634.     -DNOSETBUF -DCK_CURSES -DTCPSOCKET -DRENAME -DCK_REDIR -DLONGFN \
  4635.     -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT $(KFLAGS)" \
  4636.     "LNKFLAGS = -s" "LIBS = -lm -lcurses" "CC=$(CC)" "CC2=$(CC2)"
  4637.  
  4638. #Like hpux0900, but for the "value-added" compiler on all HP 9000 models.
  4639. #Adds optimization and ANSI compilation:
  4640. # +O2 makes smaller executable (= -O = Level-1 and global optimization)
  4641. # +O3 adds interprocedural global optimization, makes bigger executable.
  4642. # If optimization fails on some modules, you can add:
  4643. #  +Obb<n>, +Olimit <n>, or +Onolimit, depending on your cc version,
  4644. # where <n> is a number, e.g. +Obb1200.  In other words, if you get optimizer
  4645. # warnings, add (for example) +Obb1200; if you still get optimizer warnings,
  4646. # increase the number.  Repeat until warnings go away.  If your compiler
  4647. # permits it, use +Onolimit. If optimizer blows up on ckcpro.c, see next entry.
  4648. # Reportedly, on some configurations, such as HP9000/425e or /340, perhaps
  4649. # depending on the amount of main memory, this entry might fail no matter what
  4650. # you do ("Out of Memory", "cc: Fatal error in /lib/c.c1", etc).  In that case
  4651. # use "make hpux0900" (no "o").
  4652. hpux0900o:
  4653.     @MESSAGE1=$${MESSAGE1:-"with compiler optimization"} \
  4654.     $(MAKE) hpux0900 KTARGET=$${KTARGET:-$(@)} \
  4655.     "KFLAGS = $(KFLAGS) -Aa -DCK_ANSIC -D_HPUX_SOURCE +O2"
  4656.  
  4657. # For HP-UX 9.0 on Motorola CPUs, optimization of ckcpro.c tends to blow up
  4658. # the compiler.  You might have to reinstall your kernel with maxdsiz >=
  4659. # 0x03000000.  But if physical memory is small, that still will not help much.
  4660. # In that case, use this entry to skip optimization of ckcpro.c.
  4661. hpux0900m68ko:
  4662.     @MESSAGE1='without compiler optimization for ckcpro.$(EXT) ...' \
  4663.     $(MAKE) hpux-header
  4664.     $(MAKE) ckuusr.$(EXT) ckuus3.$(EXT) ckcpro.$(EXT) \
  4665.     "CFLAGS = -DHPUXDEBUG -DHPUX9 -DSTERMIOX -DDIRENT \
  4666.     -DNOSETBUF -DCK_CURSES -DTCPSOCKET -DRENAME  -DCK_REDIR -DLONGFN \
  4667.     -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT $(KFLAGS)"
  4668.     @echo
  4669.     @MESSAGE1="with compiler optimization for the rest" \
  4670.     $(MAKE) hpux0900 KTARGET=$${KTARGET:-$(@)} \
  4671.     "KFLAGS = $(KFLAGS) -Aa -DCK_ANSIC -D_HPUX_SOURCE +O2"
  4672.  
  4673. # Old name for hpux0900m68ko.
  4674. hpux0900mot:
  4675.     $(MAKE) hpux0900m68ko KTARGET=$${KTARGET:-$(@)} "KFLAGS = $(KFLAGS)"
  4676.  
  4677. #Like hpux0900o but with additional model-700/800-specific optimizations.
  4678. # +ESlit = consolidate strings in read-only memory.
  4679. # +ESfsc = inline millicode calls when comparing pointers.
  4680. hpux0900o700:
  4681.     @echo 'If you get optimizer warnings \c'
  4682.     @echo 'try "make hpux0900o700 KFLAGS=+Obb1200"'
  4683.     @MESSAGE1="with PA-RISC-specific optimizations" \
  4684.     $(MAKE) hpux0900o KTARGET=$${KTARGET:-$(@)} \
  4685.     "KFLAGS = $(KFLAGS) +ESlit +ESsfc"
  4686.  
  4687. #HP-UX 9.0, 9.01, 9.03, 9.04, 9.05, 9.07, 9.10 ..., + TCP/IP + curses, fully
  4688. #configured, built with gcc, all models except 800 series.
  4689. #You might need to add the include path for gcc headers, for example:
  4690. # 'KFLAGS=-I/usr/gnu/lib/gcc-lib/hppa1.1-hp-hpux/2.4.5/include/'
  4691. hpux0900gcc:
  4692.     @MESSAGE1='using the gcc compiler' \
  4693.     $(MAKE) hpux0900 KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  4694.     "KFLAGS = $(KFLAGS) -DCK_ANSIC -funsigned-char -O2"
  4695.  
  4696. #HP-9000 HP-UX 10.0 + TCP/IP + curses, fully configured.
  4697. #Use with restricted (bundled) compiler: no optimization, no ANSI support.
  4698. #libcurses needed for fullscreen file xfer display in HP-UX 10.00 and 10.01.
  4699. #libHcurses (NOT libcurses!) for fullscreen display, to work around fatal bugs
  4700. #in HP-UX 10.10 and 10.20 curses. Maybe we could use lcurses for 10.30, since
  4701. #the 10.10 curses problem is supposedly fixed in 10.30.
  4702. # +DA1.0 = Generate PA-RISC 1.0 code that runs on both 700 and 800 models.
  4703. # +DA1.1 = Generate PA-RISC 1.1 code that runs on both 700 and 800 models.
  4704. # Note that HP-UX 10.20 and upwards  not support PA-RISC 1.0 systems.
  4705. # And that as of Dec 2001, 11.00 and 11.11 are PA-only and 11.20 is IA64-only.
  4706. # Later 11.2x releases are expected to be for both.  Architecture can be
  4707. # determined with the model command, at least in 10.20 and later...
  4708. #For future releases, we need to include +DA1.1 for PA builds, so that a
  4709. #binary built on PA 2.0 will still work on PA 1.1 machines, whereas +DA1.1
  4710. #must NOT be included for IA64 builds.
  4711. #
  4712. hpux1000:
  4713.     @$(MAKE) hpux-header
  4714.     @LIBS='-lHcurses' ; \
  4715.     AFLAGS='+DA1.1' ; \
  4716.     case `uname -r` in \
  4717.        [AB].10.0*)  KFLAGS='-DHPUX1000 $(KFLAGS)' ; \
  4718.                     AFLAGS='+DA1.0' ; LIBS='-lcurses'  ;; \
  4719.        [AB].10.1*)  KFLAGS='-DHPUX1010 -D__HP_CURSES $(KFLAGS)' ; \
  4720.                     ;; \
  4721.        [AB].10.2*)  KFLAGS='-DHPUX1020 -D__HP_CURSES $(KFLAGS)' ; \
  4722.                     ;; \
  4723.        [AB].10.3*)  KFLAGS='-DHPUX1030 -D__HP_CURSES $(KFLAGS)' ; \
  4724.                     ;; \
  4725.        [AB].10.?*)  KFLAGS='-DHPUX10XX -D__HP_CURSES $(KFLAGS)' ; \
  4726.                     ;; \
  4727.        [AB].11.0*)  KFLAGS='-DHPUX1100 -D__HP_CURSES $(KFLAGS)' ; \
  4728.                     ;; \
  4729.        [AB].11.1*)  KFLAGS='-DHPUX1100 -D__HP_CURSES $(KFLAGS)' ; \
  4730.                     ;; \
  4731.        [AB].11.?*)  KFLAGS='-DHPUX1100 -D__HP_CURSES $(KFLAGS)' ; \
  4732.                     AFLAGS='' ; LIBS='-lcurses' ;; \
  4733.     esac ; \
  4734.     OFLAGS=$${OFLAGS:-$$AFLAGS} ; \
  4735.     $(MAKE) "SHELL=/usr/bin/sh" xermit KTARGET=$${KTARGET:-$(@)} \
  4736.     "CC=$(CC)" "CC2=$(CC2)" \
  4737.     "CFLAGS = -DHPUX10 -DDIRENT -DSTERMIOX -DCK_DSYSINI -DHDBUUCP \
  4738.     -DCK_CURSES -DCK_WREFRESH -DTCPSOCKET -DCK_REDIR -DRENAME -DFNFLOAT \
  4739.     $$KFLAGS $$OFLAGS" \
  4740.     "LNKFLAGS=-s $(LNKFLAGS)" "LIBS = -lm $$LIBS $(KLIBS)"
  4741.  
  4742. # This is a kludge, copying hpux0900gcc and adapting hpux1000 
  4743. # (add CC and CC2, drop the A1.[0||1])
  4744. # Builds w/ no compiler warnings but minimally tested.
  4745. #
  4746. hpux1000gcc:
  4747.     @MESSAGE1='using the gcc compiler' \
  4748.     $(MAKE) hpux1000 KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  4749.     "KFLAGS = $(KFLAGS)" OFLAGS=" -DCK_ANSIC -funsigned-char -O2"
  4750.  
  4751. # Trusted HP-UX 10
  4752. # echo KFLAGS=$(KFLAGS) YTARGET YTARGET=$(YTARGET) $(XTARGET) ;
  4753. hpux1000t:
  4754.     @case "$(KTARGET)" in \
  4755.        *o+) KENTRY=hpux1000o+ ;; \
  4756.        *o)  KENTRY=hpux1000o ;; \
  4757.        *)   KENTRY=hpux1000 ;; \
  4758.     esac ; \
  4759.     MESSAGE1="and support for 'Trusted HP-UX'" \
  4760.     $(MAKE) $$KENTRY KTARGET=$${KTARGET:-$(@)} \
  4761.     "KFLAGS= $(KFLAGS) -DHPUX10_TRUSTED" "KLIBS=-lsec"
  4762.  
  4763. hpux1000to:
  4764.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  4765.  
  4766. hpux1000to+:
  4767.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  4768.  
  4769. #HP-9000 HP-UX 10.00 and higher with ANSI prototyping and optimization.
  4770. #PA-RISC only, no Motorola or other hardware is support in HP-UX 10.00++.
  4771. #The unbundled optional compiler is required.
  4772. #Your path should start with /opt/ansic/bin.
  4773. # -Wl,-Fw = Remove stack unwind table (info used by debuggers).
  4774. # +O2 makes a smaller executable (= -O = Level-1 and global optimization).
  4775. # +O3 adds interprocedural global optimization, makes a bigger executable.
  4776. # +Onolimit allows all modules to be optimized, no matter how complex.  But:
  4777. #  (a) +Onolimit does not seem to always be there in HP-UX 10.00, and:
  4778. #  (b) some modules might take hours on low-memory and/or slow systems.
  4779. # The following are PA-RISC-specific optimizations:
  4780. # +ESlit = Consolidate strings in read-only memory.
  4781. # +ESfsc = Inline millicode calls when comparing pointers.
  4782. # You might need to configure your kernel for a maxdsiz of 0x0B000000 (176MB)
  4783. # or greater to prevent the optimizer from running out of space.
  4784. # December 2001: +ESlit +ESsfc removed because not supported on IA64.
  4785. # Somebody who cares can use 'model' to see whether it's PA-RISC or IA64
  4786. # and include the architecture-specific optimization flags.  Also note:
  4787. # +DA1.1 is PA-only.  If this is included in in HP-UX 11.00 or later,
  4788. # then +DS2.0 should be included too (but don't use +DS2.0 without +DA1.1,
  4789. # or else the binary won't run on older PA hardware).
  4790. hpux1000o:
  4791.     @case `uname -m` in \
  4792.       ia64) ;; \
  4793.       *) MFLAGS='+ESlit +ESsfc' ;; \
  4794.     esac ; \
  4795.     MESSAGE1="with PA-RISC-specific optimizations $(MESSAGE1)" \
  4796.     $(MAKE) "SHELL=/usr/bin/sh" "PATH=/opt/ansic/bin:$$PATH" hpux1000 \
  4797.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = $(KFLAGS) \
  4798.     -Aa -D_HPUX_SOURCE -DCK_ANSIC -DUTIMEH \
  4799.     +O2 -Wl,-Fw $$MFLAGS"
  4800.  
  4801. #Like hpux1000o but with "+Onolimit".
  4802. #On 700 series maxdsize >= 0xB000 (=176MB).  Takes a long time.
  4803. hpux1000o+:
  4804.     @MESSAGE1="and +Onolimit $(MESSAGE1)" KTARGET=$${KTARGET:-$(@)} \
  4805.     $(MAKE) hpux1000o \
  4806.     "KFLAGS = $(KFLAGS) +Onolimit"
  4807.  
  4808. hpux1100:
  4809.     $(MAKE) hpux1000 KTARGET=$${KTARGET:-$(@)}
  4810.  
  4811. hpux1100o:
  4812.     $(MAKE) hpux1000o KTARGET=$${KTARGET:-$(@)}
  4813.  
  4814. hpux1100o+:
  4815.     $(MAKE) hpux1000o+ KTARGET=$${KTARGET:-$(@)}
  4816.  
  4817. hpux1100gcc:
  4818.     $(MAKE) hpux1000gcc KTARGET=$${KTARGET:-$(@)}
  4819.  
  4820. # Trusted HP-UX 11
  4821. hpux1100t:
  4822.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  4823.  
  4824. hpux1100to:
  4825.     $(MAKE) hpux1000to KTARGET=$${KTARGET:-$(@)}
  4826.  
  4827. hpux1100to+:
  4828.     $(MAKE) hpux1000to+ KTARGET=$${KTARGET:-$(@)}
  4829.  
  4830. #Regulus on CIE Systems 680/20
  4831. cie:
  4832.     @echo 'Making C-Kermit $(CKVER) for CIE Systems 680/20 Regulus...'
  4833.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4834.     "CFLAGS = -DATTSV -DNOFILEH -DCIE -DNOLEARN $(KFLAGS) -O" "LNKFLAGS ="
  4835.  
  4836. # Linux 1.2 or later with gcc, dynamic libraries, ncurses, TCP/IP.
  4837. #
  4838. # If your Linux system has curses rather than ncurses, use the linuxc
  4839. # entry, or if that doesn't work, linuxnc.
  4840. #
  4841. # The Kermit "large memory model" is used by default to configure big packet
  4842. # and script buffers, etc.  For small-memory or limited-resource systems,
  4843. # "make linux KFLAGS=-DNOBIGBUF".
  4844. #
  4845. # -DLINUXFSSTND (Linux File System Standard 1.2) gives UUCP lockfile /var/lock
  4846. # with string pid.  Remove this to get /usr/spool/uucp with int pid, used in
  4847. # very early Linux versions.  FSSTND 1.2 also says that the PID string in the
  4848. # UUCP lock file has leading spaces.  This is a change from FSSTND 1.0, which
  4849. # used leading zeros.  Add -DFSSTND10 to support FSSTND 1.0 instead of 1.2.
  4850. # I hope subsequent editions of the file-system standard did not change these
  4851. # again.
  4852. #
  4853. # Add -DOLINUXHISPEED (Old Linux High Speed support) to turn on an ugly kludge
  4854. # in Linux 1.0 and earlier to support speeds of 57600 and 115200.  Extremely
  4855. # old Linux systems (pre-0.99pl15) will not support this.  If OLINUXHISPEED is
  4856. # not defined, then only the standard POSIX termios methods of setting the port
  4857. # speed will be used, and in this case speeds can be as high as 460800 in most
  4858. # modern Linux versions.
  4859. #
  4860. # -DCK_POSIX_SIG (POSIX signal handling) is good for Linux releases back to at
  4861. # least 0.99.14; if it causes trouble for you, remove it from the CFLAGS.
  4862. #
  4863. # -pipe removes the need for temp files - remove it if it causes trouble.
  4864. #
  4865. # -funsigned-char makes all characters unsigned, as they should have been
  4866. #  in the first place.
  4867. #
  4868. # Add -DCK_DSYSINI if you want a shared system-wide init file.
  4869. #
  4870. # See ckubwr.txt about -DNOCOTFMC.  In fact, you really should read the
  4871. # entire Linux section of ckubwr.txt.
  4872. #
  4873. # The "linuxa" entry can be referenced directly on LIBC systems, but not
  4874. # GLIBC, where -lcrypt is required.  The "make linux" entry should normally
  4875. # be used for all builds on all Linux distributions unless you have special
  4876. # requirements, in which case keep reading.  CK_NEWTERM added after 7.0B04
  4877. # due to new complaints about ncurses changing buffering of tty.
  4878.  
  4879. linuxa:
  4880.     @echo 'Making C-Kermit $(CKVER) for Linux 1.2 or later...'
  4881.     @echo 'IMPORTANT: Read the comments in the linux section of the'
  4882.     @echo 'makefile if you have trouble.'
  4883.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  4884.     "CFLAGS = -O -DLINUX -pipe -funsigned-char -DFNFLOAT -DCK_POSIX_SIG \
  4885.     -DCK_NEWTERM -DTCPSOCKET -DLINUXFSSTND -DNOCOTFMC -DPOSIX \
  4886.     -DUSE_STRERROR $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" "LIBS = $(LIBS) -lm"
  4887.  
  4888. # As above but with profiling
  4889. linuxp:
  4890.     $(MAKE) linuxa KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS) -pg" \
  4891.     "LIBS=-pg -lcrypt -lresolv"
  4892.  
  4893. #New primary Linux entry for C-Kermit 8.0, replacing big nested
  4894. #if-then-else construction full of repeated clauses with a simpler scheme
  4895. #for automatically detecting:
  4896. # . Old versus new pty handling (new == glibc 2.1++)
  4897. # . Presence or absence of librypt.a and <crypt.h>
  4898. # . Presence or absence of libresolv.a
  4899. #Unlike the previous scheme, this one is easily extended to include more tests.
  4900. #Note: The HAVE_PTMX test was previously "if test -c /dev/ptmx" but this was
  4901. #not sufficient for Debian 2.1, because although it had /dev/ptmx, it did not
  4902. #have grantpt(), unlockpt(), or ptsname(), so has been changed to look for a
  4903. #grantpt() prototype in the header files.  Warning: uses a temporary file in
  4904. #the current directory.
  4905. linux:
  4906.     @if test \
  4907.     `grep grantpt /usr/include/*.h /usr/include/sys/*.h | wc -l` -gt 0; \
  4908.     then if test -c /dev/ptmx; then HAVE_PTMX='-DHAVE_PTMX'; \
  4909.     else HAVE_PTMX=''; fi; fi ; \
  4910.     $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4911.     "KFLAGS=-DCK_NCURSES -I/usr/include/ncurses $$HAVE_PTMX \
  4912.     `if test -f /usr/lib/libcrypt.a; then echo -DHAVE_CRYPTH; fi` \
  4913.     $(KFLAGS)" \
  4914.     "LIBS=-lncurses \
  4915.     `if test -f /usr/lib/libresolv.a; then echo -lresolv; fi` \
  4916.     `if test -f /usr/lib/libcrypt.a; then echo -lcrypt; fi`" \
  4917.     linuxa
  4918.  
  4919. # As above but for Linux systems that have no <sys/select.h>.
  4920. linuxns:
  4921.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} KFLAGS=-DNO_SYS_SELECT_H
  4922.  
  4923. # As above, but forces use of curses rather than ncurses.
  4924. # Add -ltermcap to LIBS if necessary.
  4925. # Also watch out for libcurses and/or libtermcap having been moved.
  4926. # In that case you might need something like:
  4927. #  "LIBS = -L/usr/lib/curses -lcurses -L/usr/lib/termcap -ltermcap"
  4928.  
  4929. linuxc:
  4930.     @if test \
  4931.     `grep grantpt /usr/include/*.h /usr/include/sys/*.h | wc -l` -gt 0; \
  4932.     then if test -c /dev/ptmx; then HAVE_PTMX='-DHAVE_PTMX'; \
  4933.     else HAVE_PTMX=''; fi; fi ; \
  4934.     $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4935.     "KFLAGS=-DCK_CURSES $$HAVE_PTMX \
  4936.     `if test -f /usr/lib/libcrypt.a; then echo -DHAVE_CRYPTH; fi` \
  4937.     $(KFLAGS)" \
  4938.     "LIBS=-lcurses \
  4939.     `if test -f /usr/lib/libresolv.a; then echo -lresolv; fi` \
  4940.     `if test -f /usr/lib/libcrypt.a; then echo -lcrypt; fi`" \
  4941.     linuxa
  4942.  
  4943. # As above but with with no curses support, for example because you installed
  4944. # the developer tools but did not install (n)curses.
  4945. linuxnc:
  4946.     @if test \
  4947.     `grep grantpt /usr/include/*.h /usr/include/sys/*.h | wc -l` -gt 0; \
  4948.     then if test -c /dev/ptmx; then HAVE_PTMX='-DHAVE_PTMX'; \
  4949.     else HAVE_PTMX=''; fi; fi ; \
  4950.     $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4951.     "KFLAGS= $$HAVE_PTMX \
  4952.     `if test -f /usr/lib/libcrypt.a; then echo -DHAVE_CRYPTH; fi` \
  4953.     $(KFLAGS)" "LIBS= \
  4954.     `if test -f /usr/lib/libresolv.a; then echo -lresolv; fi` \
  4955.     `if test -f /usr/lib/libcrypt.a; then echo -lcrypt; fi`" \
  4956.     linuxa
  4957.  
  4958. #Sharp Zaurus SL-5500 - Linux based
  4959. zsl5500:
  4960.     @echo 'Making C-Kermit $(CKVER) for Sharp Zaurus SL-5500...'
  4961.     @touch ckcpro.c
  4962.     @touch wart
  4963.     $(MAKE) linuxnc KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DZSL5500" \
  4964.     "CC = gcc" "CC2 = gcc"
  4965.  
  4966. # A minimum-size version for Linux that does only scripting and
  4967. # serial communication -- no networks, no file transfer.
  4968. linuxso:
  4969.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  4970.     "CFLAGS = -O -DLINUX -pipe -funsigned-char -DPOSIX -DCK_POSIX_SIG \
  4971.     -DLINUXFSSTND -DNOCOTFMC -DNOXFER -DNODEBUG -DNOCSETS -DNOHELP \
  4972.     -DNONET -DMINIDIAL -DNOSCRIPT -DNOIKSD -DNOPUSH $(KFLAGS)" \
  4973.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = "
  4974.  
  4975. #Mklinux DR3 has horrible bug in <utmpbits.h> - see ckufio.c.
  4976. mklinux:
  4977.     $(MAKE) KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DUTMPBUG" \
  4978.     "LIBS=-lcrypt -lresolv" linuxa
  4979.  
  4980. #LinuxPPC 1999
  4981. linuxppc:
  4982.     @echo 'Making C-Kermit $(CKVER) for LinuxPPC 1999...'
  4983.     @if test -f /usr/lib/libcrypt.a; then \
  4984.         if test -f /usr/lib/libresolv.a; then \
  4985.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4986.         "KFLAGS=$(NCURSES_CPP) -DHAVE_CRYPT_H \
  4987.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  4988.             "LIBS=-lncurses -lresolv -lcrypt" linuxa ; \
  4989.         else \
  4990.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4991.         "KFLAGS=$(NCURSES_CPP) -DHAVE_CRYPT_H \
  4992.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  4993.             "LIBS=-lncurses -lcrypt" linuxa ; \
  4994.         fi \
  4995.     else \
  4996.         if test -f /usr/lib/libresolv.a; then \
  4997.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  4998.         "KFLAGS=$(NCURSES_CPP) \
  4999.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  5000.             "LIBS=-lncurses -lresolv" linuxa ; \
  5001.         else \
  5002.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  5003.         "KFLAGS=$(NCURSES_CPP) \
  5004.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  5005.             "LIBS=-lncurses" linuxa ; \
  5006.         fi \
  5007.     fi
  5008.  
  5009.  
  5010. # The remaining Linux entries are for special or customized builds.  They
  5011. # have not been generalized like the ones above.  Ideally, we should allow
  5012. # for every combination of libc vs glibc, gcc vs egcs, curses vs ncurses,
  5013. # Kerberos IV vs Kerberos V vs SRP (in any combination), and so on --
  5014. # volunteers welcome.
  5015.  
  5016. # If you get "Internal compiler error xxx, output pipe has been closed",
  5017. # try removing -pipe.
  5018.  
  5019. # Like "make linux" but built with egcs rather than gcc.
  5020. linuxegcs:
  5021.     @echo 'Making C-Kermit $(CKVER) for Linux 1.2 or later with egcs...'
  5022.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = egcs" "CC2 = egcs" \
  5023.     "CFLAGS = -O -DLINUX -pipe -funsigned-char \
  5024.     -DPOSIX -DCK_POSIX_SIG -DCK_NCURSES -DNOCOTFMC \
  5025.     -DTCPSOCKET -DLINUXFSSTND $(KFLAGS)" \
  5026.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lncurses -lcrypt -lresolv"
  5027.  
  5028. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1 (no K4 compatibility).
  5029. linux+krb5:
  5030.     @echo 'Making C-Kermit $(CKVER) for Linux on Intel with Kerberos...'
  5031.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5032.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5033.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 \
  5034.     -DCK_ENCRYPTION -DCK_DES -DCK_CURSES -DCK_POSIX_SIG \
  5035.     -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H $(K5INC) $(K5INC)/krb5 \
  5036.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5037.     "LIBS = $(K5LIB) -lncurses -ltermcap -ldes425 -lkrb5 \
  5038.     -lcom_err -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  5039.  
  5040. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1 with K4 compatibility.
  5041. #
  5042. # Requires the Kerberos 1.2.1 be compiled with KRB4 compatibility.
  5043. linux+krb5+krb4:
  5044.     @echo 'Making C-Kermit $(CKVER) for Linux on Intel with Kerberos...'
  5045.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5046.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5047.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  5048.     -DCK_ENCRYPTION -DCK_DES -DCK_CURSES -DCK_POSIX_SIG \
  5049.     -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H $(K5INC) $(K5INC)/krb5 \
  5050.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5051.     "LIBS = $(K5LIB) -lncurses -ltermcap -lkrb4 -ldes425 -lkrb5 \
  5052.     -lcom_err -lk5crypto -lcrypt -lgssapi_krb5 -lresolv"
  5053.  
  5054. # Linux on Intel PC with SRP 1.7.4 using GNU MP, Krypto, and Eric Young's
  5055. # DES library.  Remove the -DCK_DES, -DLIBDES and -ldes if you do not have
  5056. # Eric Young's# libdes.a installed.
  5057. #
  5058. linux+srp+gmp:
  5059.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5060.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5061.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5062.     -DCK_AUTHENTICATION -DCK_SRP \
  5063.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  5064.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5065.     $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5066.     "LIBS = $(SRPLIB) \
  5067.     -lncurses -ltermcap -lsrp -lgmp -ldes -lkrypto -lcrypt -lresolv"
  5068.  
  5069. linux+srp+gmp+no-des:
  5070.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP ...'
  5071.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5072.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5073.     -DCK_AUTHENTICATION -DCK_SRP \
  5074.     -DCK_ENCRYPTION -DCK_CAST \
  5075.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5076.     $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5077.     "LIBS = $(SRPLIB) \
  5078.     -lncurses -ltermcap -lsrp -lgmp -lkrypto -lcrypt -lresolv"
  5079.  
  5080. linux+srp+gmp-export:
  5081.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5082.     $(MAKE) srpmit-export KTARGET=$${KTARGET:-$(@)} \
  5083.     "CC = gcc" "CC2 = gcc" \
  5084.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5085.     -DCK_AUTHENTICATION -DCK_SRP -DFNFLOAT \
  5086.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5087.     $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5088.     "LIBS = $(SRPLIB) \
  5089.     -lncurses -ltermcap -lsrp -lgmp -lkrypto -lcrypt -lm -lresolv"
  5090.  
  5091. linux+srp+gmp+pam:
  5092.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5093.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5094.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5095.     -DCK_AUTHENTICATION -DCK_SRP \
  5096.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  5097.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5098.     -DCK_PAM -DFNFLOAT $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5099.     "LIBS = $(SRPLIB) -lncurses -ltermcap -lsrp -lgmp -ldes -lkrypto \
  5100.     -lcrypt -lpam -ldl -lm -lresolv"
  5101.  
  5102. #Linux on Intel PC with SRP 1.7.4 built with OpenSSL for Big Number Math
  5103. #and Cryptographic functionality.
  5104. #
  5105. linux+srp:
  5106.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5107.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5108.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5109.     -DCK_AUTHENTICATION -DCK_SRP \
  5110.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  5111.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5112.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5113.     "LIBS = $(SRPLIB) $(SSLLIB) \
  5114.     -lncurses -ltermcap -lsrp -lkrypto -lcrypto -lcrypt -lresolv"
  5115.  
  5116. linux+srp+pam:
  5117.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5118.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5119.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5120.     -DCK_AUTHENTICATION -DCK_SRP \
  5121.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  5122.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5123.     -DCK_PAM -DFNFLOAT $(SRPINC) $(SSLINC) $(KFLAGS)" \
  5124.     "LNKFLAGS = $(LNKFLAGS)" \
  5125.     "LIBS = $(SRPLIB) $(SSLLIB) -lncurses -ltermcap -lsrp -lkrypto \
  5126.     -lcrypto -lcrypt -lpam -ldl -lm -lresolv"
  5127.  
  5128. linux+shadow+pam:
  5129.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with Shadow+PAM...'
  5130.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5131.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5132.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5133.     -DCK_SHADOW -DCK_PAM -DFNFLOAT \
  5134.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5135.     "LIBS = -lncurses -ltermcap -lcrypt -lpam -ldl -lm -lresolv"
  5136.  
  5137. #Linux configured for SSL/TLS.
  5138. #Remove -ltermcap if it causes trouble e.g. in Debian 2.2.
  5139. linux+openssl:
  5140.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SSL/TLS...'
  5141.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5142.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5143.     -DCK_AUTHENTICATION -DCK_SSL \
  5144.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5145.     -DFNFLOAT $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5146.     "LIBS= $(SSLLIB) \
  5147.     -lncurses -ltermcap -lssl -lcrypto -lm -lresolv -lcrypt"
  5148.  
  5149. #Linux configured for SSL/TLS and Shadow Passwords
  5150. #Remove -ltermcap if it causes trouble e.g. in Debian 2.2.
  5151. linux+openssl+shadow:
  5152.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SSL/TLS...'
  5153.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5154.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5155.     -DCK_AUTHENTICATION -DCK_SSL \
  5156.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5157.     -DFNFLOAT -DCK_SHADOW $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5158.     "LIBS= $(SSLLIB) \
  5159.     -lncurses -ltermcap -lssl -lcrypto -lm -lresolv -lcrypt"
  5160.  
  5161. #Linux configured for SSL/TLS, ZLIB, PAM and Shadow Passwords
  5162. #Remove -ltermcap if it causes trouble e.g. in Debian 2.2.
  5163. linux+openssl+zlib+shadow+pam:
  5164.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SSL/TLS...'
  5165.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5166.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5167.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DZLIB \
  5168.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5169.     -DFNFLOAT -DCK_SHADOW $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5170.     "LIBS= $(SSLLIB) \
  5171.     -lncurses -ltermcap -lssl -lcrypto -lm -lresolv -lcrypt -lz -lpam -ldl"
  5172.  
  5173. #Linux on Intel PC with SRP and SSL/TLS.
  5174. #
  5175. # libsrp.a should be build with OpenSSL
  5176. # Requires the Kerberos 1.2.2 or higher to be compiled with KRB4 compatibility.
  5177. #Remove -ltermcap if it causes trouble e.g. in Debian 2.2.
  5178. linux+srp+openssl:
  5179.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5180.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5181.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5182.     -DCK_AUTHENTICATION -DCK_SRP \
  5183.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  5184.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5185.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5186.     "LIBS = $(SRPLIB) $(SSLLIB) \
  5187.     -lncurses -ltermcap -lsrp -lssl -lkrypto -lcrypto \
  5188.     -lcrypt -lresolv"
  5189.  
  5190. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2 and SRP.
  5191. #
  5192. # libsrp.a should be build with GNU MP (libgmp.a)
  5193. # instead of AT&T CryptoLib (libcrypt.a) due to naming conflicts with
  5194. # standard distribution Linux libraries.
  5195. # Requires the Kerberos 1.2.2 or higher to be compiled with KRB4 compatibility.
  5196. linux+krb5+krb4+srp:
  5197.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB54+SRP...'
  5198.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5199.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5200.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5201.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  5202.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5203.     $(K5INC) $(K5INC)/krb5 $(SRPINC) \
  5204.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5205.     "LIBS = $(K5LIB) $(SRPLIB) \
  5206.     -lncurses -ltermcap -lsrp -lgmp -lgssapi_krb5 -lkrypto \
  5207.     -ldes -lkrb4 -ldes425 -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv"
  5208.  
  5209. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP and SSL/TLS.
  5210. #
  5211. # libsrp.a should be build with OpenSSL
  5212. # Requires the Kerberos 1.2.2 or higher to be compiled with KRB4 compatibility.
  5213. # Requires OpenSSL 0.9.6a or higher
  5214. linux+krb5+krb4+srp+openssl:
  5215.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5216.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5217.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5218.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5219.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  5220.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5221.     $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  5222.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5223.     "LIBS = $(K5LIB) $(SRPLIB) $(SSLLIB) \
  5224.     -lncurses -ltermcap -lsrp \
  5225.     -lkrb4 -lssl -lkrypto -lcrypto \
  5226.     -lkrb5 -lcom_err -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  5227.  
  5228. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SSL/TLS.
  5229. #
  5230. # libsrp.a should be build with OpenSSL
  5231. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5232. linux+krb5+krb4+openssl:
  5233.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL...'
  5234.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5235.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5236.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5237.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  5238.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5239.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  5240.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5241.     "LIBS = $(K5LIB) $(SSLLIB) \
  5242.     -lncurses -ltermcap \
  5243.     -lkrb4 -lssl -lcrypto -lkrb5 -lcom_err \
  5244.     -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  5245.  
  5246. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1, SSL/TLS.
  5247. #
  5248. # libsrp.a should be build with OpenSSL
  5249. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5250. linux+krb5+krb4+openssl+shadow:
  5251.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL...'
  5252.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5253.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5254.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5255.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_SHADOW \
  5256.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5257.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  5258.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5259.     "LIBS = $(K5LIB) $(SSLLIB)  \
  5260.     -lncurses -ltermcap \
  5261.     -lkrb4 -lssl -lcrypto -lkrb5 -lcom_err \
  5262.     -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  5263.  
  5264. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2, SSL/TLS.
  5265. #
  5266. # libsrp.a should be build with OpenSSL
  5267. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5268. linux+krb5+krb4+openssl+zlib+shadow:
  5269.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL...'
  5270.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5271.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5272.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 -DZLIB \
  5273.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_SHADOW \
  5274.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5275.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  5276.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5277.     "LIBS = $(K5LIB) $(SSLLIB) \
  5278.     -lncurses -ltermcap \
  5279.     -lkrb4 -lssl -lcrypto -lkrb5 -lcom_err \
  5280.     -lk5crypto -lgssapi_krb5 -lcrypt -lresolv -lz"
  5281.  
  5282. linux+krb5+krb4+srp-export:
  5283.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5284.     $(MAKE) krbmit-export KTARGET=$${KTARGET:-$(@)} \
  5285.     "CC = gcc" "CC2 = gcc" \
  5286.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5287.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5288.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5289.     $(K5INC) $(K5INC)/krb5 $(SRPINC) \
  5290.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5291.     "LIBS = $(SRPLIB) $(K5LIB) \
  5292.     -lncurses -ltermcap -lsrp -lgmp -lkrb4 -ldes425 -lkrb5 -lgssapi_krb5 \
  5293.     -lcom_err -lk5crypto -lkrypto -lcrypt -lresolv"
  5294.  
  5295. linux+krb5+krb4+srp+pam:
  5296.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  5297.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5298.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5299.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5300.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  5301.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5302.     -DCK_PAM $(K5INC) $(K5INC)/krb5 $(SRPINC) \
  5303.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5304.     "LIBS = $(SRPLIB) $(K5LIB) \
  5305.     -lncurses -ltermcap -lsrp -lgmp -ldes -lkrb4 -ldes425 -lkrb5 \
  5306.     -lcom_err -lk5crypto -lgssapi_krb5 -lkrypto -lcrypt -lpam -ldl \
  5307.     -lresolv"
  5308.  
  5309. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP and SSL/TLS.
  5310. # and PAM.
  5311. #
  5312. # libsrp.a should be build with OpenSSL
  5313. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5314. linux+krb5+krb4+srp+openssl+pam-debug:
  5315.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5316.     $(MAKE) krbmit-debug KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5317.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5318.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5319.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM \
  5320.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5321.     -w -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG $(K5INC) $(K5INC)/krb5 \
  5322.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5323.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB) \
  5324.     -lncurses -ltermcap -lsrp -lkrb4 -lssl -lkrypto -lcrypto \
  5325.     -lkrb5 -lcom_err -lk5crypto -lgssapi_krb5 -lcrypt -lresolv -lpam -ldl"
  5326.  
  5327. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1, SRP and SSL/TLS.
  5328. # and PAM.
  5329. #
  5330. # libsrp.a should be build with OpenSSL
  5331. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5332. linux+krb5+krb4+srp+openssl+pam:
  5333.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5334.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5335.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5336.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5337.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM \
  5338.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5339.     $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  5340.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5341.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB)  \
  5342.     -lm -lncurses -ltermcap -lsrp \
  5343.     -lkrb4 -lssl -lkrypto  -lcrypto -lgssapi_krb5 \
  5344.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl"
  5345.  
  5346. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP, OpenSSL
  5347. # with ZLIB and PAM
  5348. #
  5349. # libsrp.a should be build with OpenSSL
  5350. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5351. linux+krb5+krb4+srp+openssl+zlib+pam:
  5352.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5353.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5354.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5355.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5356.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  5357.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5358.     $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  5359.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5360.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB) \
  5361.     -lm -lncurses -ltermcap -lsrp \
  5362.     -lkrb4 -lssl -lkrypto  -lcrypto -lgssapi_krb5 \
  5363.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  5364.  
  5365. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP, OpenSSL
  5366. # with ZLIB, Shadow Passwords, and PAM
  5367. #
  5368. # libsrp.a should be build with OpenSSL
  5369. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5370. linux+krb5+krb4+srp+openssl+zlib+shadow+pam:
  5371.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5372.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5373.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5374.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5375.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  5376.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5377.     -DCK_SHADOW $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  5378.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5379.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB) \
  5380.     -lm -lncurses -ltermcap -lsrp -lkrypto \
  5381.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 \
  5382.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  5383.  
  5384. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, OpenSSL
  5385. # with ZLIB, Shadow Passwords, PAM
  5386. #
  5387. # libsrp.a should be build with OpenSSL
  5388. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  5389. linux+krb5+krb4+openssl+zlib+shadow+pam:
  5390.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  5391.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5392.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5393.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  5394.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  5395.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5396.     -DCK_SHADOW $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  5397.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5398.     "LIBS = $(K5LIB) $(SSLLIB) \
  5399.     -lm -lncurses -ltermcap \
  5400.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 \
  5401.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  5402.  
  5403. #Red Hat Linux 7.1 - full install includes Kerberos 5 (4 compat), PAM, SSL.
  5404. #Also works around bug in curses in which terminal goes dead after
  5405. #returning from file-transfer display.
  5406. redhat71:
  5407.     $(MAKE) linux+krb5+krb4+openssl+zlib+shadow+pam \
  5408.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH71 $(KFLAGS)"
  5409.  
  5410. redhat71+srp:
  5411.     $(MAKE) linux+krb5+krb4+srp+openssl+zlib+shadow+pam \
  5412.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH71 $(KFLAGS)"
  5413.  
  5414. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, OpenSSL
  5415. # with ZLIB and PAM and Shadow passwords
  5416. linux+krb5+openssl+zlib+shadow+pam:
  5417.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB5,SSL...'
  5418.     $(MAKE) krbmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5419.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  5420.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DCK_SHADOW \
  5421.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  5422.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  5423.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  5424.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  5425.     "LIBS = $(K5LIB) $(SSLLIB) \
  5426.     -lm -lncurses -ltermcap -lssl -lcrypto -lgssapi_krb5 \
  5427.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  5428.  
  5429. linuxnotcp:
  5430.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DNONET $(KFLAGS)"
  5431.  
  5432. # "make linuxnotcp" with lcc (see http://www.cs.princeton.edu/software/lcc)
  5433. # lcc does not understand various gcc extensions:
  5434. #  "__inline__" -- can be eliminated by adding "-D__inline__="
  5435. #  "__asm__ and "long long" -- in header files, should be surrounded by
  5436. #                              "#ifndef(__STRICT_ANSI__)"/"#endif"
  5437. #  however, TCP requires some __asm__ functions, so cannot be compiled
  5438. linuxnotcp-lcc:
  5439.     @echo 'Making C-Kermit $(CKVER) for Linux with lcc ...'
  5440.     @echo 'Read comments in makefile for additional information.'
  5441.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = lcc" "CC2 = lcc" \
  5442.     "CFLAGS = -DLINUX -DPOSIX -DCK_CURSES -DCK_POSIX_SIG \
  5443.     -UTCPSOCKET -DLINUXFSSTND -DNOLEARN $(KFLAGS)" \
  5444.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lcurses -ltermcap"
  5445.  
  5446. # Linux 0.99.14 thru 1.0 with gcc, dynamic libraries, curses, TCP/IP.
  5447. # For Linux 1.2 or later, use "make linux" (above).
  5448. #
  5449. # -DLINUXFSSTND (Linux File System Standard) gives UUCP lockfile /var/lock with
  5450. # string pid.  Remove this and get /usr/spool/uucp with int pid, which was used
  5451. # in early Linux versions.
  5452. #
  5453. # If you get compiler errors regarding <linux/serial.h>, add -DNOHISPEED.
  5454. #
  5455. # -DCK_POSIX_SIG (POSIX signal handling) is good for Linux releases back to at
  5456. # least 0.99.14; if it causes trouble for you, just remove it.
  5457. #
  5458. # -DCK_CURSES: Here we link with the regular curses library.  But you should
  5459. # be using ncurses.  Internally, the ckuusx.c module includes <curses.h>, but
  5460. # this really should be <ncurses.h>.  Thus if you have the new curses
  5461. # material, you should either install it with the standard names, or else
  5462. # create symbolic links from the standard names to the new ones.  If you get
  5463. # compile-time errors complaining about data definitions in termcap.h, it
  5464. # means you have new kernel material mixed with older libc header files.  To
  5465. # fix, add "#include <termios.h>" to the <termcap.h> file.  Or if all this is
  5466. # too confusing, create a new makefile entry based on this one, but with
  5467. # -DCK_CURSES removed from CFLAGS and the entire LIBS= clause removed.
  5468. #
  5469. # But wait, there's more.  On most Linux systems, -ltermcap must be included
  5470. # in LIBS.  But on others, the linker complains that libtermcap can't be
  5471. # found.  In that case, try removing -ltermcap from LIBS=.
  5472. #
  5473. # But wait, there's more.  The format of the PID string in the UUCP lockfile
  5474. # changed between Linux FSSTND 1.0 and 1.2.  In the earlier standard, it had
  5475. # leading zeros; in the second, it has leading spaces.  By default this entry
  5476. # uses the newer standard.  To force the older one, add -DFSSTND10.
  5477. #
  5478. # "The nice thing about the Linux standard is there are so many to choose from"
  5479. #
  5480. # NOTE: Remove -DBIGBUFOK for small-memory or limited-resource systems.
  5481. linux10:
  5482.     @echo 'Making C-Kermit $(CKVER) for Linux 1.0 or earlier...'
  5483.     @echo 'IMPORTANT: Read the comments in the linux section of the'
  5484.     @echo 'makefile if you get compilation or link errors.'
  5485.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5486.     "CFLAGS = -O -DPOSIX -DCK_CURSES -DCK_POSIX_SIG -DLINUX \
  5487.     -DTCPSOCKET -DLINUXFSSTND -DOLINUXHISPEED -DNOLEARN $(KFLAGS)" \
  5488.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lcurses -ltermcap"
  5489.  
  5490. #This version was used for Linux prior to C-Kermit 6.0.192.
  5491. #Now the "Linux File System Standard" is considered standard, ditto TCP/IP.
  5492. linuxold:
  5493.     @echo 'Making C-Kermit $(CKVER) for Linux...'
  5494.     @echo 'For FSSTND-recommended UUCP lockfiles, use:'
  5495.     @echo '  make linux "KFLAGS=-DLINUXFSSTND".'
  5496.     @echo 'Read comments in makefile for additional options.'
  5497.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5498.     "CFLAGS = -O -DLINUX -DPOSIX -DCK_CURSES -DCK_POSIX_SIG -DNOLEARN \
  5499.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lcurses -ltermcap"
  5500.  
  5501. # LynxOS 2.2 with GCC compiler, TCP/IP and fullscreen display.
  5502. # Probably also works with Lynx 2.1, and maybe even Lynx 2.0.
  5503. # -X means use termios serial drivers rather than BSD4.3-style sgtty drivers.
  5504. # If you have trouble with this, try "make bsd KFLAGS=-DNOFDZERO".
  5505. lynx:
  5506.     @echo 'Making C-Kermit $(CKVER) for LynxOS 2.2 with TCP/IP'
  5507.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5508.     "CFLAGS= -O -DPOSIX -DDIRENT -DSETREUID -DCK_CURSES -DTCPSOCKET \
  5509.     -DCK_ANSIC -DLYNXOS -DNOLEARN" "LNKFLAGS = -X" "LIBS = -lcurses -lbsd"
  5510.  
  5511. lynx22:
  5512.     $(MAKE) lynx KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  5513.  
  5514. # LynxOS 2.1 with GCC compiler 1.40 and TCP/IP.
  5515. lynx21:
  5516.     @echo 'Making C-Kermit $(CKVER) for LynxOS 2.1 with TCP/IP'
  5517.     $(MAKE) kermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5518.     "CFLAGS= -O -DSETREUID -DTCPSOCKET -DCK_ANSIC -DBSD4 -DLYNXOS" \
  5519.     "LIBS = -lbsd"
  5520.  
  5521. #SCO Xenix 2.2.1 for IBM PC, XT, PS2/30, or other 8088 or 8086 machine
  5522. #Should this not work, try some of the tricks from sco286.
  5523. #NOTE: -DRENAME is omitted for early SCO Xenix releases because it didn't
  5524. #exist, or its semantics were different from the later POSIX-compliant
  5525. #version of rename().
  5526. sco86:
  5527.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/86...'
  5528.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5529.     "CFLAGS= -DXENIX -DNOFILEH -DNOIKSD -DNOUNICODE -DNOLEARN \
  5530.     $(KFLAGS) -Dunix -F 3000 -i -M0me" \
  5531.     "LNKFLAGS = -F 3000 -i -s -M0me" "LIBS = -lx"
  5532.  
  5533. #SCO Xenix/286 2.2.1, e.g. for IBM PC/AT, PS/2 Model 50, etc.
  5534. #Reportedly, this "make" can fail simply because of the size of this
  5535. #makefile.  If that happens, use "makeL", or edit out some of the
  5536. #other entries.  No debugging or character-set translation.
  5537. sco286:
  5538.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/286...'
  5539.     @echo 'If make fails, try using makeL.'
  5540.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5541.     "CFLAGS= -xenix -s -O -LARGE -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP \
  5542.     -DNOIKSD -DNODEBUG -DNOTLOG -DNOCSETS -DNOLEARN \
  5543.     $(KFLAGS) -F 3000 -i -M2let16" \
  5544.     "LIBS = -lx" "LNKFLAGS = -xenix -s -O -LARGE -F 3000 -i -M2let16"
  5545.  
  5546. #SCO Xenix/286 2.2.1, e.g. for IBM PC/AT, PS/2 Model 50, etc.
  5547. #As above, but with HDBUUCP (This one might need fixing -- see sco286).
  5548. sco286hdb:
  5549.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/286 with HDB UUCP...'
  5550.     @echo 'If make fails, try using makeL.'
  5551.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5552.     "CFLAGS= -s -O -LARGE -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP \
  5553.     -DHDBUUCP -DNOIKSD -DNOUNICODE -DNOLEARN \
  5554.     $(KFLAGS) -F 3000 -i -M2let32" \
  5555.     "LIBS = -lx" "LNKFLAGS = -s -O -LARGE -F 3000 -i -M2let32"
  5556.  
  5557. #SCO Xenix/386 2.2.2 and 2.2.3
  5558. sco386:
  5559.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.2.2...'
  5560.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5561.     "CFLAGS= -DXENIX -DNOFILEH -DNOIKSD -DNOREDIRECT -DNOLEARN \
  5562.     -Dunix -DRDCHK -DNAP -DNOUNICODE $(KFLAGS) -Otcl -M3e" \
  5563.     "LNKFLAGS = -s" "LIBS = -lx"
  5564.  
  5565. #SCO XENIX/386 2.2.3 with Excelan TCP/IP + curses.
  5566. # NOTE: This one might need some work in C-Kermit 6.0.
  5567. # You might need to include /usr/include/sys/types.h
  5568. # containing "typedef char *caddr_t;".  Then at least it compiles.
  5569. sco386netc:
  5570.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.2.3 + Excelan TCP'
  5571.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5572.     "CFLAGS= -I/usr/include/exos -DXENIX -DCK_CURSES -DNOUNICODE \
  5573.     -Dunix -DRDCHK -DNAP -DTCPSOCKET -DEXCELAN -DNOJC -DNOMKDIR -DNOFILEH \
  5574.     -DNOLEARN -DNOREDIRECT -DNOIKSD -DNO_DNS_SRV $(KFLAGS) -Otcl -M3e" \
  5575.     "LNKFLAGS = -s" "LIBS = -lc -lx -lsocket -lcurses -ltermcap"
  5576.  
  5577. #SCO XENIX/386 2.3.3 with gcc 1.37 or later...
  5578. sco386gcc:
  5579.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.3.3, gcc...'
  5580.     @echo 'Add -D_NO_PROTOTYPE if you have trouble with Xenix header files'
  5581.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5582.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  5583.     -DNOJC -DNODEBUG -DNOUNICODE -DNOLEARN $(KFLAGS) \
  5584.     -traditional -fpcc-struct-return -fstrength-reduce \
  5585.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  5586.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  5587.     -DM_SYSIII -DM_SYSV -DM_WORDSWAP -DM_XENIX -DNOIKSD -DNOREDIRECT \
  5588.     -DPWID_T=int " "LNKFLAGS = -s" "LIBS = -lx"
  5589.  
  5590. #As above, but with curses...
  5591. sco386gccc:
  5592.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.3.3, gcc...'
  5593.     @echo 'Add -D_NO_PROTOTYPE if you have trouble with Xenix header files'
  5594.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  5595.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  5596.     -DNOJC -DNODEBUG -DCK_CURSES -DNOUNICODE -DNOLEARN $(KFLAGS) \
  5597.     -traditional -fpcc-struct-return -fstrength-reduce \
  5598.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DNOREDIRECT \
  5599.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  5600.     -DM_SYSIII -DM_SYSV -DM_WORDSWAP -DM_XENIX -DNOIKSD \
  5601.     -DPWID_T=int " "LNKFLAGS = -s" "LIBS = -lx -lcurses -ltermlib"
  5602.  
  5603. #SCO UNIX (and ODT) entries...
  5604. #
  5605. #NOTE: All SCO UNIX entry LIBS should have "-lc_s -lc -lx" IN THAT ORDER (if
  5606. #shared C library is desired), or else "-lc -lx" IN THAT ORDER.  Use shared C
  5607. #libraries to save memory, but then don't expect to run the resulting binary
  5608. #on a different machine.  When using -lc_s, you must also use -lc, because the
  5609. #shared C library does not contain all of libc.a.  And in all cases, -lc must
  5610. #ALWAYS precede -lx.
  5611. #
  5612. #ANOTHER NOTE: -DRENAME is included in all SCO UNIX entries.  Remove it if it
  5613. #causes trouble.  No harm is done by removing it (see ckuins.txt).
  5614. #
  5615. #AND ANOTHER: In theory, it should be possible to run SCO UNIX binaries on
  5616. #SCO Xenix 2.3 and later.  In practice, this might not work because of the
  5617. #libraries, etc.  Also, don't add the -link -z switch (which is supposed to
  5618. #root out references to null pointers) because it makes UNIX binaries core
  5619. #dump when they are run under Xenix.
  5620.  
  5621. #NOTE: -Otcl removed and replaced by -O, since -Otcl produced incorrect code.
  5622. #SCO UNIX/386 3.2.0, 3.2.1, and SCO Xenix 2.3.x
  5623. sco3r2:
  5624.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2.0 or 3.2.1 ...'
  5625.     @echo 'Warning: If make blows up, edit the makefile to join'
  5626.     @echo 'the following three continued lines into one line.'
  5627.     @echo 'Also, remove -DRENAME if _rename unresolved at link time.'
  5628.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5629.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DNOLEARN \
  5630.     -DRENAME -DNOIKSD -DNOJC $(KFLAGS) -O" \
  5631.     "LNKFLAGS = -s" "LIBS = -lc -lx"
  5632.  
  5633. #SCO UNIX/386 3.2.0 and SCO Xenix 2.3.x with Excelan TCP/IP support.
  5634. #In case of compilation or runtime problems, try adding
  5635. #"-DUID_T=int -DGID_T=int" to the CFLAGS.  If that doesn't work, try
  5636. #"-DUID_T=uid_t -DGID_T=gid_t".
  5637. sco3r2net:
  5638.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Excelan...'
  5639.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5640.     "CFLAGS= -I/usr/include/exos -DXENIX -DSVR3 -DNOFILEH -DNOLEARN \
  5641.     -DHDBUUCP -DRDCHK -DNAP -DRENAME -DTCPSOCKET -DEXCELAN -DNOJC \
  5642.     -DNOIKSD -DNOREDIRECT $(KFLAGS) -O" \
  5643.     "LNKFLAGS = -s" "LIBS = -lc -lx -lsocket"
  5644.  
  5645. #SCO UNIX/386 3.2.0 and SCO Xenix 2.3.x with Excelan TCP/IP support.
  5646. #As above, with curses added.
  5647. sco3r2netc:
  5648.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Excelan / curses...'
  5649.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5650.     "CFLAGS= -I/usr/include/exos -DXENIX -DSVR3 -DNOFILEH -DNOLEARN \
  5651.     -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET -DEXCELAN -DNOJC $(KFLAGS) \
  5652.     -DRENAME -DCK_CURSES -DNOREDIRECT -DNOIKSD -O" "LNKFLAGS = -s" \
  5653.     "LIBS = -lc -lx -lsocket -lcurses -ltermcap"
  5654.  
  5655. #SCO UNIX 3.2.x or SCO Xenix 2.3.x with Racal InterLan TCP/IP support
  5656. # Extra compile flags for other version of Racal InterLan TCP/IP:
  5657. # Xenix286/NP621-286, use -Ml -DPARAMH -DINTERLAN -Di286 -DSYSV
  5658. # Xenix386/NP621-386, use -DPARAMH -DINTERLAN -Di386 -DSYSV
  5659. # ISC386ix/NP622I, use -DSYSV -Di386
  5660. # SCO Unix3.2/NP622S, use -DSYSV -Di386 -DSCO_UNIX
  5661. # AT&T SVR3.2/NP622A, use -DSYSV -Di386 -DATT
  5662. sco3r2netri:
  5663.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Racal InterLan...'
  5664.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5665.     "CFLAGS= -I/usr/include/interlan -DXENIX -DNOFILEH -DHDBUUCP \
  5666.     -DSVR3 -DRDCHK -DNAP -DTCPSOCKET -DPARAMH -DINTERLAN -Di386 -DSYSV \
  5667.     -DRENAME -DNOREDIRECT -DNOIKSD -DNOJC -DNOLEARN $(KFLAGS) -Otcl -M3e" \
  5668.     "LNKFLAGS = -s" "LIBS = -lc -lx -ltcp"
  5669.  
  5670. # SCO XENIX/386 2.3.3 SysV with SCO TCP/IP
  5671. # System V STREAMS TCP developed by Lachman Associates Inc and
  5672. # Convergent Technologies.
  5673. # -DRENAME removed since some reports indicate it is not supported
  5674. # (whereas others say it is.)
  5675. sco3r2lai:
  5676.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX/386 2.3.3 + TCP/IP...'
  5677.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5678.     "CFLAGS= -DLAI_TCP -Di386 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK \
  5679.     -DNAP -DTCPSOCKET -DPWID_T=int -DNOREDIRECT -DNOIKSD -DNOLEARN \
  5680.     $(KFLAGS) -Otcl -i -M3e" \
  5681.     "LNKFLAGS = -i -s" "LIBS = -lc -lx -lsocket"
  5682.  
  5683. sco3r2laic:
  5684.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX/386 2.3.3 + TCP/IP...'
  5685.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5686.     "CFLAGS= -DLAI_TCP -Di386 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK \
  5687.     -DNAP -DTCPSOCKET -DCK_ANSIC -DCK_CURSES -DM_TERMINFO -DNOLEARN \
  5688.     -DPWID_T=int -DNOREDIRECT -DNOIKSD $(KFLAGS) -Otcl -i -M3e" \
  5689.     "LNKFLAGS = -i -s" "LIBS = -ltinfo -lc -lx -lsocket"
  5690.  
  5691. #SCO UNIX/386 3.2v2 (POSIX job control), shared libraries.
  5692. sco3r22:
  5693.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 ...'
  5694.     make wermit KTARGET=$${KTARGET:-$(@)} \
  5695.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  5696.     -DNAP -DRENAME -DPID_T=pid_t -DPWID_T=int -DDIRENT -DNOIKSD \
  5697.     -DNOREDIRECT $(KFLAGS) -O" \
  5698.     "LNKFLAGS = -s" "LIBS = -lc_s -lc -lx"
  5699.  
  5700. #SCO UNIX/386 3.2v2, POSIX job control, fullscreen file transfer display,
  5701. #dynamic memory allocation, shared C library
  5702. sco3r22c:
  5703.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 ...'
  5704.     @echo 'Warning: If make blows up, edit the makefile to join'
  5705.     @echo 'the following four continued lines into one line.'
  5706.     make wermit KTARGET=$${KTARGET:-$(@)} \
  5707.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DNOLEARN \
  5708.     -DCK_CURSES -DDIRENT -DRENAME -DNOREDIRECT -DNOIKSD \
  5709.     -DPID_T=pid_t -DPWID_T=int $(KFLAGS) -O" \
  5710.     "LNKFLAGS = -s" "LIBS = -lcurses -lc_s -lc -lx"
  5711.  
  5712. #SCO UNIX/386 3.2v2 with gcc 1.40 or later (POSIX job control)
  5713. sco3r22gcc:
  5714.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2, gcc'
  5715.     @echo 'Warning: If make blows up, edit the makefile to join'
  5716.     @echo 'the following seven continued lines into one line.'
  5717.     make wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" \
  5718.     "CFLAGS= -O -DPOSIX -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  5719.     -DNOLEARN -DRENAME -traditional -fpcc-struct-return -fstrength-reduce \
  5720.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  5721.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  5722.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  5723.     -DPID_T=pid_t -DPWID_T=int -DNOREDIRECT -DNOIKSD $(KFLAGS) " \
  5724.     "LNKFLAGS = -s" "LIBS = -lc_s -lc -lx"
  5725.  
  5726. #SCO UNIX/386 3.2v2 (ODT 1.1) (POSIX job control) with SCO TCP/IP, shared libs
  5727. #Requires SCO TCP/IP or ODT development system for telnet.h, etc.
  5728. sco3r22net:
  5729.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2.2 + TCP/IP...'
  5730.     @echo 'Warning: If make blows up, edit the makefile to join'
  5731.     @echo 'the following three continued lines into one line.'
  5732.     make xermit KTARGET=$${KTARGET:-$(@)} \
  5733.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET \
  5734.     -DRENAME -DPID_T=pid_t -DPWID_T=int -DDIRENT -DNOREDIRECT -DNOIKSD \
  5735.     $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lsocket -lc_s -lc -lx"
  5736.  
  5737. #As above, but with curses for fullscreen file transfer display.
  5738. #Requires SCO TCP/IP or ODT development system for telnet.h, etc.
  5739. sco3r22netc:
  5740.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 + TCP/IP...'
  5741.     @echo 'Warning: If make blows up, edit the makefile to join'
  5742.     @echo 'the following three continued lines into one line.'
  5743.     make xermit KTARGET=$${KTARGET:-$(@)} "CFLAGS= \
  5744.     -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET -DRENAME \
  5745.     -DCK_CURSES -DDIRENT -DNOIKSD -DNOREDIRECT \
  5746.     -DPID_T=pid_t -DPWID_T=int -O $(KFLAGS)" \
  5747.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  5748.  
  5749. #SCO XENIX 2.3.4, no curses, no TCP/IP, no IKSD.
  5750. #This one built and tested in C-Kermit 7.0.
  5751. #lcfp is C library floating-point support.
  5752. #Use -M3 to generate 32-bit i386 code instead of 16-bit segmented i286 code.
  5753. #Use -Me to enable MS nonstandard keywords in system headers.
  5754. #Use -W2 or W3 to increase the warning level.
  5755. sco234:
  5756.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX 2.3.4...'
  5757.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5758.     "CFLAGS= -DSCO32 -DXENIX -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  5759.     -DNAP -DNOJC -DNOCOTFMC -DNOIKSD -DNOREDIRECT -DNOTNCODE -DNOGFTIMER \
  5760.     -DNOTIMEVAL -DNOTIMEZONE -DNOSYMLINK -DSCO234 -DDCLGETCWD $(KFLAGS) \
  5761.     -Otcl" "LNKFLAGS = -s" "LIBS = -lcfp -lc -lx"
  5762.  
  5763. #SCO XENIX 2.3.4, no TCP/IP, no IKSD, but with curses.
  5764. # Built and tested in C-Kermit 7.0.
  5765. # Note: XENIX 2.3.4 does not have newterm() so no point in adding -DCK_NEWTERM.
  5766. sco234c:
  5767.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX 2.3.4 + curses...'
  5768.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5769.     "CFLAGS= -DSCO32 -DXENIX -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  5770.     -DNAP -DNOJC -DNOCOTFMC -DNOIKSD -DNOREDIRECT -DNOTNCODE -DNOGFTIMER \
  5771.     -DNOTIMEVAL -DNOTIMEZONE -DNOSYMLINK -DCK_CURSES -DSCO234 \
  5772.     -DDCLGETCWD $(KFLAGS) -Otcl" \
  5773.     "LNKFLAGS = -s" "LIBS = -lcfp -lc -ltinfo -lx"
  5774.  
  5775. #SCO XENIX 2.3.4 with SCO TCP/IP and curses, no IKSD.
  5776. # Built and tested in C-Kermit 7.0.  TCP/IP works and curses works.
  5777. # Previous versions of this target included -lmalloc, but this caused "error:
  5778. # " _calloc : symbol defined more than once" at link time so I removed it.
  5779. # Results are likely to vary depending on exactly which version of the SDK
  5780. # and TCP/IP SDK you have.
  5781. sco234netc:
  5782.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX 2.3.4 + TCP + curses...'
  5783.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5784.     "CFLAGS= -DSCO32 -DXENIX -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  5785.     -DNAP -DNOJC -DNOCOTFMC -DNOIKSD -DNOREDIRECT -DNOTNCODE -DNOGFTIMER \
  5786.     -DNOTIMEVAL -DNOTIMEZONE -DNOSYMLINK -DCK_CURSES -DSCO234 \
  5787.     -DDCLGETCWD -DTCPSOCKET -DNO_DNS_SRV $(KFLAGS) -Otcl" \
  5788.     "LNKFLAGS = -s" "LIBS = -ltinfo -lsocket -lcfp -lc -lx"
  5789.  
  5790. # SCO 3.2v4.x targets...
  5791.  
  5792. #  NOTE: Add -DDCLPOPEN and/or -DDCLFDOPEN to anySCO 3.2v4.x non-gcc entries
  5793. #  that complain about fdopen() or popen() at compile time.  They compile OK
  5794. #  without these flags as of July 1999.  However, the gcc entries seem to
  5795. #  need them, at least for gcc 2.7.2.2.
  5796.  
  5797. #  NOTE 2: To enable IKSD support, add:
  5798. #  -DCK_LOGIN -DNOGETUSERSHELL -DNOINITGROUPS
  5799. #  to CFLAGS (not tested).
  5800.  
  5801. #SCO UNIX/386 3.2v4 (POSIX job control), curses, ANSI C compilation,
  5802. #<dirent.h> (EAFS) file system.  Remove -lmalloc if it causes trouble.  It was
  5803. #put there to avoid core dumps caused by regular libc.a malloc.  Add -J to make
  5804. #all chars unsigned.  This version uses select() for CONNECT and also has
  5805. #high-precision timers and so might not work on non-TCP systems, in which case
  5806. #sco32v4ns should be used instead.
  5807. # If you get _ftime redefinition_ complaint, try adding -DODT30 to CFLAGS.
  5808. sco32v4:
  5809.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  5810.     make xermit KTARGET=$${KTARGET:-$(@)} \
  5811.     "CFLAGS= -DCK_SCO32V4 -DNOFILEH -DHDBUUCP -DCK_CURSES -DM_TERMINFO \
  5812.     -DNOANSI -DSELECT -DNOIKSD -DDCLGETCWD -NOLSTAT \
  5813.     -DNOLINKBITS -DDCLGETCWD $(KFLAGS) -O" \
  5814.     "LNKFLAGS = -s" "LIBS = -lcurses -lmalloc -lsocket -lc_s -lc -lx"
  5815.  
  5816. # As above, but with no dependence on sockets library or select().
  5817. sco32v4ns:
  5818.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  5819.     @echo 'No select() and no sockets library.'
  5820.     make wermit KTARGET=$${KTARGET:-$(@)} \
  5821.     "CFLAGS= -DCK_SCO32V4 -DNOFILEH -DHDBUUCP -DCK_CURSES -DM_TERMINFO \
  5822.     -DNOANSI -DNOIKSD -DNOGFTIMER -DCK_POLL -DNAP -DDCLGETCWD -DNOLSTAT \
  5823.     -DNOLINKBITS -DDCLGETCWD -DNOLEARN -O $(KFLAGS)" \
  5824.     "LNKFLAGS = -s" "LIBS = -lcurses -lmalloc -lc_s -lc -lx"
  5825.  
  5826. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  5827. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  5828. #Reportedly it's OK to add -DCK_REDIR and -DCK_WREFRESH, and to remove -lc_s.
  5829. #Requires SCO TCP/IP development system or ODT for telnet.h, etc.
  5830. #See sco32v4 above for additional comments.
  5831. #NOTE: No more room for -Dxxx -- 25 seems to be the limit.  Move some to
  5832. #ckcdeb.h or somewhere...
  5833. sco32v4net:
  5834.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  5835.     @echo 'If you get _ftime redefinition_ complaint,'
  5836.     @echo 'use make sco-odt30.'
  5837.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5838.     "CFLAGS= -DNOFILEH -DHDBUUCP -DTCPSOCKET -DCK_ANSIC -DCK_CURSES \
  5839.     -DNAP -DCK_WREFRESH -DNOLINKBITS -D_IBCS2 -DSELECT -DNOLSTAT \
  5840.     -DDCLGETCWD -DCK_SCO32V4 -DNOIKSD -O \
  5841.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS) -s" \
  5842.     "LIBS = $(LIBS) -lcurses -lsocket -lmalloc -lsocket -lc_s -lc -lx"
  5843.  
  5844. #SCO UNIX/386 3.2v4 with gcc 1.40 or later, POSIX job control.
  5845. #Also see comments in sco32r4 entry.
  5846. sco32v4gcc:
  5847.     make xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" \
  5848.     "CFLAGS= -O -DNOFILEH -DHDBUUCP -DNOANSI -DCK_CURSES -DM_TERMINFO \
  5849.     -traditional -fpcc-struct-return -fstrength-reduce -funsigned-char \
  5850.     -D_KR -D_NO_PROTOTYPE -D_SVID -DNOIKSD -DCK_SCO32V4 -DNOLINKBITS \
  5851.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DSELECT -DNOLSTAT \
  5852.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 -DDCLGETCWD \
  5853.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  5854.     -DDCLPOPEN -DDCLFDOPEN $(KFLAGS) " \
  5855.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  5856.  
  5857. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  5858. #Requires SCO TCP/IP or ODT development system for telnet.h, etc.
  5859. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  5860. #gcc 1.40 or later.  Also see comments in sco32r4 entry.
  5861. sco32v4netgcc:
  5862.     make xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2=gcc" \
  5863.     "CFLAGS= -O2 -DNOFILEH -DHDBUUCP -DSELECT -DNOLSTAT \
  5864.     -DNOANSI -DTCPSOCKET -DCK_CURSES -DM_TERMINFO \
  5865.     -D_KR -D_NO_PROTOTYPE -D_SVID -DNOIKSD -DCK_SCO32V4 -DNOLINKBITS \
  5866.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DDCLGETCWD \
  5867.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  5868.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  5869.     -DDCLPOPEN -DDCLFDOPEN $(KFLAGS)" \
  5870.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  5871.  
  5872. #As above but with bgcc BOUNDS CHECKING (for developers only).  -lcheck has
  5873. #bounds-checking replacements for malloc, memcpy, bcopy, etc, so must come
  5874. #before -lsocket and -lc.
  5875. sco32v4netbgcc:
  5876.     make xermit KTARGET=$${KTARGET:-$(@)} \
  5877.     "CC = bgcc -pipe -m386" "CC2=bgcc -pipe -m386" \
  5878.     "CFLAGS= -O1 -g -DNOFILEH -DHDBUUCP -DSELECT \
  5879.     -DNOANSI -DTCPSOCKET -DCK_CURSES -DM_TERMINFO \
  5880.     -D_KR -D_NO_PROTOTYPE -D_SVID -DNOIKSD -DCK_SCO32V4 -DNOLSTAT \
  5881.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DNOLINKBITS \
  5882.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 -DDCLGETCWD \
  5883.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  5884.     -DDCLPOPEN -DDCLFDOPEN $(KFLAGS) " \
  5885.     "LNKFLAGS = -g" "LIBS = -lcurses -lcheck -lsocket -lx"
  5886.  
  5887. sco32v4netnd:
  5888.     @echo sco32v4net with no debug
  5889.     $(MAKE) "MAKE=$(MAKE)" sco32v4net KTARGET=$${KTARGET:-$(@)} \
  5890.     "KFLAGS=$(KFLAGS) -DNODEBUG -DNOTLOG" "LIBS=$(LIBS)"
  5891.  
  5892. sco3r2netnd:
  5893.     @echo sco32v4netnd built for SCO XENIX 2.3 under SCO UNIX...
  5894.     @echo   requires copying /lib/386/Slibc.a to /lib/386/Slibc_s.a and
  5895.     @echo   getting /lib/386/Slibsocket.a from a XENIX devkit.
  5896.     @echo   WARNING: poll/CK_POLL supported only on XENIX 2.3.4
  5897.     echo    For earlier XENIX systems, replace CK_POLL with RDCHK.
  5898.     $(MAKE) "MAKE=$(MAKE)" sco32v4netnd KTARGET=$${KTARGET:-$(@)} \
  5899.     "KFLAGS=$(KFLAGS) -x2.3 -DNORENAME -DNOSYMLINK" \
  5900.     "LNKFLAGS = $(LNKFLAGS) -x2.3" \
  5901.     "LIBS=-ldir -lcfp $(LIBS)"
  5902.  
  5903. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  5904. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  5905. #Reportedly it's OK to add -DCK_REDIR and -DCK_WREFRESH, and to remove -lc_s.
  5906. #Requires SCO TCP/IP development system or ODT for telnet.h, etc.
  5907. #See sco32v4 above for additional comments.
  5908. # Note: "xermit" means use the select() version of the CONNECT module.
  5909. sco32v4netx:
  5910.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  5911.     @echo 'If you get _ftime redefinition_ complaint,'
  5912.     @echo 'use make sco-odt30.'
  5913.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5914.     "CFLAGS= -DNOFILEH -DHDBUUCP -DTCPSOCKET -DCK_ANSIC -DCK_CURSES -DNAP \
  5915.     -DCK_WREFRESH -DNOLINKBITS -D_IBCS2 -DSELECT -DDCLGETCWD \
  5916.     -DCK_SCO32V4 -DNOIKSD -DNOLSTAT -O $(KFLAGS)" \
  5917.     "LNKFLAGS = $(LNKFLAGS) -s" \
  5918.     "LIBS = $(LIBS) -lcurses -lsocket -lmalloc -lsocket -lc_s -lc -lx"
  5919.  
  5920. sco32v4netndx:
  5921.     @echo sco32v4netx with no debug
  5922.     $(MAKE) "MAKE=$(MAKE)" sco32v4netx KTARGET=$${KTARGET:-$(@)} \
  5923.     "KFLAGS=$(KFLAGS) -DNODEBUG -DNOTLOG" "LIBS=$(LIBS)"
  5924.  
  5925. sco3r2netndx:
  5926.     @echo sco32v4netndx built for SCO XENIX 2.3 under SCO UNIX...
  5927.     @echo   requires copying /lib/386/Slibc.a to /lib/386/Slibc_s.a and
  5928.     @echo   getting /lib/386/Slibsocket.a from a XENIX devkit.
  5929.     @echo   WARNING: poll/CK_POLL supported only on XENIX 2.3.4
  5930.     echo    For earlier XENIX systems, replace CK_POLL with RDCHK.
  5931.     $(MAKE) "MAKE=$(MAKE)" sco32v4netndx KTARGET=$${KTARGET:-$(@)} \
  5932.     "KFLAGS=$(KFLAGS) -x2.3 -DNORENAME -DNOSYMLINK" \
  5933.     "LNKFLAGS = $(LNKFLAGS) -x2.3" \
  5934.     "LIBS=-ldir -lcfp $(LIBS)"
  5935.  
  5936. sco-odt30:
  5937.     @echo SCO ODT 3.0
  5938.     $(MAKE) "MAKE=$(MAKE)" sco32v4net KTARGET=$${KTARGET:-$(@)} \
  5939.     "KFLAGS=$(KFLAGS) -DODT30"
  5940.  
  5941. #SCO OpenServer 5.0 (SCO UNIX 3.2v5.0) with SCO development tools, no TCP/IP.
  5942. #SCO OSR5 is much more like standard System V than previous SCO releases.
  5943. #The SCO development tools include TCP/IP, so this target is only for creating
  5944. #artificially limited versions of kermit required by site policy rather than
  5945. #the operating system.  NOSYSLOG is included because syslog() requires the
  5946. #sockets library.
  5947. sco32v500:
  5948.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5...
  5949.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  5950.     "CFLAGS= -O -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  5951.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  5952.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DNOSYSLOG \
  5953.     $(KFLAGS)" \
  5954.     "LIBS=-lcurses $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  5955.  
  5956. sco32v5:
  5957.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sco32v500
  5958.  
  5959.  
  5960. #SCO OpenServer 5.0 with networking, SCO development tools.
  5961. #Networking libraries are now provided with the OS.
  5962. sco32v500net:
  5963.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5...
  5964.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  5965.     "CFLAGS= -O -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  5966.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  5967.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DTCPSOCKET \
  5968.     -DNO_DNS_SRV $(KFLAGS)" \
  5969.     "LIBS=-lcurses -lsocket $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  5970.  
  5971. sco32v5net:
  5972.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sco32v500net
  5973.  
  5974. #SCO OpenServer 5.0 with gcc, no networking.
  5975. #Note: NOSYSLOG required for non-net entries because it requires <socket.h>
  5976. sco32v500gcc:
  5977.     @echo Using gcc...
  5978.     $(MAKE) "MAKE=$(MAKE)" sco32v500CC=gcc CC2=gcc \
  5979.     KTARGET=$${KTARGET:-$(@)} "KFLAGS= $(KFLAGS)"
  5980.  
  5981. #SCO OpenServer 5.0 with networking, gcc.
  5982. sco32v500netgcc:
  5983.     @echo TCP/IP networking added - using gcc...
  5984.     $(MAKE) "MAKE=$(MAKE)" sco32v500net CC=gcc CC2=gcc \
  5985.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  5986.  
  5987. #SCO OpenServer 5.0 with networking, gcc, elf.
  5988. sco32v500netgccelf:
  5989.     @echo TCP/IP networking added - using gcc, dynamic elf library
  5990.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  5991.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-O3 -belf" "LNKFLAGS=-belf"
  5992.  
  5993. sco32v502:
  5994.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  5995.     "KFLAGS=-DSCO_OSR502 $(KFLAGS)"
  5996.  
  5997. #SCO OpenServer 5.0.2 with networking, SCO development tools.
  5998. sco32v502net:
  5999.     @echo TCP/IP networking added...
  6000.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  6001.     "KFLAGS=-b elf -DSCO_OSR502 $(KFLAGS)"
  6002.  
  6003. #SCO OpenServer 5.0.4 (SCO UNIX 3.2v5.0.4) with SCO development tools.
  6004. #Like 5.0, but adds high serial speeds.  First POSIX-based SCO version.
  6005. #Note: the -O flag is deliberately omitted for /bin/cc (= /usr/ccs/bin/cc).
  6006. sco32v504:
  6007.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5.0.4...
  6008.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  6009.     "CFLAGS= -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  6010.     -DSCO_OSR504 -b elf -DPOSIX \
  6011.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  6012.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DNOSYSLOG $(KFLAGS)" \
  6013.     "LIBS=-lcurses $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  6014.  
  6015. #SCO OpenServer 5.0.4 with gcc, no networking.
  6016. sco32v504gcc:
  6017.     @echo Using gcc...
  6018.     $(MAKE) "MAKE=$(MAKE)" sco32v504 "CC=gcc" "CC2=gcc" \
  6019.     KTARGET=$${KTARGET:-$(@)} "KFLAGS= $(KFLAGS)"
  6020.  
  6021. #SCO OpenServer 5.0.4 with networking.
  6022. #SCO development tools (/bin/cc = /usr/ccs/bin/cc).
  6023. #Optimization deliberately suppressed.
  6024. sco32v504net:
  6025.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5.0.4...
  6026.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  6027.     "CFLAGS= -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  6028.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  6029.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DTCPSOCKET \
  6030.     -b elf -DSCO_OSR504 -DPOSIX -DNO_DNS_SRV $(KFLAGS)" \
  6031.     "LIBS=-lcurses -lsocket $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  6032.  
  6033. #SCO OpenServer 5.0.4 with networking, gcc.
  6034. sco32v504netgcc:
  6035.     @echo TCP/IP networking added - using gcc...
  6036.     @echo If gcc crashes on ckwart.c then build it by hand:
  6037.     @echo " gcc -o wart -DCK_SCOV5 ckwart.c"
  6038.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  6039.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DSCO_OSR504 -DPOSIX $(KFLAGS)"
  6040.  
  6041. #SCO OpenServer 5.0.4 with networking, gcc, elf.
  6042. sco32v504netgccelf:
  6043.     @echo TCP/IP networking added - using gcc, dynamic elf library
  6044.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc"
  6045.     KTARGET=$${KTARGET:-$(@)} \
  6046.     "KFLAGS=-DSCO_OSR504 -DPOSIX -O3 -belf $(KFLAGS)" \
  6047.     LNKFLAGS="-belf"
  6048.  
  6049. #SCO OpenServer 5.0.5 (SCO UNIX 3.2v5.0.5) with SCO /bin/cc.
  6050. #Like 5.0, but adds high serial speeds.  First POSIX-based SCO version.
  6051. #You might have to add "LIBS=-ltinfo" (some do, some don't).
  6052. sco32v505:
  6053.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  6054.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  6055.  
  6056. #SCO OpenServer 5.0.5 (SCO UNIX 3.2v5.0.5) with SCO UDK.
  6057. #This one can't see the high serial speeds and anything to do with modem
  6058. #signals doesn't work because UKD cc has its own alternative universe of
  6059. #header files.
  6060. sco32v505udk:
  6061.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  6062.     "KFLAGS=-DSCO_OSR505 -DDCLTIMEVAL -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  6063.  
  6064. #SCO OpenServer 5.0.5 with networking, SCO /bin/cc.
  6065. #See comments with sco32v505 targets.
  6066. sco32v505net:
  6067.     @echo TCP/IP networking added...
  6068.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  6069.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  6070.  
  6071. #SCO OpenServer 5.0.5 with networking, SCO UDK.
  6072. #See comments with above sco32v505 targets.
  6073. sco32v505udknet:
  6074.     @echo TCP/IP networking added...
  6075.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  6076.     "KFLAGS=-DSCO_OSR505 -DDCLTIMEVAL -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  6077.  
  6078. #SCO OpenServer 5.0.5 with gcc, no networking.
  6079. sco32v505gcc:
  6080.     @echo Using gcc...
  6081.     $(MAKE) "MAKE=$(MAKE)" sco32v500 "CC=gcc" "CC2=gcc" \
  6082.     KTARGET=$${KTARGET:-$(@)} \
  6083.     "KFLAGS=-DSCO_OSR505 -DPOSIX -funsigned-char $(KFLAGS)"
  6084.  
  6085. #SCO OpenServer 5.0.5 with gcc, no networking, no shadow passwords.
  6086. sco32v505xgcc:
  6087.     @echo Using gcc...
  6088.     $(MAKE) "MAKE=$(MAKE)" sco32v500 "CC=gcc" "CC2=gcc" \
  6089.     KTARGET=$${KTARGET:-$(@)} \
  6090.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -DPOSIX -funsigned-char $(KFLAGS)"
  6091.  
  6092. #SCO OpenServer 5.0.5 with networking, gcc.
  6093. sco32v505netgcc:
  6094.     @echo TCP/IP networking added - using gcc...
  6095.     @echo If gcc crashes on ckwart.c then build it by hand:
  6096.     @echo " gcc -o wart -DCK_SCOV5 ckwart.c"
  6097.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  6098.     KTARGET=$${KTARGET:-$(@)} \
  6099.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -DPOSIX -funsigned-char $(KFLAGS)"
  6100.  
  6101. #egcs is just like gcc but generates ELF by default.
  6102. #Or you can include -melf (not -belf) to force it.
  6103. sco32v505netegcs:
  6104.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sco32v505netgcc \
  6105.     KTARGET=$${KTARGET:-$(@)}
  6106.  
  6107. #SCO OpenServer 5.0.5 with networking, gcc, elf.
  6108. sco32v505netgccelf:
  6109.     @echo TCP/IP networking added - using gcc, dynamic elf library
  6110.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  6111.     "KFLAGS=-DSCO_OSR505 -DPOSIX -funsigned-char -O3 -belf $(KFLAGS)" \
  6112.     KTARGET=$${KTARGET:-$(@)} LNKFLAGS="-belf"
  6113.  
  6114. #SCO OpenServer 5.0.6 with SCO /bin/cc.
  6115. # Add -DDCLTIMEVAL when building with UDK.
  6116. #Like 5.0.5.   IMPORTANT: Use sco32v506a target for 5.0.6a.
  6117. sco32v506:
  6118.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  6119.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -b elf -DPOSIX $(KFLAGS)"
  6120.  
  6121. #SCO OpenServer 5.0.6 with networking, SCO /bin/cc.
  6122. # Add -DDCLTIMEVAL when building with UDK.
  6123. # IMPORTANT: Use sco32v506a target for 5.0.6a.
  6124. sco32v506net:
  6125.     @echo TCP/IP networking added...
  6126.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  6127.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -b elf -DPOSIX $(KFLAGS)"
  6128.  
  6129. #SCO OpenServer 5.0.6a, no networking, SCO development tools.
  6130. #This one has patched sio drivers that, for the first time,
  6131. #actually handle modem signals correctly.
  6132. # Add -DDCLTIMEVAL when building with UDK.
  6133. sco32v506a:
  6134.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  6135.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR506A -DNEEDMDMDEFS \
  6136.     -b elf -DPOSIX $(KFLAGS)"
  6137.  
  6138. #SCO OpenServer 5.0.6 with networking, SCO development tools.
  6139. # Add -DDCLTIMEVAL when building with UDK.
  6140. sco32v506anet:
  6141.     @echo TCP/IP networking added...
  6142.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  6143.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR506A -DNEEDMDMDEFS \
  6144.     -b elf -DPOSIX $(KFLAGS)"
  6145.  
  6146. #Tandy 16/6000 with Xenix 3.0
  6147. #Add more -DNOxxx options to remove features if program won't load.
  6148. #Successful operation is a function of program size, physical memory,
  6149. #available swap space, etc.  The following stripped-down configuration
  6150. #seems to work on most Tandy 6000s.  NOTE: "-+" means allow long variable
  6151. #names, needed for C-Kermit 6.0 because some identifiers are not unique
  6152. #within the first six characters.
  6153. #C-Kermit 7.0 does not build here; "too many defines".
  6154. trs16:
  6155.     @echo 'Making C-Kermit $(CKVER) for Tandy 16/6000, Xenix 3.0...'
  6156.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6157.     "CFLAGS = -+ -DATTSV -DTRS16 -DNOMKDIR -DDCLPOPEN -DCK_CURSES \
  6158.     -DNODEBUG -DNOTLOG -DNOHELP -DNOSCRIPT -DNOCSETS -DNOIKSD \
  6159.     -DNOREDIRECT -DNOSYSLOG -DNOPUTENV -DNOREALPATH -DNOLEARN \
  6160.     $(KFLAGS) -O" "LIBS= -lcurses -ltermcap" "LNKFLAGS = -+ -n -s"
  6161.  
  6162. #MINIX/2.0 32 Bit version for intel 386+ running the POSIX-compliant MINIX
  6163. # version 2.0 (The definition of fatal avoids a conflict with a symbol by
  6164. # the same name in the curses library.) It is impossible to compile with
  6165. # network support since Minix does not support Berkeley sockets.
  6166. # Note: use chmem liberally on the compiler passes, make, and the final
  6167. # kermit executable. (3 megabytes of memory for each is sufficient.)
  6168. # From Terry McConnell, Syracuse U, and Will Rose.  Will says:
  6169. # The stacks for make and some compiler passes needed to be increased
  6170. # with chmem as follows:
  6171. #   make 1MB
  6172. #   /usr/lib/em_cemcom.ansi 3MB
  6173. #   /usr/lib/em_opt 1MB
  6174. #   /usr/lib/i386/cg 1MB
  6175. #   /usr/lib/i386/as 1MB
  6176. # The compiler temporary directory was set to /usr/tmp via the TMPDIR
  6177. # environment variable; more than 1MB of temporary space was needed.
  6178. # Kermit itself needs at least 1MB of stack.
  6179. minix20:
  6180.     @echo 'Making C-Kermit $(CKVER) for MINIX 2.0/386...'
  6181.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} EXT=o \
  6182.     "CFLAGS=  -wo -DV7 -DMINIX2 -DMINIX -DSIG_V -D_POSIX_SOURCE \
  6183.     -DCKCPU=\\\"i-386\\\" -DNOIKSD -Dfatal=myfatal -DCK_CURSES -DNOLEARN \
  6184.     -DNOSYSLOG -DUSE_MEMCPY -DNOREALPATH $(KFLAGS)" "LIBS= -lcurses"
  6185.  
  6186. #MINIX/386 (PC Minix modified by Bruce Evans in Australia for 386 addressing)
  6187. # For MINIX 1.5+ (but < 2.0)
  6188. minix386:
  6189.     @echo 'Making C-Kermit $(CKVER) for MINIX/386...'
  6190.     @echo 'TOTALLY UNTESTED!'
  6191.     $(MAKE) wermit EXT=s KTARGET=$${KTARGET:-$(@)} \
  6192.     "CFLAGS= -DV7 -DMINIX -D_POSIX_SOURCE -DNOLEARN $(KFLAGS)"
  6193.  
  6194. #MINIX/386 Minix modified by Bruce Evans in Australia to use 386 addressing
  6195. minix386gcc:
  6196.     @echo 'Making C-Kermit $(CKVER) for MINIX/386 with gcc...'
  6197.     @echo 'TOTALLY UNTESTED!'
  6198.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC=gcc -g -O" "CC2=gcc -g" \
  6199.     "CFLAGS= -DV7 -DMINIX -D_POSIX_SOURCE -DNOLEARN $(KFLAGS)"
  6200.  
  6201. #MINIX - 68k version with ACK compiler.
  6202. # If you have trouble compiling or running wart, "touch wart".
  6203. # If it still doesn't work, "touch ckcpro.c".
  6204. # The version configured below has many features removed, including
  6205. # the TRANSMIT, MSEND, HELP, and SCRIPT commands, international
  6206. # character set support, and the entire script programming language.
  6207. # But it does have an interactive command parser.
  6208. # Make sure make(1) has (at least) 100000 chmemory!
  6209. # If you are using the Amsterdam C compiler, you might have to add "-D__ACK__".
  6210. minix68k:
  6211.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with ACK...
  6212.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6213.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE -DNOLEARN \
  6214.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  6215.     -DNOSCRIPT -DNOCSETS -DNOSPL $(KFLAGS) \
  6216.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  6217.  
  6218. #MINIX - 68k version with c68 compiler.
  6219. # If you have trouble compiling or running wart, "touch wart" or
  6220. # "touch ckcpro.c". Compiling ckudia.c (no -DNODIAL!) might fail. :-(
  6221. # Give c68 250000 bytes of stack+heap; make sure make(1) has at least
  6222. # 100000 chmemory.  On a 1MB Atari ST this means that the recursive
  6223. # call of make fails due to memory shortage.  Try "make -n minixc68 >makeit",
  6224. # followed by ". makeit".  Otherwise, as above.
  6225. minixc68:
  6226.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with c68...
  6227.     $(MAKE) wermit "CC= cc -c68" KTARGET=$${KTARGET:-$(@)} \
  6228.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE -DNOLEARN \
  6229.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  6230.     -DNOSCRIPT -DNOCSETS -DNOSPL $(KFLAGS) \
  6231.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  6232.  
  6233. #MINIX - 68k version with c68 compiler.
  6234. #A variation on the above that was recently (Sep 95) reported to work.
  6235. minixc68a:
  6236.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with c68...
  6237.     $(MAKE) wermit "CC= cc -c68" KTARGET=$${KTARGET:-$(@)} \
  6238.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE \
  6239.     -DCK_ANSIC -DNODEBUG -DNOTLOG -DMINIDIAL -DEXTEN -DMYCURSES \
  6240.     -DNOSCRIPT -DNOCSETS -DNOSPL -DNOJC -DDIRENT -DNOLEARN \
  6241.     -DNOSETKEY -DNOESCSEQ $(KFLAGS) \
  6242.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  6243.  
  6244. #MIPS Computer Systems with UMIPS RISC/OS 4.52 = AT&T UNIX System V R3.0.
  6245. #Remove -DNOJC if job control can be safely used.
  6246. mips:
  6247.     @echo 'Making C-Kermit $(CKVER) for MIPS RISC/OS...'
  6248.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6249.     "CFLAGS = -DMIPS -DDIRENT -DCK_POLL -DNOJC -DNOLEARN -DPID_T=int \
  6250.     -DGID_T=gid_t -DUID_T=uid_t -i -O1500 $(KFLAGS)"
  6251.  
  6252. #As above, but with TCP/IP and fullscreen support.
  6253. mipstcpc:
  6254.     @echo 'Making C-Kermit $(CKVER) for MIPS RISC/OS...'
  6255.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6256.     "CFLAGS = -DMIPS -DDIRENT -DCK_POLL -DNOJC \
  6257.     -DTCPSOCKET -DCK_CURSES -I/usr/include/bsd \
  6258.     -DPID_T=int -DGID_T=gid_t -DUID_T=uid_t -i -O1500 $(KFLAGS)" \
  6259.     "LIBS = -lcurses -lbsd"
  6260.  
  6261. #Motorola Delta System V/68 R3, signal() is void rather than int.
  6262. #Uses dirent.h and Honey DanBer uucp.  Supports TCP/IP.
  6263. #After building, use "mcs -d" to reduce size of the executable program.
  6264. sv68r3:
  6265.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3...'
  6266.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6267.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNO_DNS_SRV -DTCPSOCKET \
  6268.     -DNOUNICODE -DNOLEARN $(KFLAGS) -O" "LNKFLAGS ="
  6269.  
  6270. #Motorola Delta System V/68 R3V5, signal() is void rather than int.
  6271. #Uses dirent.h and Honey DanBer UUCP.  Supports TCP/IP.
  6272. #After building, use "mcs -d" to reduce size of the executable program.
  6273. sv68r3v5:
  6274.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V5'
  6275.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6276.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNO_DNS_SRV \
  6277.     -DTCPSOCKET -DINADDRX -DNOUNICODE -DFNFLOAT -DNOLEARN $(KFLAGS) -O" \
  6278.     "LNKFLAGS =" "LIBS = -linet -lm"
  6279.  
  6280. #Motorola MVME147 System V/68 R3 V5.1. Requires gcc 2.1 to compile.
  6281. #After building, use "mcs -d" to reduce size of the executable program.
  6282. sv68r3v51:
  6283.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V5.1'
  6284.     $(MAKE) wermit "CC=gcc-delta" "CC2=gcc-delta" \
  6285.     KTARGET=$${KTARGET:-$(@)} \
  6286.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNODEBUG -DNO_DNS_SRV -DNOLEARN \
  6287.     -DNOUNICODE -DFNFLOAT $(KFLAGS) -O2 -v -ftraditional" \
  6288.     "LNKFLAGS = -s -v" "LIBS = -lm881 -lm"
  6289.  
  6290. #Motorola MVME147 System V/68 R3V6. derived from Motorola Delta System R3V5.
  6291. #Checked on larger Motorola System V/68 R3V6 (with NSE Network Services Ext.)
  6292. #After building, use "strip" to reduce size of the executable program.
  6293. # "LIBS = -lnsl" removed in C-Kermit 6.1 - put back if needed.
  6294. # "LIBS = lm" added in 7.1/8.0 for floating-point math.
  6295. sv68r3v6:
  6296.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V6'
  6297.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6298.     "CFLAGS = -DSV68R3V6 -DDIRENT -DHDBUUCP -DNOLOGIN -DNOINITGROUPS \
  6299.     -DNOSYMLINK -DNOREDIRECT -DNOGFTIMER -DTCPSOCKET -DDCLGETCWD \
  6300.     -DNO_DNS_SRV -DNOUNICODE -DFNFLOAT -DSELECT $(KFLAGS) -O" \
  6301.     "LNKFLAGS =" "LIBS = -lm"
  6302.  
  6303. #Motorola Delta System V/88 R32, signal() is void rather than int.
  6304. #Uses dirent.h and Honey DanBer uucp.  Needs <sys/utime.h> for setting
  6305. #file dates.  Supports TCP/IP.
  6306. #After building, use "mcs -d" to reduce size of the executable program.
  6307. sv88r32:
  6308.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R32...'
  6309.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6310.     "CFLAGS = -DSV88R32 -DDIRENT -DHDBUUCP -DTCPSOCKET \
  6311.     -DSYSUTIMEH -DCK_CURSES -DNOGETUSERSHELL -DGTODONEARG $(KFLAGS) -O" \
  6312.     "LIBS= -lcurses -lresolv" "LNKFLAGS = -s"
  6313.  
  6314. #Motorola Delta System V/88 R40.  Has <sys/termiox.h>, regular Berkeley
  6315. #sockets library, i.e. in.h and inet.h are not misplaced in sys (rather than
  6316. #netinet and arpa, respectively).  Uses ANSI C constructs, advisory file
  6317. #locking on devices, etc.  curses support added.  Reportedly, the
  6318. #/usr/include/sys/vnode.h file has a bug which must be fixed before this
  6319. #makefile entry can work correctly.  The "if DEBUG" directive at about line
  6320. #320 must be changed to "ifdef DEBUG" (Reportedly, this was fixed in
  6321. #in System V/88 R4.3).
  6322. #After building, use "mcs -d" to reduce size of the executable program.
  6323. sv88r40:
  6324.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R40...'
  6325.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6326.     "CFLAGS = -O -DSVR4 -DMOTSV88R4 -DDIRENT -DHDBUUCP -DSTERMIOX \
  6327.     -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL -DGTODONEARG -DFNFLOAT \
  6328.     $(KFLAGS)" \
  6329.     "LIBS= -lsocket -lnsl -lcurses -lresolv -lm" "LNKFLAGS = -s"
  6330.  
  6331. #As above but without the floating-point math library.
  6332. sv88r40nm:
  6333.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R40...'
  6334.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6335.     "CFLAGS = -O -DSVR4 -DMOTSV88R4 -DDIRENT -DHDBUUCP -DSTERMIOX \
  6336.     -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL -DGTODONEARG $(KFLAGS)" \
  6337.     "LIBS= -lsocket -lnsl -lcurses -lresolv" "LNKFLAGS = -s"
  6338.  
  6339. #As above but with floating-point math library support \ffp...() functions
  6340. #and S-Expressions.
  6341.  
  6342. #Olivetti X/OS R2.3, 3.x.
  6343. #NOTES:
  6344. # . If you build the executable on 2.x X/OS, it will also run on 3.x.
  6345. # . If you build it on 3.x X/OS, it will NOT run on 2.x.
  6346. # . Kermit can run with no privileges unless the uucp lines are protected,
  6347. #   in which case kermit must be owned by uucp with suid bit set:
  6348. #   chown uucp kermit ; chmod 4111 kermit.
  6349. xos23:
  6350.     @echo 'Making C-Kermit $(CKVER) for Olivetti X/OS...'
  6351.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6352.     'CFLAGS=-OLM -DOXOS -DTCPSOCKET -DHDBUUCP $(KFLAGS)' \
  6353.     "LIBS=" "LNKFLAGS="
  6354.  
  6355. #As above, but with curses.
  6356. xos23c:
  6357.     @echo 'Making C-Kermit $(CKVER) for Olivetti X/OS with curses...'
  6358.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  6359.     'CFLAGS=-OLM -DOXOS -DTCPSOCKET -DHDBUUCP -DCK_CURSES $(KFLAGS)' \
  6360.     "LIBS=-lcurses" "LNKFLAGS="
  6361.  
  6362. ckuuid:
  6363.     @echo 'building C-Kermit $(CKVER) set-UID/set-GID test programs'
  6364.     $(CC) -DANYBSD -DSAVEDUID -o ckuuid1 ckuuid.c
  6365.     $(CC) -DANYBSD -o ckuuid2 ckuuid.c
  6366.     $(CC) -DANYBSD -DNOSETREU -o ckuuid3 ckuuid.c
  6367.     $(CC) -DANYBSD -DSETEUID -DNOSETREU -o ckuuid4 ckuuid.c
  6368.     $(CC) -o ckuuid5 ckuuid.c
  6369.     @echo 'Read the top of ckuuid.c for directions...for testing'
  6370.     @echo 'you must make these programs setuid and setgid'
  6371.  
  6372. ############################################################################
  6373. # A N T I Q U I T I E S
  6374. #
  6375. # The following are antique targets from C-Kermit 5A or earlier.  They have
  6376. # not been updated or tested in years.  Most of them will need recent features
  6377. # disabled, usually with some combination of -DNOUNICODE, -DNOIKSD, -DNOANSI,
  6378. # -DNOCKGHNLHOST, -DNO_DNS_SRV, -DNOREDIRECT, -DNOREALPATH, -DNOCURSES, etc.
  6379. # They are also missing the KTARGET=$${KTARGET:-$(@)} business.
  6380. # For details see ckuins.txt and ckccfg.txt.
  6381. #
  6382. ############################################################################
  6383.  
  6384. #Berkeley Unix 2.8, 2.9 for PDP-11s with I&D space, maybe also Ultrix-11???
  6385. #C-Kermit(5A) is simply too large (even turning off almost every feature
  6386. #available) to run without both I&D space plus overlays.  The old comment
  6387. #suggested running 'pcc' but that won't help.  Changing 'cc' to 'ckustr.sed'
  6388. #will cause a string extraction to be done, saving D space by moving strings
  6389. #to a file.
  6390. bsd29:
  6391.     @echo Making C-Kermit $(CKVER) for 2.8 or 2.9BSD.
  6392.     @echo Read the makefile if you have trouble with this...
  6393.     $(MAKE) ovwermit \
  6394.     "CFLAGS= -DBSD29 -DNODEBUG -DNOTLOG -DNOCSETS -DNOHELP \
  6395.     -DNOSCRIPT -DNOSPL -DNOXMIT -DNODIAL $(KFLAGS)" \
  6396.     "LNKFLAGS= -i -lndir" "CC= cc " "CC2= cc"
  6397.  
  6398. bsd210:
  6399.     @echo Please use ckubs2.mak to build C-Kermit $(CKVER) for 2.10BSD.
  6400.  
  6401. bsd211:
  6402.     @echo Please use ckubs2.mak to build C-Kermit $(CKVER) for 2.11BSD.
  6403.  
  6404. #Charles River Data Systems Universe with UNOS Version 9.2
  6405. crds:
  6406.     @echo 'Making C-Kermit $(CKVER) for Charles River Data Systems...'
  6407.     make xermit \
  6408.     "CFLAGS = -DATTSV -DNOANSI -DDIRENT -DLONGFN -DTCPSOCKET \
  6409.     -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETREU \
  6410.     -Dsuspend=ksuspend $(KFLAGS) -O" "LNKFLAGS ="
  6411.  
  6412. #Microport SV/AT for IBM PC/AT 286 and clones, System V R2.
  6413. #The -O flag may fail on some modules (like ckuus2.c), in which case you
  6414. #should compile them by hand, omitting the -O.  If you get "hash table
  6415. #overflow", try adding -DNODEBUG.
  6416. #Also, reportedly this compiles better with gcc than with cc.
  6417. mpsysv:
  6418.     @echo 'Making C-Kermit $(CKVER) for Microport SV/AT 286...'
  6419.     $(MAKE) wermit \
  6420.     "CFLAGS= -DATTSV -DNOLEARN $(KFLAGS) -O -Ml" "LNKFLAGS = -Ml"
  6421.  
  6422. #Microsoft "Xenix/286" e.g. for IBM PC/AT
  6423. xenix:
  6424.     @echo 'Making C-Kermit $(CKVER) for Xenix/286'
  6425.     $(MAKE) wermit \
  6426.     "CFLAGS= -DXENIX -DNOFILEH -DNOLEARN $(KFLAGS) -Dunix -F 3000 -i" \
  6427.     "LNKFLAGS = -F 3000 -i"
  6428.  
  6429. #PC/IX, Interactive Corp System III for IBM PC/XT
  6430. pcix:
  6431.     @echo 'Making C-Kermit $(CKVER) for PC/IX...'
  6432.     $(MAKE) wermit \
  6433.     "CFLAGS= -DPCIX -DISIII -DNOLEARN $(KFLAGS) \
  6434.     -Dsdata=sdatax -O -i" "LNKFLAGS = -i"
  6435.  
  6436. #Integrated Solutions Inc V8S VME 68020
  6437. isi:
  6438.     @echo Making C-Kermit $(CKVER) for 4.2BSD on ISI...
  6439.     $(MAKE) wermit "CC = cc" \
  6440.     "CFLAGS= -DBSD4 -DTCPSOCKET -DINADDRX -DDCLPOPEN -DDEBUG -DNOSETREU \
  6441.     -DCK_CURSES -DNOLEARN $(KFLAGS)" "LIBS = -lcurses -ltermcap"
  6442.  
  6443. #Interactive Corp version of AT&T System III
  6444. #is3: (very old, probably not sufficient for 5A or later)
  6445. #    @echo 'Making C-Kermit $(CKVER) for Interactive System III...'
  6446. #    make wermit "CFLAGS = -DISIII -Ddata=datax -O -i" "LNKFLAGS = -i"
  6447. #The following should work, use it if you don't have gcc.
  6448. #Use is3gcc if you have gcc.
  6449. is3:
  6450.     @echo 'Making C-Kermit $(CKVER) for Interactive System III...'
  6451.     $(MAKE) wermit \
  6452.     "CFLAGS= -DISIII $(KFLAGS) -Ddata=datax -DNAP -DHDBUUCP
  6453.     -DLOCK_DIR=\"/usr/spool/uucp\" -DSIGTYP=void -O -i" "LNKFLAGS = -i"
  6454.  
  6455. #Interactive UNIX System V R3, no network support.  Uses <dirent.h> and Honey
  6456. #DanBer UUCP.  If this entry does not compile correctly, try any or all of the
  6457. #following.  These suggestions also apply more or less to the other is5r3xxx
  6458. #entries that follow this one.
  6459. # . Remove the UID_T and GID_T definitions, or change them as required.
  6460. # . Change -DDIRENT to -DSDIRENT.
  6461. # . Add -DSIGTYP=void.
  6462. # . Remove -g from LNKFLAGS.
  6463. # . Add -DNOANSI to remove compiler complaints about ANSI C constructions
  6464. # . Add other -DNOxxx's to save space (e.g. -DNOCSETS)
  6465. # See the next few makefile entries for related examples.
  6466. # Also see sys5r32is for making a portable i386 SVR3 binary.
  6467. is5r3:
  6468.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix or later...'
  6469.     @echo 'If this does not work please read the makefile entry.'
  6470.     $(MAKE) wermit \
  6471.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -g -DNOCSETS -DNOREALPATH \
  6472.     -DUID_T=ushort -DGID_T=ushort -DI386IX $(KFLAGS)" \
  6473.     "LNKFLAGS = -g"
  6474.  
  6475. #Interactive Corp System System V R3 with gcc
  6476. is3gcc:
  6477.     @echo 'Making C-Kermit $(CKVER) for Interactive System V R3 / gcc...'
  6478.     $(MAKE) wermit CC=gcc CC2=gcc \
  6479.     'CFLAGS = -D_SYSV3 -DISIII -Ddata=datax -DNAP -DHDBUUCP -DNOREALPATH \
  6480.     -DLOCK_DIR=\"/usr/spool/uucp\" -DSIGTYP=void -O' "LNKFLAGS ="
  6481.  
  6482. #Interactive UNIX System V R3, POSIX variant.  Untested.
  6483. #Uses dirent.h and Honey DanBer uucp.  Read comments in is5r3 entry.
  6484. is5r3p:
  6485.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix or later...'
  6486.     $(MAKE) wermit \
  6487.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -g -DNOCSETS -DNOREALPATH \
  6488.     -DI386IX -DPOSIX $(KFLAGS)" "LNKFLAGS=" "LIBS=-lcposix"
  6489.  
  6490. #Interactive UNIX SVR3 2.2.1, job control, curses, no net, gcc.
  6491. is5r3gcc:
  6492.     $(MAKE) wermit CC=gcc CC2=gcc \
  6493.     "CFLAGS=-g -posix -DSVR3 -DDIRENT -DNOREALPATH \
  6494.     -DHDBUUCP -O -DNOCSETS -DI386IX -DSVR3JC -DCK_CURSES \
  6495.     $(KFLAGS)" LNKFLAGS="-posix" LIBS="-lcurses -lc_s"
  6496.  
  6497. #Interactive UNIX System V R3 with TCP/IP network support.
  6498. #Needs -linet for net functions.  signal() is void rather than int.
  6499. #Uses dirent.h and Honey DanBer uucp. Read comments in is5r3 entry.
  6500. #Also see is5r3net2 if you have trouble with this entry.
  6501. is5r3net:
  6502.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix...'
  6503.     @echo 'If this does not work please read the makefile entry.'
  6504.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  6505.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET -DNOREALPATH \
  6506.     -DI386IX $(KFLAGS) -O" "LIBS = -linet"
  6507.  
  6508. is5r3netgcc:
  6509.     $(MAKE) is5r3net CC=gcc CC2=gcc
  6510.  
  6511. #Interactive UNIX System V R3, no job control, signal() void rather than int.
  6512. #Uses dirent.h and Honey DanBer uucp.  Needs -linet for net functions.
  6513. #Read comments in is5r3 entry.  Use this entry if is5r3net fails.
  6514. #Saves some space by stripping (-s) and using shared library (-lc_s).
  6515. is5r3net2:
  6516.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix...'
  6517.     $(MAKE) wermit \
  6518.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET -DNOJC -DNOREALPATH \
  6519.     -DSIGTYP=void -DNOANSI -DI386IX $(KFLAGS) -O" \
  6520.     "LNKFLAGS= -s" "LIBS = -linet -lc_s"
  6521.  
  6522. #Interactive UNIX System V R3 (version 2.2 or later) with job control & curses.
  6523. #Uses dirent.h and Honey DanBer UUCP.
  6524. is5r3jc:
  6525.     @echo 'Making C-Kermit $(CKVER) for Interactive Unix 2.2 or later...'
  6526.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  6527.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  6528.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES \
  6529.     -DPOSIX_JC -DCK_REDIR -DCK_POLL -DDCLGETCWD \
  6530.     $(KFLAGS)" "LIBS=-lcurses -lc_s -linet"
  6531.  
  6532. is5r3jcgcc:
  6533.     $(MAKE) is5r3jc CC="gcc -DCK_ANSILIBS -DDCGPWNAM -O4" CC2=gcc \
  6534.     KFLAGS="$(KFLAGS)" LNKFLAGS="$(LNKFLAGS)"
  6535.  
  6536. #Sunsoft/Interactive UNIX System V R3 (version 2.2 or later)
  6537. #with job control, curses, and TCP/IP networking.
  6538. #Uses dirent.h and Honey DanBer UUCP.
  6539. is5r3netjc:
  6540.     @echo 'Making C-Kermit $(CKVER) for Interactive Unix 2.2 or later...'
  6541.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  6542.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  6543.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES \
  6544.     -DPOSIX_JC -DCK_REDIR -DTCPSOCKET -DSELECT \
  6545.     $(KFLAGS)" "LIBS=-linet -lcurses -lc_s"
  6546.  
  6547. is5r3netjcgcc:
  6548.     $(MAKE) is5r3netjc CC="gcc -DCK_ANSILIBS -DDCGPWNAM -O4" CC2=gcc \
  6549.     KFLAGS="$(KFLAGS)" LNKFLAGS="$(LNKFLAGS)"
  6550.  
  6551. #Masscomp System III
  6552. rtu:
  6553.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU System III...'
  6554.     $(MAKE) wermit \
  6555.     "CFLAGS= -UFIONREAD -DATTSV $(KFLAGS) -O" "LNKFLAGS =" "LIBS= -ljobs"
  6556.  
  6557. #Masscomp/Concurrent RTU 4.0 or later, Berkeley environment.
  6558. #Includes <ndir.h> = /usr/include/ndir.h
  6559. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  6560. rtubsd:
  6561.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.1A...'
  6562.     ucb make wermit \
  6563.     "CFLAGS= -DBSD4 -DRTU -DNDIR -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  6564.     "LIBS = -lndir"
  6565.  
  6566. #Masscomp/Concurrent RTU 4.0 or later, same as above,
  6567. #Includes "usr/lib/ndir.h"
  6568. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  6569. rtubsd2:
  6570.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.1A...'
  6571.     ucb make wermit \
  6572.     "CFLAGS= -DBSD4 -DRTU -DXNDIR -DHDBUUCP $(KFLAGS)" \
  6573.     "LIBS = -lndir"
  6574.  
  6575. #Masscomp/Concurrent RTU 4.0 or later, same as above,
  6576. #Includes <sys/ndir.h>
  6577. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  6578. rtubsd3:
  6579.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.x BSD...'
  6580.     ucb make wermit "CFLAGS= -DBSD4 -DRTU -DHDBUUCP $(KFLAGS)" \
  6581.     "LIBS = -lndir"
  6582.  
  6583. #Masscomp/Concurrent RTU 4.0 or later, System V R2, using <dirent.h>.
  6584. #In case of problems, add back the -DRTU switch.
  6585. #In case -DTCPSOCKET gives trouble, remove it.
  6586. rtus5:
  6587.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.x...'
  6588.     $(MAKE) wermit \
  6589.     "CFLAGS= -DATTSV -DHDBUUCP -DDIRENT -DTCPSOCKET $(KFLAGS)"
  6590.  
  6591. #Masscomp/Concurrent RTU 4.x, System V R3, using <dirent.h>.
  6592. #Use this one if rtus5 gives warnings about pointer type mismatches.
  6593. #In case of problems, add back the -DRTU switch.
  6594. rtus5r3:
  6595.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU Sys V R3...'
  6596.     $(MAKE) wermit "CFLAGS= -DSVR3 -DHDBUUCP -DDIRENT $(KFLAGS)"
  6597.  
  6598. #DEC Pro-3xx with Pro/Venix V1.0 or V1.1
  6599. # Requires code-mapping on non-I&D-space 11/23 processor, plus some
  6600. # fiddling to get interrupt targets into resident code section.
  6601. # This almost certainly doesn't work any more.
  6602. provx1:
  6603.     @echo 'Making C-Kermit $(CKVER) for DEC Pro-3xx, Pro/Venix 1.x...'
  6604.     $(MAKE) wart "CFLAGS= -DPROVX1 $(KFLAGS)" "LNKFLAGS= "
  6605.     $(MAKE) wermit "CFLAGS = -DPROVX1 -DNOFILEH -md780" \
  6606.         "LNKFLAGS= -u _sleep -lc -md780"
  6607.  
  6608. #Nixdorf Targon/31.
  6609. #AT&T UNIX System V R3, signal() is void rather than int.
  6610. #Uses dirent.h without Honey DanBer uucp.
  6611. t31tos40x:
  6612.     @echo 'Making C-Kermit $(CKVER) for Targon/31 with TOS 4.0.xx...'
  6613.         $(MAKE) wermit \
  6614.         "CFLAGS= -DSVR3 -DDIRENT $(KFLAGS) -O" \
  6615.         "LNKFLAGS="
  6616.  
  6617. #NCR Tower 1632, OS 1.02
  6618. tower1:
  6619.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 1632, OS 1.02...'
  6620.     $(MAKE) wermit "CFLAGS= -DTOWER1 $(KFLAGS)"
  6621.  
  6622. #NCR Tower 32, OS Release 1.xx.xx
  6623. tower32-1:
  6624.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 Rel 1 System V R2...'
  6625.     @echo 'Add KFLAGS=-DISDIRBUG if you get errors about S_ISREG/S_ISDIR.'
  6626.     $(MAKE) wermit \
  6627.     "CFLAGS = -DATTSV $(KFLAGS) -O" "LNKFLAGS = -n"
  6628.  
  6629. #NCR Tower 32, OS Release 2.xx.xx
  6630. tower32-2:
  6631.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 Rel 2 System V R2...'
  6632.     $(MAKE) wermit \
  6633.     "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -O2" \
  6634.     "LNKFLAGS = -n"
  6635.  
  6636. #NCR Tower 32, OS Releases based on System V R3
  6637. #Don't add -DNAP (doesn't work right) or -DRDCHK (not available in libc).
  6638. tower32:
  6639.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 System V R3...'
  6640.     $(MAKE) wermit \
  6641.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNOSYSIOCTLH $(KFLAGS) \
  6642.     -DUID_T=ushort -DGID_T=ushort -O1"
  6643.  
  6644. #NCR Tower 32, OS Releases based on System V R3
  6645. tower32g:
  6646.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 System V R3, gcc...'
  6647.     $(MAKE) wermit "CC = gcc" \
  6648.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNOSYSIOCTLH $(KFLAGS) \
  6649.     DUID_T=ushort -DGID_T=ushort -O -fstrength-reduce -fomit-frame-pointer"
  6650.  
  6651. #Fortune 32:16, For:Pro 1.8 (mostly like 4.1bsd)
  6652. ft18:
  6653.     @echo 'Making C-Kermit $(CKVER) for Fortune 32:16 For:Pro 1.8...'
  6654.     $(MAKE) wermit \
  6655.     "CFLAGS= -DNODEBUG -DBSD4 -DFT18 -DNOFILEH $(KFLAGS) \
  6656.     -DPID_T=short"
  6657.  
  6658. #Fortune 32:16, For:Pro 2.1 (mostly like 4.1bsd).
  6659. #The modules that break the optimizer are compiled separately.
  6660. ft21:
  6661.     @echo 'Making C-Kermit $(CKVER) for Fortune 32:16 For:Pro 2.1...'
  6662.     $(MAKE) ckuusx.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  6663.     -SYM 800  -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  6664.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  6665.     $(MAKE) ckuxla.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  6666.     -SYM 800  -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  6667.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  6668.     $(MAKE) ckudia.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  6669.     -SYM 800  -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  6670.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  6671.     $(MAKE) wermit \
  6672.     "CFLAGS= -O -DNODEBUG -DBSD4 -DFT21 -DNOFILEH -SYM 800 \
  6673.     -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  6674.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  6675.  
  6676. #Valid Scaldstar
  6677. #Berkeleyish, but need to change some variable names.
  6678. valid:
  6679.     @echo 'Making C-Kermit $(CKVER) for Valid Scaldstar...'
  6680.     $(MAKE) wermit \
  6681.     "CFLAGS= -DBSD4 -DNODEBUG -DNOTLOG -Dcc=ccx -DFREAD=1 $(KFLAGS)"
  6682.  
  6683. #IBM IX/370 on IBM 370 Series mainframes
  6684. #Mostly like sys3, but should buffer packets.
  6685. ix370:
  6686.     @echo 'Making C-Kermit $(CKVER) for IBM IX/370...'
  6687.     $(MAKE) wermit "CFLAGS = -DIX370 -DATTSV $(KFLAGS) -i -O" \
  6688.     "LNKFLAGS = -i"
  6689.  
  6690. #Amdahl UTS 2.4 on IBM 370 series compatible mainframes.
  6691. #Mostly like V7, but can't do initrawq() buffer peeking.
  6692. uts24:
  6693.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTS 2.4...'
  6694.     $(MAKE) wermit "CFLAGS=-DV7 -DPROCNAME=\\\"$(PROC)\\\" \
  6695.     -DUTS24 -DBOOTNAME=\\\"$(BOOTFILE)\\\" -DNPROCNAME=\\\"$(NPROC)\\\" \
  6696.     -DNPTYPE=$(NPTYPE) $(DIRECT) $(KFLAGS)"
  6697.  
  6698. #Amdahl UTSV UNIX System V = System V R2 or earlier.
  6699. utsv:
  6700.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTSV...'
  6701.     $(MAKE) wermit \
  6702.     "CFLAGS = -DUTSV $(KFLAGS) -i -O" "LNKFLAGS = -i"
  6703.  
  6704. #Amdahl UTSV UNIX System V = System V R2 or earlier, with TCP sockets library.
  6705. utsvtcp:
  6706.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTSV w/tcp...'
  6707.     $(MAKE) wermit "CFLAGS = \
  6708.     -DTCPSOCKET -DUTSV $(KFLAGS) -i -O" "LNKFLAGS = -i" \
  6709.     "LIBS = -lsocket"
  6710.  
  6711. #BBN C/70 with IOS 2.0
  6712. #Mostly Berkeley-like, but with some ATTisms
  6713. c70:
  6714.     @echo 'Making C-Kermit $(CKVER) for BBN C/70 IOS 2.0...'
  6715.     $(MAKE) wermit "CFLAGS= -DBSD4 -DC70 $(KFLAGS)"
  6716.  
  6717. #Zilog ZEUS 3.21
  6718. zilog:
  6719.     @echo 'Making C-Kermit $(CKVER) for Zilog Zeus 3.21...'
  6720.     $(MAKE) wermit \
  6721.     "CFLAGS = -DATTSV -DZILOG -DNODEBUG $(KFLAGS) -i -O" \
  6722.     "LNKFLAGS = -i -lpw"
  6723.  
  6724. #Whitechapel MG-1 Genix 1.3
  6725. white:
  6726.     @echo 'Making C-Kermit $(CKVER) for Whitechapel MG-1 Genix 1.3...'
  6727.     @touch ckcpro.c
  6728.     $(MAKE) wermit "CFLAGS= -DBSD4 -Dzkself()=0  $(KFLAGS)"
  6729.  
  6730. #Pixel 1000
  6731. pixel:
  6732.     @echo 'Making C-Kermit $(CKVER) for Pixel 1000...'
  6733.     $(MAKE) wermit "CFLAGS= -DBSD4 -Dzkself()=0 $(KFLAGS)"
  6734.  
  6735. ptx:
  6736.     $(MAKE) "MAKE=$(MAKE)" dynixptx12
  6737.  
  6738. #CDC VX/VE 5.2.1
  6739. vxve:
  6740.     @echo 'Making C-Kermit $(CKVER) for CDC VX/VE 5.2.1...'
  6741.     $(MAKE) wermit \
  6742.     "CFLAGS = -DATTSV -DVXVE -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  6743.     "LNKFLAGS = -i"
  6744.  
  6745. #DIAB DS90 or LUXOR ABC-9000 with pre-5.2 DNIX.  Sys V with nap() and rdchk().
  6746. # nd = no opendir(), readdir(), closedir(), etc.
  6747. # Some of the modules fail to compile with -O.
  6748. dnixnd:
  6749.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with very old DNIX 5.2.'
  6750.     $(MAKE) wermit \
  6751.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDCLPOPEN \
  6752.     -U__STDC__ $(KFLAGS)"
  6753.  
  6754. #DIAB DS90 with DNIX 5.2.  Sys V with nap() and rdchk().
  6755. # This one has opendir(), readdir(), closedir(), etc.
  6756. # Some of the modules fail to compile with -O.
  6757. dnix:
  6758.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with old DNIX 5.2...'
  6759.     $(MAKE) wermit \
  6760.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDIRENT  \
  6761.     -U__STDC__ $(KFLAGS)"
  6762.  
  6763. #DIAB DS90 with DNIX 5.2.  Sys V with nap() and rdchk().
  6764. # As above, but with curses and TCP/IP.
  6765. # You might get complaints about redefinition of O_RDONLY, etc, because
  6766. # of bugs in the DNIX header files, which can be fixed by adding #ifndef...
  6767. # around the offending definitions in the header files.
  6768. dnixnetc:
  6769.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with old DNIX 5.2...'
  6770.     $(MAKE) wermit \
  6771.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDIRENT  \
  6772.     -DTCPSOCKET -DCK_CURSES -I/usr/include/bsd -U__STDC__ $(KFLAGS)" \
  6773.     "LIBS = -ln -lcurses"
  6774.  
  6775. #DIAB DS90 with DNIX 5.3 or later, with HDB UUCP, nap() and rdchk().
  6776. dnix5r3:
  6777.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  6778.     @echo 'with Honey DanBer UUCP'
  6779.     $(MAKE) wermit \
  6780.     "CFLAGS = -DSVR3 -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  6781.     -DCK_CURSES -DRENAME $(KFLAGS) -O" "LIBS= -lcurses"
  6782.  
  6783. #DIAB DS90 with DNIX 5.3 or later, with HDB UUCP, nap() and rdchk() + TCP/IP
  6784. dnix5r3net:
  6785.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  6786.     @echo 'with Honey DanBer UUCP and TCP/IP'
  6787.     $(MAKE) wermit \
  6788.     "CFLAGS = -DSVR3 -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  6789.     -DTCPSOCKET -DCK_CURSES -DRENAME $(KFLAGS) -O \
  6790.     -I/usr/include/bsd" "LIBS = -ln -lcurses"
  6791.  
  6792. #DIAB DS90 with DNIX 5.3 2.2 or later, with HDB UUCP, nap() and rdchk(),
  6793. #ANSI C compilation and libraries.
  6794. #Note that for DNIX 5.3 2.2 you have to correct a bug in /usr/include/stdlib.h:
  6795. #change "extern    void free(char *str);"
  6796. #to     "extern void free(void *str);"
  6797. #NOTE: This bug is reportedly fixed in DNIX 5.3 2.2.1.
  6798. #Should you get fatal errors caused by harmless pointer-type mismatches,
  6799. #like between signed and unsigned char, just remove -X7.
  6800. dnix5r3ansi:
  6801.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  6802.     @echo 'with ANSI C Honey DanBer UUCP'
  6803.     $(MAKE) wermit \
  6804.     "CFLAGS = -DSVR3 -DDIAB -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  6805.     -DCK_ANSILIBS -DCK_CURSES -DRENAME -O -X7 -X9 $(KFLAGS)" \
  6806.     "LIBS= -lcurses"
  6807.  
  6808. #DIAB DS90 with DNIX 5.3 2.2 or later, with HDB UUCP, nap() and rdchk(),
  6809. # + TCP/IP, ANSI C compilation and libraries.
  6810. #Should you get fatal errors caused by harmless pointer-type mismatches,
  6811. #like between signed and unsigned char, just remove -X7.
  6812. dnix5r3ansinet:
  6813.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  6814.     @echo 'with ANSI C Honey DanBer UUCP'
  6815.     $(MAKE) wermit \
  6816.     "CFLAGS = -DSVR3 -DDIAB -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  6817.     -DTCPSOCKET -DCK_ANSILIBS -DCK_CURSES -DRENAME -O -X7 -X9 $(KFLAGS) \
  6818.     -I/usr/include/bsd" "LIBS= -ln -lcurses"
  6819.  
  6820. # QNX 4.21 and above, 32-bit version, Watcom C32 10.6, fully configured,
  6821. # except no job control because QNX 4.x does not support it.  New NCURSES
  6822. # library used instead of CURSES.
  6823. #
  6824. # -Oatx optimizes to favor speed over size: loop optimization, inline fn's.
  6825. # -Os favors size over speed.  Saves 30-40K out of about 1.75M.
  6826. # -3r = generate 386 code with register-based arg passing.
  6827. # -3s = generate 386 code with stack-based arg passing.
  6828. # -ms = separate code & data 4GB segments (32-bit builds only).
  6829. # -mf = flat memory model code+data in one 4GB segment (ditto).
  6830. # -zc = place literal strings in code segment.
  6831. # -N4M = Big stack (increase the digit upon SIGSEGVs at runtime).
  6832. # chars are unsigned by default (-j makes them signed by default).
  6833. # -NOUUCP is included because QNX doesn't use it.
  6834. # Add these to the end if you like but they dump core on my QNX 4.25 system:
  6835. #
  6836. #    @wermit -h >use.qnx
  6837. #    @usemsg wermit use.qnx
  6838. #    @rm use.qnx
  6839. #
  6840. # If you get warnings about HEADER or C_IN add -DNO_DNS_SRV.
  6841. qnx32:
  6842.     @echo 'Making C-Kermit $(CKVER) for QNX 4.2x, 32-bit...'
  6843.     $(MAKE) xermit \
  6844.     "LNKFLAGS = -N4M -3r" \
  6845.     "CFLAGS = -ms -3r -DQNX -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL \
  6846.     -DCK_WREFRESH -DCK_REDIR -DSELECT -DSELECT_H -DCK_RTSCTS -DNOJC \
  6847.     -DNOINITGROUPS -DNOUUCP -DCK_ANSIC -DPID_T=pid_t -Oatx -zc $(KFLAGS)" \
  6848.     "LIBS= -lsocket -lncurses -ltermcap"
  6849.  
  6850. # As above but no networking since some QNX systems do not have TCP/IP
  6851. # installed, or the TCP/IP developers kit, which includes all the needed
  6852. # header files.  This entry has not been tested on a QNX system that, in
  6853. # fact, does not have TCP/IP installed; some adjustments might be necessary,
  6854. # in particular regarding the use of select(): is -lsocket needed, can we
  6855. # get the needed definitions from non-TCP/IP header files (FD_SET, etc)?
  6856. qnx32nonet:
  6857.     @echo 'Making C-Kermit $(CKVER) for QNX 4.2x, 32-bit, no net...'
  6858.     $(MAKE) xermit \
  6859.     "LNKFLAGS = -N4M -3r" \
  6860.     "CFLAGS = -3r -ms -DQNX -DNONET -DNOIKSD -DCK_CURSES \
  6861.     -DCK_WREFRESH -DCK_REDIR -DSELECT -DSELECT_H -DCK_RTSCTS -DNOJC \
  6862.     -DNOUUCP -DCK_ANSIC -DPID_T=pid_t -Oatx -zc $(KFLAGS)" \
  6863.     "LIBS= -lsocket -lncurses -ltermcap"
  6864.     @wermit -h >use.qnx
  6865.     @usemsg wermit use.qnx
  6866.     @rm use.qnx
  6867.  
  6868. # Synonym for qnx32.
  6869. qnx:
  6870.     $(MAKE) qnx32 "KFLAGS=$(KFLAGS)"
  6871.  
  6872. # QNX 4.21 and above, 16-bit version, Watcom C 8.5 - and higher on i286 PCs
  6873. # and above.
  6874. #
  6875. #    IMPORTANT: Do not use Watcom C 10.6!!!
  6876. #    If you have it installed, add "-v9.52 to CFLAGS"
  6877. #
  6878. # NOTE: QNX 4.23 onward does not work on 286's anyway.
  6879. # Stacksize 26000, objects larger than 100 bytes in their own segments,
  6880. # string constants to the codesegment, etc.  Fully configured except job ctrl.
  6881. # This entry works for building a 16-bit executable on a 32-bit system, but
  6882. # has not been tested on a 16-bit system.  Uses large memory model, links
  6883. # explicitly with large-model sockets library.  Correct-model curses library
  6884. # is chosen automatically.  See comment in qnx32 entry about -DNOUUCP.
  6885. #
  6886. # WARNING:
  6887. #
  6888. # Watcom C prior to 10.6 never had released curses library. To link against it,
  6889. # you must obtain ported free curses source from ftp://ftp.qnx.com/usr/free,
  6890. # then compile and build library (cursesl.lib) and place it in /usr/lib.  You
  6891. # must also copy curses.h to /usr/include.  Be aware that if you have Watcom
  6892. # 10.6 installed, you should already have curses.h, which is the new ncurses
  6893. # library. You must back it up and use free curses.h instead, since ncurses is
  6894. # only for 32-bit applications and some definitions in these files are
  6895. # different (e.g., clearok()).  For safety, curses is not defined in build.
  6896. #
  6897. # In 7.0 -DNOHELP added to keep ckuus2.c from blowing up; NOCSETS and NOSPL
  6898. # added because ckuus4 was blowing up, and NOFLOAT just because it seemed
  6899. # dangerous (remove -DNOFLOAT if you want to try it), The result works OK
  6900. # except for some mysterious beeps upon termination of the top-level keyword.
  6901. #
  6902. # Things to try next time we get in trouble:
  6903. #  . Change -zt100 to something smaller like -zt25
  6904. #  . Change -Oatx to -Omilerat (enable stack checking)
  6905. #  . Maybe get rid of -v9.52 -- it's only there because we were warned.
  6906. #
  6907. qnx16:
  6908.     @echo 'Making C-Kermit $(CKVER) for QNX 4.21, 16-bit...'
  6909.     $(MAKE) xermit \
  6910.     "LNKFLAGS = -2 -ml -N 26000" \
  6911.     "CFLAGS = -2 -Oatx -zc -zt100 -ml -DQNX -DQNX16 -DNOUUCP -DNOHELP \
  6912.     -DCK_REDIR -DSELECT -DSELECT_H -DNOJC -DNOGETUSERSHELL -DNOCSETS \
  6913.     -v9.52 -DTCPSOCKET -DCK_RTSCTS -DCK_ANSIC -DNOINITGROUPS -DNOKVERBS \
  6914.     -DNORANDOM -DNOCSETS -DNOSPL -DNOFLOAT -DPID_T=pid_t $(KFLAGS)"
  6915.  
  6916. # QNX 4.1, 16-bit version, with Watcom C 8.5 on i286 PCs and above.
  6917. # stacksize 26000, objects larger than 100 bytes in their own segments,
  6918. # string constants to the codesegment, etc.  Add -DNOUUCP if desired.
  6919. qnx16_41:
  6920.     @echo 'Making C-Kermit $(CKVER) for QNX 4.1, 16-bit...'
  6921.     $(MAKE) xermit \
  6922.     "LNKFLAGS = -mh -N 26000" "CFLAGS = -Wc,-fpc -Wc,-j -DNOGETUSERSHELL \
  6923.     -Wc,-Ols -Wc,-zdf -Wc,-zc -Wc,-zt100 -mh -DPOSIX -DQNX -DDIRENT \
  6924.     -DNOCYRIL -DNODEBUG -DNOMSEND -DMINIDIAL -DNOXMIT -DNOSCRIPT -DNOSPL \
  6925.     -DNOSETKEY -DNOINITGROUPS -DQNX16 -DPID_T=pid_t $(KFLAGS)"
  6926.  
  6927. # QNX Neutrino 2 (pwaechtler@qnx.de) crosscompiled on QNX 4.25.
  6928. # Gets lots of compiler warnings.
  6929. qnx_nto2+:
  6930.     @echo 'Making C-Kermit $(CKVER) for QNX Neutrino 2+ '
  6931.     cc -o wart ckwart.c
  6932.     $(MAKE) xermit \
  6933.     "CC = qcc -Vgcc_ntox86" \
  6934.     "CC2 = qcc -Vgcc_ntox86" \
  6935.     "LNKFLAGS = " \
  6936.     "CFLAGS = -DNEUTRINO -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL \
  6937.     -DNOUUCP -DCK_WREFRESH -DCK_REDIR -DSELECT -DSELECT_H -DCK_RTSCTS \
  6938.     -DNOJC -DNOINITGROUPS -DCK_ANSIC -DPID_T=pid_t -DUNIX -DDIRENT \
  6939.     -DMYREAD -DBSD44ORPOSIX -DSVORPOSIX -DNDGPWNAM $(KFLAGS)" \
  6940.     "LIBS= -lsocket -lncurses "
  6941.  
  6942. # QNX 6 (= Neutrino 2.xx) native build (kirussel@cisco.com).
  6943. qnx6:
  6944.     @echo 'Making C-Kermit $(CKVER) for QNX6'
  6945.     $(MAKE) xermit KTARGET=QNX6 \
  6946.     "CFLAGS = -DPOSIX -DCK_POSIX_SIG -DNETPTY -DNOARROWKEYS \
  6947.     -DUSE_TIOCSDTR -DBIGBUFOK -DCKMAXOPEN=100 -DRLOGCODE -DNOREALPATH \
  6948.     -DMAXNAMLEN=48 -DQNX6 -DUSE_TERMIO -DINIT_SPTY \
  6949.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DDYNAMIC \
  6950.     -DTCPSOCKET -DNOGETUSERSHELL -DCK_REDIR -DSELECT -DSELECT_H \
  6951.     -DCK_RTSCTS -DNOJC -DSVORPOSIX -DBSD44ORPOSIX -DNOUUCP -DCK_ANSIC \
  6952.     $(KFLAGS) -O" \
  6953.     "LIBS= -lsocket  -lncurses"
  6954.  
  6955. #Ridge 32 with ROS 3.2
  6956. ridge32:
  6957.     @echo 'Making C-Kermit $(CKVER) Ridge 32 ROS 3.2'
  6958.     $(MAKE) wermit \
  6959.     "CFLAGS = -DATTSV -DNOFILEH -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  6960.     "LNKFLAGS = -i"
  6961.  
  6962. #Altos 486, 586, or 986 with Xenix 3.0
  6963. altos:
  6964.     @echo 'Making C-Kermit $(CKVER) for Altos x86 with Xenix 3.0...'
  6965.     $(MAKE) wermit \
  6966.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  6967.     "LNKFLAGS= -i"
  6968.  
  6969. #Altos 986 with Xenix 3.0, as above, but command-line only, minimal size.
  6970. #For systems with small memories.  It might also be necessary to chop certain
  6971. #modules up into smaller pieces, e.g. ckuus3-6, because of symbol table
  6972. #overflow.   If this makefile is too big or complex for the Altos, compile
  6973. #and link by hand or write shell scripts.
  6974. altosc:
  6975.     @echo 'Making C-Kermit $(CKVER) for Altos x86 Xenix 3.0, remote...'
  6976.     $(MAKE) wermit \
  6977.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG -DNOSCRIPT -DNODIAL \
  6978.     -DNOCSETS -DNOANSI -DNOMSEND -DNOSPL -DNOICP $(KFLAGS) -Mm -O" \
  6979.     "LNKFLAGS= -Mm -s"
  6980.  
  6981. #Altos 986 with Xenix 3.0, as above, but interactive only, minimal size.
  6982. altosi:
  6983.     @echo 'Making C-Kermit $(CKVER) for Altos x86 Xenix 3.0, local...'
  6984.     $(MAKE) wermit \
  6985.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG -DNOSCRIPT -DNODIAL \
  6986.     -DNOCSETS -DNOANSI -DNOMSEND -DNOSPL -DNOCMDL -DNOFRILLS -DNOHELP \
  6987.     -DNOSETKEY $(KFLAGS) -Mm -O" "LNKFLAGS= -Mm -s"
  6988.  
  6989. # Altos ACS68000 68000 System, UNIX System 3 Release 2, 512k memory.
  6990. # also needs getcwd() external function; see ckuins.txt file.
  6991. # also, sys/types.h needed modifying:
  6992. #   #ifdef __SYS_TYPES_H__, #define ..., #endif
  6993. # also, ckuus2.c MUST be compiled NOOPT else symbol table is destroyed!
  6994. # Submission by Robert Weiner/Programming Plus, rweiner@progplus.com.
  6995. #
  6996. altos3:
  6997.     @echo 'Making C-Kermit $(CKVER) for Altos ACS68k UNIX System III'
  6998.     $(MAKE) ckuus2.$(EXT) "CFLAGS = -DATTSV -DNOCSETS -DNOSETKEY -DNOJC \
  6999.     -DNODIAL -DDCLPOPEN -DNOSCRIPT -DNOHELP $(KFLAGS) -i"
  7000.     $(MAKE) wermit \
  7001.     "CFLAGS = -DATTSV -DNOCSETS -DNOSETKEY -DNOJC \
  7002.     -DNODIAL -DDCLPOPEN -DNOSCRIPT -DNOHELP $(KFLAGS) -i -O" \
  7003.     "LNKFLAGS = -i" "LIBS = getcwd.$(EXT)"
  7004.  
  7005. #MINIX - Original PC version with 64K+64K limit.
  7006. # Reportedly, the linker (asld) can run out of space while linking.  The only
  7007. # way around this is to make a copy of libc.a from which all modules that are
  7008. # not used by Kermit are removed.  If you have trouble compiling or running
  7009. # wart, "touch wart".  If that doesn't help, "touch ckcpro.c".
  7010. # The version configured below has no interactive command parser.
  7011. # If you can build this version successfully, maybe there will be room for
  7012. # a minimal interactive command parser too; try replacing -DNOICP with
  7013. # -DNOSPL, plus every other -DNOxxx flag there is, except for -DNOICP
  7014. # (see ckccfg.txt).
  7015. minix:
  7016.     @echo 'Making C-Kermit $(CKVER) for MINIX, no command parser...
  7017.     @echo 'TOTALLY UNTESTED!'
  7018.     $(MAKE) wermit EXT=s \
  7019.     "CFLAGS= -DV7 -DMINIX -i -D_MINIX -D_POSIX_SOURCE \
  7020.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V \
  7021.     -DNOXMIT -DNOMSEND -DNOFRILLS -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  7022.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOSETKEY $(KFLAGS)" \
  7023.     "LNKFLAGS= -i -T"
  7024.  
  7025. #MINIX - PC version with 64K+64K limit, new (as yet unreleased) ACK 2.0 beta C
  7026. #compiler, which outputs .o object files, rather than .s.  But 'make' still
  7027. #expects .s files, so must be patched to use .o.  Tested on Minix 1.5.10.
  7028. minixnew:
  7029.     @echo 'Making C-Kermit $(CKVER) for MINIX (new ACK 2.0 compiler),'
  7030.     @echo 'no command parser...  TOTALLY UNTESTED!'
  7031.     $(MAKE) wermit \
  7032.     "CFLAGS= -DV7 -DMINIX -i -D_MINIX -D_POSIX_SOURCE \
  7033.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V -DNODIAL \
  7034.     -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOICP $(KFLAGS)" \
  7035.     "LNKFLAGS= -i -T"
  7036.  
  7037. #PFU Compact A Series UNIX System V R3, SX/A TISP V10/L50 (Japan)
  7038. #Maybe the -i link option should be removed?
  7039. sxae50:
  7040.     @echo 'Making C-Kermit $(CKVER) for PFU SX/A V10/L50...'
  7041.     $(MAKE) xermit \
  7042.     "CFLAGS= -DSVR3 -DDIRENT -DsxaE50 -DTCPSOCKET $(KFLAGS) -i -O" \
  7043.     "LNKFLAGS= "
  7044.  
  7045. #Tektronix 6130, 4319, 4301, etc, with UTek OS, /usr/spool/uucp/LCK./...
  7046. #The models that support hardware flow control.
  7047. utek:
  7048.     @echo 'Making C-Kermit $(CKVER) for 4.2BSD/UTek, hardware flow control'
  7049.     $(MAKE) wermit \
  7050.     "CFLAGS= -O -DLCKDIR -DBSD4 -DTCPSOCKET \
  7051.     -DUTEK -DDCLPOPEN -DLOCK_DIR=\\\"/usr/spool/uucp/LCK.\\\" \
  7052.     -DTRMBUFL=2048 -DCK_DTRCTS $(KFLAGS)"
  7053.  
  7054. #Tektronix 4315, 4316, 4317 with UTek OS, /usr/spool/uucp/LCK./...
  7055. #The models that do not fully support hardware flow control.
  7056. uteknohwfc:
  7057.     @echo 'Making C-Kermit $(CKVER) for 4.2BSD/UTek, no h/w flow control'
  7058.     $(MAKE) wermit \
  7059.     "CFLAGS= -O -DLCKDIR -DBSD4 -DTCPSOCKET \
  7060.     -DUTEK -DDCLPOPEN -DLOCK_DIR=\\\"/usr/spool/uucp/LCK.\\\" \
  7061.     -DTRMBUFL=2048 $(KFLAGS)"
  7062.  
  7063. #Tektronix XD88 with  UTekV OS
  7064. utekvr3:
  7065.     @echo 'Making C-Kermit $(CKVER) for Tektronix XD88 UTekV R3...'
  7066.     $(MAKE) wermit \
  7067.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP \
  7068.     -DTCPSOCKET -DSYSUTIMEH -DCK_CURSES $(KFLAGS) -O" \
  7069.     "LIBS= -lcurses" "LNKFLAGS= -s"
  7070.  
  7071. #Perkin-Elmer 3200 Xelos R02 or earlier
  7072. ccop1:
  7073.     @echo 'Making C-Kermit $(CKVER) for Xelos & Public Domain Dirent calls'
  7074.     @echo 'or System V R2 or earlier...'
  7075.     $(MAKE) wermit \
  7076.     "CFLAGS = -DATTSV -Dvoid=int -DDIRENT -DCK_CURSES \
  7077.     $(KFLAGS) -O" "LNKFLAGS =" "LIBS= -lcurses -ltermlib"
  7078.  
  7079. #Encore, UMAX 4.3 (BSD) but without acucntrl program.
  7080. encore:
  7081.     $(MAKE) "MAKE=$(MAKE)" umax43 "KFLAGS=$(KFLAGS)"
  7082.  
  7083. #Encore, as above, but with curses file transfer display included.
  7084. encorec:
  7085.     $(MAKE) "MAKE=$(MAKE)" umax43 "KFLAGS=-DCK_CURSES $(KFLAGS)" \
  7086.     "LIBS= -lcurses -ltermcap"
  7087.  
  7088. #Encore, UMAX 4.3 (BSD) but without acucntrl program.
  7089. umax43:
  7090.     @echo Making C-Kermit $(CKVER) for Encore UMAX 4.3...
  7091.     $(MAKE) "MAKE=$(MAKE)" PARALLEL=4 xermit \
  7092.     "CFLAGS= -DBSD43 -DENCORE -DTCPSOCKET $(KFLAGS) -O"
  7093.  
  7094. #Encore, UMAX 4.2 (BSD)
  7095. umax42:
  7096.     @echo Making C-Kermit $(CKVER) for Encore UMAX 4.2...
  7097.     $(MAKE) "MAKE=$(MAKE)" PARALLEL=4 xermit \
  7098.     "CFLAGS= -DBSD4 -DENCORE -DTCPSOCKET $(KFLAGS) -O"
  7099.  
  7100. #Encore 88K UMAX 5.3 with TCP/IP support
  7101. encore88k:
  7102.     @echo 'Making C-Kermit $(CKVER) for Encore 88K UMAX V, TCP/IP...'
  7103.     $(MAKE) xermit \
  7104.     "CFLAGS = -q ext=pcc -DSVR3 -DTCPSOCKET -DDIRENT \
  7105.     -DNOGETID_PROTOS -DHDBUUCP $(KFLAGS) -O" "LNKFLAGS ="
  7106.  
  7107. #Encore 88K UMAX 5.3 with TCP/IP support
  7108. encore88kgcc:
  7109.     @echo 'Making C-Kermit $(CKVER) for Encore 88K UMAX V, TCP/IP, gcc...'
  7110.     $(MAKE) xermit CC=gcc CC2=gcc \
  7111.     "CFLAGS = -DSVR3 -DTCPSOCKET -DDIRENT \
  7112.     -DNOGETID_PROTOS -DHDBUUCP $(KFLAGS) -O" "LNKFLAGS ="
  7113.  
  7114. #SONY NEWS, NEWS-OS 4.01C
  7115. sonynews:
  7116.     @echo Making C-Kermit $(CKVER) for SONY NEWS-OS 4.01C...
  7117.     $(MAKE) xermit "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET -O"
  7118.  
  7119. #Run Lint on this mess for selected versions.
  7120. #These are pretty much obsolete since ANSI C / gcc.
  7121. lintsun:
  7122.     @echo 'Running Lint on C-Kermit $(CKVER) sources for SunOS version...'
  7123.     lint -x -DSUNOS4 -DDIRENT -DTCPSOCKET -DSAVEDUID \
  7124.     ck[cu]*.c > ckuker.lint.sun
  7125.  
  7126. lintbsd:
  7127.     @echo 'Running Lint on C-Kermit $(CKVER) sources for BSD 4.2 version..'
  7128.     lint -x -DBSD4 -DTCPSOCKET ck[cu]*.c > ckuker.lint.bsd42
  7129.  
  7130. lints5:
  7131.     @echo 'Running Lint on C-Kermit $(CKVER) sources for Sys V version...'
  7132.     lint -x -DATTSV ck[cu]*.c > ckuker.lint.s5
  7133.  
  7134. #Who remembers TECO?
  7135. love:
  7136.     @echo 'Not war?'
  7137.