home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / archives / cku302txt.tar.Z / cku302txt.tar / makefile < prev    next >
Makefile  |  2011-08-21  |  379KB  |  8,627 lines

  1. # makefile / Makefile / ckuker.mak / CKUKER.MAK
  2. #
  3. # Sun Aug 21 10:33:08 2011
  4. BUILDID=20110821
  5. CKVER= "9.0.302"
  6. #
  7. # -- Makefile to build C-Kermit for UNIX and UNIX-like platforms --
  8. #
  9. # Copyright (C) 1985, 2011,
  10. #   Trustees of Columbia University in the City of New York.
  11. #   All rights reserved.  See the C-Kermit COPYING.TXT file or the
  12. #   copyright text in the ckcmai.c module for disclaimer and permissions.
  13. #   In case you can't find the COPYING.TXT file, it contains the 
  14. #   Simplified 3-Clause BSD License, which is an Open Source license.
  15. #
  16. # Author: Frank da Cruz, Columbia University
  17. # 612 West 115th Street, New York NY 10025-7799, USA
  18. # Email: fdc@columbia.edu
  19. # Web:   http://kermit.columbia.edu/
  20. # FTP:   ftp://kermit.columbia.edu/kermit/
  21. #
  22. # Note: Author is no longer at Columbia University or at the 115th Street
  23. # address effective 1 July 2011.  The email address should still work,
  24. # as well as the website and FTP addresses, for the foreseeable future.
  25. # For new developments, also check:
  26. #
  27. #    http://www.columbia.edu/~fdc/kermit/
  28. #
  29. # Contributions from many others.  Special thanks to Jeff Altman for the
  30. # secure-build targets, Peter Eichhorn, assyst GmbH, for the consolidated
  31. # HP-UX targets and the "uninstall" target, to Robert Lipe for the updated
  32. # and consolidated SCO UNIX / ODT / OSR5 targets, to Ric Anderson for the
  33. # IRIX 6.x targets, to Seth Theriault for major improvements to the
  34. # Mac OS X targets, and to Alexey Dokuchaev for FreeBSD 9.0.
  35. #
  36. # C-Kermit is written and produced by hand without any automated procedures
  37. # such as autoconf / automake / configure, although some of the targets below
  38. # (especially the linux target) inspect the environment and make some
  39. # decisions in the most portable way possible. The automated tools are not
  40. # used because (a) C-Kermit predates them, and (b) they are not portable to
  41. # all the platforms where C-Kermit must be (or once was) built, and (c) to
  42. # keep C-Kermit as independent as possible from external tools over which
  43. # we have no control.
  44. #
  45. # Most entries use the "xermit" target, which uses the select()-based CONNECT
  46. # module, ckucns.c.  The "wermit" target uses the original fork()-based CONNECT
  47. # module, ckucon.c, which has some drawbacks but was portable to every Unix
  48. # variant whether it had TCP/IP or not (select() is part of the TCP/IP
  49. # library, which was not standard on older Unixes).  If your target still uses
  50. # the "wermit" target, please try substituting the "xermit" one and if it
  51. # works, let us know (mailto:kermit-support@columbia.edu).  When changing a
  52. # target over from wermit to xermit, also remove -DNOLOEARN.
  53. #
  54. # CAREFUL: Don't put the lowercase word "if", "define", or "end" as the first
  55. # word after the "#" comment introducer in the makefile, even if it is
  56. # separated by whitespace.  Some versions of "make" understand these as
  57. # directives.  Uppercase letters remove the danger, e.g. "# If you have..."
  58. # WARNING: This is a huge makefile.  Although this is less likely since the
  59. # turn of the century, some "make" programs might run out of memory.  If this
  60. # happens to you, edit away the parts that do not apply to your platform and
  61. # try again.
  62. #
  63. # WARNING 2: In many cases this file invokes itself recursively, sometimes
  64. # several levels deep (as in the Linux targets); i.e. some targets are used
  65. # as 'subroutines' of other targets, with parameters passed by setting
  66. # environment variables.  For that reason, don't use 'make -e'.
  67. #
  68. # Certain UNIX variations have their own separate makefiles:
  69. #  . For 2.10 or 2.11 BSD on the DEC PDP-11, use ckubs2.mak.
  70. #  . For Plan 9, use ckpker.mk.
  71. #
  72. # Separate build procedures are provided non-UNIX platforms: VMS, VOS,
  73. # AOS/VS, etc.  See the ckaaaa.txt file or the Kermit website for details.
  74. #
  75. #
  76. # DIRECTIONS FOR UNIX
  77. #
  78. # Rename this file to "makefile" or "Makefile" if necessary.  Pick out the
  79. # entry most appropriate for your UNIX version from the list below and then
  80. # give the appropriate "make" command, for example "make aix", "make macosx",
  81. # "make linux".  If you experience any difficulties with the build procedure,
  82. # then please also read any comments that accompany the make entry itself
  83. # (search for the make entry name on the left margin).
  84. #
  85. # Other targets:
  86. #  'make install' is an installation script (read accompanying comments!).
  87. #  'make uninstall' undoes 'make install' (read accompanying comments!).
  88. #  'make clean' removes intermediate and object files.
  89. #  'make show' tells the default include and lib paths for secure builds.
  90. #
  91. # IMPORTANT:
  92. #   For more detailed installation instructions, read the files ckuins.txt
  93. #   and ckccfg.txt, also available at the Kermit website in HTML form:
  94. #   http://www.columbia.edu/kermit/ckuins.html
  95. #   http://www.columbia.edu/kermit/ckccfg.html
  96. #
  97. #  For descriptions of known problems and limitations,
  98. #   read the files ckcbwr.txt and ckubwr.txt (the "beware files") or:
  99. #   http://www.columbia.edu/kermit/ckcbwr.html
  100. #   http://www.columbia.edu/kermit/ckubwr.html
  101. #
  102. # Most targets build C-Kermit with its symbol table included.  To reduce the
  103. # size of the executable program, add "LNKFLAGS=-s" to the end of your 'make'
  104. # command or to the makefile entry, or 'strip' the executable after
  105. # building.  To further reduce the size after building, use 'mcs -d' if your
  106. # Unix version has such a command.  For further details on size reduction, read
  107. # ckccfg.txt to find out how to remove features that you don't need.
  108. #
  109. # TCP/IP networking support: If your C-Kermit version does not include TCP/IP
  110. # networking, but your UNIX system does, try adding -DTCPSOCKET to the CFLAGS
  111. # of your makefile entry.  If that doesn't work, look at some of the other
  112. # targets that include this flag for ideas about what libraries might need to
  113. # be included (typically -lsocket and/or -lBSD and/or -lnsl and/or -linet).
  114. # NOTE: In some cases (old versions of SCO or HP-UX), you might need not only
  115. # a C compiler, but also a "TCP/IP developers kit" for the required object
  116. # libraries and header files.
  117. #
  118. # Please report modifications, failures (preferably with fixes) or successes
  119. # to the author, fdc@columbia.edu.
  120. #
  121. # TARGETS FOR DIFFERENT UNIX PLATFORMS AND VERSIONS:
  122. #
  123. # + Marks those that have been built successfully for C-Kermit 9.0 or later.
  124. # - Those that once built OK but no longer do (e.g. too big).
  125. # ? Those that worked in a previous version but have not been tested recently.
  126. # --------------------------
  127. # Some commonly used targets:
  128. #
  129. # + "make linux" should work for any version of Linux on any hardware.
  130. # + "make linux+ssl" ditto, with OpenSSL security added.
  131. # + "make linux+krb5" ditto, with Kerberos 5 security added.
  132. # + "make linux+krb5+ssl" Linux with OpenSSL and Kerberos 5.
  133. # + "make netbsd", NetBSD, any version.
  134. # + "make netbsd+ssl", NetBSD with OpenSSL 0.9.7 or later.
  135. # + "make netbsd+krb5", NetBSD with Kerberos 5.
  136. # + "make netbsd+krb5+ssl", NetBSD with Kerberos 5 and OpenSSL 0.9.7 or later.
  137. # ? "make freebsd1" for FreeBSD 1.x
  138. # ? "make freebsd2" for FreeBSD 2.x
  139. # + "make freebsd3" for FreeBSD 3.x
  140. # ? "make freebsd4" for FreeBSD 4.0
  141. # + "make freebsd", FreeBSD 4.1 or later.
  142. # + "make freebsd+ssl", FreeBSD 5.0 or later with OpenSSL 0.9.7 or later.
  143. # + "make openbsd", OpenBSD 2.3 or later.
  144. # + "make openbsd+ssl", OpenBSD 2.3 or later with OpenSSL 0.9.7 or later.
  145. # + "make mirbsd", MirBSD.
  146. # + "make mirbsd+ssl", MirBSD with OpenSSL 0.9.7 or later.
  147. # + "make macosx" should work for any Mac OS X version 10.3.9 or later.
  148. # + "make macosx+krb5+openssl" Mac OS X 10.3.9 or later + Kerberos V + OpenSSL.
  149. # + "make aix" should work for any version of AIX 4.2 or later.
  150. # + "make aixg" should work for any version of AIX 4.2 or later, using gcc.
  151. # + "make aix+ssl" ditto, with OpenSSL (specifying SSLLIB and SSLINC)
  152. # + "make aix+ibmssl" ditto, with IBM OpenSSL
  153. # + "make solaris9", "make solaris10" for Solaris 9 or 10 with Sun cc.
  154. # + "make solaris9g", "make solaris10g" for Solaris 9 or 10 with gcc.
  155. # + "make solaris11" for Solaris 11 with Sun CC
  156. # + "make solaris11g" for Solaris 11 with gcc
  157. # + "make sco_osr600" for SCO OpenServer 6.0.0.
  158. #
  159. # For other current OSs such as Solaris, HP-UX, and SCO there are separate
  160. # targets for different combinations of OS version and compiler; see the
  161. # complete list.  For older OS's see the complete list.  If an old target
  162. # doesn't work in this release of C-Kermit you can get a previous release from
  163. # the Kermit FTP site: ftp://kermit.columbia.edu/kermit/
  164. #
  165. # SECURE TARGETS (versions that support authentication and encryption)
  166. #  are described after the following list.  Search for ******* below.
  167. #
  168. # --------------------------
  169. # Complete list (alphabetical):
  170. # ? for 386BSD (Jolix) 0.0, 0.1, "make 386bsd" (see comments in entry),
  171. #     or (preferably, if it works) "make bsd44" or "make bsd44c".
  172. # ? for Acorn RISCiX, "make riscix" or "make riscix-gcc"
  173. # ? for Alliant FX/8 with Concentrix 4.1 or later, "make bsdlck"
  174. # ? for Altos 486, 586, 986 with Xenix 3.0, "make altos"
  175. # ? for Altos ACS68000, 8Mhz 68000, UNIX System 3 Rel 2, 512K, "make altos3"
  176. # ? for Amdahl UTS 2.4 on IBM 370 series & compatible mainframes, "make uts24"
  177. # ? for Amdahl UTSV IBM 370 series & compatible mainframes, "make utsv"
  178. # ? for Amdahl UTSV IBM 370 series mainframes with TCP/IP, "make utsvtcp"
  179. # ? for Amdahl mainframes with UNIX System V R 5.2.6b 580, "make sys3"
  180. # ? for Apollo Aegis 9.x, DOMAIN/IX 9.x, "make aegis"
  181. #    (Last tested in C-Kermit 5A(189))
  182. # ? for Apollo DOMAIN/IX, if the above fails, try "make apollobsd"
  183. # ? for Apollo with SR10.0 or later, BSD environment, "make sr10-bsd"
  184. # ? for Apollo with SR10.0 or later, System V environment, "make sr10-s5r3"
  185. # ? for Apple Macintosh II with A/UX pre-3.0, "make aux", "auxgcc" or "auxufs"
  186. # ? for Apple Macintosh with A/UX 3.0 and gcc, "make aux3gcc" or aux3gccc
  187. # ? for Apple PowerMac with MkLinux, "make mklinux" (read Linux entry first)
  188. # ? for Apple PowerMac with LinuxPPC, "make linuxppc"
  189. # ? for Apple Macintosh with Minix 1.5.10, "make minix68k" or "make minixc68"
  190. # ? for Apple Macintosh with Mac OS X 1.0 (Rhapsody), "make macosx10"
  191. #     (no curses), "make macosx10c" (curses), or "make macosx10nc" (ncurses).
  192. #     Or "make macosx10ncx" (ncurses but "make macosx10nc" doesn't work).
  193. # ? for Apple Macintosh with Mac OS X 10.2, "make macosx102nc" (ncurses).
  194. # ? for Apple Macintosh with Mac OS X 10.3, "make macosx103"
  195. # ? for Apple Macintosh with Mac OS X 10.3.9 or later, "make macosx"
  196. # ? for Arix System 90 with AT&T SVR3, "make sys5r3na"
  197. # - for AT&T 6300 with IN/ix, "make sys5"
  198. # - for AT&T 6300 PLUS, "make att6300" or (with no debugging) "make att6300nd"
  199. # ? for AT&T 6386 WGS UNIX PC, "make sys5r3"
  200. # ? for AT&T 3B2, 3B20 systems, "make att3b2".
  201. #   for AT&T 3B1, 7300 UNIX PC (see notes with the entries):
  202. #     In C-Kermit 7.0, only the gcc entries work:
  203. # ?   "make sys3upcg", "make sys3upcgc", "make att351gm"
  204. #    The others fail with "too many defines" (usually in ckuusr.h):
  205. # -   "make sys3upc", "make sys3upcold", "make sys3upcc", "make sys3upcx",
  206. #       "make sys3upcm", "make att351m"
  207. # ? for AT&T System III/System V R2 or earlier, "make sys3" or "make sys3nid"
  208. # ? for AT&T System III/System V with Honey DanBer UUCP, "make sys3hdb"
  209. # ? for AT&T System V on DEC VAX, "make sys3" or "make sys5r3"
  210. # ? for AT&T System V R3, use "make sys5r3" or "make sys5r3c"
  211. # ? for AT&T System V/386 R3.2 built on Interactive 4.1.1, "make sys5r32is".
  212. # ? for AT&T System V/386 R320.0 Versyss Systems, use "make sys5r3"
  213. #     or "make sys5r3c".
  214. # ? for AT&T System V R4, "make sys5r4", "make sys5r4sx", or "make sys5r4nx",
  215. #     or if the ANSI C function prototyping makes trouble, add -DNOANSI,
  216. #     as in "sys5r4sxna" entry
  217. # ? for AT&T (USL) System V R4.2 use the sys5r4* entries.
  218. # ? for Atari Falcon with MiNT, "make posix"
  219. # ? for Atari ST with Minix ST 1.5.10.3, "make minix68k" or "make minixc68"
  220. # ? for BBN C/70 with IOS 2.0, "make c70"
  221. # ? for BeBox with Be OS 1.x DR7, "make beboxdr7"
  222. #     Compiles OK but doesn't link with default linker which is limited to 64K.
  223. #     Links OK with "Code Warrior Gold".  Many hacks in the source code need
  224. #     to be removed when DR8 and later come out.
  225. #     (Last tested in C-Kermit 6.0)
  226. # - for BeBox with Be OS 1.x DR8, "make bebox"
  227. #     (Needed functions missing from operating system and/or not working.)
  228. # - for Bell Labs UNIX Version 6 (6th Edition), there is no makefile entry.
  229. # ? for Bell Labs UNIX Version 7 (7th Edition), "make v7" (but see notes below)
  230. #    (last built successfully in C-Kermit 5A188)
  231. # ? for Bell Labs Research UNIX Version 10, "make bellv10"
  232. #    (last built successfully in C-Kermit 6.0)
  233. # ? for Bell Labs / Lucent Plan 9, use separate makefile ckpker.mk:
  234. #    can be built for Intel, MIPS, 680x0, and PowerPC (last built C-Kermit 7.0)
  235. # ? for BSDI BSD/386 1.x, "make bsdi"
  236. # ? for BSDI BSD/OS 2.x, "make bsdi2"
  237. # ? for BSDI BSD/OS 3.0 or 3.1, "make bsdi3"
  238. # ? for BSDI BSD/OS 4.x, "make bsdi4"
  239. # ? for BSDI BSD/OS 4.x, to build a binary that also works on FreeBSD,
  240. #     "make bsdix".
  241. # ? for Berkeley Unix 2.4, "make v7" (but read v7 material below)
  242. # ? for Berkeley Unix 2.9 (DEC PDP-11 or Pro-3xx), "make bsd29"
  243. # - for Berkeley Unix 2.10, use ckubs2.mak (a separate makefile)
  244. # - for Berkeley Unix 2.11, use ckubs2.mak (a separate makefile)
  245. #     This makefile is too big.  Read the instructions in ckubs2.mak.
  246. #     "make -f ckubs2.mak bsd210" or "make -f ckubs2.mak bsd211".
  247. #     (last built successfully in C-Kermit 6.0 - later versions too big)
  248. # ? for Berkeley Unix 2.11 "make -f ckubs2.mak bsd210noicp" (no command parser)
  249. # ? for Berkeley Unix 4.1, "make bsd41"
  250. # ? for Berkeley Unix 4.2 on VAX, "make bsd42" or "make bsd42c"
  251. # ? for Berkeley Unix 4.2 or 4.3 with HoneyDanBer UUCP, "make bsdhdb"
  252. # ? for Berkeley Unix 4.3 on VAX, "make bsd43", "make bsd43nc".
  253. # ? for Berkeley Unix 4.3 on VAX, no networking "make bsd43nonet.
  254. # ? for Berkeley Unix 4.3 without acucntrl program, "make bsd42" or "bsd42c"
  255. #     NOTE: all the C-Kermit 7.0 full builds for old BSDs fail with
  256. #     "too many defines" in CPP, even on big architectures like VAX.  This
  257. #     can be worked around with a clever ruse.  See comments at target.
  258. # ? for Berkeley Unix 4.3, command-line only, "make bsdm".
  259. # ? for Berkeley Unix 4.3-Tahoe, same as 4.3 BSD
  260. # ? for Berkeley Unix 4.3-Reno, "make bsd43" or "make bsd44" or "make bsd44c"
  261. # ? for Berkeley Unix 4.3-Carson City, "make bsd44" or "make bsd44c"
  262. # ? for Berkeley Unix 4.4-Networking/2 or -Alpha, "make bsd44" or "make bsd44c"
  263. # ? for Berkeley Unix 4.4, "make bsd44" or "make bsd44c"
  264. # ? for Berkeley Unix 4.4-Lite, "make bsd44" or "make bsd44c"
  265. # ? for Bull DPX/2 with BOS/X, "make bulldpx2"
  266. # ? for Cadmus, "make sys3"
  267. #   for Caldera, see SCO, Linux.
  268. # ? for Callan Unistar, "make sys3"
  269. # ? for CDC VX/VE 5.2.1 System V emulation, "make vxve"
  270. # ? for Charles River Data Systems Universe 680x0 with UNOS 9.2, maybe
  271. #     also other UNOS versions, "make crds"
  272. # ? for CIE Systems 680/20 with Regulus, "make cie"
  273. # ? for Commodore Amiga 3000UX Sys V R4, "make sys5r4sx"
  274. # ? for Commodore Amiga 3000UX Sys V R4 and TCP/IP, "make svr4amiganet"
  275. # ? for Commodore Amiga with Minix 1.5.10, "make minix68k" of "make minixc68"
  276. # ? for Concurrent/Masscomp with RTU 4.0 or later, BSD environment, "make
  277. #     rtubsd", "make rtubsd2", "make rtubsd3" (depending on where ndir.h
  278. #     is stored, see entries below).
  279. # ? for Concurrent/Masscomp with RTU 4.0 or later, System V R2, "make rtus5"
  280. # ? for Concurrent (Perkin-Elmer) 3200 series, "make sys5".
  281. # ? for Concurrent (Perkin-Elmer) 3200 series with <dirent.h>, "make ccop1"
  282. # ? for Concurrent PowerMAX OS SVR4, "make powermax"
  283. # ? for Consensys UNIX SV/386 R4V3, "make sys5r4sxtcpc" or "make sys5r4sx"
  284. # ? for Convergent with CTIX Sys V R2, "make sys5"
  285. # ? for Convergent with CTIX 6.4.1, "make ctix"
  286. # ? for Convex C1, "make convex"
  287. # ? for Convex C210 with Convex/OS 8, "make convex8"
  288. # ? for Convex C2 with Convex/OS 9.1, "make convex9"
  289. # ? for Convex C2 with Convex/OS 10.1 and gcc 2.x, "make convex10gcc"
  290. # ? for Cray Research X/MP or YMP or C90 with UNICOS 6.x (System V R3),
  291. #    "make cray"
  292. # ? for Cray Research X/MP or YMP or C90 with UNICOS 7.x (System V R4),
  293. #    "make cray"
  294. # ? for Cray Research X/MP or YMP or C90 with UNICOS 8.0 Alpha, "make cray8"
  295. # ? for Cray Research X/MP or Y-MP or C90 with UNICOS 9.0, "make cray9"
  296. # ? for Cray Computer Cray-2 or Cray3 with CSOS, "make craycsos"
  297. # ? for Cyber 910 (Silicon-Graphics Iris) with Irix 3.3, "irix33"
  298. # ? for Data General AViiON with DG/UX 5.4 before R3.00, "make dgux540"
  299. #     or "make dgux540c" (compile ckwart separately if necessary)
  300. # ? for DG/UX 5.4 on AViiON Intel models, "make dgux540i" or dgux540ic.
  301. # ? for DG/UX 5.4R4.11 on AViiON, all models, "make dgux54411"
  302. # ? for DG/UX 5.4R4.20 on AViiON, all models, "make dgux54420"
  303. # ? for Data General AViiON with DG/UX 4.3x using Sys V-isms, "make dgux430"
  304. # ? for Data General AViiON with DG/UX 4.3x using BSD-isms, "make dgux430bsd"
  305. # ? for Data General AViiON, earlier UNIX versions,
  306. #     "make sys5r3" (maybe compile ckwart separately, or "touch ckcpro.c")
  307. # ? for Data General MV systems with DG/UX, ???
  308. # ? for Data General MV systems with MV/UX, use AOS/VS C-Kermit (CKDKER.MAK)
  309. # ? for Data General MV systems with AOS/VS, use CKDKER.MAK (last = C-K 7.0)
  310. # ? for DEC PDP-11 with Berkeley UNIX 2.x, see Berkeley UNIX 2.x.
  311. # ? for DEC PDP-11 with Mini-UNIX (Bell 6th Edition for PDP-11 with no MMU),
  312. #     probably no way to fit C-Kermit without I&D space.
  313. # ? for DEC PDP-11 with Ultrix-11 3.x, ??? (probably needs overlays)
  314. # ? for DEC VAX with Ultrix 1.x "make bsd"
  315. # ? for DEC VAX with Ultrix 2.x "make ultrix2x"
  316. # ? for DEC VAX or DECstation with Ultrix 3.0, 3.1, "make ultrix3x"
  317. # ? for DECstation or VAX with Ultrix 4.0 or 4.1, "make ultrix40"
  318. # ? for DECstation or VAX with Ultrix 4.2, "make ultrix42" or "make ultrix42c"
  319. # ? for DECstation or VAX with Ultrix 4.x, POSIX world, "make posix"
  320. # ? for DECstation or VAX with Ultrix 4.3, "make ultrix43".
  321. # ? for DECstation or VAX with Ultrix 4.4, "make ultrix44".
  322. # ? for DECstation 5000/50, /150 or /260 (R4x00 MIPS CPU), Ultrix 4.3A or later
  323. #     "make ultrix43-mips3" or "make ultrix43c-mips3"
  324. # ? for DECstation (MIPS) with Berkeley Sprite, "make bsd44"?
  325. # ? for DECstation (MIPS) with OSF/1 V1.0 to 1.3, "make dec-osf"
  326. # ? for DEC Alpha with OSF/1 1.0 to 1.3, "make dec-osf"
  327. # ? for DEC PC 486 with OSF/1, "make dec-osf"
  328. # ? for DEC Alpha with OSF/1 2.x, "make dec-osf20"
  329. # ? for DEC Alpha with OSF/1 3.0, "make dec-osf30"
  330. # ? for DEC Alpha with Digital UNIX 3.2, "make du32"
  331. # ? for DEC Alpha with Digital UNIX 4.0-4.0D, "make du40" or "make du40gcc"
  332. # ? for DEC Alpha with Digital UNIX 4.0E or higher, see Tru64.
  333. # + for DEC Alpha with any version of DU or OSF/1, "make dec-osf1"
  334. # - for DEC Pro-350 with Pro/Venix V1.x, "make provx1" (version 5A is too big)
  335. # ? for DEC Pro-380 with Pro/Venix V2.0 (Sys V), "make sys3" or "make sys3nid"
  336. # ? for DEC Pro-380 with 2.9, 2.10, or 2.11 BSD, "make bsd29" or "make bsd210"
  337. #   for DEC PDP-11 with 2.xBSD (use separate makefile ckubs2.mak)
  338. # ? for Dell UNIX Issue 2.x (= USL Sys V/386 R4.x + fixes), "make dellsys5r4"
  339. #     or "make dellsys5r4c" (last tested in C-Kermit 5A).
  340. # ? for DIAB DS90 with DNIX (any version) create an empty <sys/file.h> if
  341. #     this file does not already exist (or add -DNOFILEH to the make entry).
  342. # ? for DIAB DS90 with DNIX 5.2 (Sys V.2) or earlier, "make dnix",
  343. #     "make dnixnd", or (to add curses and TCP/IP) "make dnixnetc",
  344. # ? for DIAB DS90 with DNIX 5.3 (Sys V.3), "make dnix5r3"
  345. # ? for DIAB DS90 with DNIX 5.3 (Sys V.3) and TCP/IP, "make dnix5r3net"
  346. # ? for DIAB DS90 with DNIX 5.3 2.2 (Sys V.3), ANSI C, "make dnix5r3ansi"
  347. #     or, to include TCP/IP, "make dnix5r3ansinet",
  348. #     but you have to fix a bug in /usr/include/stdlib.h first:
  349. #     change "extern void free(char *str);" to "extern void free(void *str);"
  350. # ? for Dolphin Server Technology Triton 88/17 with SV/88 R3.2, "make sv88r32"
  351. # ? for Encore Multimax 310, 510 with Umax 4.2, "make umax42"
  352. # ? for Encore Multimax 310, 510 with Umax 4.3, "make umax43"
  353. # ? for Encore Multimax 310, 510 with Umax V 2.2, use Berkeley cc, "make bsd"
  354. # ? for Encore 88K with Umax V 5.2, "make encore88k"
  355. # ? for ESIX System V R4.0.3 or 4.04 with TCP/IP support, "make esixr4"
  356. #     NOTE: You can also build on Unixware 2.x with "make esixr4", and run
  357. #     on ESIX, but there you must first:
  358. #       ln /usr/lib/libsocket.so /usr/lib/libsocket.so.1
  359. #       ln /usr/lib/libnsl.so /usr/lib/libnsl.so.1
  360. #     (This worked for C-Kermit 6.0 but does not work for 7.0)
  361. #     (But you can probably still build a non-networking version this way)
  362. # ? for Everex STEP 386/25 Rev G with ESIX Sys V R3.2D, "make sys5r3"
  363. # ? for Fortune 32:16, For:Pro 1.8, "make ft18"
  364. # ? for Fortune 32:16, For:Pro 2.1, "make ft21"
  365. # ? for FPS 500 with FPX 4.1, "made bsd"
  366. # ? for FreeBSD 1.0, "make freebsd1"
  367. # ? for FreeBSD 2.x, "make freebsd2" (ncurses) or "make freebsd2c" (curses)
  368. # ? for FreeBSD 3.x, "make freebsd3" (ncurses) or "make freebsd3c" (curses)
  369. # ? for FreeBSD 4.0, "make freebsd40"
  370. # ? for FreeBSD 4.1 or later, "make freebsd"
  371. # + NOTE: Just use "make freebsd" for any reasonably recent FreeBSD version.
  372. # ? for Harris HCX-2900, "make sys5r3"
  373. # ? for Harris Night Hawk 88K or 68K with CX/UX pre-6.1, "make sys5r3"
  374. # ? for Harris Night Hawk 88K or 68K with CX/UX 6.1 or later, "make cx_ux"
  375. # ? for Heurikon, "make sys3"
  376. # ? for HP-3000, MPE/ix, "make posix"?
  377. # ? for HP-9000 Series 300 with 4.4BSD, "make bsd44"
  378.  
  379. # NOTE: Most of the HP-UX targets were tested successfully in 2010.
  380. # Verification needed for C-Kermit 9.0 Beta.01...
  381.  
  382. # ? for HP-9000 Series 500, HP-UX 5.21 and no networking "make hpux0500"
  383. # ? for HP-9000 Series 500, HP-UX 5.21 with WIN/TCP 1.2 "make hpux0500wintcp"
  384. # ? for HP-9000 Series, HP-UX 6.5, without long filenames,
  385. #     "make hpux0650", "make hpux0650c" or "make hpux0650tcpc"
  386. # ? for HP-9000 Series, HP-UX 7.0 or later no long filenames, "make hpux0700sf"
  387. #     or (to include tcp/ip, curses, etc) "make hpux0700sftcpc"
  388. # ? for HP-9000 Series with HP-UX 7.0, TCP/IP,long filenames,"make hpux0700lfn"
  389. # ? for HP-9000 300/400 Series (680x0) with HP-UX 8.0, TCP/IP, "make hpux0800"
  390. #      or "make hpux0800c"
  391. # ? for HP-9000 700/800 Series (PA-RISC), HP-UX 8.0, TCP/IP, "make hpux0800pa"
  392. #      or "make hpux0800pac"
  393. # ? for HP-9000 Series with HP-UX 8.0, no TCP/IP, long filenames,
  394. #      "make hpux0800notcp"
  395. # ? for HP-9000 Series, HP-UX 9.0 - 9.10, TCP/IP, curses, restricted compiler
  396. #     (no optimization, no ANSI), all models, "make hpux0900".  Read the
  397. #     hpux0900 entry below for more info.
  398. # ? for HP-9000 700 and 800 Series, HP-UX 9.x, TCP/IP, curses,
  399. #     HP optimizing ANSI C compiler, "make hpux0900o700".
  400. # ? for HP-9000 with Motorola CPUs, HP-UX 9.x, TCP/IP, curses,
  401. #     HP optimizing ANSI C compiler, "make hpux0900mot".
  402. # ? for HP-9000 on other CPUs, HP-UX 9.x, TCP/IP, curses,
  403. #     HP optimizing ANSI C compiler, "make hpux0900o".
  404. # ? for HP-9000 series, HP-UX 9.x, TCP/IP, curses, gcc, all models,
  405. #     "make hpux0900gcc"
  406. # ? for HP-9000 700/800 Series, HP-UX 10.00,10.01,10.10,10.20,10.30, TCP/IP,
  407. #     curses, restricted compiler (no optimization, no ANSI) "make hpux1000".
  408. # ? for HP-9000 700/800 Series, HP-UX 10.00,10.01,10.10,10.20,10.30, TCP/IP,
  409. #     curses, HP ANSI/optimizing compiler "make hpux1000o" or "make hpux1000o+"
  410. # ? for HP-9000 HP-UX 10.00 or later with gcc, "make hpux1000gcc"
  411. # ? for Trusted HP-UX 10.xx "make hpux1000t", "make hpux1000to",
  412. #     or make hpux1000to+"
  413. # ? for HP-9000 700/800 Series, HP-UX 11.00,TCP/IP,curses, restricted compiler
  414. #     (no optimization, no ANSI) "make hpux1100".
  415. # ? for HP-9000 700/800 Series, HP-UX 11.00,TCP/IP,curses, restricted compiler
  416. #     HP ANSI/optimizing compiler "make hpux1100o" or "make hpux1100o+"
  417. # ? for Trusted HP-UX 11.xx "make hpux1100t", "make hpux1100to",
  418. #     make hpux1100to+"
  419. # ? for HP-9000 PA-RISC models with NeXTSTEP 3.3, "make nextquadfat".
  420. # ? for HP-9000 PA-RISC models with OPENSTEP/Mach 4.1, "make nextquadfat".
  421. # ? for IBM 370 Series with IX/370, "make ix370"
  422. # ? for IBM 370 Series with AIX/370 1.2, "make aix370"
  423. # ? for IBM 370 Series with AIX/370 3.0, "make aix370"
  424. # ? for IBM 370 Series with AIX/ESA 2.1, "make aixesa"
  425. # - for IBM PC/AT 286 & compatibles with Mark Williams Coherent OS,
  426. #     command-line-only version, "make coherent" (version 5A & later too big)
  427. # ? for IBM PC 386 & compatibles with Mark Williams Coherent OS,
  428. #     minimum interactive version, "make coherentmi"
  429. # ? for IBM PC 386 & compatibles with Mark Williams Coherent OS,
  430. #     full interactive version, prior to v4.2, "make coherentmax"
  431. # ? for IBM PC 386 & compatibles with Mark Williams Coherent OS 4.2,
  432. #     "make coherent42"
  433. # ? for IBM PC 386 & compatibles with LynxOS 2.0 or 2.1, "make lynx21"
  434. # ? for IBM PC 386 & compatibles with LynxOS 2.2, "make lynx"
  435. # - for IBM PC/AT & compatibles with original MINIX, "make minix" (too big)
  436. # ? for IBM PC family, 386-based, with MINIX/386 1.5, "make minix386"
  437. #     or if you have GNU CC, "make minix386gcc"
  438. # ? for IBM PC family, 386-based, with MINIX 2.0, "make minix20"
  439. # ? for IBM PC family, 386-based, with MINIX 3.0, "make minix3"
  440. # + for IBM PC family, 386-based, with MINIX 3.0, "make minix315"
  441. # ? for IBM PS/2 with PS/2 AIX 1.0, 1.1, or 1.2, "make ps2aix" or ps2aixnetc.
  442. # ? for IBM PS/2 with PS/2 AIX 1.3, "make ps2aix3"
  443. # ? for IBM RISC System/6000 with AIX 3.0, "make aix30"
  444. # ? for IBM RISC System/6000 with AIX 3.1.x, "make aix31"
  445. # ? for IBM RISC System/6000 with AIX 3.2.0 thru 3.2.5, "make aix32"
  446. # ? for IBM RS/6000 or Power Series with AIX 4.1.x, "make aix41"
  447. # ? for IBM RS/6000 or Power Series with AIX 4.1.x with gcc, "make aix41g"
  448. # ? for IBM RS/6000 or Power Series with AIX 4.1 with X.25, "make aix41x25"
  449. # ? for IBM RS/6000 or Power Series with AIX 4.2 or later: "make aix"
  450. #  (the following "make aixnn" targets are no longer necessary except for gcc)
  451. # ? for IBM RS/6000 or Power Series with AIX 4.2, "make aix42"
  452. # ? for IBM RS/6000 or Power Series with AIX 4.3, "make aix43" (or aix43gcc)
  453. # ? for IBM RS/6000 or Power Series with AIX 4.4, "make aix44" (or aix44gcc)
  454. # ? for IBM RS/6000 or Power Series with AIX 4.5, "make aix45" (or aix45gcc)
  455. # ? for IBM RS/6000 or Power Series with AIX 5.0, "make aix50" (or aix50gcc)
  456. # ? for IBM RS/6000 or Power Series with AIX 5.1, "make aix51" (or aix51gcc)
  457. # ? for IBM RS/6000 or Power Series with AIX 5.2, "make aix52" (or aix52gcc)
  458. # ? for IBM RS/6000 or Power Series with AIX 5.3, "make aix53" (or aix53gcc)
  459. # ? for IBM RS/6000 or Power Series with AIX 6.1, "make aix61" (or aix53gcc)
  460. # ? for IBM RT PC with AIX 2.1, "make sys3"
  461. # ? for IBM RT PC with AIX 2.2.1, "make rtaix" or "make rtaixc"
  462. # ? for IBM RT PC with ACIS 4.2, "make bsd"
  463. # ? for IBM RT PC with ACIS 4.3, "make rtacis" or "make bsd KFLAGS=-DNOANSI"
  464. # ? for IBM RT PC with 4.3BSD/Reno, "make bsd44" or "make bsd44c"
  465. # ? for ICL DRS400 or 400E, "make iclsys5r3"
  466. # ? for ICL DRS3000 (80486) with DRS/NX, "make iclsys5r4_486"
  467. # ? for ICL DRS6000 (SPARC) with DRS/NX, "make iclsys5r4"
  468. # ? for ICL DRS6000 (SPARC) with DRS/NX 4.2MP 7MPlus, "make iclsys5r4m+"
  469. # ?     Ditto but with IKSD support included, "make iclsys5r4m+iksd"
  470. # ? for Integrated Solutions Inc V8S VME 68020, "make isi"
  471. # ? for Intel 302 with Bell Tech Sys V/386 R3.2, "make sys5r3"
  472. # ? for Intel Xenix/286, "make sco286"
  473. # ? for Interactive System III (PC/IX), "make pcix" or "make is3"
  474. # ? for Interactive System III (PC/IX) with gcc, "make is3gcc"
  475. # ? for Interactive 386/ix 1.0.6 with TCP/IP networking, "make is5r3net2"
  476. # ? for Interactive 386/ix 2.0.x, "make is5r3" or (POSIX) "make is5r3p"
  477. # ? for Interactive 386/ix 2.0.x with TCP/IP networking, "make is5r3net"
  478. #     or "make is5r3net2"
  479. # ? for Interactive 386/ix 2.2.1, job control, curses, no net, gcc,
  480. #     "make is5r3gcc"
  481. # ? for Interactive UNIX Sys V R3.2 V2.2 - 4.0 without TCP/IP, "make is5r3jc"
  482. # ? for Interactive UNIX Sys V R3.2 V2.2 - 4.0 with TCP/IP, "make is5r3netjc"
  483. # ? for Intergraph Clipper, "make clix" or "make clixnet"
  484. # ? for Jolix (see 386BSD)
  485. # + for Linux 1.2 and later, "make linux".  Uses ncurses.  This version
  486. #     handles serial speeds up to 460800 bps, Linux FSSTD 1.2, TCP/IP, and
  487. #     should work on both libc and glibc systems.  For static linking, use
  488. #     "make linux LNKFLAGS=-static".  Please read the comments that accompany
  489. #     the linux entry.  As of 8.0.212 Dev.10, this also includes Large File
  490. #     Support (LFS).
  491. # + for Linux builds that fail with "sys/select.h: No such file or directory",
  492. #     "make linuxns"
  493. # + for Linux 1.2 and later but with curses.h and libcurses (rather than
  494. #     ncurses.h and libncurses), use "make linuxc".
  495. # + for Linux 1.2 and later with no curses support at all, "make linuxnc".
  496. # + for Linux with no TCP/IP, "make linuxnotcp"
  497. # (The following Linux targets are historic and might not work...)
  498. # ? for Red Hat Linux 7.1 through RH9, fully configured (krb5, SSL, etc):
  499. #     "make redhat71", "make redhat72", "make redhat73", "make redhat80"
  500. #     "make redhat9"
  501. #     NOTE: You must use this target for Red Hat 7.1 since it
  502. #     also includes a workaround for its broken curses library.
  503. #     WARNING: These targets create binaries that include code for
  504. #     strong encryption and are therefore not exportable. DO NOT PUT
  505. #     THESE BINARIES ON US OR CANADIAN WEB OR FTP SITES.
  506. # ? for Linux on PowerMac (Mklinux DR3), "make mklinux".
  507. # ? for Linux 1.2 and later, to build with egcs, "make linuxegcs".
  508. # ? for Linux with lcc compiler, no TCP/IP, "make linuxnotcp-lcc"
  509. # ? for Linux 1.0 or earlier, "make linux10".
  510. # (End old linux targets)
  511. # ? for Mach 2.6 on (anything, e.g. DECstation), "make bsd42" or "make bsd43".
  512. # ? for MachTen (Tenon) 2.1.1.D on (e.g.) Apple Powerbook, "make machten".
  513. # ? for Masscomp RTU AT&T System III, "make rtu"
  514. #   for other Masscomp, see Concurrent.
  515. # ? for Microport SV/AT (System V R2), "make mpsysv" (last edit tested: 144)
  516. # ? for Microport SVR4 2.2, 3.1, or 4.1 "make sys5r4sx"
  517. # ? for Microsoft,IBM Xenix (/286, PC/AT, etc), "make xenix" or "make sco286"
  518. # ? for MIPS System with RISC/os (UMIPS) 4.52 = AT&T SVR3, "make mips"
  519. #     or "make mipstcpc"
  520. # ? for MkLinux on Power Macintosh, "make mklinux"
  521. # ? for Modcomp 9730, Real/IX, "make sys5r3" (or modify to use gcc = GLS cc)
  522. # ? for Modcomp Realstar 1000 with REAL/IX D.1, "make sv88r32"
  523. # ? for Motorola Four Phase, "make sys3" or "make sys3nid"
  524. # ? for Motorola Delta System V/68 R3, "make sv68r3"
  525. # ? for Motorola Delta System V/68 R3V5, "make sv68r3v5"
  526. # ? for Motorola Delta System V/68 R3V5.1, "make sv68r3v51"
  527. # ? for Motorola Delta System V/68 R3V6 with NSE TCP/IP, "make sv68r3v6"
  528. # ? for Motorola Delta System V/88 R32, "make sv88r32"
  529. # ? for Motorola Delta System V/88 R40, "make sv88r40"
  530. # ? for Mt Xinu Mach386 on 386/486-based PCs, "make bsd43"
  531. # ? for NCR Tower 1632, OS 1.02, "make tower1"
  532. # ? for NCR Tower 1632 or Minitower with System V R2, "make sys3"
  533. #     or "make sys3nv"
  534. # ? for NCR Tower 32, OS Release 1.xx.xx, "make tower32-1"
  535. # ? for NCR Tower 32, OS Release 2.xx.xx, "make tower32-2"
  536. # ? for NCR Tower 32, OS Releases based on Sys V R3, "make tower32"
  537. # ? for NCR Tower 32, OS Releases based on Sys V R3 with gcc "make tower32g"
  538. # ? for NCR System 3000, AT&T UNIX System V R4 2.0, "make sys5r4sxna"
  539. # ? for NCR System 3000, AT&T UNIX System V R4 2.0 with Wollongong TCP/IP,
  540. #     "make sys5r4net2" or "make sys5r4net2c".
  541. #      Some header files might be misplaced; try this:
  542. #       ln /usr/include/netinet/in.h /usr/include/sys/in.h
  543. #       ln /usr/include/arpa/inet.h /usr/include/sys/inet.h
  544. #       ln /usr/include/sys/termiox.h /usr/include/termiox.h
  545. # ? for NCR System 3000, NCR UNIX 02.02.01, same as above.
  546. # ? for NCR MP-RAS System V R4 V2.03 or 3.02, "make mpras" or "make mprastcpc"
  547. # + for NetBSD any version on any architecture, "make netbsd"
  548. # + for NetBSD with OpenSSL, "make netbsd+ssl"
  549. # ? for NetBSD with ncurses specified instead of curses, "make netbsdn"
  550. # ? for NetBSD with all curses support omitted, "make netbsdnc"
  551. # ? for NeXT with NeXTSTEP 1.0 through 3.2, "make next" (on a NeXT)
  552. # ? for NeXT with NeXTSTEP 3.3, "make next33"
  553. # ? for NeXT with OPENSTEP/Mach 4.1, "make nextquadfat".
  554. # ? for NeXT with OPENSTEP/Mach 4.2, "make openstep42".
  555. # ? for NeXTSTEP/486, "make next" (on a PC)
  556. # ? for NeXTSTEP portable binary (runs on Intel or Motorola), "make nextfat"
  557. # ? for NeXTSTEP portable binary (Intel, Motorola, HP PA-RISC, or SPARC),
  558. #     "make nextquadfat"
  559. # ? for Nixdorf Targon/31, "make t31tos40x"
  560. # ? for Norsk Data Uniline 88/17 with SV/88 R3.2, "make sv88r32"
  561. #   for Novell UnixWare - see UnixWare
  562. # ? for OSF/1 (vanilla, from OS/F), "make posix"
  563. # ? for OkiStation 7300 Series, "make sys5r4sxtcp"
  564. # ? for Olivetti LSX-3020 with X/OS R.2.3, "make xos23" or "make xos23c"
  565. # + for OpenBSD, "make openbsd" (also see secure targets listed below).
  566. # ? for OPENSTEP/Mach 4.1, "make nextquadfat" (NeXT, Intel, PA-RISC, SPARC)
  567. # ? for OPENSTEP/Mach 4.2, "make openstep42" (tested on NeXT)
  568. # ? for Perkin-Elmer (Concurrent) 3200 series, "make sys5".
  569. # ? for Perkin-Elmer (Concurrent) 3200 series with <dirent.h>, "make ccop1"
  570. # ? for Perkin-Elmer/Concurrent 3200 with Xelos R02, "make ccop1"
  571. # ? for PFU Compact A Series SX/A TISP V10/E50 (Japan), "make sxae50"
  572. # ? for Plexus, "make sys3"
  573. # ? for Pyramid 9XXX (e.g. 9845) or MIServer T series, OSx 4.4b thru 5.1,
  574. #     "ucb make pyramid" or for HDB UUCP, "ucb make pyramid-hdb" or:
  575. # ? for Pyramid MIServer S or ES Series, DataCenter/OSx, "make pyrdcosx"
  576. # ? for Pyramid MIS-S MIPS R3000, DataCenter OSx System V R4, "make pyrdcosx"
  577. # ? for POSIX on anything, "make posix" (but adjustments might be necessary).
  578. #      NOTE: this target is not very useful - many features are missing.
  579. # ? for Prime 8000 MIPS, SVR3, "make mips" or "make mipstcpc"
  580. # - for QNX 2.x (sorry we don't have a version of C-Kermit for QNX 2.x)
  581. # ? for QNX 4.0 or 4.1, 16-bit, on 286 PC, Watcom C 8.5, "make qnx16_41"
  582. # ? for QNX 4.21 - 4.22A (286+), and 4.23 (386+), or higher, 16-bit,
  583. #     Watcom C 9.5x or higher, "make qnx16"
  584. # + for QNX 4.21-4.25, 32-bit, 386 or above, Watcom C 10.6, "make qnx32"
  585. #     NOTE: ("make qnx" == "make qnx32")
  586. # ? for QNX Neutrino 2+, "make qnx_nto2+" (crosscompiled on QNX4 with Watcom C)
  587. # ? for QNX 6 = Neutrino 2.xx, "make qnx6"
  588. # ? for Ridge 32 (ROS3.2), "make ridge32"
  589. # ? for Samsung MagicStation, "make sys5r4"
  590. # ? for SCO Xenix 2.2.1 with development system 2.2 on 8086/8 "make sco86"
  591. # ? for SCO Xenix/286 2.2.1 with development system 2.2 on 80286, "make sco286"
  592. #     NOTE: reportedly this makefile is too long for SCO Xenix/286 make, but it
  593. #     works with "makeL", or if some of the other make entries are edited out.
  594. # ? for SCO Xenix/386 2.2.2, "make sco386"
  595. # ? for SCO Xenix/386 2.3.x, "make sco3r2"
  596. # ? for SCO Xenix/386 SCO 2.3.3 or 2.3.4 with gcc 1.37 or later,
  597. #     "make sco386gcc" or (to add curses) "make sco386gccc".
  598. # ? for SCO Xenix/386 or UNIX/386 with Excelan TCP/IP, "make sco3r2net"
  599. #     or (to add curses support) "make sco3r2netc" or "sco386netc"
  600. # + for SCO XENIX 2.3.4, "make sco234" or "make sco234c" to add curses.
  601. # ? for SCO XENIX 2.3.4 with SCO TCP/IP & curses, "make sco234netc".
  602. # ? for SCO Xenix 2.3.x with Racal-InterLan TCP/IP, "make sco3r2netri"
  603. #   for other UNIX varieties with Racal Interlan TCP/IP, read sco3r2netri entry
  604. # ? for SCO Xenix 2.3.x with SCO (Lachman) TCP/IP, "make sco3r2lai"
  605. #     or (to add curses) "make sco3r2laic"
  606. #   for SCO UNIX...  ALSO READ COMMENTS in the SCO UNIX entries for more info!
  607. # ? for SCO UNIX/386 3.2.0 or 3.2.1, "make sco3r2" or "make sco3r2x"
  608. # ? for SCO UNIX/386 3.2.2, "make sco3r22" or "make sco3r22gcc"
  609. #     or "make sco3r22c"
  610. # ? for SCO UNIX/386 3.2.2 with SCO TCP/IP, "make sco3r22net"
  611. #     or "make sco3r22netc" (curses)
  612. # ? for SCO ODT 1.1, "make sco3r22net" or "make sco3r22netc" (curses)
  613. # ? for SCO UNIX/386 3.2 V4.x, no network support, "make sco32v4"
  614. # ?   or "make sco32v4ns" (this one uses no select() or sockets library)
  615. # ? for SCO UNIX/386 3.2 V4.x with TCP/IP, "make sco32v4net"
  616. #     (also sco32v4gcc, sco32v4netgcc)
  617. # ? for SCO UNIX/386 3.2 V5.0 - see SCO OpenServer.
  618. # ? for SCO UNIX 3.2v4.x with TCP/IP, <dirent.h> for Extended Acer File
  619. #     System (EAFS), curses, ANSI C compilation, "make sco32v4net"
  620. # ?   or (to use select()-based CONNECT module) "make sco32v4netx".
  621. # ? for SCO UNIX 3.2v4.2, "make sco-odt30" (includes TCP/IP).
  622. # ? for SCO MPX 3.0 - The SCO UNIX binary runs on the corresponding MPX system.
  623. #
  624. # NOTE: Also see below for other entries that are variations on these.
  625. # Also be sure to read the comments accompanying each SCO entry.
  626. # Also see Unixware section.
  627. #
  628. # ? for SCO ODT 2.0, "make sco32v4net"
  629. # ? for SCO ODT 3.0, "make sco-odt30"
  630. # ? for SCO OpenServer 5.0 (OSR5), "make sco32v500"
  631. # ? for SCO OpenServer 5.0 (OSR5) with networking, "make sco32v500net"
  632. # ? for SCO OpenServer 5.0 (OSR5), gcc, "make sco32v500gcc"
  633. # ? for SCO OpenServer 5.0 (OSR5), gcc, with networking, "make sco32v500netgcc"
  634. # ? for SCO OpenServer 5.0 (OSR5), as above, ELF, "make sco32v500netgccelf"
  635. # ? for SCO OpenServer 5.0.2, use "make sco32v502xxx" entries as above.
  636. # ? for SCO OpenServer 5.0.4, use "make sco32v504xxx" entries as above.
  637. # ? for SCO OpenServer 5.0.5, use "make sco32v505xxx" entries as above.
  638. #     Use the sco32v505udkxxx entries if you have the UDK rather than /bin/cc.
  639. # ? for SCO OpenServer 5.0.6, use "make sco32v506xxx" entries as above.
  640. # ? for SCO OpenServer 5.0.6a,use "make sco32v506axxx" entries as above.
  641. # ? for SCO OpenServer 5.0.7, use "make sco32v507", "make sco32v507net"
  642. # ? for SCO (Univel) UnixWare 1.x, "make unixware" or "make unixwarenetc".
  643. #     If there are problems with this in C-K 7+ see notes at unixware entry.
  644. # + for SCO OpenServer 6.0.0, "make sco_osr600"
  645. # ? for SCO UnixWare 2.0.x, "make uw20"
  646. # ? for SCO UnixWare 2.1.0, "make uw21"
  647. # ? for SCO UnixWare 2.1.3, "make uw213"
  648. # + for SCO UnixWare 7, "make uw7" (includes large file support)
  649. # ? for SCO UnixWare 7 with IKSD support, "make uw7iksd" or "make uw7iksdudk"
  650. # ? for SCO UnixWare 7 with OpenSSL, "make uw7ssl"
  651. # ? for SCO (Caldera) Open UNIX 8, "make ou8"
  652. # ? for Sharp Zaurus SL5500 PDA, "make zsl5500".
  653. # ? for Sequent with DYNIX/ptx 1.2.1, "make dynixptx12"
  654. # ? for Sequent with DYNIX/ptx 1.3 or 1.4 with TCP/IP, "make dynixptx13"
  655. # ? for Sequent with DYNIX/ptx 2.0 or 2.1 with TCP/IP, "make dynixptx20"
  656. #     or "dynixptx20c"
  657. # ? for Sequent with DYNIX/ptx 2.1.6 on i486, "dynixptx216c"
  658. # ? for Sequent with DYNIX/ptx V4.1.3 with TCP/IP, "make dynixptx41c"
  659. # ? for Sequent with DYNIX/ptx V4.4.2 with TCP/IP, "make dynixptx44"
  660. # ? for Sequent Balance 8000 or B8 with DYNIX 3.0.xx, "make dynix3"
  661. #    or "make dynix3noacu"
  662. # ? for Sequent Symmetry S81 with DYNIX 3.0.xx, "make dynix3"
  663. # ? for Sequent DYNIX 3.1.xx, "make dynix31" or "make dynix31c"
  664. # ? for Siemens/Nixdorf SINIX-L Intel V5.41, "make sinix541i"
  665. # + for Siemens/Nixdorf SINIX-N MIPS V5.42, "make sinix542"
  666. # ? for Siemens/Nixdorf SINIX-P MIPS V5.42 with gcc, "make sinix542g"
  667. # ? for Siemens/Nixdorf SINIX-Z Intel V5.42, "make sinix542i"
  668. # ? for Siemens/Nixdorf Reliant UNIX V5.43, "make sni543"
  669. # ? for Siemens/Nixdorf Reliant UNIX V5.44, "make sni544"
  670. # ? for Silicon Graphics Iris System V IRIX 3.2 or earlier, "make iris"
  671. # ? for Silicon Graphics Sys V R3 with IRIX 3.3 or later, "make sys5r3"
  672. # ? for Silicon Graphics Iris Indigo with IRIX 4.0 or 5.0, "make irix40" or
  673. #     (to include Yellow Pages and Curses) "make irix40ypc"
  674. # ? for Silicon Graphics Iris Indigo or Elan with IRIX 4.0.x with microcode
  675. #     optimization and -O4, "make irix40u" or "irix40uc" (and read notes
  676. #     accompanying these entries).
  677. # ? for Silicon Graphics IRIX 5.1, "make irix51" or "irix51x" (no optimize)
  678. # ? for Silicon Graphics IRIX 5.2, "make irix52"
  679. # ? for Silicon Graphics IRIX 5.3, "make irix53" or "irix53x" (no optimize)
  680. # ? for Silicon Graphics IRIX 6.0, "make irix60".
  681. # ? for Silicon Graphics IRIX 6.2, "make irix62".
  682. # ? for Silicon Graphics IRIX 6.3, "make irix63".
  683. # ? for Silicon Graphics IRIX 6.4, "make irix64" or "make irix64gcc".
  684. # + for Silicon Graphics (SGI) IRIX 6.5, "make irix65"
  685. # +   or "make irix65mips2" to force MIPS2, or "make irix65gcc" for GCC.
  686. # + for Silicon Graphics (SGI) IRIX 6.5, "make irix65" or "make irix65mips2"
  687. # ? for SGI IRIX 6.5 with SSL/TLS, SRP, and ZLIB "make irix65+ssl+srp+zlib"
  688. # ? for Solaris 2.0-2.3 on SPARC or Intel, SunPro CC, "make solaris2x",
  689. # ?   or to add SunLink X.25 8.0x support, "make solaris2x25".
  690. # ? for Solaris 2.4 built with gcc, "make solaris24g".
  691. # ? for Solaris 2.0-2.3 on SPARC or Intel, GNU CC, "make solaris2xg".
  692. # ? for Solaris 2.4 with X.25, "make solaris24x25".
  693. # ? for Solaris 2.5 on SPARC or Intel, SunPro CC, "make solaris25".
  694. # ?   or to add SunLink X.25 8.0x support, "make solaris25x25".
  695. # ? for Solaris 2.5 on SPARC or Intel, GNU CC, "make solaris25g".
  696. # ? for Solaris 2.6 on SPARC or Intel, "make solaris26".
  697. # ? for Solaris 7 on SPARC or Intel, SunPro CC, "make solaris7".
  698. # ? for Solaris 7 on SPARC or Intel, GNU CC, "make solaris7g".
  699. # ? for Solaris 8 on SPARC or Intel, SunPro CC, "make solaris8".
  700. # ? for Solaris 8 on SPARC or Intel, GNU CC, "make solaris8g".
  701. # + for Solaris 9 on SPARC (or Intel?), 32-bit, SunPro CC, "make solaris9".
  702. # + for Solaris 9 on SPARC (or Intel?), 32-bit, GNU CC, "make solaris9g".
  703. # ? for Solaris 9 on SPARC (or Intel?), 64-bit, GNU CC, "make solaris9g64".
  704. # + for Solaris 10 on SPARC (or Intel?), 32-bit, SunPro CC, "make solaris10".
  705. # + for Solaris 10 on SPARC 64-bit, SunPro CC, "make solaris10_64".
  706. # + for Solaris 10 on SPARC (or Intel?), 32-bit, GNU CC, "make solaris10g".
  707. # ? for Solaris 10 on SPARC (or Intel?), 64-bit, GNU CC, "make solaris10g64".
  708. # ? for Solbourne 4/500 with OS/MP 4 "make sunos4"
  709. # ? for Solbourne 4/500 with OS/MP 4.1 "make sunos41" or "make sunos41c"
  710. # ? for SONY NEWS with NEWS-OS 4.0.1C, "make sonynews"
  711. # ? for SONY NEWS with NEWS-OS 4.1.2C, "make sonynews"
  712. # ? for Sperry/UNISYS 5000/20, UTS V 5.2 3R1, "make sys5"
  713. # ? for Sperry/UNISYS 5000/30/35/50/55, UTS V 5.2 2.01, "make unisys5r2"
  714. # ? for Sperry/UNISYS 5000/80 with System V R3, "make sys5r3"
  715. # ? for Sperry/UNISYS 5000/95 with System V R3, "make sys5r3"
  716. #     For UNISYS SVR3 it might be necessary to "make sys5r3 KFLAGS=-UDYNAMIC"
  717. # ? for Stardent 1520, "make sys5r3"
  718. # ? for Stratus FTX 2.x, try "make ftx" or else "make sys5r4" or "sys5r4sx"
  719. # ? for Stratus FTX 3.x, PA-RISC 1.0 or 2.0, "make ftx" or "make ftxtcp"
  720. # ? for Sun with Sun UNIX 3.5 and gcc, "make sunos3gcc"
  721. # ? for Sun with pre-4.0 SunOS versions, "make bsd" (or appropriate variant)
  722. # ? for Sun with SunOS 4.0, BSD environment, "make sunos4"
  723. # ? for Sun with SunOS 4.0, BSD, with SunLink X.25, make sunos4x25
  724. # ? for Sun with SunOS 4.1 or 4.1.1, BSD environment, "make sunos41"
  725. #     or "make sunos41c" (curses) or "make sunos41gcc" (compile with gcc)
  726. # ? for Sun with SunOS 4.1.x, BSD, with SunLink X.25 7.00 or earlier,
  727. #     "make sunos41x25" or "make sunos41x25c" (curses)
  728. # ? for Sun with SunOS 4.1, 4.1.1, AT&T Sys V R3 environment, "make sunos41s5"
  729. # ? for Sun with SunOS 4.1.2, "make sunos41" or any of its variations.
  730. #     NOTE:  All SunOS 4.x systems -- Shared libraries are used by default.
  731. #       If this causes problems, add -Bstatic to CFLAGS.
  732. #     NOTE2: When building C-Kermit under SunOS for the BSD universe,
  733. #       but /usr/5bin/cc is ahead of /usr/ucb/cc in your PATH, add
  734. #       "CC=/usr/ucb/cc CC2=/usr/ucb/cc" to the make entry.
  735. #     NOTE3: If an executable built on one type of Sun hardware does not work
  736. #       on another type, rebuild the program from source on the target machine.
  737. #   for Sun with Solaris 1.x use SunOS 4.1 entries.
  738. #   for Sun with Solaris 2.0 and higher use Solaris entries.
  739. # + for Sun SPARC with Linux, "make linux"
  740. # ? for Sun SPARC with OPENSTEP/Mach 4.1, "make nextquadfat"
  741. # ? for Sun SPARC with OPENSTEP/Mach 4.2, "make openstep42"
  742. # - for Tandy 16/6000 with Xenix 3.0, "make trs16" (C-Kermit 7.0 is too big)
  743. # ? for Tektronix 6130/4132/43xx (e.g.4301) with UTek OS, "make utek"
  744. #     or (for models without hardware flow control), "make uteknohwfc"
  745. # ? for Tektronix XD88 series with UTekV OS, "make utekvr3"
  746. # ? for Tri Star Flash Cache with Esix SVR3.2, "make sys5r3"
  747. # NOTE: The Tru64 builds have been failing since 2010, but "make dec-osf" is OK
  748. # ? for Tru64 UNIX 4.0E, "make tru64-40e"
  749. # ? for Tru64 UNIX 4.0F, "make tru64-40f"
  750. # ? for Tru64 UNIX 4.0G, "make tru64-40g"
  751. # ? for Tru64 UNIX 5.0A, "make tru64-50a"
  752. # ? for Tru64 UNIX 5.1A, "make tru64-51a"
  753. # ? for Tru64 UNIX 5.1B, "make tru64-51b"
  754. # ? for Unistar, "make sys5"
  755. # ? for Unisys S/4040 68040 CTIX SVR3.2 6.4.1, "make ctix" or "make sys5r3"
  756. # ? for Unisys U5000 UNIX SVR3 6.x, "make sys5r3" or "make sys5r3c"
  757. # ? for Unisys U6000 UNIX SVR4 1.x, "make sys5r4nx" or "make sys5r4nxnetc"
  758. #   for Unisys ... (also see Sperry)
  759. #   for Univel - see UnixWare
  760. #   for Unixware - see SCO
  761. # ? for Valid Scaldstar, "make valid"
  762. # ? for Whitechapel MG01 Genix 1.3, "make white"
  763. # ? for Zilog ZEUS 3.21, "make zilog"
  764. #
  765. # The result should be a runnable program called "wermit" in the current
  766. # directory.  After satisfactory testing, you can rename wermit to "kermit"
  767. # and put it in some directory that's in everybody's PATH, such as
  768. # /usr/local or /opt/local.
  769. #
  770. # To remove intermediate and object files, "make clean".
  771. # If your C compiler produces files with an extension other than "o",
  772. # then "make clean EXT=u", "make clean EXT=s", or whatever.
  773. #
  774. # To run lint on the source files, "make lintsun", "make lintbsd",
  775. # "make lints5", as appropriate.
  776. #
  777. # ******************************
  778. # SECURE TARGETS
  779. #
  780. # Beginning with C-Kermit 7.0, secure targets are included, as are the
  781. # source modules (ckuat*.[ch], ck_*.[ch]) needed to build them.  Secure
  782. # target names are like the regular names, but with security features
  783. # indicated by plus (+) signs.  The features are:
  784. #
  785. # krb4     MIT Kerberos IV
  786. # krb5     MIT Kerberos V
  787. # openssl  OpenSSL (SSL/TLS)
  788. # zlib     ZLIB compression for SSL/TLS
  789. # srp      Stanford Secure Remote Password
  790. # pam      PAM (pluggable authentication module)
  791. # shadow   Shadow Password File
  792. #
  793. # You can build these targets if you have the Kermit source files and the
  794. # required libraries (Kerberos, OpenSSL, SRP, etc) and header files.  See:
  795. #   http://www.columbia.edu/kermit/security.html
  796. # for specific details regarding supported versions.
  797. #
  798. # NOTE: OpenSSL 0.9.6 and earlier are not compatible with 0.9.7 and later.
  799. # C-Kermit code was originally designed for 0.9.6.  To build with 0.9.7 you
  800. # must add -DOPENSSL_097 to avoid missing symbols in the DES library and to
  801. # use the entry points that were renamed to avoid conflict with Kerberos 4.
  802. # If you have OpenSSL 0.9.8, add -DOPENSSL_098, which is a synonym for
  803. # -DOPENSSL_097.  If you have 1.0.0 or later, add -DOPENSSL_100, which is
  804. # another synonym.
  805.  
  806. # In OpenSSL builds add -ldl if you get unresolved references for
  807. # dlopen, dlclose, dlsym, and/or dlerror.
  808. #
  809. # In order to build a secure version of Kermit, you need to know the location
  810. # of the header (include) files and libraries for the desired form of
  811. # security.  Unless you specify a location, this makefile looks in /usr/local
  812. # and if the required files are not found, the build fails.
  813. #
  814. # If the secure headers and libraries are not on your computer, you have
  815. # to download and install them, for example from http://www.openssl.org .
  816. #
  817. # The following symbols are used to specify library and header file locations:
  818. prefix  = /usr/local
  819. srproot = $(prefix)
  820. sslroot = $(prefix)
  821. manroot = $(prefix)
  822.  
  823. K4LIB=-L/usr/kerberos/lib
  824. K4INC=-I/usr/kerberos/include
  825. K5LIB=-L/usr/kerberos/lib
  826. K5INC=-I/usr/kerberos/include
  827. SRPLIB=-L$(srproot)/lib
  828. SRPINC=-I$(srproot)/include
  829. SSLLIB=-L$(sslroot)/ssl/lib
  830. SSLINC=-I$(sslroot)/ssl/include
  831.  
  832. # To override these assignments; for example, if your OpenSSL files are
  833. # not in /usr/local/ssl, invoke the desired target like this:
  834. #  make solaris9+openssl "SSLINC=-I/opt/openssl-0.9.8k/include" \
  835. #   "SSLLIB=-L/opt/openssl-0.9.8k/lib"
  836. #
  837. # (don't set the variables and then do "make -e" because that breaks 
  838. # chaining of makefile targets.)
  839. #
  840. # Here are some up-to-date secure targets as of Sep 2009: 
  841. #
  842. # aix+openssl:                        IBM AIX 4.2 or later with OpenSSL
  843. # freebsd44+srp+openssl               FreeBSD 4.4 with SRP and OpenSSL
  844. # freebsd50+openssl                   FreeBSD 5.0 with OpenSSL
  845. # hpux1100o+openssl:                  HP-UX 11.xx with OpenSSL
  846. # hpux1000gcc+openssl:                HP-UX 10.xx with OpenSSL (build with gcc)
  847. # hpux1100gcc+openssl:                HP-UX 11.xx with OpenSSL (build with gcc)
  848. # irix6x+krb5:                        IRIX 6.x with Kerberos V
  849. # irix65+krb5:                        etc etc...
  850. # solaris9+openssl                    Solaris 9,10, or 11 with Openssl (Sun cc)
  851. # solaris9g+openssl                   Solaris 9,10, or 11 with Openssl (gcc)
  852. # linux+ssl                           OpenSSL only
  853. # linux+krb5+ssl                      Linux with Kerberos 5 and OpenSSL
  854. # linux+krb5:                         Kerberos 5 only
  855. # The following secure Linux targets have not been updated or tested recently.
  856. # linux+krb5+krb4:
  857. # linux+srp:
  858. # linux+srp+pam:
  859. # linux+srp+gmp:
  860. # linux+srp+gmp+no-des:
  861. # linux+srp+gmp-export:
  862. # linux+srp+gmp+pam:
  863. # linux+shadow+pam:
  864. # linux+openssl:
  865. # linux+openssl+shadow:
  866. # linux+openssl+zlib+shadow+pam:
  867. # linux+srp+openssl:
  868. # linux+krb5+krb4+srp:
  869. # linux+krb5+krb4+srp+openssl:
  870. # linux+krb5+krb4+openssl:
  871. # linux+krb5+krb4+openssl+shadow:
  872. # linux+krb5+krb4+openssl+zlib+shadow:
  873. # linux+krb5+krb4+srp-export:
  874. # linux+krb5+krb4+srp+pam:
  875. # linux+krb5+krb4+srp+openssl+pam-debug:
  876. # linux+krb5+krb4+srp+openssl+pam:
  877. # linux+krb5+krb4+srp+openssl+zlib+pam:
  878. # linux+krb5+krb4+openssl+shadow+pam:
  879. # linux+krb5+openssl+zlib+shadow+pam:
  880. # The following have not been tested recently either and might
  881. # need adjustment.
  882. #
  883. # macosx+krb5+ssl:     Mac OS X 10.3.9 or later + OpenSSL and Kerberos 5
  884. # macosx103+secure:    This one is probably redundant
  885. # netbsd+openssl:      NetBSD with OpenSSL
  886. # openbsd30+ssl:       OpenBSD 3.0 with OpenSSL
  887. # redhat71,redhat72,redhat73,redhat80,redhat9 (Krb5,OpenSSL,Showdow,PAM,Zlib)
  888. # sco32v500net+ssl:
  889. # sco32v505net+ssl:
  890. # solaris2x+krb4:
  891. # solaris2xg+krb4:
  892. # solaris2xg+openssl+pam+shadow:
  893. # solaris2xg+openssl+zlib+pam+shadow:
  894. # solaris2xg+krb5+krb4+openssl+shadow:
  895. # solaris25+krb4:
  896. # solaris25g+krb4:
  897. # solaris26g+openssl:
  898. # solaris8g+openssl+zlib+pam+shadow:
  899. # solaris8g+krb4:
  900. # solaris9g+openssl+zlib+pam+shadow:
  901. # solaris9g+openssl+shadow+pam+zlib
  902. # sunos41gcc+krb4:                    SunOS 4.1 built with gcc with Kerberos IV
  903. # sunos41gcc+openssl:                 SunOS 4.1 built with gcc with OpenSSL
  904. # sunos41gcc+krb4+openssl:            ...with Kerberos IV and OpenSSL
  905. # sunos41gcc+krb4+openssl+zlib:       ditto, plus ZLIB compression
  906. # sunos41gcc+krb4+srp+openssl+zlib:   ditto, plus SRP
  907. # sunos41gcc+srp+openssl+zlib:
  908. # tru64-51b-openssl:                  Tru64 (Digital) Unix 5.1B with OpenSSL
  909. # uw7ssl                              Unixware 7 with SSL
  910. #
  911. ###########################################################################
  912. #
  913. #  Compile and Link variables:
  914. #
  915. #  EXT is the extension (file type) for object files, normally o.
  916. #  See MINIX entry for what to do if another filetype must be used.
  917. #
  918. EXT=o
  919. #LNKFLAGS=
  920. SHAREDLIB=
  921. CC= cc
  922. CC2= cc
  923. MAKE= make
  924. SHELL=/bin/sh
  925.  
  926. ###########################################################################
  927. # (Ancient) UNIX V7-specific variables.
  928. # These are set up for Perkin-Elmer 3230 V7 Unix:
  929. #
  930. PROC=proc
  931. DIRECT=
  932. NPROC=nproc
  933. NPTYPE=int
  934. BOOTFILE=/edition7
  935. #
  936. # ( For old Tandy TRS-80 Model 16A or 6000 V7-based Xenix, use PROC=_proc,
  937. #   DIRECT=-DDIRECT, NPROC=_Nproc, NPTYPE=short, BOOTFILE=/xenix )
  938. #
  939.  
  940. ###########################################################################
  941. # SAMPLE INSTALLATION SCRIPT
  942. #
  943. # Modify to suit your own computer's file organization and permissions.  If
  944. # you don't have write access to the destination directories, "make install"
  945. # fails.  In most cases, a real installation also requires you to chown /
  946. # chgrp the Kermit binary for the UUCP lockfile and/or tty devices, and
  947. # perhaps also to chmod +s the corresponding permission fields.
  948. #
  949. # Default binary, man, and doc directories are supplied below.  You can
  950. # override them in your 'make' command.  Examples:
  951. #
  952. #   make install                                   # Accept defaults.
  953. #   make "INFODIR=/usr/share/lib/kermit" install   # Override INFODIR default.
  954. #
  955. # You can also build and install in one step, e.g.:
  956. #
  957. #   make linux install
  958. #
  959. # If you use the 'install' target to install C-Kermit, it creates an
  960. # UNINSTALL script that can be used to uninstall it.
  961. #
  962. WERMIT = makewhat
  963. BINARY = wermit
  964. DESTDIR =
  965. BINDIR = $(prefix)/bin
  966. MANDIR = $(manroot)/man/man1
  967. MANEXT = 1
  968. SRCDIR =
  969. INFODIR =
  970. CERTDIR =
  971.  
  972. TEXTFILES = COPYING.TXT ckcbwr.txt ckubwr.txt ckuins.txt ckccfg.txt \
  973.         ckcplm.txt ckermit.ini ckermod.ini ckermit70.txt ckermit80.txt
  974.  
  975. ALL = $(WERMIT)
  976.  
  977. all: $(ALL)
  978.  
  979. .c.o:
  980.     $(CC) $(CFLAGS) -DKTARGET=\"$(KTARGET)\" -c $<
  981.  
  982. #Clean up intermediate and object files
  983. clean:
  984.     @echo 'Removing object files...'
  985.     -rm -f ckcmai.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  986. ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckcpro.$(EXT) ckcfns.$(EXT) \
  987. ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) ckucon.$(EXT) ckutio.$(EXT) \
  988. ckufio.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) ckwart.$(EXT) ckuusx.$(EXT) \
  989. ckuusy.$(EXT) ckcnet.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) ckusig.$(EXT) \
  990. ckucns.$(EXT) ckcmdb.$(EXT) ckuath.$(EXT) ckctel.$(EXT) ckclib.$(EXT) \
  991. ckcuni.$(EXT) ck_crp.$(EXT) ck_ssl.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  992. ckcpro.c wart
  993.  
  994. show:
  995.     @echo prefix=$(prefix)
  996.     @echo srproot=$(srproot)
  997.     @echo sslroot=$(sslroot)
  998.     @echo manroot=$(manroot)
  999.     @echo K4LIB=$(K4LIB)
  1000.     @echo K4INC=$(K4INC)
  1001.     @echo K5LIB=$(K5LIB)
  1002.     @echo K5INC=$(K5INC)
  1003.     @echo SRPLIB=$(SRPLIB)
  1004.     @echo SRPINC=$(SRPINC)
  1005.     @echo SSLLIB=$(SSLLIB)
  1006.     @echo SSLINC=$(SSLINC)
  1007.     @exit
  1008.  
  1009. # Install C-Kermit after building -- IMPORTANT: Read the instructions above
  1010. # (SAMPLE INSTALLATION SCRIPT).  For SSL/TLS versions, ca_certs.pem file
  1011. # should be installed in the appropriate place for your OpenSSL library, e.g.:
  1012. #
  1013. #   cp ca_certs.pem /usr/local/ssl/
  1014. #   cp ca_certs.pem /usr/share/ssl/
  1015. #
  1016. # To make sure 'man' notices the new source file and doesn't keep
  1017. # showing the old formatted version, remove the old formatted version,
  1018. # something like this:
  1019. #        rm -f $(MANDIR)/../cat$(MANEXT)/kermit.$(MANEXT)
  1020. # or this (which requires CATDIR to be defined):
  1021. #        rm -f $(CATDIR)/kermit.$(MANEXT)
  1022. #
  1023. # As of C-Kermit 8.0.205 this target also builds an UNINSTALL script, and
  1024. # so it might be too long for some old Bourne shells, in which case you can
  1025. # use a different shell:
  1026. #
  1027. #   make SHELL=ksh install
  1028. #   make SHELL=/bin/posix/sh install
  1029. #
  1030. install:
  1031.     @echo Installing C-Kermit version $(CKVER)...;\
  1032.     rm -f UNINSTALL;\
  1033.     exec 3>./UNINSTALL;\
  1034.     echo "# C-Kermit UNINSTALL script" >&3;\
  1035.     echo "# `date`\n" >&3;\
  1036.     echo "CKVER=$(CKVER)" >&3;\
  1037.     echo "PrN Uninstalling C-Kermit version $(CKVER)..." >&3;\
  1038.     echo DESTDIR=$(DESTDIR);\
  1039.     if test -n "$(DESTDIR)"; then\
  1040.         if test -d $(DESTDIR); then\
  1041.             echo  "$(DESTDIR) exists...\n";\
  1042.         else\
  1043.             echo "Creating $(DESTDIR)...";\
  1044.             DESTDIR=`echo $(DESTDIR) | sed 's!/*$$!!'`;\
  1045.             mkdir $$DESTDIR  || exit 1;\
  1046.         fi;\
  1047.         chmod 755 $(DESTDIR) || exit 1;\
  1048.     fi;\
  1049.     echo BINARY=$(BINARY);\
  1050.     if test -f $(BINARY); then\
  1051.         ls -l $(BINARY);\
  1052.     else\
  1053.         echo "?$(BINARY) not found";\
  1054.         exit 1;\
  1055.     fi;\
  1056.     if test -z "$(DESTDIR)$(BINDIR)"; then\
  1057.         echo "Binary directory not specified";\
  1058.         exit 1;\
  1059.     fi;\
  1060.     if test -d $(DESTDIR)$(BINDIR); then\
  1061.         echo  "$(DESTDIR)$(BINDIR) exists...";\
  1062.     else\
  1063.         echo "Creating $(DESTDIR)$(BINDIR)/...";\
  1064.         mkdir     $(DESTDIR)$(BINDIR) || exit 1;\
  1065.         chmod 755 $(DESTDIR)$(BINDIR);\
  1066.     fi;\
  1067.     rm -f $(DESTDIR)$(BINDIR)/kermit;\
  1068.     cp $(BINARY) $(DESTDIR)$(BINDIR)/kermit || exit 1;\
  1069.     chmod 755    $(DESTDIR)$(BINDIR)/kermit || exit 1;\
  1070.     rm -f        $(DESTDIR)$(BINDIR)/kermit-sshsub;\
  1071.     ln -s        $(DESTDIR)$(BINDIR)/kermit\
  1072.              $(DESTDIR)$(BINDIR)/kermit-sshsub || exit 1;\
  1073.     echo 'set flag=f\nPrC Removing binaries' >&3;\
  1074.     echo "RmF $(DESTDIR)$(BINDIR)/kermit-sshsub" >&3;\
  1075.     echo "RmF $(DESTDIR)$(BINDIR)/kermit" >&3;\
  1076.     if test -f ckermit.ini; then\
  1077.         echo "#!$(BINDIR)/kermit" >\
  1078.             $(DESTDIR)$(BINDIR)/_tmp.ini;\
  1079.         cat ckermit.ini >> $(DESTDIR)$(BINDIR)/_tmp.ini;\
  1080.         mv $(DESTDIR)$(BINDIR)/_tmp.ini\
  1081.            $(DESTDIR)$(BINDIR)/ckermit.ini;\
  1082.         chmod 755 $(DESTDIR)$(BINDIR)/ckermit.ini;\
  1083.         echo "RmF $(DESTDIR)$(BINDIR)/ckermit.ini" >&3;\
  1084.     fi;\
  1085.     echo;\
  1086.     echo 'EfM' >&3;\
  1087.     echo "Kermit binary installed:";\
  1088.     ls -l $(DESTDIR)$(BINDIR)/kermit\
  1089.           $(DESTDIR)$(BINDIR)/kermit-sshsub\
  1090.           $(DESTDIR)$(BINDIR)/ckermit.ini;\
  1091.     echo;\
  1092.     echo " WARNING: If C-Kermit is to be used for dialing out,";\
  1093.     echo " you must change its owner and group and permissions";\
  1094.     echo " to match the 'cu' program.  See the ckuins.txt file";\
  1095.     echo " for details.";\
  1096.     echo;\
  1097.     echo MANDIR=$(MANDIR);\
  1098.     if test -n "$(DESTDIR)$(MANDIR)"; then\
  1099.         if test -d $(DESTDIR)$(MANDIR); then\
  1100.             echo  "$(DESTDIR)$(MANDIR) exists...";\
  1101.         else\
  1102.             echo "Creating $(MANDIR)...";\
  1103.             mkdir $(MANDIR) || exit 1;\
  1104.             chmod 755 $(MANDIR) || exit 1;\
  1105.         fi;\
  1106.         rm -f $(DESTDIR)$(MANDIR)/kermit.$(MANEXT);\
  1107.         cp ckuker.nr $(DESTDIR)$(MANDIR)/kermit.$(MANEXT) || exit 1;\
  1108.         chmod 644 $(DESTDIR)$(MANDIR)/kermit.$(MANEXT) || exit 1;\
  1109.         echo 'set flag=f\nPrC Removing man pages' >&3;\
  1110.         echo "RmF $(DESTDIR)$(MANDIR)/kermit.$(MANEXT)" >&3;\
  1111.         echo 'EfM' >&3;\
  1112.         echo;\
  1113.     else\
  1114.         echo "Not installing man page!\n";\
  1115.     fi;\
  1116.     echo CERTDIR=$(CERTDIR);\
  1117.     if test -n "$(CERTDIR)"; then\
  1118.         if test -f ca_certs.pem; then\
  1119.             if test -d $(CERTDIR); then\
  1120.                 echo  "$(CERTDIR) exists...";\
  1121.             else\
  1122.                 echo "Creating $(CERTDIR)...";\
  1123.                 mkdir $(CERTDIR) || exit 1;\
  1124.                 chmod 755 $(CERTDIR) || exit 1;\
  1125.             fi;\
  1126.             echo "Installing certificates file...";\
  1127.             cp ca_certs.pem $(CERTDIR) || exit 1;\
  1128.             echo 'set flag=f' >&3;\
  1129.             echo 'PrC Removing certificates file' >&3;\
  1130.             echo "RmF $(CERTDIR)/ca_certs.pem" >&3;\
  1131.             echo 'EfM' >&3;\
  1132.             echo;\
  1133.         fi;\
  1134.     else\
  1135.         echo "Not installing certificates file!\n";\
  1136.     fi;\
  1137.     echo SRCDIR=$(DESTDIR)$(SRCDIR);\
  1138.     if test -n "$(SRCDIR)"; then\
  1139.         echo "Installing source files...";\
  1140.         if test -d $(DESTDIR)$(SRCDIR); then\
  1141.             echo  "$(DESTDIR)$(SRCDIR) exists...";\
  1142.         else\
  1143.             echo "Creating $(DESTDIR)$(SRCDIR)/...";\
  1144.             mkdir     $(DESTDIR)$(SRCDIR) || exit 1;\
  1145.             chmod 755 $(DESTDIR)$(SRCDIR);\
  1146.         fi;\
  1147.         echo "Copying source files to $(DESTDIR)$(SRCDIR)...";\
  1148.         echo 'set flag=f\nPrC Removing source files' >&3;\
  1149.         for TextFile in COPYING.TXT ck[cuw_]*.[cwh] makefile; do\
  1150.             cp $$TextFile $(DESTDIR)$(SRCDIR)/ && echo ".\c";\
  1151.             echo "RmF $(DESTDIR)$(SRCDIR)/$$TextFile" >&3;\
  1152.         done; echo;\
  1153.         echo 'EfM' >&3;\
  1154.         ( cd $(DESTDIR)$(SRCDIR)/ &&\
  1155.         ls -l COPYING.TXT ck[cuw_]*.[cwh] makefile );echo;\
  1156.     else\
  1157.         echo "Not installing source code!\n";\
  1158.     fi;\
  1159.     echo INFODIR=$(DESTDIR)$(INFODIR);\
  1160.     if test -n "$(INFODIR)"; then\
  1161.         echo "Installing info files...";\
  1162.         if test -d $(DESTDIR)$(INFODIR); then\
  1163.             echo  "$(DESTDIR)$(INFODIR) exists...";\
  1164.         else\
  1165.             echo "Creating $(DESTDIR)$(INFODIR)/...";\
  1166.             mkdir     $(DESTDIR)$(INFODIR) || exit 1;\
  1167.             chmod 755 $(DESTDIR)$(INFODIR);\
  1168.         fi;\
  1169.         echo "Copying text files to $(DESTDIR)$(INFODIR)...";\
  1170.         echo 'set flag=f\nPrC Removing text files' >&3;\
  1171.         FileCopyList='';\
  1172.         for TextFile in $(TEXTFILES); do\
  1173.             test -f $$TextFile || continue;\
  1174.             cp $$TextFile $(DESTDIR)$(INFODIR) && echo ".\c" &&\
  1175.             FileCopyList="$$FileCopyList $$TextFile";\
  1176.             echo "RmF $(DESTDIR)$(INFODIR)/$$TextFile" >&3;\
  1177.         done; echo;\
  1178.         echo 'EfM' >&3;\
  1179.         ( cd $(DESTDIR)$(INFODIR)/ && chmod  644   $$FileCopyList );\
  1180.         ( cd $(DESTDIR)$(INFODIR)/ && pwd && ls -l $$FileCopyList );\
  1181.     else\
  1182.         echo "Not installing text files!\n";\
  1183.     fi;\
  1184.     echo "set flag=d\nPrN Removing empty dirs..." >&3;\
  1185.     echo "RmD $(DESTDIR)$(BINDIR)" >&3;\
  1186.     echo "RmD $(DESTDIR)$(SRCDIR)" >&3;\
  1187.     echo "RmD $(DESTDIR)$(INFODIR)" >&3;\
  1188.     echo "RmD $(CERTDIR)" >&3;\
  1189.     echo "RmD $(MANDIR)" >&3;\
  1190.     echo "RmD $(DESTDIR)" >&3;\
  1191.     echo "EfM" >&3;\
  1192.     echo "PrN C-Kermit version $(CKVER) is uninstalled!" >&3;\
  1193.     echo C-Kermit version $(CKVER) installed!
  1194.  
  1195. # UN-Install C-Kermit after building
  1196. # Please to not remove the extra blanks before and after '{}' within the
  1197. # functions. You would get syntax errors for some older Bourne shells! Best is 
  1198. # you don't change or remove anything.
  1199. #
  1200. uninstall:
  1201.     @if test ! -f UNINSTALL; then\
  1202.         echo "?C-Kermit UNINSTALL data file not found!";\
  1203.         exit 1;\
  1204.     fi; \
  1205.     X=`grep '^CKVER='$(CKVER)'$$' ./UNINSTALL || :`;\
  1206.     if test -z "$$X"; then\
  1207.         echo "?UNINSTALL file is not for C-Kermit version $(CKVER)";\
  1208.         exit 2;\
  1209.     fi;\
  1210.     PrN () { echo "$$*"; };\
  1211.     PrC () { echo "$$* \c"; };\
  1212.     RmF () { test -f "$$1" && rm -f "$$1" && echo ".\c" && flag=F ; };\
  1213.     RmD () { \
  1214.     dir=$$1;\
  1215.     while test -d "$$dir"; do\
  1216.         rmdir "$$dir" 2>&- || return && echo "$$dir" && flag=D;\
  1217.         dir=`echo "$$dir" | sed 's!/[^/]*/*$$!!'`;\
  1218.     done; \
  1219.     };\
  1220.     EfM () { \
  1221.     case "$$flag" in\
  1222.         f) echo "- Nothing to remove!";;\
  1223.         d) echo "Nothing to remove!";;\
  1224.         F) echo " done";;\
  1225.         D) echo "done";;\
  1226.     esac; \
  1227.     };\
  1228.     while read Act Args; do\
  1229.         case $$Act in\
  1230.             EfM) EfM;;\
  1231.             RmD) RmD $$Args;;\
  1232.             RmF) RmF $$Args;;\
  1233.             PrN) PrN $$Args;;\
  1234.             PrC) PrC $$Args;;\
  1235.             set) eval $$Args;;\
  1236.         esac;\
  1237.     done < ./UNINSTALL
  1238.  
  1239. makewhat:
  1240.     @echo 'make what?  You must tell which platform to make C-Kermit for.'
  1241.     @echo Examples: make linux, make aix, make solaris10, make hpux1100.
  1242.     @echo Please read the comments at the beginning of the makefile.
  1243.  
  1244. ###########################################################################
  1245. #
  1246. # Dependencies Section:
  1247.  
  1248. wermit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1249.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1250.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1251.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1252.         ckucon.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1253.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1254.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1255.     $(CC2) $(LNKFLAGS) -o wermit \
  1256.         ckcmai.$(EXT) ckclib.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1257.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1258.         ckcpro.$(EXT) ckucmd.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) \
  1259.         ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) \
  1260.         ckuusx.$(EXT) ckuusy.$(EXT) ckuusr.$(EXT) ckucon.$(EXT) \
  1261.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) \
  1262.         ckusig.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  1263.         $(LIBS)
  1264.  
  1265. # Preferred configuration with select()-based CONNECT
  1266.  
  1267. xermit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1268.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1269.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1270.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1271.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1272.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1273.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) ckuath.$(EXT) \
  1274.         ck_crp.$(EXT) ck_ssl.$(EXT)
  1275.     $(CC2) $(LNKFLAGS) -o wermit \
  1276.         ckcmai.$(EXT) ckclib.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1277.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1278.         ckcpro.$(EXT) ckucmd.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) \
  1279.         ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) \
  1280.         ckuusx.$(EXT) ckuusy.$(EXT) ckuusr.$(EXT) ckucns.$(EXT) \
  1281.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckusig.$(EXT) \
  1282.         ckctel.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  1283.         ckuath.$(EXT) ck_crp.$(EXT) ck_ssl.$(EXT) $(LIBS)
  1284.  
  1285. # Malloc Debugging version
  1286.  
  1287. mermit:    ckcmdb.$(EXT) ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) \
  1288.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1289.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1290.         ckcpro.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) \
  1291.         ckuxla.$(EXT) ckucon.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1292.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) \
  1293.         ckusig.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1294.     $(CC2) $(LNKFLAGS) -o mermit ckcmdb.$(EXT) ckclib.$(EXT) ckcmai.$(EXT)\
  1295.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1296.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1297.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1298.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1299.         ckuusr.$(EXT) ckucon.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1300.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckcuni.$(EXT) \
  1301.         ckupty.$(EXT) ckcftp.$(EXT) $(LIBS)
  1302.  
  1303. # Kerberized Version - Subject to USA export restrictions.
  1304.  
  1305. # NOTE: We don't use this any more -- As of 15 Feb 2003, the "xermit"
  1306. # target is used for both secure and regular version.
  1307.  
  1308. krbmit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1309.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1310.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1311.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1312.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1313.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1314.         ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) \
  1315.         ckcftp.$(EXT) ck_ssl.$(EXT)
  1316.     $(CC2) $(LNKFLAGS) -o krbmit ckcmai.$(EXT) ckclib.$(EXT) \
  1317.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1318.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1319.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1320.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1321.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1322.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1323.         ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) \
  1324.         ck_ssl.$(EXT) $(LIBS)
  1325.  
  1326. krbmit-debug:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) \
  1327.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1328.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1329.         ckcpro.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) \
  1330.         ckuxla.$(EXT) ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) \
  1331.         ckudia.$(EXT) ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) \
  1332.         ckusig.$(EXT) ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) \
  1333.         ckupty.$(EXT) ck_ssl.$(EXT) ckcmdb.$(EXT) ckcftp.$(EXT)
  1334.     $(CC2) $(LNKFLAGS) -o krbmit ckcmdb.$(EXT) ckcmai.$(EXT) \
  1335.         ckclib.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) \
  1336.         ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) \
  1337.         ckucmd.$(EXT) ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) \
  1338.         ckuus5.$(EXT) ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) \
  1339.         ckuusy.$(EXT) ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) \
  1340.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1341.         ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) \
  1342.         ckcftp.$(EXT) ck_ssl.$(EXT) $(LIBS)
  1343.  
  1344. # SRP(TM) Version - Subject to USA export restrictions.
  1345.  
  1346. srpmit:    ckcmai.$(EXT) ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1347.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1348.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1349.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1350.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1351.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1352.         ckuath.$(EXT) ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) \
  1353.         ckcftp.$(EXT) ck_ssl.$(EXT)
  1354.     $(CC2) $(LNKFLAGS) -o srpmit ckcmai.$(EXT) ckclib.$(EXT) \
  1355.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1356.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1357.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1358.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1359.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1360.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1361.         ck_crp.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ck_ssl.$(EXT) \
  1362.         ckcftp.$(EXT) $(LIBS)
  1363.  
  1364. # Kerberized Version - Not subject to USA export restrictions.
  1365.  
  1366. krbmit-export:    ckcmai.$(EXT) \
  1367.         ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1368.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1369.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1370.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1371.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1372.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1373.         ckuath.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1374.     $(CC2) $(LNKFLAGS) -o krbmit-export ckcmai.$(EXT) ckclib.$(EXT) \
  1375.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1376.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1377.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1378.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1379.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1380.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1381.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) $(LIBS)
  1382.  
  1383. # SRP(TM) Version - Not subject to USA export restrictions.
  1384.  
  1385. srpmit-export:    ckcmai.$(EXT) \
  1386.         ckclib.$(EXT) ckucmd.$(EXT) ckuusr.$(EXT) ckuus2.$(EXT) \
  1387.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  1388.         ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) ckcpro.$(EXT) \
  1389.         ckcfns.$(EXT) ckcfn2.$(EXT) ckcfn3.$(EXT) ckuxla.$(EXT) \
  1390.         ckucns.$(EXT) ckutio.$(EXT) ckufio.$(EXT) ckudia.$(EXT) \
  1391.         ckuscr.$(EXT) ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) \
  1392.         ckuath.$(EXT) ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT)
  1393.     $(CC2) $(LNKFLAGS) -o srpmit-export ckcmai.$(EXT) ckclib.$(EXT) \
  1394.         ckutio.$(EXT) ckufio.$(EXT) ckcfns.$(EXT) ckcfn2.$(EXT) \
  1395.         ckcfn3.$(EXT) ckuxla.$(EXT) ckcpro.$(EXT) ckucmd.$(EXT) \
  1396.         ckuus2.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  1397.         ckuus6.$(EXT) ckuus7.$(EXT) ckuusx.$(EXT) ckuusy.$(EXT) \
  1398.         ckuusr.$(EXT) ckucns.$(EXT) ckudia.$(EXT) ckuscr.$(EXT) \
  1399.         ckcnet.$(EXT) ckctel.$(EXT) ckusig.$(EXT) ckuath.$(EXT) \
  1400.         ckcuni.$(EXT) ckupty.$(EXT) ckcftp.$(EXT) $(LIBS)
  1401.  
  1402. ###########################################################################
  1403. # man page...
  1404. #
  1405. ckuker.nr:
  1406.     @echo This target is obsolete.
  1407.     @echo The ckuker.nr file no longer needs any preprocessing.
  1408.  
  1409. ###########################################################################
  1410. # Dependencies for each module...
  1411. #
  1412. ckcmai.$(EXT): ckcmai.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcnet.h ckcsig.h \
  1413.         ckuusr.h ckctel.h ckclib.h
  1414.  
  1415. ckclib.$(EXT): ckclib.c ckclib.h ckcdeb.h ckcasc.h ckcsym.h
  1416.  
  1417. ckcpro.$(EXT): ckcpro.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckclib.h
  1418.  
  1419. ckcpro.c: ckcpro.w wart ckcdeb.h ckcsym.h ckcasc.h ckcker.h ckcnet.h ckctel.h \
  1420.      ckclib.h
  1421.     ./wart ckcpro.w ckcpro.c
  1422.  
  1423. ckcfns.$(EXT): ckcfns.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h ckcuni.h \
  1424.         ckuxla.h ckclib.h ckcnet.h
  1425.  
  1426. ckcfn2.$(EXT): ckcfn2.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h \
  1427.         ckuxla.h ckctel.h ckclib.h ckcnet.h ckcuni.h
  1428.  
  1429. ckcfn3.$(EXT): ckcfn3.c ckcker.h ckcdeb.h ckcsym.h ckcasc.h ckcxla.h \
  1430.         ckuxla.h ckclib.h ckcuni.h
  1431.  
  1432. ckuxla.$(EXT): ckuxla.c ckcker.h ckcsym.h ckcdeb.h ckcxla.h ckuxla.h ckclib.h \
  1433.          ckcuni.h
  1434.  
  1435. ckcuni.$(EXT): ckcuni.c ckcdeb.h ckcker.h ckucmd.h ckcuni.h ckcxla.h ckuxla.h
  1436.  
  1437. ckuusr.$(EXT): ckuusr.c ckucmd.h ckcker.h ckuusr.h ckcsym.h ckcdeb.h ckcxla.h \
  1438.         ckuxla.h ckcasc.h ckcnet.h ckctel.h ckclib.h ckcuni.h
  1439.  
  1440. ckuus2.$(EXT): ckuus2.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1441.         ckcasc.h ckcnet.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1442.  
  1443. ckuus3.$(EXT): ckuus3.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1444.         ckcasc.h ckcnet.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1445.  
  1446. ckuus4.$(EXT): ckuus4.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1447.         ckcasc.h ckcnet.h ckuver.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1448.  
  1449. ckuus5.$(EXT): ckuus5.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcnet.h \
  1450.          ckcsym.h ckctel.h ckclib.h ckcxla.h ckuxla.h ckcuni.h
  1451.  
  1452. ckuus6.$(EXT): ckuus6.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcnet.h \
  1453.          ckcsym.h ckctel.h ckclib.h
  1454.  
  1455. ckuus7.$(EXT): ckuus7.c ckucmd.h ckcker.h ckuusr.h ckcdeb.h ckcxla.h ckuxla.h \
  1456.         ckcasc.h ckcnet.h ckcsym.h ckctel.h ckclib.h ckcuni.h
  1457.  
  1458. ckuusx.$(EXT): ckuusx.c ckcker.h ckuusr.h ckcdeb.h ckcasc.h ckcsym.h \
  1459.         ckcsig.h ckcnet.h ckctel.h ckclib.h ckcxla.h ckuxla.h ckcuni.h
  1460.  
  1461. ckuusy.$(EXT): ckuusy.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h ckctel.h \
  1462.          ckclib.h
  1463.  
  1464. ckucmd.$(EXT): ckucmd.c ckcasc.h ckucmd.h ckcdeb.h ckcsym.h ckctel.h ckclib.h
  1465.  
  1466. ckufio.$(EXT): ckufio.c ckcdeb.h ckuver.h ckcsym.h ckclib.h \
  1467.         ckcxla.h ckuxla.h ckcuni.h
  1468.  
  1469. ckutio.$(EXT): ckutio.c ckcdeb.h ckcnet.h ckuver.h ckcsym.h ckctel.h ckclib.h
  1470.  
  1471. ckucon.$(EXT): ckucon.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h ckctel.h \
  1472.          ckclib.h
  1473.  
  1474. ckucns.$(EXT): ckucns.c ckcker.h ckcdeb.h ckcasc.h ckcnet.h ckcsym.h ckctel.h \
  1475.          ckclib.h ckcxla.h ckuxla.h ckcuni.h
  1476.  
  1477. ckcnet.$(EXT): ckcnet.c ckcdeb.h ckcker.h ckcnet.h ckcsym.h ckcsig.h ckctel.h \
  1478.          ckclib.h
  1479.  
  1480. ckctel.$(EXT): ckcsym.h ckcdeb.h ckcker.h ckcnet.h ckctel.h ckclib.h
  1481.  
  1482. # ck_off_t: ck_off_t.$(EXT)
  1483. #    $(CC) -o ck_off_t ck_off_t.$(EXT)
  1484.  
  1485. wart: ckwart.$(EXT)
  1486.     $(CC) $(LNKFLAGS) -o wart ckwart.$(EXT) $(LIBS)
  1487.  
  1488. ckcmdb.$(EXT): ckcmdb.c ckcdeb.h ckcsym.h ckclib.h
  1489.  
  1490. ckwart.$(EXT): ckwart.c
  1491.  
  1492. ckudia.$(EXT): ckudia.c ckcker.h ckcdeb.h ckucmd.h ckcasc.h ckcsym.h ckcsig.h \
  1493.         ckcnet.h ckctel.h ckclib.h
  1494.  
  1495. ckuscr.$(EXT): ckuscr.c ckcker.h ckcdeb.h ckcasc.h ckcsym.h ckcsig.h \
  1496.         ckcnet.h ckctel.h ckclib.h
  1497.  
  1498. ckusig.$(EXT): ckusig.c ckcasc.h ckcdeb.h ckcker.h ckcnet.h ckuusr.h \
  1499.         ckcsig.h ckctel.h ckclib.h
  1500.  
  1501. ckcftp.$(EXT): ckcftp.c ckcdeb.h ckcasc.h ckcker.h ckucmd.h ckuusr.h \
  1502.         ckcnet.h ckctel.h ckcxla.h ckuxla.h ckcuni.h
  1503.  
  1504. ckupty.$(EXT): ckupty.c ckupty.h ckcdeb.h
  1505.  
  1506. ckuath.$(EXT): ckuath.c ckcdeb.h ckucmd.h ckuath.h ckuat2.h ckctel.h \
  1507.          ckclib.h ckcnet.h
  1508.  
  1509. ck_crp.$(EXT): ck_crp.c ckcdeb.h ckcnet.h ckuath.h ckclib.h
  1510.  
  1511. ck_ssl.$(EXT): ck_ssl.c ckcdeb.h ckucmd.h ckuath.h ckuat2.h ckctel.h \
  1512.          ckclib.h ck_ssl.h
  1513.  
  1514. ###########################################################################
  1515. #
  1516. # Entries to make C-Kermit for specific systems.
  1517. #
  1518. # Put the ones that need short makefiles first.
  1519.  
  1520. #Apollo Aegis 9.x.  Includes TCP/IP support.
  1521. #You can also add processor-dependent optimization switches like -M570.
  1522. aegis:
  1523.     @echo Making C-Kermit $(CKVER) for Apollo Aegis 9.x...
  1524.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1525.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNOCSETS -DCK_CURSES -O $(KFLAGS)" \
  1526.     "LIBS = -lcurses -ltermcap"
  1527.  
  1528. #Apple Mac II, A/UX pre-3.0
  1529. #Warning, if "send *" doesn't work, try the auxufs makefile entry below.
  1530. aux:
  1531.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  1532.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1533.     "CFLAGS = -DAUX -DTCPSOCKET $(KFLAGS) -i -O" "LNKFLAGS = -i"
  1534.  
  1535. #Apple Mac II, A/UX pre-3.0, compiled with gcc
  1536. auxgcc:
  1537.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  1538.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1539.     "CFLAGS = -DAUX -DTCPSOCKET -traditional $(KFLAGS) -i -O" \
  1540.     "LNKFLAGS = " "CC = gcc" "CC2 = gcc"
  1541.  
  1542. #Apple Mac II, A/UX, pre-3.0, but with ufs file volumes, uses <dirent.h>.
  1543. auxufs:
  1544.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX...
  1545.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1546.     "CFLAGS = -DAUX -DTCPSOCKET -DDIRENT $(KFLAGS) -i -O" "LNKFLAGS = -i"
  1547.  
  1548. #Apple Mac II, A/UX 3.0, compiled with gcc
  1549. aux3gcc:
  1550.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX 3.0...
  1551.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  1552.     "CFLAGS = -DAUX -DHDBUUCP -DLFDEVNO -DTCPSOCKET -DDIRENT $(KFLAGS)" \
  1553.     "LNKFLAGS = -s" "LIBS = $(LIBS)" \
  1554.     "CC=gcc -pipe -traditional" "CC2=gcc -pipe -traditional"
  1555.  
  1556. #Apple Mac II, A/UX 3.0, compiled with gcc, uses curses
  1557. aux3cgcc:
  1558.     @echo Making C-Kermit $(CKVER) for Macintosh A/UX 3.0...
  1559.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) aux3gcc \
  1560.     KTARGET=$${KTARGET:-$(@)} \
  1561.     "KFLAGS=$(KFLAGS) -DCK_CURSES" "LIBS = -lcurses $(LIBS)"
  1562.  
  1563. # Tenon MachTen, tested on Apple Powerbook with MachTen 2.1.1.D.
  1564. # NOTE: This doesn't do anything about UUCP.  It only works if /usr/spool/uucp
  1565. # has permission of 777, and dialout device is world read/writeable.
  1566. machten:
  1567.     @echo Making C-Kermit $(CKVER) for MachTen...
  1568.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  1569.     "CFLAGS= -DBSD43 -DTCPSOCKET -DSIG_V -DNDGPWNAM -DCK_CURSES -O \
  1570.     $(KFLAGS)"  "LIBS=-lcurses -ltermcap"
  1571.  
  1572. #Bell Labs Research UNIX V10
  1573. #Can't add TCP/IP because there is no sockets library.  It would have to
  1574. #be done using streams, but there is no code in C-Kermit for that.
  1575. #Remove -DNOJC if desired (if your system has csh, ksh, or bash).
  1576. bellv10:
  1577.     @echo Making C-Kermit $(CKVER) for Bell Labs Research UNIX V10...
  1578.     $(MAKE) wermit KTARGET=$${KTARGET-$(@)} \
  1579.     "CFLAGS= -DBELLV10 -DBSD4 -DNDIR -DNOJC -DNOSYSIOCTLH -DNOSETREU \
  1580.     -DNOCSETS -MINIDIAL $(KFLAGS)"
  1581.  
  1582. # WARNING: The early BSD entries do not build in version 7.0 with the stock
  1583. # BSD compiler: "Too many defines".  Unless you can rebuild cpp to have more
  1584. # space for defines, these builds must be accomplished by:
  1585. # copying the /usr/include tree to someplace else, preprocessing there with cc
  1586. # -E -I./include or whatever (plus all the same -D's, adding any necessary
  1587. # -U/-D to override the architecture)), renaming the the resulting files back
  1588. # to their original names, bringing them back to the original BSD system, and
  1589. # running the make target there.  This technique was used for 4.2 and 4.3 BSD
  1590. # on a VAX in C-Kermit 7.0 (later, cpp on that machine was rebuilt to allow
  1591. # more symbols, so the C-Kermit 8.0 build proceeds normally).
  1592.  
  1593. #Berkeley Unix 4.1
  1594. bsd41:
  1595.     @echo Making C-Kermit $(CKVER) for 4.1BSD...
  1596.     $(MAKE) wermit KTARGET=$${KTARGET-$(@)} \
  1597.     "CFLAGS= -DBSD41" "LIBS = -ljobs"
  1598.  
  1599. #Berkeley 4.2, 4.3, also Ultrix-32 1.x, 2.x, 3.x, many others
  1600. # Add -O, -s, etc, if they work.
  1601. # If you have a version of BSD but signal() is void rather than int,
  1602. # "make bsd KFLAGS=-DSIG_V".
  1603. bsd42:
  1604.     @echo Making C-Kermit $(CKVER) for 4.2BSD...
  1605.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1606.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNOREALPATH -DNOTIMEH -DNOIKSD \
  1607.     -DCK_CURSES -DSYSTIMEBH -DNOPUTENV -DNOANSI -DBIGBUFOK -DBSD42HACK \
  1608.     $(KFLAGS)" "LIBS=-lcurses -ltermcap $(LIBS)"
  1609.  
  1610. bsd:
  1611.     $(MAKE) CC=$(CC) CC2=$(CC2) bsd42 KTARGET=$${KTARGET-$(@)}
  1612.  
  1613. #Berkeley Unix 4.2 or 4.3 with HoneyDanBer UUCP
  1614. bsdhdb:
  1615.     @echo Making C-Kermit $(CKVER) for 4.2BSD with HDB UUCP...
  1616.     $(MAKE) CC=$(CC) CC2=$(CC2) bsd KTARGET=$${KTARGET-$(@)} \
  1617.     "KFLAGS= -DHDBUUCP $(KFLAGS)"
  1618.  
  1619. #Berkeley Unix 4.3 with acucntrl program, curses, TCP/IP included.
  1620. bsd43:
  1621.     @echo Making C-Kermit $(CKVER) for 4.3BSD...
  1622.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1623.     "CFLAGS= -DBSD4 -DBSD43 -DTCPSOCKET -DNOREALPATH -DNOTIMEH -DNOIKSD \
  1624.     -DCK_CURSES -DACUCNTRL -DSYSTIMEBH -DNOPUTENV -DNOANSI -DBIGBUFOK \
  1625.     -DBSD42HACK $(KFLAGS)" "LIBS=-lcurses -ltermcap $(LIBS)"
  1626.  
  1627. #4.3BSD, curses excluded
  1628. bsd43nc:
  1629.     @echo Making C-Kermit $(CKVER) for 4.3BSD...
  1630.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1631.     "CFLAGS= -DBSD4 -DBSD43 -DTCPSOCKET -DNOREALPATH -DNOTIMEH \
  1632.     -DACUCNTRL -DSYSTIMEBH -DNOIKSD -DNOPUTENV -DNOANSI -DBIGBUFOK \
  1633.     -DBSD42HACK $(KFLAGS)" "LIBS=$(LIBS)"
  1634.  
  1635. #4.3BSD, TCP/IP excluded.
  1636. bsd43nonet:
  1637.     @echo Making C-Kermit $(CKVER) for 4.3BSD + curses...
  1638.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  1639.     "CFLAGS= -DBSD4 -DBSD43 -DTCPSOCKET -DNOREALPATH -DNOTIMEH -DNOIKSD \
  1640.     -DCK_CURSES -DACUCNTRL -DSYSTIMEBH -DNOPUTENV -DNOANSI -DBIGBUFOK \
  1641.     -DBSD42HACK -DNONET $(KFLAGS)" "LIBS=-lcurses -ltermcap $(LIBS)"
  1642.  
  1643. #Berkeley Unix 4.2 or 4.3 with lock directory /usr/spool/uucp/LCK/LCK..ttyxx,
  1644. #but without acucntrl program
  1645. bsdlck:
  1646.     @echo Making C-Kermit $(CKVER) for 4.2BSD, /usr/spool/uucp/LCK/...
  1647.     $(MAKE) CC=$(CC) CC2=$(CC2) bsd KTARGET=$${KTARGET-$(@)} \
  1648.     "KFLAGS= -DLCKDIR $(KFLAGS)"
  1649.  
  1650. #Berkeley UNIX 4.4-Lite, 4.4-Encumbered, Net/2, etc (Post-Reno),
  1651. #with TCP/IP networking.  This was the basis for FreeBSD, NetBSD, OpenBSD,
  1652. #BSDI, BSD/OS, and Mac OS X (each of which has its own set of targets that
  1653. #are newer than this one).
  1654. #
  1655. #NOTE: This is not a pure POSIX configuration.  Using -DPOSIX instead of
  1656. # -DBSD44 prevents any kind of directory-reading (for wildcard expansion),
  1657. #and disallows use of ENOTCONN symbol for detecting broken network
  1658. #connections, and disallows RTS/CTS flow control, and would also require
  1659. #definition of the appropriate UUCP lockfile convention.
  1660. #Do not add -DCK_POSIX_SIG without reading <signal.h> first!  For example,
  1661. #sigsetjmp(), etc, tend to be defined but not implemented.
  1662. #
  1663. #NOTE: originally crypt was in libc - later it was unbundled.
  1664. #Remove the LIBS clause to build on an early 4.4BSD platform.
  1665. #
  1666. bsd44:
  1667.     @echo Making C-Kermit $(CKVER) for 4.4BSD...
  1668.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1669.     "CFLAGS= -DBSD44 -DTCPSOCKET $(KFLAGS) -O" "LIBS=-lcrypt"
  1670.  
  1671. #Berkeley UNIX 4.4, as above, but with curses for fullscreen display
  1672. #Please read notes for bsd44 entry just above.
  1673. # NOTE: This one dumped core on the real 4.4BSD development system at
  1674. # UC Berkeley (an HP-9000/300), so the no-curses version was used
  1675. # for that one, which was unplugged years ago.
  1676. bsd44c:
  1677.     @echo Making C-Kermit $(CKVER) for 4.4BSD with curses...
  1678.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1679.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET $(KFLAGS) -O" \
  1680.     "LIBS= -lcurses -ltermcap -lcrypt $(LIBS)"
  1681.  
  1682. #For FreeBSD 1.x.
  1683. freebsd1:
  1684.     @echo 'Making C-Kermit $(CKVER) for FreeBSD...'
  1685.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1686.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -funsigned-char \
  1687.     -DFNFLOAT -DNOHTERMCAP -DNOREALPATH -DNOSYSCONF $(KFLAGS) -O -pipe" \
  1688.     "LIBS= -lcurses -ltermcap -lm $(LIBS)"
  1689.  
  1690. #FreeBSD 2.x with ncurses
  1691. freebsd2:
  1692.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 2.x with ncurses...'
  1693.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1694.     "CFLAGS= -DBSD44 -DCK_NCURSES -DTCPSOCKET -DNOCOTFMC -DUSE_STRERROR \
  1695.     -DTPUTSARGTYPE=int -DTPUTSARG1CONST -DFREEBSD2 -funsigned-char \
  1696.     -DFNFLOAT $(KFLAGS) -O -pipe" \
  1697.     "LIBS= -lncurses -ltermlib -lcrypt -lm $(LIBS)"
  1698.  
  1699. #For FreeBSD 2.x -- Uses curses rather than ncurses
  1700. freebsd2c:
  1701.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 2.x with curses...'
  1702.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1703.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -DUSE_STRERROR \
  1704.     -DTPUTSARGTYPE=int -DTPUTSARG1CONST -DFREEBSD2 -DFNFLOAT \
  1705.     -funsigned-char $(KFLAGS) -O -pipe" \
  1706.     "LIBS= -lcurses -ltermlib -lcrypt -lm $(LIBS)"
  1707.  
  1708. #FreeBSD 3.x with ncurses and uu_lock()
  1709. #(Note: uu_lock() goes back to 2.2.2, but not necessarily 2.0)
  1710. #OK 2011/08/20 FreeBSD 3.3
  1711. freebsd3:
  1712.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 3.x with ncurses...'
  1713.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1714.     "CFLAGS= -DBSD44 -DCK_NCURSES -DTCPSOCKET -DNOCOTFMC -funsigned-char \
  1715.     -DTPUTSARGTYPE=int -DUSE_STRERROR -DFREEBSD3 -DUSE_UU_LOCK -DFNFLOAT \
  1716.     $(KFLAGS) -O -pipe" \
  1717.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1718.  
  1719. #As above but with curses rather than ncurses.
  1720. freebsd3c:
  1721.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 3.x with curses...'
  1722.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1723.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DNOCOTFMC -DUSE_UU_LOCK \
  1724.     -DTPUTSARGTYPE=int -DUSE_STRERROR -DFREEBSD3 $(KFLAGS) -DFNFLOAT \
  1725.     -funsigned-char -pipe -O" \
  1726.     "LIBS= -lcurses -lcrypt -lutil -lm $(LIBS)"
  1727.  
  1728. #FreeBSD 4.0 with ncurses and uu_lock().  Note - there is no curses in 4.0.
  1729. #ncurses 5.0 is broken requiring us to work around with setbuf().
  1730. freebsd40:
  1731.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.x with ncurses...'
  1732.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1733.     "CFLAGS= -DBSD44 -DCK_NCURSES -DTCPSOCKET -DNOCOTFMC -DFNFLOAT \
  1734.     -funsigned-char -DTPUTSARGTYPE=int -DUSE_STRERROR -DFREEBSD4 \
  1735.     -DNONOSETBUF -DUSE_UU_LOCK $(KFLAGS) -O -pipe" \
  1736.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1737.  
  1738. #FreeBSD 4.1 and above
  1739. #Like FreeBSD 4.0 but without the NONOSETBUF hack and with CK_NEWTERM.
  1740. #NOTE: This target definitely does not work for FreeBSD 3.3 in 9.0.302.
  1741. #and it has not been tested on 4 or 5.
  1742. #OK 2011/06/xx FreeBSD 3.3, 4,4, 4.7, and 8.2
  1743. #OK 2011/08/21 FreeBSD 3.3, 4.4, 6.4, 9.0
  1744. freebsd freebsd41 freebsd72 freebsd5 freebsd6 freebsd7 freebsd8 freebsd9:
  1745.     @echo 'Making C-Kermit $(CKVER) for FreeBSD 4.1 or later...'
  1746.     @if test `uname -r | cut -d . -f 1` -ge 8; then \
  1747.        HAVE_FBSD8='-DFREEBSD8'; \
  1748.     else HAVE_FBSD8=''; fi; \
  1749.     if test `uname -r | cut -d . -f 1` -ge 9; then \
  1750.        HAVE_FBSD9='-DFREEBSD9'; \
  1751.     else HAVE_FBSD9='';  fi; \
  1752.     if test -f /usr/include/utmpx.h ; \
  1753.     then HAVE_UTMPX='-DHAVEUTMPX' ; \
  1754.     else HAVE_UTMPX='' ; fi; \
  1755.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1756.     "CFLAGS= -DBSD44 -DCK_NCURSES -DCK_NEWTERM -DTCPSOCKET -DNOCOTFMC \
  1757.     -DFREEBSD4 $$HAVE_FBSD8 $$HAVE_FBSD9 -DUSE_UU_LOCK -DFNFLOAT \
  1758.     $$HAVE_UTMPX -DHERALD=\"\\\" `uname -rs`\\\"\" \
  1759.     -funsigned-char -DTPUTSARGTYPE=int -DUSE_STRERROR $(KFLAGS) \
  1760.     -O2 -pipe"\
  1761.     "LIBS= -lncurses -lcrypt -lutil -lm $(LIBS)"
  1762.  
  1763. #FreeBSD 5.0 or later with OpenSSL.
  1764. #OK 2011/06/15 FreeBSD 4.7 and 8.2
  1765. #OK 2011/08/20 FreeBSD 9.0-CURRENT
  1766. freebsd+ssl freebsd+openssl freebsd50+openssl:
  1767.     @echo 'Making C-Kermit $(CKVER) for FreeBSD with Kerberos 5...'
  1768.     @case `openssl version` in \
  1769.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  1770.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  1771.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  1772.       *) OPENSSLOPTION="" ;; \
  1773.     esac; \
  1774.     HAVE_DES=''; \
  1775.     DES_LIB=''; \
  1776.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  1777.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  1778.           DES_LIB='-ldes'; \
  1779.           HAVE_DES='-DCK_DES -DLIBDES'; \
  1780.               echo "HAVE DES"; \
  1781.            else echo "NO DES"; \
  1782.     fi; \
  1783.     $(MAKE) freebsd KTARGET=$${KTARGET:-$(@)} "CC = $(CC)" "CC2 = $(CC2)" \
  1784.     KFLAGS="-DCK_AUTHENTICATION -DCK_SSL $(SSLINC) -DZLIB $$OPENSSLOPTION \
  1785.     $$HAVE_DES $(KFLAGS)"  "LNKFLAGS = $(LNKFLAGS)" \
  1786.     "LIBS= -lncurses -lcrypt -lssl -lcrypto -lutil -lm \
  1787.     $(SSLLIB) $$DES_LIB $(LIBS)"; \
  1788.     if [ ! -f ./wermit ] || [ ./ckcmai.o -nt ./wermit ] ; then \
  1789.         echo ""; \
  1790.         echo "If build failed try:"; \
  1791.         echo ""; \
  1792.         echo "  make clean ; make $${KTARGET:-$(@)} KFLAGS=-UCK_DES"; \
  1793.         echo ""; \
  1794.     fi
  1795.  
  1796. #NetBSD 1.4.1 or later with vanity banner automated with uname
  1797. #and automatic inclusion of large file support if it is available.
  1798. #This target tested successfully on NetBSD 1.4.1, 1.5.2, and 2.0.3 (Jan 2006).
  1799. #Fails on NetBSD 2.0 on Sun/3 mc68030 with gcc 3.3.3 unless optimization is
  1800. #disabled on ckcfn2.c ("KFLAGS=-O0") (Letter O Digit Zero).
  1801. #(This could be automated by testing `uname -m` for "sun3".)
  1802. #OK: 2011/06/15 on NetBSD 1.5.2 and 5.1.
  1803. #OK: 2011/08/21 on 5.1.
  1804. netbsd netbsd2 netbsd15 netbsd16 old-netbsd:
  1805.     @echo Making C-Kermit $(CKVER) for NetBSD with curses...
  1806.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1807.     "CFLAGS=`grep fseeko /usr/include/stdio.h > /dev/null && \
  1808.     echo '-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'` \
  1809.     -DBSD44 -DCK_CURSES -DTCPSOCKET -DUSE_STRERROR -DHAVE_OPENPTY \
  1810.     -funsigned-char -DHERALD=\"\\\" NetBSD `uname -r`\\\"\" \
  1811.     -DCK_DTRCD -DCK_DTRCTS -DTPUTSARGTYPE=int -DFNFLOAT $(KFLAGS) -O" \
  1812.     "LIBS= -lcurses -lcrypt -lm -lutil $(LIBS)"
  1813.  
  1814. #NetBSD 1.4.1 or later with OpenSSL
  1815. #OK: 2011/06/15 on NetBSD 5.1 (but not 1.5.2 with OpenSSL 0.9.5a)
  1816. #OK: 2011/08/21 on 5.1.
  1817. netbsd+ssl netbsd+openssl:
  1818.     @echo 'Making C-Kermit $(CKVER) for NetBSD+OpenSSL SSLLIB=$(SSLLIB)'
  1819.     @case `openssl version` in \
  1820.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  1821.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  1822.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  1823.       *) OPENSSLOPTION="" ;; \
  1824.     esac; \
  1825.     HAVE_DES=''; \
  1826.     DES_LIB=''; \
  1827.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  1828.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  1829.           DES_LIB='-ldes'; \
  1830.           HAVE_DES='-DCK_DES -DLIBDES'; \
  1831.               echo "HAVE DES"; \
  1832.            else echo "NO DES"; \
  1833.     fi; \
  1834.     $(MAKE) netbsd KTARGET=$${KTARGET:-$(@)} "CC = $(CC)" "CC2 = $(CC2)" \
  1835.     "KFLAGS= -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_CAST $$HAVE_DES \
  1836.     -DCK_SSL -DCK_PAM -DZLIB -DNO_DCL_INET_ATON $$OPENSSLOPTION \
  1837.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  1838.     "LIBS= -L/usr/pkg/lib -R/usr/pkg/lib -lssl $$DES_LIB -lcurses \
  1839.     -lcrypto -lcrypt -lz -lm -lpam -lutil $(LIBS)"
  1840.  
  1841. #NetBSD with MIT Kerberos 5:
  1842. # OK 2011/06/15 (once K5INC and K5LIB were set right).
  1843. # NOT OK for Heimdal - Heimdal Kerberos support in C-Kermit needs work.
  1844. # OK: 2011/08/21 on 5.1.
  1845. netbsd+krb5:
  1846.     @echo 'Making C-Kermit $(CKVER) for NetBSD with Kerberos 5...'
  1847.     @case `openssl version` in \
  1848.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  1849.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  1850.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  1851.       *) OPENSSLOPTION="" ;; \
  1852.     esac; \
  1853.     HAVE_DES=''; \
  1854.     DES_LIB=''; \
  1855.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  1856.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  1857.           DES_LIB='-ldes'; \
  1858.           HAVE_DES='-DCK_DES -DLIBDES'; \
  1859.               echo "HAVE DES"; \
  1860.            else echo "NO DES"; \
  1861.     fi; \
  1862.     $(MAKE) netbsd KTARGET=$${KTARGET:-$(@)} "CC = $(CC)" "CC2 = $(CC2)" \
  1863.     "KFLAGS= -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_KERBEROS -DKRB5 \
  1864.     -DCK_CAST $$HAVE_DES -DNOFTP_GSSAPI $(K5INC) $(K5INC)/krb5 \
  1865.     $(KFLAGS)" \
  1866.     "LIBS= $(K5LIB) -L/usr/pkg/lib -R/usr/pkg/lib -lcurses $$DES_LIB \
  1867.     -lcrypto -lgssapi -lkrb5 -lm -lutil $(LIBS)"
  1868.  
  1869. # NetBSD - With Kerberos 5 and SSL and Zlib.
  1870. # OK: 2011/08/21 on 5.1 with MIT Kerberos.
  1871. netbsd+krb5+ssl netbsd+krb5+openssl+zlib:
  1872.     @echo 'Making C-Kermit $(CKVER) for NetBSD+OpenSSL+Kerberos5...'
  1873.     @case `openssl version` in \
  1874.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  1875.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  1876.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  1877.       *) OPENSSLOPTION="" ;; \
  1878.     esac; \
  1879.     HAVE_DES=''; \
  1880.     DES_LIB=''; \
  1881.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  1882.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  1883.           DES_LIB='-ldes'; \
  1884.           HAVE_DES='-DCK_DES -DLIBDES'; \
  1885.               echo "HAVE DES"; \
  1886.            else echo "NO DES"; \
  1887.     fi; \
  1888.     $(MAKE) netbsd KTARGET=$${KTARGET:-$(@)} "CC = $(CC)" "CC2 = $(CC2)" \
  1889.     "KFLAGS= -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_CAST $$HAVE_DES \
  1890.     -DCK_KERBEROS -DKRB5 -DNOFTP_GSSAPI $(K5INC) $(K5INC)/krb5 \
  1891.     -DCK_SSL -DCK_PAM -DZLIB -DNO_DCL_INET_ATON $$OPENSSLOPTION \
  1892.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  1893.     "LIBS= $(K5LIB) -L/usr/pkg/lib -R/usr/pkg/lib -lssl $$DES_LIB \
  1894.     -lcrypto -lcrypt -lgssapi -lkrb5 -lz -lm -lpam -lutil -lcurses $(LIBS)"
  1895.  
  1896. #Special Security Enhanced NetBSD target with SRP, SSL, and zlib support.
  1897. #To build this, you need to BUILD the pkgsrc srp_client package.  After
  1898. #you build it, you must go into work/srp-x.y.z/libkrypto and "bmake install"
  1899. #then go to work/srp-x.y.z/libsrp and "bmake install".  As of 2005Q3, the
  1900. #pkgsrc install only installed the statically linked client applications.  You
  1901. #need to manually install the libraries to build your own applications.
  1902. #NOT TESTED RECENTLY - probably needs work.
  1903. netbsd+ssl+srp+zlib:
  1904.     @echo Making C-Kermit $(CKVER) for NetBSD with curses...
  1905.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1906.     "CFLAGS= -DBSD44 -DCK_CURSES -DTCPSOCKET -DUSE_STRERROR -DNETBSD15 \
  1907.     -DCK_DTRCD -DCK_DTRCTS -DTPUTSARGTYPE=int -DHAVE_OPENPTY \
  1908.     -I/usr/include/openssl -I/usr/pkg/include \
  1909.     -DCK_AUTHENTICATION -DCK_SRP -DPRE_SRP_1_4_5 -DCK_ENCRYPTION \
  1910.     -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DZLIB -DFNFLOAT $(KFLAGS) -O" \
  1911.     "LIBS= -L/usr/pkg/lib -R/usr/pkg/lib -lcurses -lsrp -lgmp -ldes \
  1912.     -lssl -lkrypto -lcrypto -lcrypt -lz -lm -lutil $(LIBS)"
  1913.  
  1914. #NetBSD with curses left out (e.g. for use as IKSD).
  1915. netbsdnc:
  1916.     @echo Making C-Kermit $(CKVER) for NetBSD with no curses...
  1917.     $(MAKE) CC=$(CC) CC2=$(CC2) netbsd KTARGET=$${KTARGET:-$(@)} \
  1918.     "KFLAGS=-DNOCURSES"
  1919.  
  1920. #NetBSD with ncurses requested explicitly rather than curses-which-is-ncurses
  1921. netbsdn:
  1922.     @echo Making C-Kermit $(CKVER) for NetBSD with curses...
  1923.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1924.     "CFLAGS=`grep fseeko /usr/include/stdio.h > /dev/null && \
  1925.     echo '-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'` \
  1926.     -DBSD44 -DCK_CURSES -DTCPSOCKET -DUSE_STRERROR -DHAVE_OPENPTY \
  1927.     -DHERALD=\"\\\" NetBSD `uname -r`\\\"\" \
  1928.     -DCK_DTRCD -DCK_DTRCTS -DTPUTSARGTYPE=int -DFNFLOAT $(KFLAGS) -O" \
  1929.     "LIBS= -L/usr/pkg/lib -lncurses -lcrypt -lm -lutil $(LIBS)"
  1930.  
  1931. #OpenBSD before 2.3.
  1932. #Uses ncurses as its curses so use -ltermlib, not -ltermcap
  1933. #But it doesn't use uu_lock() which was introduced in OpenBSD 2.3.
  1934. #For that use the next entry.
  1935. #Add -DMAINTYPE=int if you get complaints about main: return type is not int.
  1936. openbsdold:
  1937.     @echo Making C-Kermit $(CKVER) for OpenBSD...
  1938.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1939.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1940.     -DFNFLOAT -DNDSYSERRLIST $(KFLAGS) -O" "LIBS= -lcurses -ltermlib -lm"
  1941.  
  1942. #OpenBSD 2.3 or later
  1943. #Add -DMAINTYPE=int if you get complaints about main: return type is not int.
  1944. #For C-Kermit 8.0 (Christian Weisgerber):
  1945. # -ltermlib removed (presumably because -lcurses==ncurses already includes it)
  1946. # -DUSE_UU_LOCK and -lutil added for uu_lock()
  1947. # -DNDSYSERRLIST changed to -DUSE_STRERROR
  1948. #If this gives you trouble use the previous entry.
  1949. #NOTE: The openbsd and openbsd+ssl should be reworked to be like the
  1950. #corresponding FreeBSD and NetBSD targets.  The mirbsd targets should
  1951. openbsd:
  1952.     @echo Making C-Kermit $(CKVER) for OpenBSD 2.3 or later...
  1953.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1954.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1955.     -DHERALD=\"\\\" OpenBSD `uname -r`\\\"\" \
  1956.     -DUSE_UU_LOCK -DFNFLOAT -DUSE_STRERROR $(KFLAGS) -O" \
  1957.     "LIBS= -lcurses -lutil -lm"
  1958.  
  1959. #Better to chain to the openbsd target but...
  1960. mirbsd:
  1961.     @echo Making C-Kermit $(CKVER) for OpenBSD 2.3 or later...
  1962.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1963.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1964.     -DHERALD=\"\\\" MirBSD `uname -r`\\\"\" \
  1965.     -DUSE_UU_LOCK -DFNFLOAT -DUSE_STRERROR $(KFLAGS) -O" \
  1966.     "LIBS= -lcurses -lutil -lm"
  1967.  
  1968. #OpenBSD 3.0 or later includes OpenSSL
  1969. #Add -DMAINTYPE=int if you get complaints about main: return type is not int.
  1970. #For C-Kermit 8.0 (Christian Weisgerber):
  1971. # -ltermlib removed (presumably because -lcurses==ncurses already includes it)
  1972. # -DUSE_UU_LOCK and -lutil added for uu_lock()
  1973. # -DNDSYSERRLIST changed to -DUSE_STRERROR
  1974. #If this gives you trouble use the previous entry.
  1975. openbsd+ssl:
  1976.     @echo Making C-Kermit $(CKVER) for OpenBSD 3.0 or later...
  1977.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1978.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1979.     -DHERALD=\"\\\" OpenBSD `uname -r`\\\"\" \
  1980.     -DUSE_UU_LOCK -DFNFLOAT -DUSE_STRERROR -DCK_AUTHENTICATION \
  1981.     -DCK_SSL $(KFLAGS) -O" \
  1982.     "LIBS= -lcurses -lutil -lm -lssl -lcrypto"
  1983.  
  1984. mirbsd+ssl:
  1985.     @echo Making C-Kermit $(CKVER) for OpenBSD 3.0 or later...
  1986.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  1987.     "CFLAGS= -DBSD44 -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET -DOPENBSD \
  1988.     -DHERALD=\"\\\" MirBSD `uname -r`\\\"\" \
  1989.     -DUSE_UU_LOCK -DFNFLOAT -DUSE_STRERROR -DCK_AUTHENTICATION \
  1990.     -DCK_SSL -DNO_DCL_INET_ATON $(KFLAGS) -O" \
  1991.     "LIBS= -lcurses -lutil -lm -lssl -lcrypto"
  1992.  
  1993. # make 386bsd 0.0new, posix
  1994. # for  386bsd 0.1.24, change /usr/include/termios.h to #define NCCS if
  1995. #  _POSIX_SOURCE is #defined. (source: lewine, posix prgmrs guide, o`reilly)
  1996. #NOTE: Lock directory is /var/spool/lock.  Formerly, it was /var/spool/uucp,
  1997. #but reportedly <wjones@halcyon.com> that was due to a typo in 'man tip'.
  1998. 386bsd:
  1999.     @echo 'Making C-Kermit $(CKVER) for jolix 386BSD 0.0new and 0.1.24...'
  2000.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2001.     "CFLAGS= -DPOSIX -DSETREUID -DPIDSTRING -DUSLEEP \
  2002.     -D_386BSD -DCK_CURSES -DTCPSOCKET \
  2003.     -DLOCK_DIR=\\\"/var/spool/lock\\\" \
  2004.     $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lcurses -ltermcap"
  2005.  
  2006. # Mac OS X 10 early versions.
  2007. # For 10.3.9 and later, use the macosx target below.
  2008.  
  2009. #Mac OS X 1.0 (Rhapsody, Darwin) -- TCP/IP but no curses.
  2010. oldmacosx10:
  2011.     @echo Making C-Kermit $(CKVER) for `uname -s`...
  2012.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2013.     "CFLAGS= -DMACOSX10 -DTCPSOCKET -DUSE_STRERROR -O $(KFLAGS)"
  2014.  
  2015. #Mac OS X 1.0 (Rhapsody, Darwin) -- TCP/IP and curses.
  2016. #Note: curses must be obtained separately.  See next entry for ncurses.
  2017. #Add "LIBS = -lcurses -ltermcap" if necessary (but reportedly it is not).
  2018. oldmacosx10c:
  2019.     @echo Making C-Kermit $(CKVER) for `uname -s` + curses...
  2020.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2021.     "CFLAGS= -DMACOSX10 -DCK_CURSES -DTPUTSFNTYPE=void -DTPUTSISVOID \
  2022.     -DTCPSOCKET -DUSE_STRERROR -O $(KFLAGS)"
  2023.  
  2024. #Mac OS X 1.0 (Rhapsody, Darwin) -- TCP/IP and ncurses.
  2025. #Note: ncurses must be obtained separately.
  2026. #In the event of trouble with this one try the next one.
  2027. oldmacosx10nc:
  2028.     @echo Making C-Kermit $(CKVER) for `uname -s` + ncurses...
  2029.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2030.     "CFLAGS= -DMACOSX10 -DCK_NCURSES -DTCPSOCKET -DUSE_STRERROR -O \
  2031.     $(KFLAGS)" "LIBS= -lncurses $(LIBS)"
  2032.  
  2033. #Mac OS X 10.2 (Jaguar) ncurses.
  2034. oldmacosx102nc:
  2035.     @echo Making C-Kermit $(CKVER) for `uname -s` + ncurses...
  2036.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2037.     "CFLAGS= -DMACOSX10 -DCK_NCURSES -DTCPSOCKET -DUSE_STRERROR -O \
  2038.     $(KFLAGS) " "LIBS= -lncurses $(LIBS)"
  2039.  
  2040. #The problem here is that if curses.h also exists, it conflicts with
  2041. #ncurses.h and and we have fatal errors.  If this happens to you, then
  2042. #try this target.
  2043. oldmacosx10ncx:
  2044.     @echo Making C-Kermit $(CKVER) for `uname -s` + ncurses...
  2045.     @rm -f ./curses.h; touch ./curses.h
  2046.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2047.     "CFLAGS= -DMACOSX10 -DCK_NCURSES -DTCPSOCKET -DUSE_STRERROR \
  2048.     -I. -O $(KFLAGS) " \
  2049.     "LIBS= -lncurses $(LIBS)"
  2050.     @rm -f ./curses.h
  2051.  
  2052. #Mac OS X 10.3 (Panther) - Assumes ncurses is installed.
  2053. oldmacosx103: 
  2054.     @echo Making C-Kermit $(CKVER) for `uname -s` + ncurses...
  2055.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2056.     "CFLAGS= -DMACOSX10 -DMACOSX103 -DCK_NCURSES -DTCPSOCKET -DCKHTTP \
  2057.     -DUSE_STRERROR -DUSE_NAMESER_COMPAT -O \
  2058.     $(KFLAGS) " "LIBS= -lncurses -lresolv $(LIBS)"
  2059.  
  2060. #Mac OS X 10.3 (Panther) with Kerberos 5 and SSL, assumes ncurses is installed.
  2061. oldmacosx103+secure:
  2062.     @echo Making Secure C-Kermit $(CKVER) for `uname -s` + ncurses...
  2063.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2064.     "CFLAGS= -DMACOSX10 -DMACOSX103 -DCK_NCURSES -DTCPSOCKET \
  2065.     -DUSE_STRERROR -DUSE_NAMESER_COMPAT -O -DCK_PAM \
  2066.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DZLIB \
  2067.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  2068.     $(KFLAGS) " "LIBS= -lssl -lcrypto -lkrb5 -lcom_err \
  2069.     -lk5crypto -lgssapi_krb5 -lpam -lncurses -lresolv $(LIBS)"
  2070.  
  2071. # THIS IS THE MAIN MAC OS X TARGET (the next one is for Kerberos/SSL builds).
  2072. # Use this target for 10.3.9 (or maybe earlier) through 10.6 (maybe later)
  2073. # on both Power and Intel architectures.  This one uses utmp.h on 10.4 and
  2074. # earlier and utmpx.h on 10.5 onwards.
  2075. # Note: Mac OS X 10.5 and earlier are 32-bit; 10.6 and later 64-bit.
  2076. # Note 2: As of C-Kermit 9.0 -NOUUCP is included by default because
  2077. # Mac OS X doesn't support UUCP.  To undo this, use KFLAGS=-UNOUUCP.
  2078. #OK: 2011/06/14 (for 10.4.11, 10.5.8, 10.6.7)
  2079. macosx macosx10 macosx10.3.9 macosx10.4 macosx10.5 macosx10.6:
  2080.     @MACOSNAME=`/usr/bin/sw_vers -productName`; \
  2081.     MACOSV=`/usr/bin/sw_vers -productVersion`; \
  2082.     echo Making C-Kermit $(CKVER) for $$MACOSNAME $$MACOSV... ; \
  2083.     MACCPU=$$HOSTTYPE; \
  2084.     if test `uname -r | cut -d . -f 1` -gt 8; \
  2085.     then if test -f /usr/include/utmpx.h ; \
  2086.     then HAVE_UTMPX='-DHAVEUTMPX -D_UTMPX_COMPAT' ; \
  2087.     else HAVE_UTMPX='' ; fi ; fi; \
  2088.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2089.     "CFLAGS= -DMACOSX10 -DMACOSX103 -DCK_NCURSES -DTCPSOCKET -DCKHTTP \
  2090.     -DUSE_STRERROR -DUSE_NAMESER_COMPAT -DNOCHECKOVERFLOW -DFNFLOAT \
  2091.     -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $$HAVE_UTMPX \
  2092.     -funsigned-char -DNODCLINITGROUPS \
  2093.     -DNOUUCP -O -DHERALD=\"\\\" $${MACOSNAME} $${MACOSV}\\\"\" \
  2094.     -DCKCPU=\"\\\"$${MACCPU}\\\"\" \
  2095.     $(KFLAGS)" "LIBS= -lncurses -lresolv $(LIBS)"
  2096.  
  2097. # Mac OS X 10.3.9 or later with Kerberos 5 and OpenSSL...
  2098. # NOTE: Apple has removed all support for DES in OpenSSL and Kerberos
  2099. #   in Mac OS X 10.6 and later.  The DES flags are included or left out
  2100. #   automatically based on the Mac OS X version number.
  2101. # See note about UUCP in previous target.
  2102. #OK: 2009/11/16 (for 10.3.9, 10.4.11, 10.5.8, 10.6.1)
  2103. #OK: 2011/06/14 (for 10.4.11, 10.5.8, 10.6.7)
  2104. macosx+krb5+ssl macosx10.5+krb5+ssl macosx10.6+krb5+ssl \
  2105. macosx+krb5+openssl macosx10.5+krb5+openssl macosx10.6+krb5+openssl:
  2106.     @MACOSNAME=`/usr/bin/sw_vers -productName`; \
  2107.     MACOSV=`/usr/bin/sw_vers -productVersion`; \
  2108.     echo Making C-Kermit $(CKVER) for $$MACOSNAME $$MACOSV... ; \
  2109.     MACCPU=$$HOSTTYPE; \
  2110.     if test `uname -r | cut -d . -f 1` -gt 8; \
  2111.     then if test -f /usr/include/utmpx.h ; \
  2112.     then HAVE_UTMPX='-DHAVEUTMPX -D_UTMPX_COMPAT' ; \
  2113.     else HAVE_UTMPX='' ; fi ; fi; \
  2114.     if test `uname -r | cut -d . -f 1` -eq 7; \
  2115.     then IS_MACOSX103='-DMACOSX103' ; \
  2116.     else IS_MACOSX103='' ; fi; \
  2117.     case $$MACOSV in \
  2118.       10.[012345].*) HAVE_DES='-DCK_DES -DLIBDES' ;; \
  2119.       *.*) HAVE_DES='' ;; \
  2120.     esac ; \
  2121.     if test -x /usr/bin/krb5-config ; \
  2122.     then HAVE_KRB5CONFIG=`/usr/bin/krb5-config --libs krb5 gssapi` ; \
  2123.     else HAVE_KRB5CONFIG='-lgssapi_krb5 -lkrb5 -lk5crypto \
  2124.     -lcom_err -lresolv' ; fi; \
  2125.     $(MAKE) CC=$(CC) CC2=$(CC2) xermit KTARGET=$${KTARGET:-$(@)} \
  2126.     "CFLAGS= -DMACOSX10 $$IS_MACOSX103 -DCK_NCURSES -DTCPSOCKET \
  2127.     -DUSE_STRERROR -DUSE_NAMESER_COMPAT -DNOCHECKOVERFLOW -DFNFLOAT \
  2128.     -DCKHTTP -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $$HAVE_UTMPX \
  2129.     -DNODCLINITGROUPS -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DZLIB \
  2130.     -DCK_ENCRYPTION -DCK_CAST -DCK_SSL -DOPENSSL_098 $$HAVE_DES \
  2131.     -DNOUUCP -DHERALD=\"\\\" $${MACOSNAME} $${MACOSV}\\\"\" \
  2132.     -DCKCPU=\"\\\"$${MACCPU}\\\"\" \
  2133.     -funsigned-char -O $(KFLAGS)" \
  2134.     "LIBS= $$HAVE_KRB5CONFIG -lssl -lcrypto -lpam -lncurses $(LIBS)"
  2135.  
  2136. # End of Mac OS X Section
  2137.  
  2138. #Acorn RISCiX, based on ...
  2139. #Berkeley Unix 4.2 or 4.3 with lock directory /usr/spool/uucp/LCK/LCK..ttyxx,
  2140. #but without acucntrl program
  2141. riscix:
  2142.     @echo Making C-Kermit $(CKVER) for RISCiX, /usr/spool/uucp/LCK..ttyxx
  2143.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2144.         "CFLAGS= -DBSD42 -DBSD4 -DRISCIX -DNOCSETS \
  2145.         -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DDIRENT -DCK_CURSES \
  2146.         -DMAXSP=9024 -DMAXRD=9024 -DSBSIZ=9050 -DRBSIZ=9050 \
  2147.         -DDFTTY=\\\"/dev/serial\\\" -DNOCSETS -DNOCYRIL \
  2148.         -DNOANSI -w -O2 -fomit-frame-pointer" \
  2149.         "LIBS= -lcurses -ltermcap " \
  2150.         "CC= /usr/ucb/cc" \
  2151.         "CC2= /usr/ucb/cc"
  2152.  
  2153. #Acorn RISCiX, as above, but using gcc
  2154. riscix-gcc:
  2155.     @echo Making C-Kermit $(CKVER) for RISCiX, /usr/spool/uucp/LCK..ttyxx
  2156.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2157.         "CFLAGS= -DBSD42 -DBSD4 -DRISCIX -DNOCSETS \
  2158.         -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DDIRENT -DCK_CURSES \
  2159.         -DMAXSP=9024 -DMAXRD=9024 -DSBSIZ=9050 -DRBSIZ=9050 \
  2160.         -DDFTTY=\\\"/dev/serial\\\" -DNOCSETS -DNOCYRIL \
  2161.         -DNOANSI -w -O2 -fomit-frame-pointer" \
  2162.         "LIBS= -lcurses -ltermcap " \
  2163.         "CC= gcc -mbsd" \
  2164.         "CC2= gcc -mbsd"
  2165.  
  2166. #Convergent CTIX 6.4.1
  2167. ctix:
  2168.     @echo 'Making C-Kermit $(CKVER) for Convergent CTIX 6.4.1'
  2169.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2170.     "CFLAGS= -DSVR3 -DDIRENT -DTCPSOCKET -DHDBUUCP -DCK_CURSES \
  2171.     -DNONAWS -DNOLEARN -DNOLONGLONG $(KFLAGS) -XO" \
  2172.     "LNKFLAGS=-s" "LIBS=-lsocket -lcurses -lc_s"
  2173.     mcs -d wermit
  2174.  
  2175. # The following makefile entry should work for any Harris Night Hawk system
  2176. # (either 88k or 68k based) running release 6.1 or later of the CX/UX
  2177. # operating system. This is a POSIX and ANSI-C compliant system which also
  2178. # supports BSD networking. (Earlier CX/UX releases will probably work with
  2179. # sys5r3, but this has not been verified).
  2180. #
  2181. cx_ux:
  2182.     @echo Making C-Kermit $(CKVER) for Harris Night Hawk CX/UX 6.1 or later
  2183.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2184.     "CFLAGS=-DPOSIX -DTCPSOCKET -DHDBUUCP -DPID_T=pid_t -DWAIT_T=int \
  2185.     -Dd_ino=d_fileno -DUID_T=uid_t -DGID_T=gid_t -DNOLONGLONG \
  2186.     $(KFLAGS) -Xa -O3 -g" "LNKFLAGS=-O3"
  2187.  
  2188. #Intergraph Clipper, CLIX, job control, HDB UUCP.
  2189. clix:
  2190.     @echo 'Making C-Kermit $(CKVER) for Intergraph CLIX...'
  2191.     $(MAKE) wermit "CC=acc" "CC2=acc" KTARGET=$${KTARGET:-$(@)} \
  2192.     "CFLAGS= -w -DSVR3 -DCLIX -DDIRENT -DHDBUUCP -DNOSYSLOG -DUSE_MEMCPY \
  2193.     -DNOGETUSERSHELL -DNOREALPATH -DNOLEARN $(KFLAGS) -O" \
  2194.     "LNKFLAGS=" "LIBS= -lbsd"
  2195.  
  2196. #As above + TCP/IP...
  2197. clixnet:
  2198.     @echo 'Making networked C-Kermit $(CKVER) for Intergraph CLIX...'
  2199.     $(MAKE) wermit "CC=acc" "CC2=acc" KTARGET=$${KTARGET:-$(@)} \
  2200.     "CFLAGS= -w -DSVR3 -DCLIX -DDIRENT -DHDBUUCP -DNOSYSLOG -DUSE_MEMCPY \
  2201.     -DTCPSOCKET -DNOGETUSERSHELL -DNOLEARN -DNOREALPATH $(KFLAGS) -O" \
  2202.     "LNKFLAGS=" "LIBS= -lbsd"
  2203.  
  2204. #Mark Williams Coherent 286 or 386 on IBM PC family.
  2205. #There is a 64K limit on program size, so this is a command-line only version.
  2206. coherent:
  2207.     $(MAKE) "CFLAGS = -O -DCOHERENT -DNOANSI -DNOICP -DNOSETKEY -DNOLEARN \
  2208.     -DNOCSETS -DNOHELP -DNODIAL -DNOSCRIPT -DNODEBUG -DNOTLOG -DNOXMIT \
  2209.     -DNOMSEND -DNOFRILLS -DNOSYSIOCTLH -DSELECT_H $(KFLAGS) -VSUVAR" \
  2210.     -DNOFLOAT KTARGET=$${KTARGET:-$(@)} wermit
  2211.  
  2212. #Mark Williams Coherent 386 on IBM PC family.
  2213. #This will make a "minimum interactive" version - no scripts,
  2214. #no character sets, no help, no dial, no debug/transaction logging, no
  2215. #transmit, msend, mail, type, etc.
  2216. coherentmi:
  2217.     $(MAKE) "CFLAGS = -O -DCOHERENT -DNOANSI -DNOSETKEY -DNOLEARN \
  2218.     -DNOSHOW -DNOCSETS -DNOHELP -DNODIAL -DNOSCRIPT -DNODEBUG -DNOTLOG \
  2219.     -DNOXMIT -DNOMSEND -DNOFRILLS -DNOSYSIOCTLH -DNOSERVER -DNOUUCP \
  2220.     -DNOSPL -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ -DNOFLOAT \
  2221.     -DNOCMDL $(KFLAGS) -VSUVAR -DSELECT_H" KTARGET=$${KTARGET:-$(@)} \
  2222.     wermit
  2223.  
  2224. #Mark Williams Coherent 386 on IBM PC/AT family.
  2225. coherentmax:
  2226.     $(MAKE) "CFLAGS = -O -DCOHERENT -DNOANSI -DSELECT_H -DNOLEARN \
  2227.     -DNOFLOAT -DNOSYSIOCTLH $(KFLAGS) -VSUVAR" "LNKFLAGS = -O -s" \
  2228.     KTARGET=$${KTARGET:-$(@)} wermit
  2229.  
  2230. #Mark Williams Coherent 386 4.2.  Includes curses but not TCP/IP.
  2231. #Requires updates to the 4.2.10 compiler; the regular compiler fails to
  2232. #to handle "complex expressions".  NOFLOAT is so it can work on old PCs
  2233. #without floating-point hardware.
  2234. coherent42:
  2235.     $(MAKE) "CFLAGS = -T500000 -DNOFLOAT -DCOHERENT -DNOANSI -DSELECT \
  2236.     -DNOSYSLOG -DDIRENT -DCK_CURSES -DCK_NEWTERM -DCK_WREFRESH -VSUVAR \
  2237.     -DDCLGETCWD -DNOSYSIOCTLH -DNOINITGROUPS -DNOSYMLINK -DSELECT_H \
  2238.     -DDCLGETCWD -O $(KFLAGS)" \
  2239.     "LNKFLAGS = -O -s" KTARGET=$${KTARGET:-$(@)} \
  2240.     "LIBS  = -lsocket -lcurses" wermit
  2241.  
  2242. #DEC Ultrix 2.x
  2243. # Add -O, -DDYNAMIC, -s, etc, if they work.
  2244. ultrix2x:
  2245.     @echo Making C-Kermit $(CKVER) for Ultrix 2.x ...
  2246.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2247.     "CFLAGS= -DBSD4 -DTCPSOCKET -DDU2 -DNOGETUSERSHELL $(KFLAGS)"
  2248.  
  2249. du2:
  2250.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix2x
  2251.  
  2252. #DEC Ultrix 3.0 and 3.1
  2253. ultrix30:
  2254.     @echo Making C-Kermit $(CKVER) for Ultrix 3.0...
  2255.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2256.     "CFLAGS= -DBSD4 -DTCPSOCKET -DDIRENT -DSIG_V -DNOGETUSERSHELL \
  2257.     -DULTRIX3 -DCK_CURSES $(KFLAGS) -O" "LIBS= -lcurses -ltermcap"
  2258.  
  2259. du3:
  2260.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix30
  2261.  
  2262. ultrix3x:
  2263.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix30
  2264.  
  2265. #DEC Ultrix 4.0 or 4.1 on DECstation, VAXstation, VAX, etc.
  2266. ultrix40:
  2267.     @echo Making C-Kermit $(CKVER) for Ultrix 4.0 or 4.1...
  2268.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2269.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DDU4 -DNOGETUSERSHELL \
  2270.     $(KFLAGS) -Olimit 1450" "LNKFLAGS = -s"
  2271.  
  2272. #DEC Ultrix 4.2-4.5 on DECstation, DECsystem, VAXstation, VAX, etc.
  2273. #Like ultrix40, except now C compiler supports -O2 optimization.
  2274. ultrix42:
  2275.     @echo Making C-Kermit $(CKVER) for Ultrix 4.2 or later...
  2276.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2277.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL $(KFLAGS) \
  2278.     -O2 -Olimit 1750" "LNKFLAGS = -s"
  2279.  
  2280. du42:
  2281.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET-$(@)} ultrix42
  2282.  
  2283. #DEC Ultrix 4.2-4.5 on DECstation, DECsystem, VAXstation, VAX, etc.
  2284. #Like du42, but with curses support added and a couple features.
  2285. ultrix42c:
  2286.     @echo Making C-Kermit $(CKVER) for Ultrix 4.2 or later...
  2287.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2288.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL \
  2289.     -DCK_CURSES -DNOIKSD $(KFLAGS)-G6 -O2 -Olimit 3000 " \
  2290.     "LNKFLAGS = -s" "LIBS= -lcurses -ltermcap"
  2291.  
  2292. ultrix43:
  2293.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2294.     "KFLAGS=-DULTRIX43 $(KFLAGS)" KTARGET=$${KTARGET-$(@)} ultrix42c
  2295.  
  2296. ultrix43notcp:
  2297.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2298.     "KFLAGS=-DULTRIX43 -DNONET $(KFLAGS)" \
  2299.     KTARGET=$${KTARGET-$(@)} ultrix42c
  2300.  
  2301. # NOTE: need -DNODEBUG on MIPS to avoid relocation errors at link time.
  2302. # Actually now (8.0) that we have discovered the -G option maybe debugging
  2303. # can be put back.
  2304. ultrix44:
  2305.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2306.     "KFLAGS=-DULTRIX44 -G7 -DNODEBUG -DNETPTY -DNO_DEVTTY $(KFLAGS)" \
  2307.     KTARGET=$${KTARGET-$(@)} ultrix42c
  2308.  
  2309. ultrix45:
  2310.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2311.     "KFLAGS=-DULTRIX45 $(KFLAGS)-DNETPTY -DNO_DEVTTY $(KFLAGS)" \
  2312.     KTARGET=$${KTARGET-$(@)} ultrix42c
  2313.  
  2314. du42c:
  2315.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2316.     KTARGET=$${KTARGET-$(@)} ultrix42c
  2317.  
  2318. #DEC Ultrix 4.3A or later on DECsystem and DECstation 5000/50, /150 or /260
  2319. #with MIPS R4x00 processor.  The "-mips3" switch generates R4000-specific
  2320. #code, which is faster and more compact, but *won't* run on earlier
  2321. #DECsystems and DECstations.
  2322. ultrix43-mips3:
  2323.     @echo Making C-Kermit $(CKVER) for Ultrix 4.3A or later, R4000 cpu...
  2324.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2325.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL \
  2326.     $(KFLAGS) -O2 -Olimit 1750 -mips3" "LNKFLAGS = -s -mips3"
  2327.  
  2328. du43-mips3:
  2329.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) ultrix43-mips3
  2330.  
  2331. #DEC Ultrix 4.3A or later on MIPS R4x000 based systems.
  2332. #Like ultrix43-mips3 but with curses support added
  2333. ultrix43c-mips3:
  2334.     @echo Making C-Kermit $(CKVER) for Ultrix 4.3A or later, R4000 cpu...
  2335.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2336.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL -DCK_CURSES \
  2337.     $(KFLAGS) -O2 -Olimit 3000 -mips3" "LNKFLAGS = -s -mips3" \
  2338.     "LIBS= -lcurses -ltermcap"
  2339.  
  2340. du43c-mips3:
  2341.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2342.     KTARGET=$${KTARGET-$(@)} ultrix43c-mips3
  2343.  
  2344. #DEC Ultrix 4.4 on DECstation 5000/50 or /150 with R4000 MIPS processor,
  2345. #or 5000/260 with R4400.  The "-mips3" switch generates R4000-specific code,
  2346. #which is faster and more compact but *won't* run on earlier DECstations.
  2347. ultrix44-mips3:
  2348.     @echo Making C-Kermit $(CKVER) for Ultrix 4.4, R4000 cpu ...
  2349.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2350.     "CFLAGS= -DBSD4 -DTCPSOCKET -DSIG_V -DNOGETUSERSHELL \
  2351.     $(KFLAGS) -O2 -Olimit 1450 -mips3" "LNKFLAGS = -s -mips3"
  2352.  
  2353. du44-mips3:
  2354.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2355.     KTARGET=$${KTARGET-$(@)} ultrix44c-mips3
  2356.  
  2357. #DEC Ultrix 4.2 on DECstation, VAXstation, VAX, etc, System V R4 environment
  2358. ultrix42s5r4:
  2359.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4 on Ultrix...'
  2360.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2361.     "CFLAGS = -O2 -Olimit 1500 -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  2362.     -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  2363.  
  2364. #OSF/1
  2365. osf osf1:
  2366.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2367.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  2368.     -DCK_CURSES -DCK_RTSCTS -DFNFLOAT $(KFLAGS)" \
  2369.     "LNKFLAGS = -s" "LIBS = $(LIBS) -lbsd -lcurses -ltermcap -lm"
  2370.  
  2371. #DEC OSF/1 V1.0-1.3 on DECstation, VAX, Alpha, or PC.
  2372. dec-osf dec-osf1:
  2373.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2374.     "CFLAGS= -DBSD4 -DOSF -DOSF13 -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  2375.     -DNOREALPATH -DNOIKSD -DCK_CURSES -DCK_RTSCTS -DFNFLOAT -DNODEBUG \
  2376.     -DNOUNICODE $(KFLAGS)" \
  2377.     "LNKFLAGS = -non_shared" "LIBS = -lbsd -lcurses -ltermcap -lm"
  2378.  
  2379. # This one causes "relocation out-of-range" errors in the linker.
  2380. old-dec-osf:
  2381.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V1.x...
  2382.     @echo If you are building for DEC OSF/1 2.0, please use dec-osf20.
  2383.     @echo Remove or adjust -O2 and/or -Olimit if they cause trouble.
  2384.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2385.     "KFLAGS= -O2 -Olimit 2400 $(KFLAGS)"
  2386.  
  2387. #DEC OSF/1 2.0 on Alpha and probably nowhere else.
  2388. #The only difference from OSF/1 is that optimization is omitted.
  2389. #The optimized version gets strange runtime errors, like the PAUSE command
  2390. #not working.  Add "-unsigned" to make all chars unsigned.
  2391. dec-osf20:
  2392.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V2.0...
  2393.     @echo Optimization omitted because it causes runtime errors.
  2394.     @echo See comments in makefile.
  2395.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2396.     "KFLAGS= -DOSF20 $(KFLAGS)"
  2397.  
  2398. dec-osf30:
  2399.     @echo Making C-Kermit $(CKVER) for DEC OSF/1 V3.0...
  2400.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2401.     "KFLAGS= -DOSF30 -O2 -Olimit 2400 $(KFLAGS)"
  2402.  
  2403. #Digital UNIX 3.2
  2404. # Must compile ckuus[6x].c separately without optimization otherwise
  2405. # the optimizer dumps core - keep CFLAGS here in sync with those from osf.
  2406. du32:
  2407.     @echo Making C-Kermit $(CKVER) for Digital UNIX 3.2...
  2408.     $(MAKE) CC=$(CC) CC2=$(CC2) ckuus6.$(EXT) \
  2409.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  2410.     -DCK_CURSES -DCK_RTSCTS -DFNFLOAT -DOSF32 -DHDBUUCP $(KFLAGS)"
  2411.     $(MAKE) CC=$(CC) CC2=$(CC2) ckuusx.$(EXT) \
  2412.     "CFLAGS= -DBSD4 -DOSF -D_BSD -DTCPSOCKET -DCK_ANSIC -DSIG_V \
  2413.     -DCK_CURSES -DCK_RTSCTS -DFNFLOAT -DOSF32 -DHDBUUCP $(KFLAGS)"
  2414.     $(MAKE) CC=$(CC) CC2=$(CC2) osf \
  2415.     "KFLAGS= -DOSF32 -DHDBUUCP -O2 -Olimit 3200 $(KFLAGS)"
  2416.  
  2417. dec-osf32:
  2418.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) du32 \
  2419.     KTARGET=$${KTARGET:-$(@)}
  2420.  
  2421. #Digital UNIX 4.0 through 4.0D (use tru64 targets for 4.0E and above)...
  2422. du40:
  2423.     @echo Making C-Kermit $(CKVER) for Digital UNIX 4.0...
  2424.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2425.     "KFLAGS= -DOSF40 -DHDBUUCP -DFNFLOAT \
  2426.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  2427.  
  2428. du40gcc:
  2429.     @echo Making C-Kermit $(CKVER) for Digital UNIX 4.0 with gcc ...
  2430.     $(MAKE) osf CC=gcc CC2=gcc KTARGET=$${KTARGET:-$(@)} \
  2431.     "KFLAGS= -DOSF40 -DHDBUUCP $(KFLAGS)"
  2432.  
  2433. #Tru64 Unix 4.0E
  2434. tru64-40e:
  2435.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 4.0E...
  2436.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2437.     "KFLAGS= -DOSF40 -DOSF40E -DTRU64 -DHDBUUCP -DFNFLOAT -DNOCOTFMC \
  2438.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  2439.  
  2440. tru64-40f:
  2441.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 4.0F...
  2442.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2443.     "KFLAGS= -DOSF40 -DOSF40F -DTRU64 -DHDBUUCP -DFNFLOAT -DNOCOTFMC \
  2444.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  2445.  
  2446. tru64-40g:
  2447.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 4.0G...
  2448.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2449.     "KFLAGS= -DOSF40 -DOSF40G -DTRU64 -DHDBUUCP -DFNFLOAT -DNOCOTFMC \
  2450.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)" "LIBS=-lm"
  2451.  
  2452. tru64-50a:
  2453.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 5.0A...
  2454.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2455.     "KFLAGS= -DTRU64 -DOSF50 -DHDBUUCP \
  2456.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)"
  2457.  
  2458. tru64-51a:
  2459.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 5.1A...
  2460.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2461.     "KFLAGS= -DTRU64 -DOSF50 -DOSF51A -DHDBUUCP \
  2462.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)"
  2463.  
  2464. tru64-51b:
  2465.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 5.1B...
  2466.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2467.     "KFLAGS= -DTRU64 -DOSF50 -DOSF51A -DOSF51B -DHDBUUCP \
  2468.     -unsigned -std1 -O3 -Olimit 2400 $(KFLAGS)"
  2469.  
  2470. # Added 5.1b version with OpenSSL - CDW 6-13-2005...
  2471. tru64-51b+openssl:
  2472.     @echo Making C-Kermit $(CKVER) for Tru64 UNIX 5.1b
  2473.     @echo  including OpenSSL...
  2474.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2475.     "KFLAGS= -DTRU64 -DOSF50 -DOSF51A -DOSF51B -DHDBUUCP \
  2476.     -unsigned -std1 -O3 -Olimit 2400 \
  2477.     -DCK_AUTHENTICATION -DCK_SSL $(SSLINC) $(KFLAGS)" \
  2478.     "LIBS= $(SSLLIB) -rpath $(sslroot)/ssl/lib -lssl -lcrypto"
  2479.  
  2480. du50:
  2481.     $(MAKE) CC=$(CC) CC2=$(CC2) tru64-50a KTARGET=$${KTARGET:-$(@)}
  2482.  
  2483. du40-ridiculous-checking:
  2484.     @echo Making C-Kermit $(CKVER) for Digital UNIX 4.0.
  2485.     @echo Checking everything - assumes DECC...
  2486.     $(MAKE) CC=$(CC) CC2=$(CC2) osf KTARGET=$${KTARGET:-$(@)} \
  2487.     "KFLAGS= -DOSF40 -DHDBUUCP -w0 -warnprotos -check -portable \
  2488.     -unsigned -std1 -O3 -Olimit 1760 $(KFLAGS)"
  2489.  
  2490. #Sequent DYNIX/ptx 1.2.1
  2491. dynixptx12:
  2492.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX/ptx 1.2.1...
  2493.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2494.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DPTX -DNOGETUSERSHELL -DNOLEARN \
  2495.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t $(KFLAGS) -i -O" \
  2496.     "LNKFLAGS = -i"
  2497.  
  2498. #Sequent DYNIX/ptx 1.3 or 1.4
  2499. dynixptx13:
  2500.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX/ptx 1.3 TCP/IP...
  2501.     $(MAKE) xermit "CFLAGS= -O KTARGET=$${KTARGET:-$(@)} \
  2502.     -DSVR3 -DDIRENT -DHDBUUCP -DPTX -DCK_POLL -DNOGETUSERSHELL \
  2503.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DTCPSOCKET $(KFLAGS) -i" \
  2504.     "LNKFLAGS = -i" "LIBS = -lsocket -linet -lnsl"
  2505.  
  2506. #Sequent DYNIX/ptx 2.0, ANSI C compilation
  2507. #Should work on any hardware platform when DYNIX/ptx runs, including
  2508. #386, 486, Pentium.
  2509. dynixptx20:
  2510.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.0...'
  2511.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2512.     "CFLAGS= -DPOSIX -DHDBUUCP -DTCPSOCKET \
  2513.     -DWAIT_T=int -DPTX -DNOGETUSERSHELL $(KFLAGS) -O" \
  2514.     "LIBS = -lsocket -linet -lnsl"
  2515.  
  2516. #Sequent DYNIX/ptx 2.0, ANSI C compilation, with curses
  2517. dynixptx20c:
  2518.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.0...'
  2519.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2520.     "CFLAGS= -DPOSIX -DHDBUUCP -DTCPSOCKET -DWAIT_T=int -DPTX -DCK_CURSES \
  2521.     -DCK_NEWTERM -DNOGETUSERSHELL $(KFLAGS) -O" \
  2522.     "LIBS = -lsocket -linet -lnsl -lcurses -ltermcap"
  2523.  
  2524. #Sequent DYNIX/ptx 2.1.6, 80486, ANSI C compilation, with curses:
  2525. # -Xa -- use ANSI compiler.
  2526. # -Wc,-pw -- suppress portability warnings.
  2527. # -Wc,-i386 -- 80386 cpu.
  2528. # -Wc,-i486 -- 80486 cpu.
  2529. # -Wc,-P5 -- Pentium (default).
  2530. # -Wc,-O3 -- highest optimization.
  2531. # -Wa,-N17061 -- increase symbol table from default of 15013 for ckcuni.c.
  2532. # Early versions of DYNIX/ptx 2.1.x may need -DCK_POLL instead of -DSELECT.
  2533. # Add "$&" after the colon in the "xermit" target for parallel makes.
  2534. dynixptx216c:
  2535.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.1.6'
  2536.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2537.     "CFLAGS= -DPOSIX -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  2538.     -DSELECT -DCK_REDIR -DCK_NAWS -DCK_WREFRESH -DSW_ACC_ID \
  2539.     -DTCP_NODELAY=1 -DTRMBUFL=2048 -DBIGBUFOK -DHADDRLIST \
  2540.     -DPTX  -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL -DNOREALPATH \
  2541.     $(KFLAGS) -Xa -Wc,-pw -Wc,-i486 -Wc,-O3 -Wa,-N17061" \
  2542.     "LIBS = -lXbsd -lseq -lsocket -linet -lnsl -lmalloc -lm -lcurses" \
  2543.     "LNKFLAGS = -s"
  2544.  
  2545. #Sequent DYNIX/ptx 2.1.6, gcc 2.7.2.2, with curses:
  2546. dynixptx216cgcc:
  2547.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 2.1.6 gcc'
  2548.     $(MAKE) xermit "CC = gcc" "CC2 = gcc" KTARGET=$${KTARGET:-$(@)} \
  2549.     "CFLAGS= -DPOSIX -DHDBUUCP -DDYNAMIC -DTCPSOCKET \
  2550.     -DSELECT -DCK_REDIR -DCK_NAWS -DCK_WREFRESH -DSW_ACC_ID \
  2551.     -DTCP_NODELAY=1 -DTRMBUFL=2048 -DBIGBUFOK -DHADDRLIST \
  2552.     -DPTX  -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL -DNOREALPATH \
  2553.     $(KFLAGS) -O3 -pipe -funsigned-char" \
  2554.     "LIBS = -lXbsd -lseq -lsocket -linet -lnsl -lmalloc -lm -lcurses" \
  2555.     "LNKFLAGS = -s"
  2556.  
  2557. #Sequent DYNIX/ptx 4.0, ANSI C compilation, with curses
  2558. dynixptx41c:
  2559.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 4.0...'
  2560.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2561.     "CFLAGS= -DPOSIX -DHDBUUCP -DTCPSOCKET \
  2562.     -DWAIT_T=int -DPTX -DPTX4 -DCK_CURSES -DCK_NEWTERM \
  2563.     -DNOGETUSERSHELL $(KFLAGS) -O" \
  2564.     "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  2565.  
  2566. #Sequent DYNIX/ptx 4.4, ANSI C compilation, with curses
  2567. dynixptx44:
  2568.     @echo 'Making C-Kermit $(CKVER) for POSIX, Sequent DYNIX/ptx 4.4...'
  2569.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2570.     "CFLAGS= -DPTX -DPTX4 -DPOSIX -DHDBUUCP -DTCPSOCKET -DWAIT_T=int \
  2571.     -DCK_CURSES -DCK_NEWTERM -DBIGBUFOK -DSELECT -DNOGETUSERSHELL \
  2572.     $(KFLAGS) -O" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  2573.  
  2574. #Sequent DYNIX 3.0.x
  2575. dynix3:
  2576.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.0.x...
  2577.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2578.     "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET -O \
  2579.     -DPWUID_T=int -DGID_T=int $(KFLAGS)"
  2580.  
  2581. #Sequent DYNIX 3.0.x, no ACUCNTRL
  2582. dynix3noacu:
  2583.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.0.x...
  2584.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2585.     "CFLAGS= -DBSD43 -DLCKDIR -DTCPSOCKET -O \
  2586.     -DUID_T=int -DGID_T=int $(KFLAGS)"
  2587.  
  2588. #Sequent DYNIX 3.1.x
  2589. dynix31:
  2590.     @echo Making C-Kermit $(CKVER) for Sequent DYNIX 3.1.x...
  2591.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2592.     "CFLAGS= -O -DDCLPOPEN -DLCKDIR -DBSD4 -DTCPSOCKET $(KFLAGS)"
  2593.  
  2594. #Sequent DYNIX 3.1.2, as above but with curses, to be compiled by gcc 2.3.3.
  2595. dynix31c:
  2596.     @echo 'Making C-Kermit $(CKVER) for Sequent DYNIX 3.1.2, curses...'
  2597.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2598.     "CFLAGS= -O2 -DDCLPOPEN -DACUCNTRL \
  2599.     -DBSD43 -DTCPSOCKET -DCK_CURSES -DUID_T=int \
  2600.     $(KFLAGS)" "LIBS= -lcurses -ltermcap"
  2601.  
  2602. #Convex C1 with Berkeley Unix
  2603. convex:
  2604.     @echo Making C-Kermit $(CKVER) for Convex C1 / BSD...
  2605.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2606.     "CFLAGS= -DBSD4 -DNOLEARN $(KFLAGS) -Dmsleep=mnap"
  2607.  
  2608. #Convex C210 with Convex/OS 8
  2609. convex8:
  2610.     @echo Making C-Kermit $(CKVER) for Convex C210 with OS 8
  2611.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2612.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNODEBUG -DDIRENT -DNOFILEH \
  2613.     $(KFLAGS) -DSIG_V -Dmsleep=mnap"
  2614.  
  2615. #Convex C2 with Convex OS 9.1 (should also work with 8.1 or later)
  2616. #with ANSI C compiler, uses BSD 4.3 uucp lockfile convention.
  2617. convex9:
  2618.     @echo Making C-Kermit $(CKVER) for Convex C210 with OS 9.1
  2619.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2620.     "CFLAGS= -DPOSIX -DCONVEX9 -DNOIEXTEN -DDIRENT -DNOFILEH -DTCPSOCKET \
  2621.     -D__STDC__ -DLCKDIR -Dmsleep=mnap -O -ext -tm c1 $(KFLAGS)" \
  2622.     "LNKFLAGS = -ext"
  2623.  
  2624. #Convex C2 with Convex OS 10.1 or later
  2625. #with gcc 2.x C compiler
  2626. convex10gcc:
  2627.     @echo Making C-Kermit $(CKVER) for Convex C2 with OS 10.1 using gcc
  2628.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2629.     "CFLAGS= -DPOSIX -DCONVEX9 -DNOIEXTEN -DDIRENT -DNOFILEH -DTCPSOCKET \
  2630.     -D__STDC__  -Dmsleep=mnap -O2 $(KFLAGS)" CC=gcc CC2=gcc
  2631.  
  2632. #Cray X-MP or Y-MP UNICOS 6.x or 7.x.
  2633. #NOTE: NPROC tells how many parallel makes to run.  If your Cray has multiple
  2634. #processors, you can set NPROC up to the number of CPUs, e.g. NPROC=16.
  2635. cray:
  2636.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 6.x or 7.0...
  2637.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2638.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS) -O1"
  2639.  
  2640. #Cray X-MP or Y-MP UNICOS 8.0 Alpha.
  2641. cray8:
  2642.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 8.0 Alpha...
  2643.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2644.     "CFLAGS= -DSVR4 -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS) -O1"
  2645.  
  2646. #Cray X-MP or Y-MP UNICOS 9.0.
  2647. #This one was executed successfully for C-Kermit 8.0.209.
  2648. #Earlier versions of Unicos will probably need the same flags.
  2649. cray9:
  2650.     @echo 'Making C-Kermit $(CKVER) for Cray X/Y-MP UNICOS 9.0...
  2651.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2652.     "CFLAGS= -DSVR4 -DDIRENT -DHDBUUCP -DNOLFDEVNO \
  2653.     -DTCPSOCKET $(KFLAGS) -O1"
  2654.  
  2655. #Cray-2 or Cray 3-CSOS
  2656. #NOTE: NPROC tells how many parallel makes to run.  If your Cray has multiple
  2657. #processors, you can set NPROC up to the number of CPUs, e.g. NPROC=16.
  2658. craycsos:
  2659.     @echo 'Making C-Kermit $(CKVER) for Cray-2/3 CSOS
  2660.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} NPROC=1 \
  2661.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET \
  2662.     $(KFLAGS) -DCK_ANSIC -DCK_CURSES" "LIBS=-lnet"
  2663.  
  2664. #NeXTSTEP 1.0 through 3.2.
  2665. #Includes fullscreen file transfer display (curses) and TCP/IP support.
  2666. #Uses shared library to make executable program about 80K smaller.
  2667. #Remove "LIBS = -lsys_s" if this causes trouble.
  2668. next:
  2669.     @echo Making C-Kermit $(CKVER) for NeXTSTEP...
  2670.     @echo 'If you get errors in ckutio.c about w_S, w_T, etc,'
  2671.     @echo 'add KFGLAGS=-DNOREDIRECT to your make command.'
  2672.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  2673.     "CFLAGS= -DNEXT -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2674.     -pipe -DCK_CURSES $(KFLAGS) -O -w" "LIBS = -lsys_s -lcurses -ltermcap"
  2675.  
  2676. nextc:
  2677.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) next \
  2678.     KTARGET=$${KTARGET:-$(@)}
  2679.  
  2680. nextg:
  2681.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) next \
  2682.     KFLAGS=-Wall KTARGET=$${KTARGET:-$(@)}
  2683.  
  2684. nextgc:
  2685.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) next \
  2686.     KFLAGS=-Wall KTARGET=$${KTARGET:-$(@)}
  2687.  
  2688. #NeXTSTEP 3.3.
  2689. #Includes fullscreen file transfer display and TCP/IP.
  2690. # You might have to add 1 line to 1 NeXT header file <ip.h>
  2691. # to declare n_long as u_long by adding #include <bsd/netinet/in_systm.h>
  2692.  
  2693. next33:
  2694.     @echo Making C-Kermit $(CKVER) for NeXTSTEP 3.3...
  2695.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  2696.     "CFLAGS= -DNEXT33 -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2697.     -pipe -DCK_CURSES $(KFLAGS) -O -w" "LIBS = -lsys_s -lcurses -ltermcap"
  2698.  
  2699. #OPENSTEP 4.2 for Sparc, m680x0, HP PA-RISC, and Intel.
  2700. #Includes fullscreen file transfer display and TCP/IP.
  2701. #ckcpro.c compiled without optimization because it crashes the compiler.
  2702. openstep42:
  2703.     @echo Making C-Kermit $(CKVER) for OPENSTEP 4.2...
  2704.     $(MAKE) ckcpro.$(EXT) \
  2705.     "CFLAGS= -DOPENSTEP42 -DNEXT33 -DTCPSOCKET -DLCKDIR -DNOPUTENV \
  2706.     -DFNFLOAT -pipe -DCK_CURSES $(KFLAGS) -w"
  2707.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  2708.     "CFLAGS= -DOPENSTEP42 -DNEXT33 -DTCPSOCKET -DLCKDIR -DNOPUTENV \
  2709.     -DFNFLOAT -pipe -DCK_CURSES $(KFLAGS) -O -w" \
  2710.     "LIBS = -lsys_s -lcurses -ltermcap"
  2711.  
  2712. #NeXT with malloc debugger
  2713. nextmd:
  2714.     @echo Making C-Kermit $(CKVER) for NeXT with malloc debugging...
  2715.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} \
  2716.     "CFLAGS= -DNEXT -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2717.     -DCK_CURSES $(KFLAGS) -O -w -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG" \
  2718.     "LIBS = -lsys_s -lcurses -ltermcap"
  2719.  
  2720. #Build for NeXTSTEP with "fat" binaries (MABs) that run on both Motorola
  2721. #and Intel platforms.
  2722. nextfat:
  2723.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) \
  2724.     next KTARGET=$${KTARGET:-$(@)} \
  2725.     "KFLAGS=-Wall -arch m68k -arch i386" "LNKFLAGS = -arch m68k -arch i386"
  2726.  
  2727. #NeXTSTEP on Intel Platforms.
  2728. next486:
  2729.     @echo Making C-Kermit $(CKVER) for NeXTSTEP on Intel Platforms...
  2730.     @echo 'If you get errors in ckutio.c about w_S, w_T, etc,'
  2731.     @echo 'add KFGLAGS=D-DNOREDIRECT to your make command.'
  2732.     $(MAKE) xermit CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)} \
  2733.     "CFLAGS= -DNEXT -DTCPSOCKET -DLCKDIR -DNOPUTENV -DFNFLOAT \
  2734.     -DNODEBUG -O3 -fno-omit-frame-pointer -fschedule-insns2 -pipe \
  2735.     -DCK_CURSES $(KFLAGS) -w" "LIBS = -lsys_s -lcurses -ltermcap"
  2736.  
  2737. #Single binary that runs on NeXT 68030 and 68040, Intel, HP, and Sparc,
  2738. #as well as on OpenStep/Mach.
  2739. nextquadfat:
  2740.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) next \
  2741.     KTARGET=$${KTARGET:-$(@)} \
  2742.     "KFLAGS=-Wall -arch m68k -arch i386 -arch hppa -arch sparc" \
  2743.     "LNKFLAGS = -arch m68k -arch i386 -arch hppa -arch sparc"
  2744.  
  2745. #BeBox
  2746. beboxdr7:
  2747.     @echo 'Making C-Kermit $(CKVER) for the BeBox...'
  2748.     @echo 'Link step will fail with default Metroworks linker 64K limit.'
  2749.     @echo 'Code Warrior Gold required to link big programs.'
  2750.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2751.     "CC=/boot/develop/tools/mwcc" "CC2=/boot/develop/tools/mwld" \
  2752.     "CFLAGS= -DBEBOX -DBE_DR_7 -DPOSIX -DNOUUCP -DNOLEARN $(KFLAGS) -O"
  2753.  
  2754. #BeBox BeOS DR7 only
  2755. bebox:
  2756.     @echo 'Making C-Kermit $(CKVER) for BeBox...'
  2757.     @echo 'Link step will fail with default Metroworks linker 64K limit.'
  2758.     @echo 'Code Warrior Pro 3.0 for BeBox required to link big programs.'
  2759.     $(MAKE) wermit "CC=mwcc" "CC2=mwld" KTARGET=$${KTARGET:-$(@)} \
  2760.     "CFLAGS= -DBEBOX -DPOSIX -DNOLEARN -DNOUUCP $(KFLAGS) -O"
  2761.  
  2762. #BeOS 4.5
  2763. #We have to use the wermit target because 'fd_set' is unknown.
  2764. beos45:
  2765.     $(MAKE) wermit "CC=$(CC)" "CC2=$(CC2)" KTARGET=$${KTARGET:-$(@)} \
  2766.     "CFLAGS= -DBEOS -DBEOS45 -DPOSIX -DNOIKSD -DNOREALPATH -DSYSTIMEH \
  2767.     -DNOCOTFMC -DNOUUCP -DNOLEARN $(KFLAGS) -O" \
  2768.     "LIBS = $(LIBS)"
  2769.  
  2770. #BeOS 4.5
  2771. beos45net:
  2772.     $(MAKE) CC=$(CC) CC2=$(CC2) beos45 \
  2773.     "KFLAGS=-DTCPSOCKET -DNO_DNS_SRV $(KFLAGS)" "LIBS=-lnet -lnetapi"
  2774.  
  2775. #Plan 9 from Bell Labs
  2776. plan9:
  2777.     @echo 'C-Kermit for Plan 9 from Bell Labs - calling ckpker.mk...'
  2778.     make -f ckpker.mk
  2779.  
  2780. #POSIX
  2781. posix:
  2782.     @echo 'Making C-Kermit $(CKVER) for pure POSIX...'
  2783.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2784.     "CFLAGS= -DPOSIX -DNOUUCP -DNOLEARN $(KFLAGS) -O"
  2785.  
  2786. # PowerMAX OS (SVR4) from Concurrent (tested on PowerMAX 5.1)
  2787. powermax:
  2788.     @echo 'Making C-Kermit $(CKVER) for Concurrent PowerMAX OS...'
  2789.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2790.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DPOWERMAX \
  2791.     -DNETPTY -DHAVE_STREAMS -DHAVE_GRANTPT -DHAVE_PTSNAME -DPUSH_PTEM \
  2792.     -DPUSH_LDTERM -DPUSH_TTCOMPAT \
  2793.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES $(KFLAGS)" \
  2794.     "LIBS= -lsocket -lnsl -lresolv -lcurses -lgen -lc -lucbc"
  2795.  
  2796. #Berkeley Software Design Inc. BSDI
  2797. # Substitute "LIBS= -lnewcurses -ltermcap" if desired.
  2798. bsdi:
  2799.     @echo 'Making C-Kermit $(CKVER) for BSDI ...'
  2800.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2801.     "CFLAGS= -DBSD44 -DSETREUID -DSW_ACC_ID -DBIGBUFOK -DFIXCRTSCTS \
  2802.     -DTCPSOCKET -DCK_CURSES -DFNFLOAT $(KFLAGS) -O" \
  2803.     "LIBS= -lcurses -ltermcap -lm"
  2804.  
  2805. #Berkeley Software Design Inc. BSDI - has higher serial speeds than 1.x.
  2806. bsdi2:
  2807.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) bsdi \
  2808.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DBSDI2 $(KFLAGS)"
  2809.  
  2810. bsdi3:
  2811.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) bsdi \
  2812.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DBSDI2 -DBSDI3 $(KFLAGS)"
  2813.  
  2814. bsdi4:
  2815.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) bsdi \
  2816.     KTARGET=$${KTARGET:-$(@)} \
  2817.     "KFLAGS=-DBSDI2 -DBSDI3 -DBSDI4 -DTPUTSFNTYPE=void -DTPUTSISVOID \
  2818.     -DCKHTTP -m486 $(KFLAGS)"
  2819.  
  2820. # (old name for the above)
  2821. bsdiposix:
  2822.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) bsdi
  2823.  
  2824.  
  2825. #Build a BSDI 4.x binary that also runs under FreeBSD (Terry Kennedy).
  2826. #But watch out for details like serial-port locking.
  2827. bsdix:
  2828.     $(MAKE) "MAKE=$(MAKE)" CC=$(CC) CC2=$(CC2) bsdi \
  2829.     KTARGET=$${KTARGET:-$(@)} \
  2830.     "KFLAGS=-DBSDI2 -DBSDI3 -DBSDI4 -DTPUTSFNTYPE=void -DTPUTSISVOID \
  2831.     -m486 $(KFLAGS)" "LNKFLAGS=-static -Wl,-m,i386bsdi -Wl,-e,_start"
  2832.  
  2833. #Pyramid 9XXX (e.g. 9845) or MIServer T series, OSx 4.4b thru 5.1
  2834. pyramid:
  2835.     @echo Making C-Kermit $(CKVER) for Pyramid Dual Port OSx
  2836.     ucb $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2837.     "CFLAGS= -DBSD43 -DTCPSOCKET -DPYRAMID -O $(KFLAGS)" "LNKFLAGS = -s"
  2838.  
  2839. #Pyramid Dual Port OSx using HoneyDanBer UUCP, curses and TCP
  2840. pyramid-hdb:
  2841.     @echo Making C-Kermit $(CKVER) for Pyramid Dual Port OSx
  2842.     ucb $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2843.     "CFLAGS= -DBSD43 -DTCPSOCKET -DHBDUUCP -DCK_CURSES -O $(KFLAGS)" \
  2844.     "LNKFLAGS = -s" "LIBS = -lcurses -ltermcap"
  2845.  
  2846. #Pyramid DC/OSx (UNIX System V R4).
  2847. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  2848. #are not misplaced in sys (rather than netinet and arpa, respectively).
  2849. #Uses ANSI C.
  2850. #NOTE: Remove -O and Olimit:2500 from CFLAGS if TELNET connections do not work.
  2851. pyrdcosx:
  2852.     @echo 'Making C-Kermit $(CKVER) for Pyramid DC/OSx...'
  2853.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2854.     "CFLAGS = -Xa -O -DSVR4 -DDIRENT -DHDBUUCP -DSELECT -DNOGETUSERSHELL \
  2855.     -DCK_CURSES -DSTERMIOX -DTCPSOCKET -DPYRAMID -K Olimit:3100 \
  2856.     -DNO_DNS_SRV $(KFLAGS)" "LIBS= -lcurses -lsocket -lnsl" "LNKFLAGS = -s"
  2857.  
  2858. #IBM's AIX 3.0 on IBM 370 mainframe, tested on AIX F44 thru F50.
  2859. aix370:
  2860.     @echo Making C-Kermit $(CKVER) for IBM System/370 AIX 3.0...
  2861.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2862.     "CFLAGS= -DAIX370 -DTCPSOCKET -DLCKDIR -DDIRENT $(KFLAGS)" \
  2863.     "LIBS = -lbsd"
  2864.  
  2865. #IBM's AIX/ESA 2.1 (OSF/1) on IBM mainframe
  2866. aixesa:
  2867.     @echo Making C-Kermit $(CKVER) for IBM AIX/ESA...
  2868.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2869.     "CFLAGS= -DAIXESA -DTCPSOCKET $(KFLAGS) -O"
  2870.  
  2871. #IBM PS/2 with AIX 1.0 thru 1.3.
  2872. #  Reports indicate that -O switch must be omitted.
  2873. #  It is also possible that "make bsd" will work (reports welcome).
  2874. #  One report said "make LIBS=-lbsd bsd" did the trick.
  2875. #  NOTLOG is to get around a 'tlog' symbol defined in one of the headers.
  2876. ps2aix:
  2877.     @echo 'Making C-Kermit $(CKVER) for IBM AIX 1.x PS/2...'
  2878.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2879.     "CFLAGS = -DATTSV -DNOREALPATH -DPS2AIX10 -DSIG_V \
  2880.     -DNOUNICODE -DNOTLOG -DNOLEARN $(KFLAGS) -i" \
  2881.     "LNKFLAGS = -i"
  2882.  
  2883. ps2aixnetc:
  2884.     @echo 'Making C-Kermit $(CKVER) for IBM AIX 1.x PS/2...'
  2885.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  2886.     "CFLAGS = -DATTSV -DNOREALPATH -DPS2AIX10 -DTCPSOCKET -DCK_CURSES \
  2887.     -DSIG_V -DNOUNICODE -DNOTLOG -DNOLEARN $(KFLAGS) -i" \
  2888.     "LIBS = -lcurses" "LNKFLAGS = -i"
  2889.  
  2890. ps2aix3:
  2891.     $(MAKE) ps2aix KTARGET=$${KTARGET:-$(@)}
  2892.  
  2893. #IBM RT PC with AIX 2.2.1, valid as of C-Kermit 8.0.
  2894. #NOTLOG because of a conflict in <sys/termio.h>.
  2895. #This one has unique and strange lockfiles.
  2896. #  -O removed on purpose (8.0).
  2897. #  In case of "compiler error: symbol table full", increase the -Nn number.
  2898. #  In case of "compiler error: Constant pool too big", boost the -Np number.
  2899. #  Add -DNOPUTENV if putenv() causes trouble.
  2900. #  Put -DNOIKSD back if IKSD-related problems occur.
  2901. rtaix:
  2902.     @echo 'Making C-Kermit $(CKVER) for IBM RT PC, AIX 2.2.1...'
  2903.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2904.     "CFLAGS = -DATTSV -DRTAIX -DHDBUUCP -DDIRENT -DNOTLOG -DTCPSOCKET \
  2905.     -DNOGETUSERSHELL -DCLSOPN -DNOREALPATH -DNOUNICODE -DBSD_INCLUDES \
  2906.     -DUSE_LSTAT -DFNFLOAT -Nn2500 -Np1000 -Wq,-SJ2 -a -w $(KFLAGS)" \
  2907.     "LIBS = -lm $(LIBS)" "LNKFLAGS = -s"
  2908.  
  2909. #### IBM RT PC - these targets were last verified in C-Kermit 8.0.211.
  2910.  
  2911. #IBM RT PC with AIX 2.2.1 + curses
  2912. rtaixc:
  2913.     $(MAKE) rtaix CC=$(CC) CC2=$(CC2) "KFLAGS=-DCK_CURSES" "LIBS=-lcurses"
  2914.  
  2915. #IBM RT PC with AIX (ACIS) 2.2.1 (BSD 4.3)
  2916. # Add -O, -DDYNAMIC, -s, etc, if they work.
  2917. rtacis:
  2918.     @echo Making C-Kermit $(CKVER) for RT PC with ACIS 2.2.1 = BSD 4.3...
  2919.     $(MAKE) xermit KTARGET=$${KTARGET-$(@)} \
  2920.     "CFLAGS= -DBSD4 -DTCPSOCKET -DNOREALPATH -DNOIKSD -DNOPUTENV \
  2921.     $(KFLAGS) -U__STDC__" "LNKFLAGS = -s"
  2922.  
  2923. #### IBM AIX.  The first two targets should work for any version of AIX
  2924. #### from 4.2 onwards.  The ones after that are for older versions or
  2925. #### specific configurations, and/or with gcc.
  2926.  
  2927. # This one should work for any AIX 4.2 or later: "make aix".
  2928. # Other tags are for compatibility with old makefile targets.
  2929. #OK: 2011/06/11
  2930. aix aix42 aix43 aix44 aix45 aix50 aix51 aix52 aix53 aix54 aix61:
  2931.     @echo Making C-Kermit $(CKVER) for IBM AIX...
  2932.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2933.     "CFLAGS= -DAIXRS -DAIX41 -DAIX42 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  2934.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DFNFLOAT \
  2935.     -DSELECT -DSELECT_H -DNOGETUSERSHELL -qmaxmem=16000 -O \
  2936.     -DCKCPU=\\\"`uname -p`\\\" \
  2937.     -DHERALD=\"\\\" IBM AIX `uname -v`.`uname -r`\\\"\" \
  2938.     -D_LARGE_FILES $(KFLAGS)" "LNKFLAGS = -s" "LIBS=-lcurses -lm"
  2939.  
  2940. # Same but using gcc instead of cc
  2941. # This works but we get "gcc: unrecognized option '-qmaxmem-..'" each module.
  2942. aixg:
  2943.     @echo "Using gcc..."
  2944.     $(MAKE) aix KTARGET=$${KTARGET:-$(@)} \
  2945.     CC=gcc CC2=gcc "KFLAGS=-pipe -funsigned-char"
  2946.  
  2947. # AIX 4.2 or later with OpenSSL 0.9.7 or later: "make aix+ssl"
  2948. # For earlier OpenSSL remove -DOPENSSL_097 or add "KFLAGS=-UOPENSSL_097".
  2949. # Synonym target names added to cover old redundant targets that were removed.
  2950. # If SSL is not installed in the /usr/local tree (see SSLINC and SSLLIB
  2951. # definitions near the top), you can specify the locations in your make
  2952. # command as in this example:
  2953. #
  2954. #  SSLINC=-I/opt/ssl/include SSLLIB=-L/opt/ssl/lib make -e aix+ssl
  2955. #
  2956. # To build with gcc use "make aix CC=gcc CC2=gcc", or "make aixg"
  2957. #
  2958. #OK: 2011/06/15
  2959. aix+ssl aix51+openssl aix52+openssl aix53+openssl:
  2960.     @echo "Making C-Kermit $(CKVER) for IBM AIX with OpenSSL..."
  2961.     @echo "SSLINC=$(SSLINC) SSLLIB=$(SSLLIB)"
  2962.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2963.     CC=$(CC) CC2=$(CC2) \
  2964.     "CFLAGS=-DAIXRS -DAIX41 -DAIX42 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  2965.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DFNFLOAT \
  2966.     -D_LARGE_FILES -DSELECT -DSELECT_H -DNOGETUSERSHELL \
  2967.     -DCKCPU=\\\"`uname -p`\\\" \
  2968.     -DHERALD=\"\\\" IBM AIX `uname -v`.`uname -r`\\\"\" \
  2969.     -DCK_AUTHENTICATION -DCK_SSL -DOPENSSL_097 $(SSLINC) $(KFLAGS)" \
  2970.     "LNKFLAGS=-s" "LIBS=$(SSLLIB) -lssl -lcrypto -lcurses -lm -lcrypt"
  2971.  
  2972. # AIX 5.3 or 6.1 or later with IBM OpenSSL, which is always in the directories
  2973. # shown below so you don't have to set SSLINC and SSLLIB.  If for some reason
  2974. # the SSL include files and libraries are not in the places assumed, then use
  2975. # "make aix+ssl" (just above) and set SSLINC and SSLLIB to indicate where the
  2976. # SSL files are.  To build with gcc use "make aix+ibmssl CC=gcc CC2=gcc".
  2977. aix+ibmssl:
  2978.     @echo "Making C-Kermit $(CKVER) for IBM AIX 6.1 with OpenSSL..."
  2979.     @echo "If this fails use 'make aix+ss' and specify SSLINC and SSLLIB"
  2980.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2981.     CC=$(CC) CC2=$(CC2) \
  2982.     "CFLAGS=-DAIXRS -DAIX41 -DAIX42 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  2983.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DFNFLOAT \
  2984.     -D_LARGE_FILES -DSELECT -DSELECT_H -DNOGETUSERSHELL \
  2985.     -DCKCPU=\\\"`uname -p`\\\" \
  2986.     -DHERALD=\"\\\" IBM AIX `uname -v`.`uname -r`\\\"\" \
  2987.     -DCK_AUTHENTICATION -DCK_SSL -DOPENSSL_098 \
  2988.     -I/usr/include/openssl $(KFLAGS)" \
  2989.     "LNKFLAGS=-s" \
  2990.     "LIBS=-L/usr/lib/openssl -lssl -lcrypto -lcurses -lm -lcrypt"
  2991.  
  2992. # Old AIX versions...
  2993.  
  2994. #IBM AIX 3.0, 3.1, or 3.2 for RISC System/6000.
  2995. rs6000:
  2996.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.0 or 3.1, RS/6000...
  2997.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  2998.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR3 -DDIRENT -DCK_ANSIC \
  2999.     -DCK_POLL -DCLSOPN -DSELECT_H -DNOTTYLOCK -O $(KFLAGS)" \
  3000.     "LNKFLAGS = -s"
  3001.  
  3002. #IBM AIX 3.0, 3.1, or 3.2 for RISC System/6000, with curses.
  3003. rs6000c:
  3004.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.0 or 3.1, RS/6000...
  3005.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3006.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR3 -DDIRENT -DCK_ANSIC \
  3007.     -DCK_POLL -DCLSOPN -DCK_CURSES -DSELECT_H -DNOTTYLOCK -DNOREALPATH \
  3008.     -O $(KFLAGS)" "LIBS= -lcurses -ltermcap" "LNKFLAGS = -s"
  3009.  
  3010. aix30:
  3011.     $(MAKE) rs6000 CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)}
  3012.  
  3013. aix31:
  3014.     $(MAKE) rs6000 CC=$(CC) CC2=$(CC2) KTARGET=$${KTARGET:-$(@)}
  3015.  
  3016. #IBM AIX 3.2 for RISC System/6000.
  3017. #In case of "subprogram too complex" warnings, add "-qmaxmem=16000" to CFLAGS.
  3018. rs6aix32:
  3019.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.2, RS/6000...
  3020.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3021.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR4 -DDIRENT -DCK_ANSIC -DNOREALPATH \
  3022.     -DSELECT_H -DCLSOPN -DNOTTYLOCK -O $(KFLAGS)" "LNKFLAGS = -s"
  3023.  
  3024. #IBM AIX 3.2 for RISC System/6000.
  3025. rs6aix32c:
  3026.     @echo Making C-Kermit $(CKVER) for IBM AIX 3.2, RS/6000, TCP+curses...
  3027.     @echo In case of Subprogram Too Complex warnings,
  3028.     @echo add -qmaxmem=16000 to CFLAGS.
  3029.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3030.     "CFLAGS= -DAIXRS -DTCPSOCKET -DSVR4 -DDIRENT -DCK_ANSIC -DNOREALPATH \
  3031.     -DCLSOPN -DCK_CURSES -DSELECT_H -DNOTTYLOCK -O $(KFLAGS)" \
  3032.     "LNKFLAGS = -s" "LIBS=-lcurses"
  3033.  
  3034. aix32:
  3035.     $(MAKE) rs6aix32c KTARGET=$${KTARGET:-$(@)}
  3036.  
  3037. #IBM AIX 4.1, 4.1.x on RISC System/6000 or Power Series.
  3038. #Generates common binary for all platforms if using xlc (IBM C compiler).
  3039. #When using gcc, add -mcpu=common to generate common binary.
  3040. #Note that this one needs CK_NEWTERM.
  3041. # Add -bbigtoc in case ld fails with TOC overflow.
  3042. aix41:
  3043.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  3044.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3045.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  3046.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  3047.     -DNOGETUSERSHELL -qmaxmem=16000 -O $(KFLAGS)" \
  3048.     "LNKFLAGS = -s" "LIBS=-lcurses"
  3049.  
  3050. #Ditto but with gcc.
  3051. #Remove "CC=gcc CC2=gcc" if you have gcc installed as cc.
  3052. aix41g:
  3053.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  3054.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC=gcc" "CC2=gcc" \
  3055.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  3056.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  3057.     -DNOGETUSERSHELL -O $(KFLAGS)" \
  3058.     "LNKFLAGS = -s -Xlinker -bbigtoc" "LIBS=-lcurses"
  3059.  
  3060. # Add -bbigtoc in case ld fails with TOC overflow.
  3061. aix41+krb5+krb4:
  3062.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  3063.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3064.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  3065.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  3066.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  3067.     -DCK_ENCRYPTION -DCK_DES $(K5INC) $(K5INC)/krb5  \
  3068.     -DNOGETUSERSHELL -qmaxmem=16000 -O $(KFLAGS)" \
  3069.     "LNKFLAGS = -s" \
  3070.     "LIBS = $(K5LIB) -lcurses -lkrb4 -ldes425 -lkrb5 \
  3071.     -lcom_err -lk5crypto -lgssapi_krb5"
  3072.  
  3073. #Old name for "aix41".
  3074. rs6aix41c:
  3075.     $(MAKE) aix41 KTARGET=$${KTARGET:-$(@)}
  3076.  
  3077. #IBM AIX 4.1, 4.1.x, or 4.2 on RISC System/6000 or Power Series,
  3078. # with X.25 support
  3079. #Generates common binary for all platforms if using xlc (IBM C compiler).
  3080. #When using gcc, add -mcpu=common to generate common binary.
  3081. # Add -bbigtoc in case ld fails with TOC overflow.
  3082. aix41x25:
  3083.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  3084.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3085.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  3086.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  3087.     -DIBMX25 -DDEBUG -DNOGETUSERSHELL -qmaxmem=16000 -g $(KFLAGS)" \
  3088.     "LNKFLAGS = -g -bI:/lib/pse.exp" "LIBS=-lcurses -lodm -lcfg"
  3089.     -@echo "]0;kermit done\c"
  3090.  
  3091. #As above but without -g in LNKFLAGS.
  3092. # Add -bbigtoc in case ld fails with TOC overflow.
  3093. aix41x25o:
  3094.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.1.1 RS/6000 or PowerPC...
  3095.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3096.     "CFLAGS= -DAIXRS -DAIX41 -DSVR4 -DSTERMIOX -DTCPSOCKET -DDIRENT \
  3097.     -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DSELECT -DSELECT_H \
  3098.     -DIBMX25 -DNODEBUG -DNOGETUSERSHELL -qmaxmem=16000 $(KFLAGS)" \
  3099.     "LNKFLAGS = -bI:/lib/pse.exp" "LIBS=-lcurses -lodm -lcfg"
  3100.     -@echo "]0;kermit done\c"
  3101.  
  3102. #AIX 4.2 -- Use this target if the regular "make aix" doesn't work.
  3103. # Must have CK_NEWTERM or echoing is lost after curses.
  3104. # Add -bbigtoc in case ld fails with TOC overflow.  As of C-Kermit 8.0.212,
  3105. # all AIX builds 4.2 and later include large file support.
  3106. oldaix42:
  3107.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.2 or higher...
  3108.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3109.     "CFLAGS= -DAIXRS -DAIX41 -DAIX42 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  3110.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DCK_NEWTERM -DFNFLOAT \
  3111.     -DSELECT -DSELECT_H -DNOGETUSERSHELL -qmaxmem=16000 -O \
  3112.     -DCKCPU=\\\"`uname -p`\\\" \
  3113.     -DHERALD=\\\"\ IBM\ AIX\ `uname -v`.`uname -r`\\\" \
  3114.     -D_LARGE_FILES $(KFLAGS)" "LNKFLAGS = -s" "LIBS=-lcurses -lm"
  3115.  
  3116. #AIX 4.3 - Use this target if the regular "make aix" doesn't work.
  3117. # Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  3118. # -bbigtoc needed on some systems but not others to avoid TOC overflow.
  3119. # "man ld" says -bbigtoc makes program run slower.
  3120. oldaix43:
  3121.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher...
  3122.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3123.     "CFLAGS= -DAIXRS -DAIX41 -DAIX43 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  3124.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3125.     -DFNFLOAT -DNOGETUSERSHELL -qmaxmem=16000 -bbigtoc -O $(KFLAGS)" \
  3126.     "LNKFLAGS = -s" "LIBS=-lcurses -lm"
  3127.  
  3128. #AIX 4.3 with IBM X.25.
  3129. aix43x25:
  3130.     @echo "Making C-Kermit $(CKVER) for IBM AIX 4.3 with X.25..."
  3131.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3132.     "CFLAGS= -DAIXRS -DAIX41 -DAIX43 -DSVR4 -DSTERMIOX -DTCPSOCKET \
  3133.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3134.     -DFNFLOAT -DNOGETUSERSHELL -DIBMX25 \
  3135.     -qmaxmem=16000 -bbigtoc -O $(KFLAGS)" \
  3136.     "LNKFLAGS = -bI:/lib/pse.exp" "LIBS=-lcurses -lodm -lcfg -lm"
  3137.  
  3138. #AIX 4.3 -- Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  3139. # -mminimal-toc needed on some systems but not others to avoid TOC overflow.
  3140. # "man ld" says -bbigtoc makes program run slower.
  3141. aix43g:
  3142.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  3143.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3144.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3145.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3146.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  3147.     "LIBS=-lcurses -lm"
  3148.  
  3149. aix43gcc:
  3150.     $(MAKE) aix43g
  3151.  
  3152. # None of the following aix43gcc attempts work on a gcc-only AIX 4.3.3 box.
  3153. # It just plain can't find the math routines (fmod, pow, exp, sqrt, log10,...)
  3154. # Which is odd because nm /usr/lib/libC.a finds them...
  3155.  
  3156. #in case aix43gcc can't find its math library...
  3157. aix43gccx:
  3158.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  3159.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3160.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3161.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3162.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  3163.     "LIBS= -L/usr/local/lib/gcc-lib/powerpc-ibm-aix4.3.1.0/2.95.2 \
  3164.     -lcurses -bloadmap -bnoquiet"
  3165.  
  3166. #in case aix43gccx can't find its math library...
  3167. aix43gccy:
  3168.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  3169.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3170.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3171.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3172.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  3173.     "LIBS= -lcurses -bloadmap -bnoquiet"
  3174.  
  3175. #in case aix43gccx can't find its math library...
  3176. aix43gccz:
  3177.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 gcc...
  3178.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3179.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3180.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3181.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL $(KFLAGS)" \
  3182.     "LIBS= -L. -lcurses -bloadmap -bnoquiet"
  3183.  
  3184. #AIX 4.3 with MIT Kerberos 5 and Kerberos 4 compatibility mode
  3185. # Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  3186. # -mminimal-toc needed on some systems but not others to avoid TOC overflow.
  3187. # "man ld" says -bbigtoc makes program run slower.
  3188. aix43gcc+krb5+krb4:
  3189.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher w/Kerberos...
  3190.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3191.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3192.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3193.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL \
  3194.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  3195.     -DCK_ENCRYPTION -DCK_DES -funsigned-char $(K5INC) $(K5INC)/krb5 \
  3196.     $(KFLAGS)" \
  3197.     "LIBS=$(K5LIB) -lcurses -lm -lkrb4 -ldes425 -lkrb5 \
  3198.     -lcom_err -lk5crypto -lcrypt -lgssapi_krb5"
  3199.  
  3200. #AIX 4.3 with MIT Kerberos 5, Kerberos 4 compatibility mode and OpenSSL
  3201. # Must NOT have CK_NEWTERM or else C-Kermit hangs after curses.
  3202. # -mminimal-toc needed on some systems but not others to avoid TOC overflow.
  3203. # "man ld" says -bbigtoc makes program run slower.
  3204. aix43gcc+krb5+krb4+openssl:
  3205.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher w/Kerberos...
  3206.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3207.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3208.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3209.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL \
  3210.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  3211.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST -DLIBDES -DCK_SSL \
  3212.     -funsigned-char $(K5INC) $(K5INC)/krb5 $(SSLINC) $(KFLAGS)" \
  3213.     "LIBS=$(K5LIB) $(SSLLIB) -lssl -lcrypto \
  3214.     -lcurses -lm -lkrb4 -ldes425 -lkrb5 -lcom_err -lk5crypto -lcrypt \
  3215.     -lgssapi_krb5"
  3216.  
  3217. aix43gcc+openssl:
  3218.     @echo Making C-Kermit $(CKVER) for IBM AIX 4.3 or higher w/OpenSSL...
  3219.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3220.     "CFLAGS= -mminimal-toc -g -O -DAIXRS -DAIX41 -DAIX43 -DSVR4 \
  3221.     -DDIRENT -DCK_ANSIC -DCLSOPN -DCK_CURSES -DSELECT -DSELECT_H \
  3222.     -DSTERMIOX -DTCPSOCKET -DFNFLOAT -DNOGETUSERSHELL \
  3223.     -DCK_AUTHENTICATION -DCK_SSL -funsigned-char $(SSLINC) $(KFLAGS)" \
  3224.     "LIBS=$(SSLLIB) -lssl -lcrypto -lcurses -lm -lcrypt"
  3225.  
  3226. aix44gcc:
  3227.     $(MAKE) aix43g "KFLAGS=-DAIX44 $(KFLAGS)" \
  3228.     KTARGET=$${KTARGET:-$(@)}
  3229.  
  3230. aix45gcc:
  3231.     $(MAKE) aix43g "KFLAGS=-DAIX45 $(KFLAGS)" \
  3232.     KTARGET=$${KTARGET:-$(@)}
  3233.  
  3234. aix50gcc:
  3235.     $(MAKE) aix43g "KFLAGS=-DAIX50 $(KFLAGS)" \
  3236.     KTARGET=$${KTARGET:-$(@)}
  3237.  
  3238. aix51gcc:
  3239.     $(MAKE) aix43g "KFLAGS=-DAIX51 $(KFLAGS)" \
  3240.     KTARGET=$${KTARGET:-$(@)}
  3241.  
  3242. aix52gcc:
  3243.     $(MAKE) aix43g "KFLAGS=-DAIX52 $(KFLAGS)" \
  3244.     KTARGET=$${KTARGET:-$(@)}
  3245.  
  3246. aix53gcc:
  3247.     $(MAKE) aix43g "KFLAGS=-DAIX53 $(KFLAGS)" \
  3248.     KTARGET=$${KTARGET:-$(@)}
  3249.  
  3250. #Bull DPX/2 with BOS/X, like AIX/RS6000
  3251. bulldpx2:
  3252.     @echo Making C-Kermit $(CKVER) for Bull DPX/2 with BOS/X...
  3253.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3254.     "CFLAGS= -DSVR3 -DDIRENT -DCK_ANSIC -DCKTYP_H=<sys/types.h> \
  3255.     -DCK_POLL -DNOGETUSERSHELL -DCLSOPN -DNOLEARN -O $(KFLAGS)" \
  3256.     "LNKFLAGS = -s"
  3257.  
  3258. #Sun UNIX 3.5 with gcc 2.3.3.
  3259. sunos3gcc:
  3260.     @echo Making C-Kermit $(CKVER) for Sun UNIX 3.5 and gcc...
  3261.     $(MAKE) xermit CC=gcc CC2=gcc KTARGET=$${KTARGET:-$(@)} \
  3262.     CFLAGS="-g -O -DBSD4 -DTCPSOCKET $(KFLAGS)"
  3263.  
  3264. #SunOS version 4.0, BSD environment, has saved original euid feature.
  3265. # Add "CC=/usr/ucb/cc CC2=/usr/ucb/cc" if necessary.
  3266. # Note: Including Unicode crashes the assembler in ckcuni.c.
  3267. sunos4:
  3268.     @echo Making C-Kermit $(CKVER) for SunOS 4.0, BSD environment...
  3269.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3270.     "CFLAGS= -O -DSUNOS4 -DFNFLOAT -DNOUNICODE $(KFLAGS)" \
  3271.     "LIBS=-lm"
  3272.  
  3273. #As above, but with SunLink X.25 support
  3274. sunos4x25:
  3275.     @echo SunLink X.25 support
  3276.     $(MAKE) "MAKE=$(MAKE)" sunos4 KTARGET=$${KTARGET:-$(@)} \
  3277.     "KFLAGS=$(KFLAGS) -DFNFLOAT -DSUNX25" \
  3278.     "LIBS=-lm"
  3279.  
  3280. #SUN OS version 4.1 - 4.1.3, BSD environment, has saved original euid feature.
  3281. #Uses Honey DanBer UUCP.  Requires presence of /usr/spool/locks directory.
  3282. # /var/spool/ should be a symbolic link to  /usr/spool/.
  3283. # ... or 'make xermit "CC= /usr/ucb/cc " \'
  3284. # Note: "xermit" means use the select() version of the CONNECT module.
  3285. # Note for C-Kermit 9.0: Reportedly 'you need to modify the sys/ioctl.h
  3286. # include file, i.e. comment out the "struct winsize" and "struct
  3287. # ttysize". Otherwise there will be a conflict with sys/ttycom.h (included by
  3288. # termios.h) which also declares these structs. But you need both includes.'
  3289. sunos41:
  3290.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 / BSD...
  3291.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3292.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNOUNICODE $(KFLAGS)" \
  3293.     "LIBS= $(LIBS) -lresolv -lm"
  3294.  
  3295. #As above, but compiled with gcc.  Gives 24-32K size reduction
  3296. #with gcc 2.1 or 2.2.2.  CAUTION: make sure "fixincludes" has been run on
  3297. #the include files, so gcc's are in sync with the regular Sun ones.
  3298. #This includes the curses library for fullscreen file transfer display.
  3299. #NDGPWNAM needed for GCC 2.5.6, not needed for 2.4.0, but it's uncertain
  3300. #whether it will do any harm for 2.4.0 compilation -- if so, remove it.
  3301. sunos41gcc:
  3302.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  3303.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3304.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3305.     -funsigned-char $(KFLAGS)" "LIBS= -lcurses -ltermcap -lresolv -lm"
  3306.  
  3307. # As above, but without -funsigned-char so I can see the warnings that
  3308. # everybody else will get when they use ANSI compilers that don't have this
  3309. # option (gsc = gcc signed char).
  3310. sunos41gsc:
  3311.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  3312.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3313.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3314.     $(KFLAGS)" "LIBS= -lcurses -ltermcap -lresolv -lm"
  3315.  
  3316. #As above but with ckucon.c rather than ckucns.c (for testing only)
  3317. sunos41gccfork:
  3318.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  3319.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3320.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3321.     -DNOLEARN -funsigned-char $(KFLAGS)" \
  3322.     "LIBS= -lcurses -ltermcap -lresolv -lm"
  3323.  
  3324. #as above but configured for Kerberos IV
  3325. sunos41gcc+krb4:
  3326.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, krb4...
  3327.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3328.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3329.     -DTCPSOCKET -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB4 \
  3330.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST -DBIGBUFOK -funsigned-char \
  3331.     $(K4INC) $(KFLAGS)" \
  3332.     "LIBS= $(K4LIB) -lcurses -ltermcap -lresolv -lm -lkrb -ldes"
  3333.  
  3334. #as above but configured for SSL/TLS
  3335. sunos41gcc+openssl:
  3336.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, ssl...
  3337.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3338.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3339.     -DCK_AUTHENTICATION -funsigned-char \
  3340.     -DCK_SSL -DTCPSOCKET -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  3341.     "LIBS= $(SSLLIB) -lcurses -ltermcap -lresolv -lm -lssl -lcrypto"
  3342.  
  3343. #as above but configured for Kerberos IV and SSL/TLS
  3344. sunos41gcc+krb4+openssl:
  3345.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, krb4...
  3346.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3347.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3348.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB4 -DCK_ENCRYPTION -DCK_DES \
  3349.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  3350.     $(K4INC) $(SSLINC) $(KFLAGS)" \
  3351.     "LIBS= $(K4LIB) $(SSLLIB) \
  3352.     -lcurses -ltermcap -lresolv -lm -lkrb -lssl -lcrypto"
  3353.  
  3354. #as above but configured for Kerberos IV and ZLIB enabled SSL/TLS
  3355. sunos41gcc+krb4+openssl+zlib:
  3356.     @echo Making C-Kermit $(CKVER) for SunOS 4.1, gcc, curses, krb4...
  3357.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3358.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3359.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB4 -DCK_ENCRYPTION -DCK_DES \
  3360.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  3361.     -DZLIB $(K4INC) $(SSLINC) \
  3362.     $(KFLAGS)" \
  3363.     "LIBS= $(K4LIB) $(SSLLIB) \
  3364.     -lcurses -ltermcap -lresolv -lm -lkrb -lssl -lcrypto -lz"
  3365.  
  3366. #as above but configured for Kerberos IV and SRP and ZLIB enabled SSL/TLS
  3367. sunos41gcc+krb4+srp+openssl+zlib:
  3368.     @echo "C-Kermit $(CKVER) SunOS 4.1: gcc,curses,krb4,srp,ssl,zlib..."
  3369.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3370.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3371.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB4 -DCK_ENCRYPTION -DCK_DES \
  3372.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  3373.     -DZLIB -DCK_SRP $(K4INC) $(SRPINC) $(SSLINC) $(KFLAGS)" \
  3374.     "LIBS= $(K4LIB) $(SRPLIB) $(SSLLIB) \
  3375.     -lcurses -ltermcap -lresolv -lm -lkrb -lkrypto \
  3376.     -lsrp -lssl -lcrypto -lz"
  3377.  
  3378. #as above but configured for Kerberos IV and SRP and ZLIB enabled SSL/TLS
  3379. sunos41gcc+srp+openssl+zlib:
  3380.     @echo "C-Kermit $(CKVER) SunOS 4.1: gcc,curses,srp,ssl,zlib..."
  3381.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3382.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNDGPWNAM -DCK_CURSES -DFNFLOAT \
  3383.     -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_DES \
  3384.     -DCK_CAST -DCK_SSL -DLIBDES -DTCPSOCKET -DBIGBUFOK -funsigned-char \
  3385.     -DZLIB -DCK_SRP $(SRPINC) $(SSLINC) \
  3386.     $(KFLAGS)" \
  3387.     "LIBS= $(SRPLIB) $(SSLLIB) \
  3388.     -lcurses -ltermcap -lresolv -lm -lkrypto -lsrp -lssl -lcrypto -lz "
  3389.  
  3390. #SUNOS 4.1 as sunos41 above, but also with curses support
  3391. sunos41c:
  3392.     @echo Curses support
  3393.     $(MAKE) "MAKE=$(MAKE)" sunos41 KTARGET=$${KTARGET:-$(@)} \
  3394.     "KFLAGS=$(KFLAGS) -DCK_CURSES -DFNFLOAT " \
  3395.     "LIBS= -lcurses -ltermcap"
  3396.  
  3397. #As SunOS 4.1.x, gcc, configured as Internet Kermit Server.
  3398. # . NOLOCAL removes capability to make connections
  3399. # . TNCODE allows server-side Telnet negotiation.
  3400. # . used to include -lpwent, why?
  3401. # . used to include -L/usr/local/lib -lm, why?
  3402. sunos41giks:
  3403.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc for IKS...
  3404.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc" "CC2= gcc" \
  3405.     "CFLAGS= -O -DSUNOS41 -DNDGPWNAM -DFNFLOAT \
  3406.     -DNOLOCAL -DTCPSOCKET -DTNCODE -DNOPUSH $(KFLAGS)" \
  3407.     "LIBS= -lm -lresolv"
  3408.  
  3409. #SUNOS 4.1 with SunLink X.25 support
  3410. sunos41x25:
  3411.     @echo SunLink X.25 support
  3412.     $(MAKE) "MAKE=$(MAKE)" wermit KTARGET=$${KTARGET:-$(@)} \
  3413.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNOUNICODE -DFNFLOAT -DSUNX25 \
  3414.     -DNOLEARN $(KFLAGS)" "LIBS= $(LIBS) -lresolv -lm"
  3415.  
  3416. #SUNOS 4.1 with SunLink X.25 support and curses
  3417. sunos41x25c:
  3418.     @echo SunLink X.25 support + curses
  3419.     $(MAKE) "MAKE=$(MAKE)" wermit KTARGET=$${KTARGET:-$(@)} \
  3420.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DNOUNICODE -DFNFLOAT -DSUNX25 \
  3421.     -DCK_CURSES -DNOLEARN $(KFLAGS)" \
  3422.     "LIBS= $(LIBS) -lcurses -ltermcap -lresolv -lm"
  3423.  
  3424. #SUN with Solaris 2.0 = SunOS 5.0.
  3425. #Mostly the same as System V R4.  Don't use this with later Solaris versions.
  3426. solaris20:
  3427.     @echo 'Making C-Kermit $(CKVER) for Sun with Solaris 2.0 and curses...'
  3428.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3429.     "CFLAGS = -O -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP -DSTERMIOX \
  3430.     -DTCPSOCKET -DCK_CURSES -DFNFLOAT -DCK_POLL $(KFLAGS)" \
  3431.     "LIBS= -lsocket -lnsl -lcurses -ltermlib -lm" "LNKFLAGS = -s"
  3432.  
  3433. #SUN with Solaris 2.0.
  3434. #As above, but built with the gcc compiler from the Cygnus CD-ROM.
  3435. solaris20g:
  3436.     @echo 'Making C-Kermit $(CKVER) for Sun Solaris 2.0, gcc, and curses..'
  3437.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3438.     "CFLAGS = -O -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP -DSTERMIOX \
  3439.     -DTCPSOCKET -DCK_CURSES -DCK_POLL -DFNFLOAT $(KFLAGS)" \
  3440.     "LIBS= -lsocket -lnsl -lcurses -ltermlib -lm" "LNKFLAGS = -s" \
  3441.     CC=/opt/cygnus-sol2-1.1/bin/gcc CC2=/opt/cygnus-sol2-1.1/bin/gcc
  3442.  
  3443. #SunOS 5.1 = Solaris 2.1.
  3444. #NOTE: A C compiler is no longer bundled with SunOS 5.1, so to compile C
  3445. #programs, you might have to change your PATH to include the directory
  3446. #/usr/ccs/bin AFTER the directory containing the compiler.  SunPRO C is
  3447. #installed by default in /opt/SUNWspro/bin.  So a sample PATH might be:
  3448. #
  3449. # /usr/local/bin:/usr/bin:/opt/SUNWspro/bin:/usr/ccs/bin:\
  3450. # /usr/ucb:/usr/sbin:/sbin:.
  3451. #
  3452. # or:
  3453. #
  3454. # /usr/openwin/bin:/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin.
  3455. #
  3456. #NOTE 2: Compilation with the Apogee C compiler (apcc) might not work,
  3457. #because it refuses to allow "-Usun".  Reportedly, newer releases of apcc
  3458. #(such as 1.2.17) work OK, use: "make -e sunos51 CC=apcc CC2=apcc".
  3459. solaris21:
  3460.     @echo 'Making C-Kermit $(CKVER) for SunOS 5.x....'
  3461.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3462.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS -DDIRENT -DHDBUUCP -DFNFLOAT \
  3463.     -DSELECT -DNODEBUG -DSTERMIOX $(KFLAGS)" "LIBS = -lm" "LNKFLAGS = -s"
  3464.  
  3465. #Solaris 2.0 - 2.4, SunPro compiler, includes curses and TCP/IP.
  3466. #When using SUNWspro CC 2.0.1 under Solaris 2.3, be sure all cc patches
  3467. #are applied, otherwise corrupt or truncated object files can result.
  3468. #To build, set your PATH as follows:
  3469. #  /usr/local/bin:/usr/bin:/opt/SUNWspro/bin:/usr/ccs/bin:\
  3470. #  /usr/ucb:/usr/sbin:/sbin:.
  3471. # or (depending on where the compiler has been installed):
  3472. #  /usr/openwin/bin:/export/home/SUNWspro/bin:/usr/ccs/bin:/usr/sbin:/usr/bin.
  3473. #For additional optimization try using "-fast -xO4 -xdepend".
  3474. solaris2x:
  3475.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with SunPro cc...'
  3476.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3477.     "CFLAGS = -O -Usun -i -DSVR4 -DDIRENT -DSOLARIS -DHDBUUCP -DFNFLOAT \
  3478.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  3479.     "LNKFLAGS = -s" "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv"
  3480.  
  3481. #as above but configured for Kerberos IV
  3482. solaris2x+krb4:
  3483.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x, SunPro cc, krb4...'
  3484.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3485.     "CFLAGS = -O -Usun -i -DSVR4 -DDIRENT -DSOLARIS -DHDBUUCP -DFNFLOAT \
  3486.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX -DTCPSOCKET  \
  3487.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB4 \
  3488.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST $(K4INC) $(KFLAGS)" \
  3489.     "LNKFLAGS = -s" \
  3490.     "LIBS= $(K4LIB) -ltermlib -lsocket -lnsl -lm -lresolv -lkrb -ldes"
  3491.  
  3492. #C-Kermit for Solaris 2.0-2.4 compiled with gcc, includes curses and TCP/IP.
  3493. #Change -O2 to -O if -O2 gives trouble.
  3494. #Remove -Usun if it causes trouble.
  3495. #Your PATH should start with something like:
  3496. #  /usr/local/gnu/bin:/usr/ccs/bin:
  3497. #Produces a huge executable -- strip with /usr/ccs/bin/strip (not Gnu strip).
  3498. #Also don't add "LNKFLAGS = -s" -- strip manually instead.
  3499. #Also note: this can NOT be linked statically - Sun makes it impossible.
  3500. #And for Solaris 2.4, you might have to replace:
  3501. # /usr/local/lib/gcc-lib/i486-sun-solaris2/2.4.5/include/sys/stat.h
  3502. #with /usr/include/sys/stat.h.
  3503. solaris2xg:
  3504.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc...'
  3505.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3506.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3507.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3508.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  3509.     "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv $(LIBS)"
  3510.  
  3511. #ditto but no curses.
  3512. solaris2xgnc:
  3513.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc...'
  3514.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3515.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3516.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3517.     -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  3518.     "LIBS= -lsocket -lnsl -lm -lresolv $(LIBS)"
  3519.  
  3520. #and with Kerberos IV
  3521. solaris2xg+krb4:
  3522.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with GNU cc, krb4...'
  3523.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3524.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3525.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3526.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3527.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB4 -DCK_ENCRYPTION \
  3528.     -DCK_DES -DCK_CAST -DBIGBUFOK $(K4INC) $(KFLAGS)" \
  3529.     "LIBS= $(K4LIB) -ltermlib -lsocket -lnsl -lm -lresolv -lkrb -ldes \
  3530.     $(LIBS)"
  3531.  
  3532. #and with OpenSSL,ZLIB,PAM,SHADOW
  3533. solaris2xg+openssl+zlib+pam+shadow:
  3534.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc, OpenSSL...'
  3535.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3536.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3537.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3538.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3539.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DCK_SHADOW  -DZLIB \
  3540.     -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  3541.     "LIBS= $(SSLLIB) -ltermlib \
  3542.     -lsocket -lnsl -lm -lresolv -lssl -lcrypto -lpam -lz"
  3543.  
  3544. #Ditto but with GCC 3.1 in which you have to specify 32-bit with -m32.
  3545. #In Solaris 9 (and maybe 8) you'll also need specifiy the Library path.
  3546. #Reportedly this can be done here, but only with:
  3547. # crle -l /usr/lib:/usr/local/ssl/lib
  3548. #prior to building.  Note: 64-bit not tested with SSL.
  3549. #For no-crypto 64-bit builds see the solaris9g64 target.
  3550. solaris2xg32+openssl+zlib+pam+shadow:
  3551.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc, OpenSSL...'
  3552.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3553.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC="gcc -m32" CC2="gcc -m32" \
  3554.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3555.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3556.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DCK_SHADOW  -DZLIB \
  3557.     -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  3558.     "LIBS= $(SSLLIB) -ltermlib \
  3559.     -lsocket -lnsl -lm -lresolv -lssl -lcrypto -lpam -lz"
  3560.  
  3561. #and with Krb5,Krb4,OpenSSL,SHADOW
  3562. solaris2xg+krb5+krb4+openssl+shadow:
  3563.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc,k5,k4,ssl...'
  3564.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3565.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3566.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3567.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3568.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  3569.     -DCK_ENCRYPTION -DCK_SSL -DCK_DES -DCK_CAST -DBIGBUFOK \
  3570.     $(K5INC) $(K5INC)/krb5 $(SSLINC) $(KFLAGS)" \
  3571.     "LIBS= $(K5LIB) $(SSLLIB) -ltermlib -lsocket -lnsl -lm -lresolv \
  3572.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto \
  3573.     -ldes $(LIBS)"
  3574.  
  3575. #and with OpenSSL
  3576. solaris2xg+openssl+pam+shadow:
  3577.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc, OpenSSL...'
  3578.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3579.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3580.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3581.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3582.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DCK_SHADOW \
  3583.     -DBIGBUFOK $(SSLINC) $(KFLAGS)" \
  3584.     "LIBS= $(SSLLIB) -ltermlib \
  3585.     -lsocket -lnsl -lm -lresolv -lssl -lcrypto -lpam"
  3586.  
  3587. solaris2xg+openssl+zlib+srp+pam+shadow:    
  3588.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with gcc, OpenSSL...'
  3589.     @echo 'Please read the comments that accompany the solaris2xg target.'
  3590.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3591.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DFNFLOAT \
  3592.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET -DBIGBUFOK \
  3593.     -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_DES -DLIBDES -DCK_CAST \
  3594.     -DCK_SSL -DCK_PAM -DCK_SHADOW -DZLIB -DCK_SRP $(SSLINC) $(KFLAGS)" \
  3595.     "LIBS= $(SSLLIB) -ltermlib -lsocket -lnsl -lm -lresolv -lsrp -lssl \
  3596.     -ldes -lkrypto -lcrypto -lpam -lz"
  3597.  
  3598. solaris22g:
  3599.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DPOSIX_CRTSCTS $(KFLAGS)" solaris2xg \
  3600.     KTARGET=$${KTARGET:-$(@)}
  3601.  
  3602. solaris23g:
  3603.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DPOSIX_CRTSCTS $(KFLAGS)" solaris2xg \
  3604.     KTARGET=$${KTARGET:-$(@)}
  3605.  
  3606. #Solaris 2.4 built with gcc
  3607. solaris24g:
  3608.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} \
  3609.     solaris2xg "KFLAGS=-DSOLARIS24 -DPOSIX_CRTSCTS $(KFLAGS)"
  3610.  
  3611. #Solaris 2.0-2.3, SunPro compiler, with SunLink X.25 support.
  3612. #This will only run if user has /opt/SUNWconn/lib/libsockx25.so.1
  3613. #exists and can be dynamically linked.
  3614. #NOTE: Do not change target to xermit -- it doesn't support X.25.
  3615. solaris2x25:
  3616.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x+X.25 with SunPro cc...'
  3617.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3618.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS -DDIRENT \
  3619.     -DSUNX25 -DTCPSOCKET -DHDBUUCP -DFNFLOAT -DNOLEARN \
  3620.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX $(KFLAGS)" \
  3621.     "LNKFLAGS = -s" \
  3622.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3623.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3624.  
  3625. #Solaris 2.0-2.4, gcc, SunLink X.25 added.
  3626. #NOTE: Can't use xermit target with X.25.
  3627. solaris2xgx25:
  3628.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x + X.25 with GNU cc...'
  3629.     @echo 'Please read the comments that accompany the solaris2xg entry.'
  3630.     $(MAKE) wermit CC=gcc CC2=gcc KTARGET=$${KTARGET:-$(@)} \
  3631.     "CFLAGS = -g -O -Usun -DSVR4 -DSOLARIS -DSTERMIOX -DSELECT -DSUNX25 \
  3632.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET -DFNFLOAT \
  3633.     -DNOLEARN $(KFLAGS)" \
  3634.     "LIBS= -ltermlib -lm -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3635.     -lsockx25 -lsocket -lnsl"
  3636.  
  3637. #Solaris 2.4, SunPro compiler, with SunLink X.25 support.
  3638. #This will only run if user has /opt/SUNWconn/lib/libsockx25.so.1
  3639. #exists and can be dynamically linked.
  3640. solaris24x25:
  3641.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.4+X.25 with SunPro cc...'
  3642.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3643.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS -DSOLARIS24 -DDIRENT -DNOLEARN \
  3644.     -DSUNX25 -DTCPSOCKET -DHDBUUCP -DFNFLOAT -DPOSIX_CRTSCTS \
  3645.     -DSELECT -DCK_CURSES -DCK_NEWTERM -DSTERMIOX $(KFLAGS)" \
  3646.     "LNKFLAGS = -s" \
  3647.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3648.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3649.  
  3650. #Solaris 2.5, SunPro compiler, with SunLink X.25 support.
  3651. solaris25x25:
  3652.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.5+X.25 with SunPro cc...'
  3653.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3654.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS25 -DDIRENT -DSUNX25 \
  3655.     -DTCPSOCKET -DHDBUUCP -DSELECT -DCK_CURSES \
  3656.     -DCK_NEWTERM -DSTERMIOX -DFNFLOAT -DPOSIX_CRTSCTS -DNOLEARN \
  3657.     -I/opt/SUNWconn/include $(KFLAGS)" \
  3658.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3659.     -lsockx25 -lsocket -lnsl -lm -lresolv"
  3660.  
  3661. solaris23:
  3662.     $(MAKE) "MAKE=$(MAKE)" solaris2x KTARGET=$${KTARGET:-$(@)} \
  3663.     "KFLAGS=$(KFLAGS)"
  3664.  
  3665. solaris24:
  3666.     $(MAKE) "MAKE=$(MAKE)" solaris2x KTARGET=$${KTARGET:-$(@)} \
  3667.     "KFLAGS=-DSOLARIS24 -DPOSIX_CRTSCTS $(KFLAGS)"
  3668.  
  3669. # template for Solaris 2.5 and above.
  3670. solaris25x:
  3671.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.x with SunPro cc...'
  3672.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  3673.     "CFLAGS = -DFNFLOAT -O -Usun -i $(KFLAGS)" \
  3674.     "LNKFLAGS = -s" \
  3675.     "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv $(LIBS)"
  3676.  
  3677. #Solaris 2.5, SunPro compiler, curses, TCP/IP
  3678. solaris25:
  3679.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3680.     "KFLAGS=-DSOLARIS25 $(KFLAGS)"
  3681.  
  3682. #Solaris 2.5, SunPro compiler, curses, TCP/IP, Kerberos IV
  3683. solaris25+krb4:
  3684.     $(MAKE) "MAKE=$(MAKE)" solaris25x+krb4 KTARGET=$${KTARGET:-$(@)} \
  3685.     "KFLAGS=-DSOLARIS25 $(KFLAGS)"
  3686.  
  3687. #Solaris 2.5 built with gcc
  3688. solaris25g:
  3689.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  3690.     "KFLAGS=-funsigned-char -DSOLARIS25 $(KFLAGS)"
  3691.  
  3692. #Solaris 2.5 built with gcc and Kerberos IV
  3693. solaris25g+krb4:
  3694.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb4 KTARGET=$${KTARGET:-$(@)} \
  3695.     "KFLAGS=-funsigned-char -DSOLARIS25 $(KFLAGS)"
  3696.  
  3697. #Solaris 2.5 built with gcc and Kerberos V/IV, SSL, ...
  3698. solaris25g+krb5+krb4+openssl+shadow:
  3699.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb5+krb4+openssl+shadow \
  3700.     KTARGET=$${KTARGET:-$(@)} \
  3701.     "KFLAGS=-funsigned-char -DSOLARIS25 $(KFLAGS)"
  3702.  
  3703. #Solaris 2.5, gcc, SunLink X.25 added.
  3704. solaris25gx25:
  3705.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xgx25 \
  3706.     "KFLAGS=-DSOLARIS25 $(KFLAGS)"
  3707.  
  3708. #Solaris 2.6, gcc, SunLink X.25 added.
  3709. solaris26gx25:
  3710.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xgx25 \
  3711.     "KFLAGS=-DSOLARIS26 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3712.     "LIBS= -lpam"
  3713.  
  3714. #Solaris 2.6, SunPro compiler, curses, TCP/IP
  3715. solaris26:
  3716.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3717.     "KFLAGS=-DSOLARIS26 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3718.     "LIBS= -lpam"
  3719.  
  3720. #Solaris 2.6 with gcc
  3721. solaris26g:
  3722.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xg \
  3723.     "KFLAGS= -DSOLARIS26 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3724.     "LIBS = -lpam"
  3725.  
  3726. #Solaris 2.6 with gcc and SSL
  3727. solaris26g+openssl:
  3728.     $(MAKE) "MAKE=$(MAKE)"  solaris2xg+openssl+pam+shadow \
  3729.     KTARGET=$${KTARGET:-$(@)} "KFLAGS= -DSOLARIS26 $(KFLAGS)"
  3730.  
  3731. #Solaris 2.6 with gcc, no curses (e.g. because libtermlib is missing).
  3732. solaris26gnc:
  3733.     $(MAKE) "MAKE=$(MAKE)" KTARGET=$${KTARGET:-$(@)} solaris2xgnc \
  3734.     "KFLAGS= -DSOLARIS26 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3735.     "LIBS= -lpam"
  3736.  
  3737. #Solaris 2.6, SunPro compiler, with SunLink X.25 support.
  3738. solaris26x25:
  3739.     @echo 'Making C-Kermit $(CKVER) for Solaris 2.6+X.25 with SunPro cc...'
  3740.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  3741.     "CFLAGS = -O -i -Usun -DSVR4 -DSOLARIS26 -DDIRENT -DSUNX25 \
  3742.     -DTCPSOCKET -DHDBUUCP -DSELECT -DCK_CURSES -DCK_PAM -DCK_SHADOW \
  3743.     -DCK_NEWTERM -DSTERMIOX -DFNFLOAT -DPOSIX_CRTSCTS -DNOLEARN \
  3744.     -I/opt/SUNWconn/include $(KFLAGS)" \
  3745.     "LIBS= -ltermlib -L/opt/SUNWconn/lib -R/opt/SUNWconn/lib \
  3746.     -lsockx25 -lsocket -lnsl -lm -lresolv -lpam"
  3747.  
  3748. #Solaris 7 (2.7) with Sun CC
  3749. solaris7:
  3750.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3751.     "KFLAGS=-DSOLARIS7 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3752.     "LIBS= -lpam"
  3753.  
  3754. #Solaris 7 with gcc (32-bit)
  3755. solaris7g:
  3756.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  3757.     "KFLAGS=-DSOLARIS7 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3758.     "LIBS= -lpam"
  3759.  
  3760. #Solaris 7 with gcc + Kerberos IV (32-bit)
  3761. solaris7g+krb4:
  3762.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb4 KTARGET=$${KTARGET:-$(@)} \
  3763.     "KFLAGS=-DSOLARIS7 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3764.     "LIBS= -lpam"
  3765.  
  3766. solaris7g+openssl+zlib+pam+shadow:
  3767.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+openssl+zlib+pam+shadow \
  3768.     KTARGET=$${KTARGET:-$(@)} \
  3769.     "KFLAGS=-DSOLARIS7 -DCK_PAM -DCK_SHADOW $(KFLAGS)"
  3770.  
  3771. #Solaris 7 with gcc + OpenSSL (32-bit)
  3772. solaris7g+openssl+zlib+srp+pam+shadow:
  3773.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+openssl+zlib+srp+pam+shadow \
  3774.     KTARGET=$${KTARGET:-$(@)} \
  3775.     "KFLAGS=-DSOLARIS7 -DCK_PAM -DCK_SHADOW $(KFLAGS)"
  3776.  
  3777. #Solaris 8
  3778. solaris8:
  3779.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3780.     "KFLAGS=-DSOLARIS8 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3781.     "LIBS= -lpam"
  3782.  
  3783. #Solaris 8 with gcc (32-bit)
  3784. solaris8g:
  3785.     $(MAKE) "MAKE=$(MAKE)" solaris2xg KTARGET=$${KTARGET:-$(@)} \
  3786.     "KFLAGS=-DSOLARIS8 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3787.     "LIBS= -lpam"
  3788.  
  3789. # In OpenSSL builds add -ldl if you get unresolved references for
  3790. # dlclose, dlsym, dlopen, dlerror.
  3791.  
  3792. #Solaris 8 with gcc + OpenSSL (32-bit)
  3793. solaris8g+openssl+zlib+pam+shadow:
  3794.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+openssl+zlib+pam+shadow \
  3795.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DSOLARIS8 $(KFLAGS)"
  3796.  
  3797. #Solaris 8 with gcc + Kerberos IV (32-bit)
  3798. solaris8g+krb4:
  3799.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb4 KTARGET=$${KTARGET:-$(@)} \
  3800.     "KFLAGS=-DSOLARIS8 -DCK_PAM -DCK_SHADOW $(KFLAGS)" \
  3801.     "LIBS= -lpam"
  3802.  
  3803. solaris9nolfs:
  3804.     $(MAKE) "MAKE=$(MAKE)" solaris25x KTARGET=$${KTARGET:-$(@)} \
  3805.     "KFLAGS=-DSOLARIS9 -DCK_PAM -DCK_SHADOW -DUSE_STRERROR $(KFLAGS)" \
  3806.     "LIBS= -lpam"
  3807.  
  3808. #Solaris 9 with malloc debugging
  3809. solaris9md:
  3810.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} \
  3811.     "CFLAGS = -DFNFLOAT -O -Usun -i -D_FILE_OFFSET_BITS=64 \
  3812.     -DSOLARIS9 -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG \
  3813.     -DCK_PAM -DCK_SHADOW -DUSE_STRERROR $(KFLAGS)" \
  3814.     "LIBS= -lpam -ltermlib -lsocket -lnsl -lm -lresolv"
  3815.  
  3816. #Solaris 9 with gcc + OpenSSL + Shadow (32-bit)
  3817. #Add -DOPENSSL_097 for OpenSSL 0.9.7 or later.
  3818. solaris9g+openssl+shadow+pam+zlib:
  3819.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+openssl+zlib+pam+shadow \
  3820.     KTARGET=$${KTARGET:-$(@)} \
  3821.     "KFLAGS=-DSOLARIS9 -DHDBUUCP -DDIRENT -D_FILE_OFFSET_BITS=64 \
  3822.     -DNO_DCL_INET_ATON -DZLIB -DCK_PAM -DCK_SHADOW -DLIBDES $(KFLAGS)" \
  3823.     "LIBS= -lpam -ldes425 -lz $(LIBS)"
  3824.  
  3825. #Solaris 9 with gcc + OpenSSL + Kerberos 5 + Krb4 + Shadow (32-bit)
  3826. #Add -DOPENSSL_097 for OpenSSL 0.9.7 or later.
  3827. solaris9g+krb5+krb4+openssl+shadow+pam+zlib:
  3828.     $(MAKE) "MAKE=$(MAKE)" solaris2xg+krb5+krb4+openssl+shadow \
  3829.     KTARGET=$${KTARGET:-$(@)} \
  3830.     "KFLAGS=-DSOLARIS9 -DHDBUUCP -DDIRENT -D_FILE_OFFSET_BITS=64 \
  3831.     -DNO_DCL_INET_ATON -DZLIB -DCK_PAM -DCK_SHADOW -DLIBDES $(KFLAGS)" \
  3832.     "LIBS= -lpam -ldes -lz $(LIBS)"
  3833.  
  3834. #Solaris 9 with gcc + Kerberos 4 and 5:
  3835. solaris9g+krb5+krb4:
  3836.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3837.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS9 -DSTERMIOX -DSELECT -DFNFLOAT \
  3838.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3839.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DKRB4 -DKRB524 \
  3840.     -D_FILE_OFFSET_BITS=64 \
  3841.     -DCK_ENCRYPTION -DCK_DES -DCK_CAST -DBIGBUFOK \
  3842.     $(K5INC) $(K5INC)/krb5 $(KFLAGS)" \
  3843.     "LIBS= $(K5LIB) -ltermlib -lsocket -lnsl -lm -lresolv \
  3844.     -lkrb4 -lcrypto -lgssapi_krb5 -lkrb5 -lcom_err -lk5crypto \
  3845.     -ldes $(LIBS)"
  3846.  
  3847. #Solaris 9, 10, or 11 with gcc...  
  3848. #Uses streams PTYs rather than BSD ptys as in C-Kermit 8.0 and earlier.
  3849. #This target is chained to be the secure solaris9g+xxx targets below.
  3850. solaris9g solaris10g solaris11g:
  3851.     @echo 'Making C-Kermit $(CKVER) for Solaris 9 or later with gcc'
  3852.     @case `uname -r` in \
  3853.       5.9) SOLARISVERSION="-DSOLARIS9" ;; \
  3854.       5.10) SOLARISVERSION="-DSOLARIS10" ;; \
  3855.       5.11) SOLARISVERSION="-DSOLARIS11" ;; \
  3856.       *) SOLARISVERSION="-DSOLARIS" ;; \
  3857.     esac ; \
  3858.     $(MAKE) "MAKE=$(MAKE)" CC="gcc -m32" CC2="gcc -m32" xermit \
  3859.     KTARGET=$${KTARGET:-$(@)} \
  3860.     "CFLAGS = -g -O -Usun -DSVR4 $$SOLARISVERSION -DUSE_STRERROR \
  3861.     -DSTERMIOX -DSELECT -DFNFLOAT -DCK_PAM -DCK_SHADOW -funsigned-char \
  3862.     -DHAVE_STREAMS -DHAVE_GRANTPT -DHAVE_PTSNAME -DPUSH_PTEM \
  3863.     -DPUSH_LDTERM -DPUSH_TTCOMPAT \
  3864.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3865.     -D_FILE_OFFSET_BITS=64 $(KFLAGS)" \
  3866.     "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv -lpam $(LIBS)"
  3867.  
  3868. #Solaris 9, 10, or 11 with gcc + Kerberos 5 + OpenSSL.
  3869. #OK C-Kermit 9.0.301.
  3870. solaris9g+krb5+ssl solaris10g+krb5+ssl solaris11g+krb5+ssl:
  3871.     @case `openssl version` in \
  3872.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  3873.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  3874.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  3875.       *) OPENSSLOPTION="" ;; \
  3876.     esac ; \
  3877.     HAVE_DES=''; \
  3878.     DES_LIB=''; \
  3879.     if ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  3880.           DES_LIB='-ldes425'; \
  3881.           HAVE_DES='-DCK_DES -DLIBDES'; \
  3882.               echo "HAVE DES"; \
  3883.            else echo "NO DES"; \
  3884.     fi; \
  3885.     GSSAPILIB=''; \
  3886.     K5DIR=`echo $(K5LIB) | sed 's|-L||'`; \
  3887.     echo K5DIR=$$K5DIR; \
  3888.     if ls $$K5DIR/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  3889.               GSSAPILIB='-lgssapi_krb5'; \
  3890.           else GSSAPILIB='-lgssapi'; \
  3891.         fi; \
  3892.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  3893.     "CFLAGS = -O -Usun -DSVR4 -DSOLARIS9 -DSTERMIOX -DSELECT -DFNFLOAT \
  3894.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET  -DBIGBUFOK \
  3895.     -DCK_AUTHENTICATION -DCK_SSL -DZLIB -DCK_KERBEROS -DKRB5 \
  3896.     -DCK_ENCRYPTION -DCK_CAST $$OPENSSLOPTION \
  3897.     $$HAVE_DES $(SSLINC) $(K5INC) $(K5INC)/krb5 $(KFLAGS)" \
  3898.     "LIBS= $(SSLLIB) $(K5LIB) -lz -lssl -ltermlib -lsocket -lnsl -lm \
  3899.     -lresolv -lcrypto \
  3900.     $$GSSAPILIB -lkrb5 -lcom_err -lk5crypto $$DES_LIB $(LIBS)"
  3901.  
  3902. #Solaris 9, 10, or 11 with gcc, 64 bit build.
  3903. #Peeking inside FILE struct not allowed in 64-bit world.
  3904. #DON'T USE THIS ONE ON PC ARCHITECTURE - It compiles and links but won't run.
  3905. #OK: 2009/09/25 (but not tested on Solaris 11)
  3906. solaris9g64 solaris10g64 solaris11g64:
  3907.     @echo 'Making C-Kermit $(CKVER) for Solaris 9++ with gcc 64-bit'
  3908.     @case `uname -r` in \
  3909.       5.9) SOLARISVERSION="-DSOLARIS9" ;; \
  3910.       5.10) SOLARISVERSION="-DSOLARIS10" ;; \
  3911.       5.11) SOLARISVERSION="-DSOLARIS11" ;; \
  3912.       *) SOLARISVERSION="-DSOLARIS" ;; \
  3913.     esac ; \
  3914.     $(MAKE) "MAKE=$(MAKE)" CC="gcc -m64" CC2="gcc -m64" xermit \
  3915.     KTARGET=$${KTARGET:-$(@)} \
  3916.     "CFLAGS = -g -O -Usun -funsigned-char \
  3917.     -DSVR4 $$SOLARISVERSION -DNOARROWKEYS \
  3918.     -DSTERMIOX -DSELECT -DFNFLOAT -DUSE_STRERROR -DCK_PAM -DCK_SHADOW \
  3919.     -DHAVE_STREAMS -DHAVE_GRANTPT -DHAVE_PTSNAME -DPUSH_PTEM \
  3920.     -DPUSH_LDTERM -DPUSH_TTCOMPAT \
  3921.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  3922.     "LIBS= -ltermlib -lsocket -lnsl -lm -lresolv -lpam $(LIBS)"
  3923.  
  3924. #Solaris 9, 10, or 11 with SunPro CC
  3925. #Uses streams PTYs rather than BSD ptys as in C-Kermit 8.0 and earlier.
  3926. #This target is chained to by the secure targets below.
  3927. #OK C-Kermit 9.0
  3928. solaris9 solaris10 solaris11:
  3929.     @echo 'Making C-Kermit $(CKVER) for Solaris 9 or later with Sun CC'
  3930.     @case `uname -r` in \
  3931.       5.9) SOLARISVERSION="-DSOLARIS9" ;; \
  3932.       5.10) SOLARISVERSION="-DSOLARIS10" ;; \
  3933.       5.11) SOLARISVERSION="-DSOLARIS11" ;; \
  3934.       *) SOLARISVERSION="-DSOLARIS" ;; \
  3935.     esac ; \
  3936.     $(MAKE) "MAKE=$(MAKE)" xermit KTARGET=$${KTARGET:-$(@)} \
  3937.     "CFLAGS = -O -Usun -DSVR4 $$SOLARISVERSION -DUSE_STRERROR \
  3938.     -DSTERMIOX -DSELECT -DFNFLOAT -DCK_PAM -DCK_SHADOW \
  3939.     -DHAVE_STREAMS -DHAVE_GRANTPT -DHAVE_PTSNAME -DPUSH_PTEM \
  3940.     -DPUSH_LDTERM -DPUSH_TTCOMPAT \
  3941.     -DCK_CURSES -DCK_NEWTERM -DDIRENT -DHDBUUCP -DTCPSOCKET \
  3942.     -D_FILE_OFFSET_BITS=64 $(KFLAGS)" \
  3943.     "LIBS= $(LIBS) -ltermlib -lsocket -lnsl -lm -lresolv -lpam"
  3944.  
  3945. # Solaris 9, 10, or 11 with OpenSSL built with Sun CC.
  3946. # Here's an example of how to invoke this target in case your OpenSSL
  3947. # headers and libraries are not in /usr/local:
  3948. #
  3949. # make solaris9+openssl "SSLINC=" "SSLLIB=" \
  3950. #  "KFLAGS= -I/opt/openssl-0.9.8k/include -L/opt/openssl-0.9.8k/lib"
  3951. #
  3952. # Don't use 'make -e' because that inhibits passing of KFLAGS to
  3953. # the base (solaris9) target.
  3954. #
  3955. #OK C-Kermit 9.0
  3956. solaris9+ssl solaris10+ssl solaris11+ssl \
  3957. solaris9+openssl solaris10+openssl solaris11+openssl:
  3958.     @echo 'Making C-Kermit $(CKVER) for Solaris 9/10/11 with OpenSSL: cc'
  3959.     @case `openssl version` in \
  3960.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  3961.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  3962.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  3963.       *) OPENSSLOPTION="" ;; \
  3964.     esac ; \
  3965.     HAVE_DES=''; \
  3966.     DES_LIB=''; \
  3967.     if ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  3968.           DES_LIB='-ldes425'; \
  3969.           HAVE_DES='-DCK_DES -DLIBDES'; \
  3970.               echo "HAVE DES"; \
  3971.            else echo "NO DES"; \
  3972.     fi; \
  3973.     $(MAKE) "MAKE=$(MAKE)" solaris9 KTARGET=$${KTARGET:-$(@)} \
  3974.     "KFLAGS=-DCK_AUTHENTICATION -DCK_SSL -DZLIB $$HAVE_DES \
  3975.     -DNO_DCL_INET_ATON $$OPENSSLOPTION $(SSLINC) $(KFLAGS)" \
  3976.     "LIBS= $(SSLLIB) -lz -lssl $$DES_LIB -lcrypto  $(LIBS)"
  3977.  
  3978. # Solaris 9 or later with OpenSSL, built with gcc.
  3979. # Remove -DNO_DCL_INET_ATON if inet_aton comes up missing.  This target nicely
  3980. # chains to the solaris{9,10,11}g target but for some reason it doesn't work if
  3981. # you add the -DFORWARD_X option, thus the solaris9g+openssl+forward_x target.
  3982. #
  3983. #OK: 2011/06/14
  3984. solaris9g+ssl solaris10g+ssl solaris11g+ssl \
  3985. solaris9g+openssl solaris10g+openssl solaris11g+openssl:
  3986.     @echo 'Making C-Kermit $(CKVER) for Solaris 9/10/11 with OpenSSL: gcc'
  3987.     @case `openssl version` in \
  3988.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  3989.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  3990.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  3991.       *) OPENSSLOPTION="" ;; \
  3992.     esac ; \
  3993.     HAVE_DES=''; \
  3994.     DES_LIB=''; \
  3995.     if ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  3996.           DES_LIB='-ldes425'; \
  3997.           HAVE_DES='-DCK_DES -DLIBDES'; \
  3998.               echo "HAVE DES"; \
  3999.            else echo "NO DES"; \
  4000.     fi; \
  4001.     $(MAKE) "MAKE=$(MAKE)" solaris9g KTARGET=$${KTARGET:-$(@)} \
  4002.     "KFLAGS=-DCK_AUTHENTICATION -DCK_SSL -DZLIB $$HAVE_DES \
  4003.     -DNO_DCL_INET_ATON $$OPENSSLOPTION $(SSLINC) $(KFLAGS)" \
  4004.     "LIBS= $(SSLLIB) -lz -lssl $$DES_LIB -lcrypto  $(LIBS)"
  4005.  
  4006. # Solaris 9 or later with gcc + OpenSSL + Shadow (32-bit).
  4007. # Remove -DNO_DCL_INET_ATON if inet_aton comes up missing.
  4008. # Includes long file support - not sure if this was available before Solaris 9.
  4009. # Detects Solaris version automatically.
  4010. #
  4011. solaris9g+openssl+forward_x:
  4012.     @echo 'Making C-Kermit $(CKVER) for Solaris 9 or later with OpenSSL...'
  4013.     @case `openssl version` in \
  4014.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  4015.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  4016.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  4017.       *) OPENSSLOPTION="" ;; \
  4018.     esac ; case `uname -r` in \
  4019.       5.9) SOLARISVERSION="-DSOLARIS9" ;; \
  4020.       5.10) SOLARISVERSION="-DSOLARIS10" ;; \
  4021.       5.11) SOLARISVERSION="-DSOLARIS11" ;; \
  4022.       *) SOLARISVERSION="-DSOLARIS" ;; \
  4023.     esac ; \
  4024.     $(MAKE) xermit     KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  4025.     "CFLAGS = -g -O -Usun -DSVR4 $$SOLARISVERSION \
  4026.     -DHAVE_STREAMS -DHAVE_GRANTPT -DHAVE_PTSNAME -DPUSH_PTEM \
  4027.     -DPUSH_LDTERM -DPUSH_TTCOMPAT \
  4028.     -DSTERMIOX -DSELECT -DFNFLOAT -DBIGBUFOK -D_FILE_OFFSET_BITS=64 \
  4029.     -DCK_AUTHENTICATION -DCK_SSL -DCK_PAM -DCK_SHADOW -DZLIB -DLIBDES \
  4030.     -DFORWARD_X $$OPENSSLOPTION $(SSLINC) $(KFLAGS)" \
  4031.     "LIBS= $(SSLLIB) -lpam -ldes425 -lz -ltermlib \
  4032.     -lsocket -lnsl -lm -lresolv -lssl -lcrypto -lpam -lz $(LIBS)"
  4033.  
  4034. # These two should be folded in with the ones just above.
  4035.  
  4036. #Solaris 9 with gcc 3.1 + OpenSSL (32-bit)
  4037. solaris9g+openssl+zlib+pam+shadow:
  4038.     $(MAKE) "MAKE=$(MAKE)" solaris2xg32+openssl+zlib+pam+shadow \
  4039.     KTARGET=$${KTARGET:-$(@)} \
  4040.     "KFLAGS=-DSOLARIS9 -DUSE_STRERROR $(KFLAGS)"
  4041.  
  4042. #Solaris 10 with gcc 3.1 + OpenSSL (32-bit)
  4043. solaris10g+openssl+zlib+pam+shadow:
  4044.     $(MAKE) "MAKE=$(MAKE)" solaris2xg32+openssl+zlib+pam+shadow \
  4045.     KTARGET=$${KTARGET:-$(@)} \
  4046.     "KFLAGS=-DSOLARIS10 -DUSE_STRERROR $(KFLAGS)"
  4047.  
  4048. #The following (old, old) sunosxxx entries are for debugging and testing only.
  4049.  
  4050. sunos41x:
  4051.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4052.     "CFLAGS= -O -DSUNOS41 -DDIRENT -DNOTLOG -DNOMSEND \
  4053.     -DNOUUCP -DNOSIGWINCH -DNOREDIRECT -DNOPUSH -DNOCCTRAP \
  4054.     -DNOICP -DNOLOCAL $(KFLAGS)"
  4055.  
  4056. #SunOS 4.1.x, debugging with Pure Software, Inc., Purify 2 (commercial runtime
  4057. #error-detection software for catching wild array references, etc).
  4058. #Before running the resulting wermit, you'll also need to define and export
  4059. #the following environment variables (as in this example):
  4060. #PURIFYHOME=/usr/local/purify ; export PURIFYHOME
  4061. #PURIFYCACHEDIR=/tmp ; export PURIFYCACHEDIR
  4062. sunos41cp:
  4063.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 / BSD / Curses / Purify...
  4064.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4065.     "CC2= purify -cache_dir=/usr/tmp cc" \
  4066.     "CFLAGS= -g -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  4067.     -DSAVEDUID -DCK_CURSES $(KFLAGS)" \
  4068.     "LIBS= -lcurses -ltermcap"
  4069.  
  4070. #SunOS 4.1 with malloc debugger
  4071. sunos41md:
  4072.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 malloc debug...
  4073.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} \
  4074.     "CFLAGS= -O -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  4075.     -DSAVEDUID $(KFLAGS) -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG"
  4076.  
  4077. sunos41gmd:
  4078.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 with gcc and curses...
  4079.     $(MAKE) mermit KTARGET=$${KTARGET:-$(@)} "CC= gcc " "CC2= gcc" \
  4080.     "CFLAGS= -g -DSUNOS41 -DHDBUUCP -DDIRENT -DTCPSOCKET \
  4081.     -DNDGPWNAM -DSAVEDUID -DCK_CURSES -DRLOGCODE \
  4082.     $(KFLAGS) -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG" \
  4083.     "LIBS= -lcurses -ltermcap"
  4084.  
  4085. #SunOS version 4.1, gcc, profiling with gprof, no debugging.
  4086. #To get profile, "make sunos41p" (on Sun), then "./wermit".  After running
  4087. #wermit, "gprof ./wermit | lpr" (or whatever) to get execution profile.
  4088. sunos41p:
  4089.     @echo Making C-Kermit $(CKVER) for SunOS 4.x with profiling...
  4090.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC= gcc " "CC2= gcc" \
  4091.     "CFLAGS= -DSUNOS41 -DNODEBUG -DSAVEDUID -DDIRENT -DTCPSOCKET \
  4092.     -DNDGPWNAM $(KFLAGS) -pg" "LNKFLAGS = -pg"
  4093.  
  4094. #SunOS version 4.1 or later, BSD environment, minimum features.
  4095. sunos41min:
  4096.     @echo Minimum interactive
  4097.     $(MAKE) "MAKE=$(MAKE)" sunos41 KTARGET=$${KTARGET:-$(@)} \
  4098.     "KFLAGS=-DNOSPL -DNOXMIT -DNOMSEND -DNOFRILLS -DNORETRY \
  4099.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS \
  4100.     -DNOSHOW -DNOSETKEY -DNOUUCP -DNORECALL -DNOREDIRECT \
  4101.     -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ \
  4102.     -DNONET -DCK_SMALL -DNOCKSPEED -DNOCKTIMERS -DNOLOGIN \
  4103.     -DNOCKXYZ -DNOKERBEROS -DNOMKDIR -DNOPATTERNS -DNOPERMS -DNOPIPESEND \
  4104.     -DNORECURSIVE -DNORENAME -DNORESEND -DNOSETKEY \
  4105.     -DNOTRIGGER -DNOTUNING $(KFLAGS)" "LNKFLAGS = -s"
  4106.  
  4107. #SunOS version 4.1, BSD environment, min size, command-line only...
  4108. sunos41m:
  4109.     @echo Minimum size
  4110.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  4111.     "KFLAGS=-DNOICP $(KFLAGS)"
  4112.  
  4113. #SunOS version 4.1, BSD environment, min size, cmd-line only, remote only...
  4114. #
  4115. sunos41mr:
  4116.     @echo Minimum size
  4117.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  4118.     "KFLAGS=-DNOICP -DNOLOCAL $(KFLAGS)"
  4119.  
  4120. #SunOS version 4.1, BSD environment, min size, interactive...
  4121. sunos41mi:
  4122.     @echo Minimum size
  4123.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  4124.     "KFLAGS=-DNOCMDL $(KFLAGS)"
  4125.  
  4126. #SunOS version 4.1, BSD environment, min size, interactive, remote only...
  4127. sunos41mir:
  4128.     @echo Minimum size
  4129.     $(MAKE) "MAKE=$(MAKE)" sunos41min KTARGET=$${KTARGET:-$(@)} \
  4130.     "KFLAGS=-DNOCMDL -DNOLOCAL $(KFLAGS)"
  4131.  
  4132. #SunOS 4.1, System V R3 environment (-i option omitted).
  4133. sunos41s5:
  4134.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  4135.     @echo For testing purposes only - NOT for production use.
  4136.     @echo For a useable version, make sunos41 instead.
  4137.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  4138.     KTARGET=$${KTARGET:-$(@)} \
  4139.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DNOLEARN -DCK_POLL $(KFLAGS) -O"
  4140.  
  4141. #As above, but with curses support
  4142. sunos41s5c:
  4143.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  4144.     @echo Curses included.
  4145.     @echo For testing purposes only - NOT for production use.
  4146.     @echo For a useable version, make sunos41 instead.
  4147.     $(MAKE) wermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  4148.     KTARGET=$${KTARGET:-$(@)} \
  4149.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DNOLEARN \
  4150.     -DCK_POLL -DCK_CURSES -DCK_NEWTERM $(KFLAGS) -O" "LIBS= -lcurses"
  4151.  
  4152. #As above, but with curses support AND net support
  4153. sunos41s5tcpc:
  4154.     @echo Making C-Kermit $(CKVER) for SunOS 4.1 System V R3...
  4155.     @echo TCP/IP and curses included.  No debug log.
  4156.     @echo For testing purposes only - NOT for production use.
  4157.     @echo For a useable version, make sunos41 instead.
  4158.     $(MAKE) xermit "CC= /usr/5bin/cc " "CC2=/usr/5bin/cc " \
  4159.     KTARGET=$${KTARGET:-$(@)} \
  4160.     "CFLAGS = -DSUN4S5 -DDIRENT -DHDBUUCP -DCK_POLL \
  4161.     -DNODEBUG -DCK_CURSES -DCK_NEWTERM -DTCPSOCKET $(KFLAGS) -O" \
  4162.     "LIBS= -lcurses -lresolv"
  4163.  
  4164. # (End of SunOS test entries...)
  4165.  
  4166. #Apollo with Domain SR10.0 or later, BSD environment
  4167. #Reportedly, it might also help to add '-A,systype=bsd4.3' to CFLAGS.
  4168. #Reportedly, there is also a problem with getc & putc macros that can
  4169. #be handled by using '#ifdef apollo' somewhere to redefine them???
  4170. #On the other hand, other reports indicate that it works fine as-is.
  4171. #NOTE: This entry was previously like this:
  4172. #    $(MAKE) wermit "CFLAGS= -DNOFILEH -DBSD4 $(KFLAGS) -Uaegis \
  4173. #    -DTCPSOCKET -U__STDC__"
  4174. #Reports (Dec 91) indicate SR10 has an ANSI-compliant C compiler,
  4175. #in addition to an older one that claimed to be ANSI-compliant but wasn't.
  4176. #The following make entry (plus checks that are made in ckcdeb.h) detect
  4177. #which compiler is used and define the CK_ANSIC or NOANSI flags accordingly.
  4178. sr10-bsd:
  4179.     @echo Making C-Kermit $(CKVER) for Apollo SR10.0 / BSD ...
  4180.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4181.     "CFLAGS= -O -DAPOLLOSR10 -DBSD43 -DTCPSOCKET -DCK_CURSES -DNOLEARN \
  4182.     -Uaegis $(KFLAGS)" "LIBS= -lcurses -ltermcap"
  4183.  
  4184. #Apollo with Domain SR10.0 or later, System V R3 environment.
  4185. #Don't use the optimizer (-O), it causes problems at runtime.
  4186. sr10-s5r3:
  4187.     @echo Making C-Kermit $(CKVER) for Apollo SR10.0 / Sys V R3 ...
  4188.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4189.     "CFLAGS= -DNOFILEH -DSVR3 -DAPOLLOSR10 -DNOLEARN $(KFLAGS) \
  4190.     -Uaegis -U__STDC__"
  4191.  
  4192. #Apollo Domain/IX (untested, try this if sr10-bsd doesn't work)
  4193. # -DTCPSOCKET can probably be added here.
  4194. apollobsd:
  4195.     @echo Making C-Kermit $(CKVER) for Apollo Domain/IX...
  4196.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4197.     "CC= /bin/cc " "CC2= /bin/cc " \
  4198.     "CFLAGS= -DNOFILEH -DBSD4 -DAPOLLOBSD -DNOLEARN $(KFLAGS) -Uaegis"
  4199.  
  4200. #Version 7 Unix (see comments near top of makefile)
  4201. v7:
  4202.     @echo Making C-Kermit $(CKVER) for UNIX Version 7.
  4203.     @echo Read the makefile if you have trouble with this...
  4204.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4205.     "CFLAGS=-DV7 -DPROCNAME=\\\"$(PROC)\\\" \
  4206.     -DBOOTNAME=\\\"$(BOOTFILE)\\\" -DNPROCNAME=\\\"$(NPROC)\\\" \
  4207.     -DNPTYPE=$(NPTYPE) $(DIRECT) -DO_RDWR=2 -DO_NDELAY=0 -DO_SCCS_ID \
  4208.     -DNOLEARN $(KFLAGS)"
  4209.  
  4210. #AT&T UNIX System V R3, signal() is void rather than int.
  4211. #Uses dirent.h and Honey DanBer UUCP.
  4212. #Add the -i link option if necessary.
  4213. #If you get errors like "ws_row undefined" in ckutio.c, add -DNONAWS.
  4214. sys5r3:
  4215.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  4216.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4217.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DNOLEARN $(KFLAGS) -O" \
  4218.     "LNKFLAGS="
  4219.  
  4220. #As above, plus curses.
  4221. sys5r3c:
  4222.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3 + curses...'
  4223.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4224.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DCK_CURSES -DNONAWS -DNOLEARN \
  4225.     $(KFLAGS) -O" "LNKFLAGS=" "LIBS = -ltermlib"
  4226.  
  4227. #System V R3.2 for PCs built on Interactive UNIX SV/386 R4.x
  4228. #but with all calls to dup2() disabled because generic SVR3 does not have dup2.
  4229. # (The -linet library might not need to be in this one.)
  4230. sys5r32is:
  4231.     @echo 'Making C-Kermit $(CKVER) for System V/386 R32
  4232.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  4233.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  4234.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES -DNONAWS \
  4235.     -DPOSIX_JC -DCK_REDIR -DCK_POLL -DDCLGETCWD -DNOFDZERO -DNOREDIRECT \
  4236.     -DNOZEXEC -DNOLEARN $(KFLAGS)" "LIBS=-lcurses -lc_s -linet"
  4237.  
  4238. #System V R3.2 for PCs built on Interactive UNIX SV/386 R4.x
  4239. #but with all calls to dup2() disabled because generic SVR3 does not have dup2.
  4240. #With TCP/IP added.
  4241. sys5r32isnet:
  4242.     @echo 'Making C-Kermit $(CKVER) for System V/386 R32 + TCP/IP
  4243.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  4244.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  4245.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES -DNONAWS \
  4246.     -DPOSIX_JC -DCK_REDIR -DCK_POLL -DDCLGETCWD -DNOFDZERO -DNOREDIRECT \
  4247.     -DNOLEARN -DNOZEXEC -DTCPSOCKET $(KFLAGS)" "LIBS=-lcurses -lc_s -linet"
  4248.  
  4249. iclsys5r3:
  4250.     make sys5r3 KTARGET=$${KTARGET:-$(@)} KFLAGS=-DICLSVR3
  4251.  
  4252. #AT&T UNIX System V R3.  As above, but no ANSI prototyping.
  4253. sys5r3na:
  4254.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  4255.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4256.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -DNOANSI -DNOLEARN $(KFLAGS) -O" \
  4257.     "LNKFLAGS="
  4258.  
  4259. #AT&T UNIX System V R3, for 3B computers with Wollongong TCP/IP.
  4260. sys5r3net3b:
  4261.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX SVR3/3B/Wollongong...'
  4262.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4263.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DWOLLONGONG -DNOLEARN $(KFLAGS) \
  4264.     -O" "LIBS= -lnet -lnsl_s" "LNKFLAGS ="
  4265.  
  4266. #AT&T UNIX System V R3, signal() is void rather than int.
  4267. #Uses dirent.h and Honey DanBer uucp, has <termiox.h>.
  4268. #Has <termiox.h> for RTS/CTS flow control.
  4269. sys5r3tx:
  4270.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  4271.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4272.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DTERMIOX -DNOLEARN \
  4273.     $(KFLAGS) -i -O" "LNKFLAGS ="
  4274.  
  4275. #AT&T UNIX System V R3, signal() is void rather than int.
  4276. #Uses dirent.h and Honey DanBer uucp, has <termiox.h>.
  4277. #Has <sys/termiox.h> for RTS/CTS flow control.
  4278. sys5r3sx:
  4279.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R3...'
  4280.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4281.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DSTERMIOX -DNOLEARN \
  4282.     $(KFLAGS) -i -O" "LNKFLAGS ="
  4283.  
  4284. #AT&T UNIX System V R4.
  4285. #Has <termiox.h>.
  4286. sys5r4:
  4287.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4288.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4289.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DTERMIOX -DNOLEARN $(KFLAGS)" \
  4290.     "LNKFLAGS = -s"
  4291.  
  4292. #AT&T UNIX System V R4 with Wollongong TCP/IP.
  4293. #Has <termiox.h>.
  4294. sys5r4net:
  4295.     @echo 'Making C-Kermit $(CKVER) for System V R4 + Wollongong TCP/IP...'
  4296.     @echo ' If sockets-library routines are missing at link time, then'
  4297.     @echo ' try the sys5r4net2 entry.'
  4298.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4299.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOLEARN \
  4300.     -DTERMIOX -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  4301.  
  4302. #As above, but needs libs included.
  4303. sys5r4net2:
  4304.     @echo ' PLEASE READ ckuins.txt IF YOU GET MISSING HEADER FILES.'
  4305.     @echo ' (Search for WOLLONGONG...)'
  4306.     $(MAKE) sys5r4net KTARGET=$${KTARGET:-$(@)} "LIBS= -lsocket -lnsl"
  4307.  
  4308. #As above plus curses.
  4309. sys5r4net2c:
  4310.     echo 'Making C-Kermit $(CKVER) for System V R4 + Wollongong TCP/IP...'
  4311.     @echo ' PLEASE READ ckuins.txt IF YOU GET MISSING HEADER FILES.'
  4312.     @echo ' (Search for WOLLONGONG...)'
  4313.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4314.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOLEARN \
  4315.     -DTERMIOX -DWOLLONGONG -DCK_CURSES $(KFLAGS)" "LNKFLAGS = -s" \
  4316.     "LIBS= -lsocket -lnsl -lcurses"
  4317.  
  4318. #DELL UNIX System V R4.
  4319. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  4320. #are not misplaced in sys (rather than netinet and arpa, respectively).
  4321. #Uses ANSI C constructs, advisory file locking on devices, etc.
  4322. #Warning: -DSTERMIOX enables hardware flow control (RTS/CTS), but reportedly
  4323. #this does not work with the normal drivers.  However, it might still work
  4324. #on non-Dell systems, or even Dell systems with different drivers installed.
  4325. dellsys5r4:
  4326.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  4327.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4328.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DHDBUUCP \
  4329.     -DTCPSOCKET -DSTERMIOX -DCK_POLL $(KFLAGS)" \
  4330.     "LIBS= -lsocket -lnsl" "LNKFLAGS = -s"
  4331.  
  4332. #As above, curses support added...
  4333. dellsys5r4c:
  4334.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  4335.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4336.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT -DHDBUUCP \
  4337.     -DTCPSOCKET -DSTERMIOX -DCK_CURSES -DCK_POLL \
  4338.     $(KFLAGS)" "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  4339.  
  4340. #Minimum interactive: As above, but with every conceivable option removed.
  4341. dellsys5r4mi:
  4342.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  4343.     @echo 'Minimum-size interactive'
  4344.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4345.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT \
  4346.     -UTCPSOCKET -DNOCMDL -DNOSPL -DNOXMIT -DCK_POLL \
  4347.     -DNOMSEND -DNOFRILLS -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  4348.     -DNOSCRIPT -DNOCSETS -DNOSHOW -DNOSETKEY -DNOSERVER -DNOUUCP \
  4349.     -DNOPUSH -DNOMDMHUP -DNOJC -DNOFDZERO -DNOESCSEQ  \
  4350.     $(KFLAGS)" "LNKFLAGS = -s"
  4351.  
  4352. #Command-line only version.
  4353. dellsys5r4m:
  4354.     @echo 'Making C-Kermit $(CKVER) for DELL UNIX System V R4...'
  4355.     @echo 'Command-line only'
  4356.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4357.     "CFLAGS = -O -DSVR4 -DDELL_SVR4 -DDIRENT \
  4358.     -UTCPSOCKET -DNOICP -DNOFRILLS -DNODIAL -DNODEBUG -DNOTLOG -DNOCSETS \
  4359.     -DNOSETKEY -DNOESCSEQ -DNOJC -DNOFDZERO -DCK_POLL \
  4360.     $(KFLAGS)" "LNKFLAGS = -s"
  4361.  
  4362. #AT&T UNIX System V R4.
  4363. #Has <sys/termiox.h>.
  4364. sys5r4sx:
  4365.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4366.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4367.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DSTERMIOX -DNOLEARN \
  4368.     $(KFLAGS)" "LNKFLAGS = -s" "LIBS=$(LIBS)"
  4369.  
  4370. #AT&T UNIX System V R4.
  4371. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  4372. #are not misplaced in sys (rather than netinet and arpa, respectively).
  4373. #Uses ANSI C constructs, <sys/termiox.h>, etc etc.
  4374. sys5r4sxtcp:
  4375.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4376.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4377.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  4378.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  4379.     "LIBS= -lsocket -lnsl $(LIBS)" "LNKFLAGS= -s"
  4380.  
  4381. #AT&T UNIX System V R4.
  4382. #As above + curses.
  4383. sys5r4sxtcpc:
  4384.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4385.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4386.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  4387.     -DSTERMIOX  -DCK_CURSES -DTCPSOCKET $(KFLAGS)" \
  4388.     "LIBS= -lsocket -lnsl -lcurses -ltermcap $(LIBS)" "LNKFLAGS = -s"
  4389.  
  4390. #AT&T UNIX System V R4.  CONSENSYS SVR4.2-1.
  4391. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  4392. #are not misplaced in sys (rather than netinet and arpa, respectively).
  4393. #Uses ANSI C constructs, <sys/termiox.h>, etc.
  4394. # Fullscreen -DCK_CURSES added (with curses & termcap libs)
  4395. # Submission by Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu
  4396. sys5r4sxtcpf:
  4397.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4398.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4399.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  4400.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES $(KFLAGS)" \
  4401.     "LIBS= -lsocket -lnsl -L/usr/ccs/lib -lcurses -ltermcap" \
  4402.     "LIBS=$(LIBS)" "LNKFLAGS = -s"
  4403.  
  4404. #Smallest possible version for System V R4
  4405. s5r4m:
  4406.     @echo Minimum size
  4407.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx KTARGET=$${KTARGET:-$(@)} \
  4408.     "KFLAGS=$(KFLAGS) -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  4409.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOMSEND -UTCPSOCKET" "LNKFLAGS = -s"
  4410.  
  4411. #Smallest possible interactive version of above
  4412. s5r4mi:
  4413.     @echo Minimum interactive
  4414.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx \
  4415.     "KFLAGS=-DNOSPL -DNOXMIT -DNOMSEND -DNOFRILLS -DNOSHOW \
  4416.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOSETKEY \
  4417.     -UTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s"
  4418.  
  4419. #AT&T UNIX System V R4, has <sys/termiox.h>
  4420. #ANSI C function prototyping disabled.
  4421. sys5r4sxna:
  4422.     @echo No ANSI C prototyping...
  4423.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx KTARGET=$${KTARGET:-$(@)} \
  4424.     "KFLAGS=$(KFLAGS) -DNOANSI"
  4425.  
  4426. #Stratus FTX.
  4427. ftx:
  4428.     @echo 'Making C-Kermit $(CKVER) for Stratus FTX 3.x...'
  4429.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4430.     "CFLAGS = -O -DSVR4 -DFTX -DDIRENT -DHDBUUCP -DSTERMIOX \
  4431.     -DNOGETUSERSHELL -DNOLEARN +DA1.1 $(KFLAGS)" \
  4432.     "LNKFLAGS = -s" "LIBS=$(LIBS)"
  4433.  
  4434. #Stratus FTX + TCP/IP.
  4435. ftxtcp:
  4436.     @echo 'Making C-Kermit $(CKVER) for Stratus FTX 3.x...'
  4437.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4438.     "CFLAGS = -O -DSVR4 -DFTX -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4439.     -DSTERMIOX -DTCPSOCKET -DNO_DNS_SRV +DA1.1 $(KFLAGS)" \
  4440.     "LIBS= -lsocket -lnsl $(LIBS)" "LNKFLAGS= -s"
  4441.  
  4442. #NCR MP-RAS 2.03 or 3.02
  4443. mpras:
  4444.     @echo 'Making C-Kermit $(CKVER) for NCR MP-RAS...'
  4445.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4446.     "CFLAGS = -O -DSVR4 -DNCRMPRAS -DDIRENT -DHDBUUCP -DSTERMIOX \
  4447.     -DNOGETUSERSHELL -DUSE_FILE__CNT -DNOLEARN -DNO_DNS_SRV $(KFLAGS)" \
  4448.     "LNKFLAGS = -s" "LIBS=$(LIBS)"
  4449.  
  4450. #NCR MP-RAS 2.03 or 3.02 with TCP/IP and curses
  4451. mprastcpc:
  4452.     @echo 'Making C-Kermit $(CKVER) for NCR MP-RAS + TCP/IP + curses...'
  4453.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CFLAGS=-DTCPSOCKET \
  4454.     -DCK_CURSES -DSVR4 -DNCRMPRAS -DDIRENT -DHDBUUCP -DSTERMIOX -DNOLEARN \
  4455.     -DNOGETUSERSHELL -DNO_DNS_SRV DUSE_FILE__CNT -O $(KFLAGS)" \
  4456.     "LNKFLAGS = -s" "LIBS= -lsocket -lnsl -lcurses -ltermcap $(LIBS)"
  4457.  
  4458. #SINIX-L V5.41 - includes curses, tcp/ip - Use this one for i386.
  4459. #This version of SINIX doesn't like fdopen() or popen().
  4460. sinix541:
  4461.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf SINIX V5.41/i386'
  4462.     $(MAKE) ckcpro.$(EXT) "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP \
  4463.     -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DNO_DNS_SRV \
  4464.     -DSNI541 -DNOGETUSERSHELL -DNONETCMD -DNOPOPEN -kansi -W0 $(KFLAGS)"
  4465.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4466.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DNO_DNS_SRV -DNOPOPEN \
  4467.     -DFNFLOAT -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC \
  4468.     -DSNI541 -DNOGETUSERSHELL -DNONETCMD -kansi -W0 -O $(KFLAGS)" \
  4469.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" "LNKFLAGS = -s"
  4470.  
  4471. sinix541i:
  4472.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sinix541
  4473.  
  4474. #SINIX V5.42 - includes curses, tcp/ip, everything - Use this one for MIPS.
  4475. # As of C-Kermit 7.1, optimization removed -- takes (literally) forever.
  4476. sinix542:
  4477.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4478.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DNO_DNS_SRV \
  4479.     -DFNFLOAT -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC \
  4480.     -DSNI542 -DNOGETUSERSHELL -kansi -W0 $(KFLAGS)" \
  4481.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" "LNKFLAGS = -s"
  4482.  
  4483. #SINIX V5.42 gcc - includes curses, tcp/ip, everything.
  4484. #This one was used to build the Pyramid-architecture RM600 version
  4485. #on SINIX-P 5.42 A10 with gcc but should work for SINIX 5.42 on any other
  4486. #architecture with gcc.
  4487. sinix542g:
  4488.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC=gcc" "CC2=gcc" \
  4489.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DNO_DNS_SRV \
  4490.     -DFNFLOAT -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC \
  4491.     -DSNI542 -DNOGETUSERSHELL $(KFLAGS)" \
  4492.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" \
  4493.     "LNKFLAGS = -s"
  4494.  
  4495. #SINIX V5.42 - includes curses, tcp/ip, everything - Use this one for Intel.
  4496. # (Note: SNI discontinued Intel support after 5.42.)
  4497. sinix542i:
  4498.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf SINIX-Z V5.42...'
  4499.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4500.     "CFLAGS = -DSINIX -DSVR4 -DDIRENT -DHDBUUCP -DFNFLOAT -DSTERMIOX \
  4501.     -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DNO_DNS_SRV -kansi \
  4502.     -DSNI542 $(KFLAGS)" \
  4503.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lm" \
  4504.     "LNKFLAGS = -s"
  4505.  
  4506. #Siemens Nixdorf Reliant UNIX V5.43 - includes curses, tcp/ip, everything:
  4507. # . gettimeofday() suddenly has only one arg instead of two (GTODONEARG).
  4508. # . The syntax of the Olimit specifier changed.
  4509. # . The name was changed from SINIX to Reliant UNIX in version 5.43C.
  4510. sni543:
  4511.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf Reliant UNIX V5.43'
  4512.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4513.     "CFLAGS = -DSINIX -DSNI543 -DSVR4 -DDIRENT -DHDBUUCP \
  4514.     -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DGTODONEARG \
  4515.     -DNO_DNS_SRV -kansi -W0 -O -F Olimit,3100 $(KFLAGS)" \
  4516.     "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  4517.  
  4518. #Siemens Nixdorf Reliant UNIX V5.44 - Like 5.43 but with different banner.
  4519. sni544:
  4520.     @echo 'Making C-Kermit $(CKVER) for Siemens/Nixdorf Reliant UNIX V5.44'
  4521.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4522.     "CFLAGS = -DSINIX -DSNI544 -DSVR4 -DDIRENT -DHDBUUCP \
  4523.     -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DSELECT -DCK_ANSIC -DGTODONEARG \
  4524.     -DNO_DNS_SRV -kansi -W0 -O -K Olimit,3100 $(KFLAGS)" \
  4525.     "LIBS= -lsocket -lnsl -lcurses -ltermcap" "LNKFLAGS = -s"
  4526.  
  4527. #Commodore Amiga with AT&T UNIX System V R4 and TCP/IP support.
  4528. #Has <sys/termiox.h>.
  4529. svr4amiganet:
  4530.     @echo 'Making C-Kermit $(CKVER) for Amiga SVR4 + TCP/IP...'
  4531.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC=gcc" "CC2=gcc" \
  4532.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DSTERMIOX \
  4533.     -DTCPSOCKET -DCK_CURSES $(KFLAGS)" "LNKFLAGS = -s" \
  4534.     "LIBS = -lsocket -lnsl -ltermlib"
  4535.  
  4536. #SCO (Novell (Univel)) UnixWare 1.x or 2.0, no TCP/IP.
  4537. #This assumes the Novell SDK 1.0, which has <sys/termiox.h>.
  4538. #UnixWare users with the "Prime Time Freeware" CD-ROM SDK will probably have
  4539. #to use the sys5r4 entry (no termiox.h file, so no hardware flow control).
  4540. #Change -DSELECT to -DCK_POLL if -DSELECT causes problems.
  4541. # NOTE: Unixware 1.x builds have not been tried in C-Kermit 7.0.
  4542. unixware:
  4543.     $(MAKE) "MAKE=$(MAKE)" sys5r4sx KTARGET=$${KTARGET:-$(@)} \
  4544.     "KFLAGS=-DOLD_UNIXWARE -DCK_NEWTERM -DSELECT -DNOGETUSERSHELL \
  4545.     -DNOSYSLOG $(KFLAGS)" "LIBS=-lcrypt"
  4546.  
  4547. #UnixWare 1.x or 2.0 with TCP/IP and curses.
  4548. #fork()-based CONNECT - no high serial speeds.
  4549. unixwarenetc:
  4550.     $(MAKE) "MAKE=$(MAKE)" sys5r4sxtcpc KTARGET=$${KTARGET:-$(@)} \
  4551.     "KFLAGS=-DOLD_UNIXWARE -DCK_NEWTERM -DSELECT -DNOGETUSERSHELL \
  4552.     -DNOSYSLOG $(KFLAGS)" "LIBS=-lcrypt -lresolv"
  4553.  
  4554. uw10:
  4555.     $(MAKE) unixwarenetc KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  4556.  
  4557. #This is for Unixware 2.0.x only - use unixware21 for UW 2.1.x.
  4558. #Has special library search and enables special kludge around library
  4559. #foulup regarding vfork() (which Kermit doesn't use).  Forces POSIX-style
  4560. #hangup.
  4561. unixware20:
  4562.     @echo 'Making C-Kermit $(CKVER) for UnixWare 2.0.x...'
  4563.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4564.     "CFLAGS = -O -DOLD_UNIXWARE -DUNIXWARE2 -DSELECT -DSVR4 -DDIRENT \
  4565.     -DHDBUUCP -DBIGBUFOK -DNOGETUSERSHELL -DSTERMIOX  -DCK_CURSES \
  4566.     -DTCPSOCKET -DUW200 -DFNFLOAT -DCK_NEWTERM -DNOSYSLOG $(KFLAGS)" \
  4567.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lcrypt -lgen -lm -lresolv" \
  4568.     "LNKFLAGS = -s"
  4569.  
  4570. uw20:
  4571.     $(MAKE) unixware20 KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  4572.  
  4573. #Adds big buffers ("large memory model") - otherwise the same as UnixWare 1.x.
  4574. unixware21:
  4575.     @echo 'Making C-Kermit $(CKVER) for UnixWare 2.1.x...'
  4576.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4577.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  4578.     -DNOSYSLOG -DSTERMIOX  -DCK_CURSES -DTCPSOCKET \
  4579.     -DCK_NEWTERM -DFNFLOAT -DUNIXWARE2 $(KFLAGS)" \
  4580.     "LIBS= -lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv \
  4581.     $(LIBS)" "LNKFLAGS = -s"
  4582.  
  4583. #Unixware 2.1.0
  4584. uw21:
  4585.     $(MAKE) unixware21 KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  4586.  
  4587. #Unixware 2.1.3
  4588. uw213:
  4589.     $(MAKE) unixware21 KTARGET=$${KTARGET:-$(@)} \
  4590.     "KFLAGS=-DUSE_FILE__CNT $(KFLAGS)"
  4591.  
  4592. #Unixware 2.1 with IKSD support
  4593. uw21iksd:
  4594.     $(MAKE) unixware21 KTARGET=$${KTARGET:-$(@)} \
  4595.     "KFLAGS=-DCK_SHADOW $(KFLAGS)" "LIBS= -lgen"
  4596.  
  4597. #UnixWare 7 with tc[gs]etspeed() high serial speeds & select()-based CONNECT
  4598. #and as of C-Kermit 8.0.212, large file support (LFS).
  4599. #NOTE: This is the one we use.
  4600. unixware7t:
  4601.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 with POSIX i/o...'
  4602.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4603.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  4604.     -DFNFLOAT -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DPOSIX \
  4605.     -DUW7 -DUSETCSETSPEED -DCK_NEWTERM -DNOLSTAT -DDCLTIMEVAL \
  4606.     -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DNEEDMDMDEFS $(KFLAGS)" \
  4607.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  4608.     "LNKFLAGS = -s"
  4609.  
  4610. #UnixWare 7 - select()-based CONNECT - no POSIX i/o - no high serial speeds.
  4611. #In other words, just like the UnixWare 1 and 2 builds.
  4612. unixware7x:
  4613.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7...'
  4614.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4615.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  4616.     -DUW7 -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DNOLSTAT \
  4617.     -DFNFLOAT -DCK_NEWTERM $(KFLAGS)" \
  4618.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  4619.     "LNKFLAGS = -s"
  4620.  
  4621. #UnixWare 7 with POSIX cfset[oi]speed() to allow high serial speeds.
  4622. #(but the high speeds don't work)
  4623. unixware7p:
  4624.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 with POSIX i/o...'
  4625.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4626.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  4627.     -DUW7 -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DPOSIX \
  4628.     -DFNFLOAT -DCK_NEWTERM -DNOLSTAT $(KFLAGS)" \
  4629.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  4630.     "LNKFLAGS = -s"
  4631.  
  4632. # UnixWare 7 built with gcc - This does not work at all...
  4633. # Reportedly gcc 2.8.1 is broken on Unixware 7.  Try egcs?
  4634. unixware7g:
  4635.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 with gcc...'
  4636.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4637.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s -shlib"
  4638.     "CFLAGS = -O -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  4639.     -DUW7 -DNOGETUSERSHELL -DSTERMIOX  -DCK_CURSES -DTCPSOCKET -DNOLSTAT \
  4640.     -DFNFLOAT -DCK_NEWTERM $(KFLAGS)" \
  4641.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv $(LIBS)" \
  4642.     "LNKFLAGS = -s"
  4643.  
  4644. unixware7:
  4645.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" unixware7t \
  4646.     KTARGET=$${KTARGET:-$(@)}
  4647.  
  4648. uw7:
  4649.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" unixware7t \
  4650.     KTARGET=$${KTARGET:-$(@)}
  4651.  
  4652. #SCO OpenUNIX 8.0
  4653. ou8:
  4654.     @echo 'Making C-Kermit $(CKVER) for Open UNIX 8...'
  4655.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DOU8 $(KFLAGS)" unixware7t \
  4656.     KTARGET=$${KTARGET:-$(@)}
  4657.  
  4658. #UnixWare 7 with OpenSSL
  4659. uw7ssl uw7+ssl:
  4660.     @echo 'Making C-Kermit $(CKVER) for UnixWare 7 and OpenSSL...'
  4661.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4662.     "CFLAGS = -O -DCK_AUTHENTICATION -DCK_SSL -DCK_SHADOW \
  4663.     -DUNIXWARE -DSELECT -DSVR4 -DDIRENT -DHDBUUCP -DBIGBUFOK \
  4664.     -DFNFLOAT -DNOGETUSERSHELL -DSTERMIOX -DCK_CURSES -DTCPSOCKET -DPOSIX \
  4665.     -DUW7 -DUSETCSETSPEED -DCK_NEWTERM -DNOLSTAT -DDCLTIMEVAL \
  4666.     $(SSLINC) $(KFLAGS)" \
  4667.     "LIBS=-lsocket -lnsl -lcurses -ltermcap -lcrypt -lm -lresolv \
  4668.     -lgen -lcudk70 $(SSLLIB) -lssl -lcrypto $(LIBS)" \
  4669.     "LNKFLAGS = -s"
  4670.  
  4671. #As above but includes Shadow password support needed for IKSD.
  4672. uw7iksd:
  4673.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DCK_SHADOW $(KFLAGS)" \
  4674.     KTARGET=$${KTARGET:-$(@)} "LIBS= -lgen" unixware7t
  4675.  
  4676. #As above but links with static API for realpath() so a binary built
  4677. #with this target on UW7.1 will also work on 7.0.  Requires SCO UDK
  4678. #rather than the stock compiler.
  4679. uw7iksdudk:
  4680.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=-DCK_SHADOW $(KFLAGS)" \
  4681.     KTARGET=$${KTARGET:-$(@)} "LIBS= -lgen -lcudk70" unixware7t
  4682.  
  4683. #ESIX SVR4.0.3 or 4.04 with TCP/IP support.
  4684. #Has <sys/termiox.h>, ANSI C function prototyping disabled.
  4685. #Add -m486 to CFLAGS if desired.
  4686. esixr4:
  4687.     @echo 'Making C-Kermit $(CKVER) for ESIX SVR4 + TCP/IP...'
  4688.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4689.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOANSI \
  4690.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" "LNKFLAGS = -s" \
  4691.     "LIBS = -lsocket -lnsl"
  4692.  
  4693. #AT&T UNIX System V R4.
  4694. #Has <sys/termiox.h>, Wollongong WIN/TCP TCP/IP.
  4695. sys5r4sxnet:
  4696.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4697.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4698.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  4699.     -DSTERMIOX -DWOLLONGONG $(KFLAGS)" "LNKFLAGS = -s"
  4700.  
  4701. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>.
  4702. sys5r4nx:
  4703.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4704.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4705.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DNOLEARN $(KFLAGS)" \
  4706.     "LNKFLAGS = -s"
  4707.  
  4708. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>, curses, TCP/IP.
  4709. sys5r4nxnetc:
  4710.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4711.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4712.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP \
  4713.     -DCK_CURSES -DTCPSOCKET $(KFLAGS)" \
  4714.     "LIBS = -lcurses -lsocket -lnsl -ltcpip" \
  4715.     "LNKFLAGS = -s"
  4716.  
  4717. #AT&T UNIX System V R4, no <termio.x> or <sys/termio.x>, Wollongong TCP/IP.
  4718. sys5r4nxtwg:
  4719.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System V R4...'
  4720.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4721.     "CFLAGS = -O -DSVR4 -DDIRENT -DHDBUUCP -DWOLLONGONG $(KFLAGS)"
  4722.     "LNKFLAGS = -s"
  4723.  
  4724. #ICL UNIX System V R4.(DRS N/X) version :-
  4725. #UNIX System V Release 4.0 ICL DRS 6000 (SPARC)
  4726. #DRS/NX 6000 SVR4 Version 5  Level 1  Increment 4
  4727. #Has <sys/termiox.h>, regular Berkeley sockets library, i.e. in.h and inet.h
  4728. #are not misplaced in sys (rather than netinet and arpa, respectively).
  4729. #Uses ANSI C constructs, advisory file locking on devices, etc.
  4730. #Remove -lnsl if it causes trouble.
  4731. iclsys5r4:
  4732.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 (DRS N/X)'
  4733.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4734.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4735.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  4736.     "LIBS= -lsocket -lnsl -lresolv " "LNKFLAGS = -s"
  4737.  
  4738. #As above but for DRS/NX 4.2MP 7MPlus.
  4739. iclsys5r4m+:
  4740.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 DRS/NX 4.2MP+'
  4741.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4742.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP -DNOIKSD \
  4743.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  4744.     "LIBS= -lsocket -lnsl -lm -lc -g -lgen " "LNKFLAGS = -s"
  4745.  
  4746. #As above but for DRS/NX 4.2MP 7MPlus with IKSD support.
  4747. iclsys5r4m+iksd:
  4748.     @echo 'Making C-Kermit $(CKVER) for ICL UNIX System V R4 DRS/NX 4.2MP+'
  4749.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4750.     "CFLAGS = -O -DSVR4 -DICL_SVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4751.     -DSTERMIOX -DTCPSOCKET $(KFLAGS)" \
  4752.     "LIBS= -lsocket -lnsl -lm -lc -g -lgen -lresolv " "LNKFLAGS = -s"
  4753.  
  4754. iclsys5r4_486:
  4755.     $(MAKE) "MAKE=$(MAKE)" iclsys5r4 KTARGET=$${KTARGET:-$(@)}
  4756.  
  4757. #Data General DG/UX 4.30 (System V R3) for DG AViiON, with TCP/IP support.
  4758. dgux430:
  4759.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 4.30...'
  4760.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4761.     "CFLAGS = -O -DDGUX430 -DSVR3 -DDIRENT -DTCPSOCKET \
  4762.     -DNOINADDRX -DNOGETUSERSHELL $(KFLAGS)"
  4763.  
  4764. #Data General DG/UX 4.30 for DG AViiON, with TCP/IP support with BSDisms.
  4765. dgux430bsd:
  4766.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 4.30...'
  4767.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4768.     "CFLAGS = -O -DDGUX430 -D_BSD_SOURCE -DBSD4 \
  4769.     -DNOINADDRX -DTCPSOCKET -DNOGETUSERSHELL $(KFLAGS)"
  4770.  
  4771. #Data General DG/UX 5.4 (System V R4) for DG AViiON, with TCP/IP support.
  4772. #Add -lsocket -lnsl if inet_addr comes up missing...
  4773. #Hmmm - I really think CK_POLL can be removed from this one in which case
  4774. #there is no difference between dgux540 and dgux540i.
  4775. dgux540:
  4776.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  4777.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4778.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  4779.     -DSTERMIOX -DTCPSOCKET -DCK_POLL -DNOGETUSERSHELL $(KFLAGS)"
  4780.  
  4781. #Data General DG/UX 5.40 (System V R4) for Intel AViiON, with TCP/IP support.
  4782. dgux540i:
  4783.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  4784.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4785.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  4786.     -DSTERMIOX -DTCPSOCKET -DNOGETUSERSHELL $(KFLAGS)" \
  4787.     "LIBS = -lsocket -lnsl"
  4788.  
  4789. dgux54:
  4790.     make dgux540 KTARGET=$${KTARGET:-$(@)}
  4791.  
  4792. #Data General DG/UX 5.4 (= System V R4) for DG AViiON, with TCP/IP support.
  4793. # And curses.
  4794. dgux540c:
  4795.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.4...'
  4796.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4797.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  4798.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  4799.     $(KFLAGS)" "LIBS= -lcurses8 -ltermcap" "LNKFLAGS = -s"
  4800.  
  4801. #As above but for Intel - only difference is name library names.
  4802. dgux540ic:
  4803.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.40...'
  4804.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4805.     "CFLAGS = -O -DDGUX540 -DDIRENT -DHDBUUCP -DNOINADDRX \
  4806.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  4807.     $(KFLAGS)" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  4808.  
  4809. dgux54c:
  4810.     make dgux540c KTARGET=$${KTARGET:-$(@)}
  4811.  
  4812. #DG/UX 5.4R3.10
  4813. dgux54310:
  4814.     @echo 'Making C-Kermit $(CKVER) for DG AViiON DG/UX 5.4R3...'
  4815.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4816.     "CFLAGS = -DDGUX540 -DDGUX54310 -DDIRENT -DHDBUUCP -DSELECT \
  4817.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM    -DNOGETUSERSHELL \
  4818.     -DNOINADDRX $(KFLAGS)" "LIBS= -lcurses8 -ltermcap" "LNKFLAGS = -s"
  4819.  
  4820. #DG/UX 5.4R4.10 - Includes everything.
  4821. dgux54410:
  4822.     @echo 'Making C-Kermit $(CKVER) for DG/UX 5.4R4.10...'
  4823.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4824.     "CFLAGS = -O -DDGUX540 -DDGUX54410 -DDIRENT -DHDBUUCP -DSELECT \
  4825.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  4826.     -DNOINADDRX $(KFLAGS)" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  4827.  
  4828. #DG/UX 5.4R4.11 - Includes everything.
  4829. dgux54411:
  4830.     @echo 'Making C-Kermit $(CKVER) for DG/UX 5.4R4.11...'
  4831.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4832.     "CFLAGS = -O -DDGUX540 -DDGUX54411 -DDIRENT -DHDBUUCP -DSELECT \
  4833.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  4834.     -DNOINADDRX $(KFLAGS)" "LIBS = -lsocket -lnsl -lcurses -ltermcap"
  4835.  
  4836. #DG/UX 5.4R4.20 - Includes everything.
  4837. dgux54420:
  4838.     @echo 'Making C-Kermit $(CKVER) for DG/UX 5.4R4.20...'
  4839.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4840.     "CFLAGS = -O -DDGUX540 -DDGUX54420 -DDIRENT -DHDBUUCP -DSELECT \
  4841.     -DSTERMIOX -DTCPSOCKET -DCK_CURSES -DCK_NEWTERM -DNOGETUSERSHELL \
  4842.     -DNOINADDRX $(KFLAGS)" \
  4843.     "LIBS = -lsocket -lresolv -lnsl -lcurses -ltermcap"
  4844.  
  4845. #Silicon Graphics System V R3 with BSD file system (IRIS)
  4846. iris:
  4847.     @echo Making C-Kermit $(CKVER) for Silicon Graphics IRIX pre-3.3...
  4848.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4849.     "CFLAGS = -O -DSVR3 -DLONGFN -DNOLEARN $(KFLAGS) -I/usr/include/bsd" \
  4850.     "LIBS = -lbsd"
  4851.  
  4852. #Silicon Graphics IRIS System V R3
  4853. irix33:
  4854.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 3.3...'
  4855.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  4856.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNOLEARN $(KFLAGS) -O" \
  4857.     "LNKFLAGS = -s"
  4858.  
  4859. #Silicon Graphics Iris Indigo with IRIX 4.0.0 or 5.0...
  4860. #Strict ANSI C compilation, TCP/IP support included
  4861. irix40:
  4862.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  4863.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4864.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DPWID_T=uid_t \
  4865.     -DCK_ANSIC -DTCPSOCKET $(KFLAGS) -O -Olimit 1600 -I/usr/include/bsd" \
  4866.     "LNKFLAGS = -s"
  4867.  
  4868. #As above, but with fullscreen display (curses) and Sun Yellow Pages support.
  4869. #NOTE: IRIX versions prior to 5 run COFF binaries.
  4870. irix40ypc:
  4871.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0.'
  4872.     @echo 'Includes fullscreen file display and Sun Yellow Pages...'
  4873.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4874.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DCK_CURSES \
  4875.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET $(KFLAGS) \
  4876.     -O -Olimit 1600 -I/usr/include/bsd" \
  4877.     "LIBS = -lcurses -lsun" "LNKFLAGS = -s"
  4878.  
  4879. # Silicon Graphics Iris Series 4D/*, IRIX 4.0.x, -O4 ucode optimized.
  4880. # Huge temporary file space needed for ucode optimizer.  If you get an error
  4881. # like "ugen: internal error writing to /tmp/ctmca08777: Error 0", define the
  4882. # the TMPDIR environment variable to point to a file system that has more
  4883. # space available, e.g. "setenv TMPDIR /usr/tmp".
  4884. irix40u:
  4885.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  4886.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4887.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DPWID_T=uid_t \
  4888.     -DCK_ANSIC -DTCPSOCKET $(KFLAGS) -O4 -Olimit 1600" \
  4889.     "LNKFLAGS=-O4 -Olimit 1600 -s" "EXT=u"
  4890.  
  4891. # As above, with Curses Support added
  4892. irix40uc:
  4893.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 4.0...'
  4894.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4895.     "CFLAGS = -DIRIX40 -DSVR3 -DDIRENT -DHDBUUCP -DPWID_T=uid_t \
  4896.     -DCK_ANSIC -DCK_CURSES -DTCPSOCKET $(KFLAGS) -O4 -Olimit 1600" \
  4897.     "LNKFLAGS=-O4 -Olimit 1600 -s" "EXT=u" "LIBS= -lcurses -ltermcap"
  4898.  
  4899. #Silicon Graphics IRIX 5.x.
  4900. #Yellow Pages and Curses support included.
  4901. #IRIX version 5.x can run COFF or ELF binaries.
  4902. irix51:
  4903.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 5.x'
  4904.     @echo 'Includes fullscreen file display and Yellow Pages...'
  4905.     @echo 'Add -mips<n> to CFLAGS specify a particular hardware target.'
  4906.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4907.     "CFLAGS = -DIRIX51 -DSVR4 -DDIRENT -DHDBUUCP -DCK_CURSES -DCK_NEWTERM \
  4908.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET -DSELECT -DNOGETUSERSHELL \
  4909.     -DSYSTIMEH -DDCLPOPEN -DDCLFDOPEN $(KFLAGS) -ansi -O -Olimit 3000" \
  4910.     "LIBS = -lcurses" "LNKFLAGS = -s"
  4911.  
  4912. #Use this one if irix51 blows up due to lack of swap space or whatever.
  4913. irix51x:
  4914.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 5.x'
  4915.     @echo 'Includes fullscreen file display and Yellow Pages...'
  4916.     @echo 'Add -mips<n> to CFLAGS specify a particular hardware target.'
  4917.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4918.     "CFLAGS = -DIRIX51 -DSVR4 -DDIRENT -DHDBUUCP -DCK_CURSES -DCK_NEWTERM \
  4919.     -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET -DSELECT -DNOGETUSERSHELL \
  4920.     -DSYSTIMEH -DDCLPOPEN -DDCLFDOPEN $(KFLAGS)" \
  4921.     "LIBS = -lcurses" "LNKFLAGS = -s"
  4922.  
  4923. irix51ypc:
  4924.     $(MAKE) "MAKE=$(MAKE)" irix51 KTARGET=$${KTARGET:-$(@)} \
  4925.     "KFLAGS= $(KFLAGS)"
  4926.  
  4927. #IRIX 5.2 adds RTS/CTS
  4928. irix52:
  4929.     $(MAKE) "MAKE=$(MAKE)" irix51 KTARGET=$${KTARGET:-$(@)} \
  4930.     "KFLAGS=-DIRIX52 -DCK_RTSCTS $(KFLAGS)"
  4931.  
  4932. irix53:
  4933.     $(MAKE) "MAKE=$(MAKE)" irix51 KTARGET=$${KTARGET:-$(@)} \
  4934.     "KFLAGS=-DIRIX52 -DIRIX53 -DCK_RTSCTS $(KFLAGS)"
  4935.  
  4936. irix53x:
  4937.     $(MAKE) "MAKE=$(MAKE)" irix51x KTARGET=$${KTARGET:-$(@)} \
  4938.     "KFLAGS=-DIRIX52 -DIRIX53 -DCK_RTSCTS $(KFLAGS)"
  4939.  
  4940. #Silicon Graphics IRIX 6.[024] common stuff.
  4941. #Yellow Pages and Curses support included.
  4942. #IRIX version 6.0 and later runs only ELF binaries.
  4943. #Depends on code changes in ckcdeb.h that make -DIRIX6x define all
  4944. #lower IRIX6x values and IRIX51.
  4945. irix6x:
  4946.     @echo 'Includes fullscreen file display and Yellow Pages...'
  4947.     @echo 'Add -mips<n> to specify a particular hardware target.'
  4948.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  4949.     "CFLAGS = -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4950.     -DCK_CURSES -DCK_NEWTERM -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET \
  4951.     -DSELECT -DCK_RTSCTS -O $(KFLAGS)" \
  4952.     "LIBS = -lcurses" "LNKFLAGS = -s $(LNKFLAGS)"
  4953.  
  4954. #Silicon Graphics IRIX 6.0.
  4955. irix60:
  4956.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.0'
  4957.     @$(MAKE) "MAKE=$(MAKE)" \
  4958.     "KFLAGS=-DIRIX60 -Olimit 2138 $(KFLAGS)" \
  4959.     irix6x KTARGET=$${KTARGET:-$(@)}
  4960.  
  4961. #Silicon Graphics IRIX 6.2.
  4962. #Serial speeds > 38400 are available in IRIX 6.2 on O-class machines only.
  4963. #Note: Olimit must be a number > 0.
  4964. irix62:
  4965.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.2'
  4966.     @$(MAKE) "MAKE=$(MAKE)" \
  4967.     LNKFLAGS="-Wl,-woff,84" \
  4968.     "KFLAGS=-DIRIX62 -Olimit 4700 $(KFLAGS)" \
  4969.     irix6x KTARGET=$${KTARGET:-$(@)}
  4970.  
  4971. #Silicon Graphics IRIX 6.3.
  4972. irix63:
  4973.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.3'
  4974.     @$(MAKE) "MAKE=$(MAKE)" irix62 KTARGET=$${KTARGET:-$(@)} \
  4975.     "KFLAGS=-DIRIX63"
  4976.  
  4977. #Silicon Graphics IRIX 6.4.
  4978. # -woff,84 to linker stops complaints about no symbols loaded from
  4979. # curses, and -woff 1110 stops complaints about unreachable "break;"
  4980. # statements in ckcpro.c among others.
  4981. # tested on SGI Octane, running IRIX 6.4 up to 115200 bps.
  4982. # -Olimit 0 means infinite.
  4983. irix64:
  4984.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.4'
  4985.     @$(MAKE) "MAKE=$(MAKE)" \
  4986.     LNKFLAGS="-Wl,-woff,84" \
  4987.     "KFLAGS=-DIRIX64 -DCK_RTSCTS -Olimit 3000 -woff 1110 $(KFLAGS)" \
  4988.     irix6x KTARGET=$${KTARGET:-$(@)}
  4989.  
  4990. irix64gcc:
  4991.     @echo 'Making C-Kermit $(CKVER) for Silicon Graphics IRIX 6.4 gcc'
  4992.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  4993.     "CFLAGS= -DSVR4 -DIRIX64 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  4994.     -DSELECT -DPWID_T=uid_t -DTCPSOCKET -DNOCOTFMC \
  4995.     -DCK_ANSIC -DCK_RTSCTS -DCK_NEWTERM -DCK_CURSES \
  4996.     $(KFLAGS) -O" "LIBS= -lcurses -ltermcap -lcrypt"
  4997.  
  4998. #Note the new Optimization option syntax for MIPSpro CC 7.2.1.2m.
  4999. #See note on irix65gcc target about Large File Support (LFS).
  5000. irix65:
  5001.     @echo 'Making C-Kermit $(CKVER) for SGI IRIX 6.5'
  5002.     @$(MAKE) "MAKE=$(MAKE)" LNKFLAGS="-Wl,-woff,84" \
  5003.     "KFLAGS=-DIRIX65 -D_LARGEFILE_SOURCE -DCK_RTSCTS -OPT:Olimit=0 \
  5004.     -woff 1110,1552,1174 $(KFLAGS)" \
  5005.     irix6x KTARGET=$${KTARGET:-$(@)}
  5006.  
  5007. #Build for those that have GCC instead of MIPSpro.
  5008. #
  5009. # Large File Support note: use the define _LARGEFILE_SOURCE to enable support
  5010. # for files larger than 2GB.  This may work on releases of Irix prior to
  5011. # 6.5.xx.  To verify, check the man page for fstat and verify that off_t is a
  5012. # 64 bit value for an -n32 build.  Also check the manpage for fseek and ftell
  5013. # to verify that the fseek64 and ftell64 functions are provided.  If so, then
  5014. # LFS support should work and you can try adding -D_LARGEFILE_SOURCE to CFLAGS
  5015. # for your selected Irix target.
  5016. #
  5017. irix65gcc:
  5018.     @echo 'Making C-Kermit $(CKVER) for SGI IRIX 6.5 with gcc'
  5019.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5020.     "CC = gcc" "CC2 = gcc" \
  5021.     "CFLAGS= -DSVR4 -DIRIX65 -D_LARGEFILE_SOURCE -DDIRENT -DHDBUUCP \
  5022.     -DNOGETUSERSHELL -DSELECT -DPWID_T=uid_t -DTCPSOCKET -DNOCOTFMC \
  5023.     -DCK_ANSIC -DCK_RTSCTS -DCK_NEWTERM -DCK_CURSES \
  5024.     $(KFLAGS) -O" "LIBS= -lcurses"
  5025.  
  5026. # The 64-bit IRIX target works but presumably is no longer needed given the
  5027. # large file support in the more portable and compact 32-bit version.
  5028. irix65_64:
  5029.     @echo 'Making C-Kermit $(CKVER) 64-bit for SGI IRIX 6.5'
  5030.     @$(MAKE) "MAKE=$(MAKE)" LNKFLAGS="-Wl,-woff,84" \
  5031.     "KFLAGS=-DIRIX65 -64 -DCK_RTSCTS -OPT:Olimit=0 -woff 1110,1552,1174 \
  5032.     -DCK_64BIT $(KFLAGS)" \
  5033.     irix6x KTARGET=$${KTARGET:-$(@)}
  5034.  
  5035. #Dumb down to MIPS-2 if building on R5000 or higher...
  5036. irix65mips2:
  5037.     @echo 'Making C-Kermit $(CKVER) for SGI IRIX 6.5 MIPS-2'
  5038.     @$(MAKE) "MAKE=$(MAKE)" LNKFLAGS="-o32 -mips2 -Wl,-woff,84" \
  5039.     "KFLAGS=-DIRIX65 -DCK_RTSCTS -OPT:Olimit=0 -o32 -mips2 \
  5040.     -woff 1110,1552,1174 $(KFLAGS)" \
  5041.     irix6x KTARGET=$${KTARGET:-$(@)}
  5042.  
  5043. #Special target that adds srp, ssl, and zlib support.  This requires
  5044. #that you have pkgsrc installed instead of Irix Freeware.  See
  5045. #NetBSD.org for pkgsrc for Irix.  You will need to BUILD the srp_client
  5046. #package yourself.  Install it manually using the directions found
  5047. #in the netbsds+ssl+srp+zlib target comments.
  5048. irix65+ssl+srp+zlib:
  5049.     @echo 'Making C-Kermit $(CKVER) for IRIX 6.5 with gcc and SSL SRP ZLIB'
  5050.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5051.     "CC = gcc" "CC2 = gcc" \
  5052.     "CFLAGS= -DIRIX65 -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL -DSELECT \
  5053.     -DTCPSOCKET -DNOCOTFMC -DCK_NEWTERM -DPWID_T=uid_t -DCK_ANSIC \
  5054.     -I/usr/pkg/include -DCK_AUTHENTICATION -DCK_SRP -DPRE_SRP_1_4_5 \
  5055.     -DCK_RTSCTS -DCK_NCURSES -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DCK_SSL \
  5056.     -DLIBDES -DZLIB -DFNFLOAT -I/usr/pkg/include/openssl $(KFLAGS) -O" \
  5057.     "LIBS= -L/usr/pkg/lib -rpath /usr/pkg/lib -lncurses -lsrp -lgmp -ldes \
  5058.     -lssl -lkrypto -lcrypto -lcrypt -lz -lm"
  5059.  
  5060. irix6x+krb5:
  5061.     @echo 'Includes fullscreen file display and Yellow Pages...'
  5062.     @echo 'Add -mips<n> to specify a particular hardware target.'
  5063.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5064.     "CFLAGS = -DSVR4 -DDIRENT -DHDBUUCP -DNOGETUSERSHELL \
  5065.     -DCK_CURSES -DCK_NEWTERM -DPWID_T=uid_t -DCK_ANSIC -DTCPSOCKET\
  5066.     -DSELECT -DCK_RTSCTS -O \
  5067.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 -DCK_ENCRYPTION -DCK_DES \
  5068.     $(K5INC) $(K5INC)/krb5 $(KFLAGS)" \
  5069.     "LIBS = -lcurses $(K5LIB) -ldes425 -lkrb5 \
  5070.     -lcom_err -lcrypto -lcrypt -lgssapi_krb5" \
  5071.     "LNKFLAGS = -s $(LNKFLAGS)"
  5072.  
  5073. irix65+krb5:
  5074.     @echo 'Making C-Kermit $(CKVER) for SGI IRIX 6.5'
  5075.     @$(MAKE) "MAKE=$(MAKE)" \
  5076.     LNKFLAGS="-Wl,-woff,84" \
  5077.     "KFLAGS=-DIRIX65 -DCK_RTSCTS -OPT:Olimit=0 -woff 1110,1552,1174 \
  5078.     $(KFLAGS)" \
  5079.     irix6x+krb5 KTARGET=$${KTARGET:-$(@)}
  5080.  
  5081. #In case they type "make sys5"...
  5082. sys5:
  5083.     $(MAKE) "MAKE=$(MAKE)" sys3 KTARGET=$${KTARGET:-$(@)}
  5084.  
  5085. #Generic ATT System III or System V (with I&D space)
  5086. sys3:
  5087.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  5088.     @echo 'or System V R2 or earlier...'
  5089.     @echo 'add -DNOMKDIR if mkdir is an undefined symbol.'
  5090.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5091.     "CFLAGS = -DATTSV -DNOUNICODE -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL \
  5092.     -DNOINITGROUPS -DNOFTRUNCATE -DNOREALPATH -DNOLEARN $(KFLAGS) -i -O" \
  5093.     "LNKFLAGS = -i"
  5094.  
  5095. #Generic ATT System III or System V (no I&D space)
  5096. sys3nid:
  5097.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  5098.     @echo 'or System V R2 or earlier, no I&D space...'
  5099.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5100.     "CFLAGS = -DATTSV -DNOREALPATH -DNOUNICODE -DNOSYSLOG -DNOSYMLINK \
  5101.     -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE -DNOLEARN $(KFLAGS) -O" \
  5102.     "LNKFLAGS ="
  5103.  
  5104. #Generic ATT System III or System V R2 or earlier, "no void":
  5105. #special entry to remove "Illegal pointer combination" warnings.
  5106. sys3nv:
  5107.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  5108.     @echo 'or System V R2 or earlier...'
  5109.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5110.     "CFLAGS= -DATTSV -DNOREALPATH -DNOUNICODE -DNOSYSLOG -DNOGETUSERSHELL \
  5111.     -DNOSYMLINK -DNOFTRUNCATE -DNOINITGROUPS -DNOLEARN \
  5112.     -Dvoid=int $(KFLAGS) -i -O" \
  5113.     "LNKFLAGS = -i"
  5114.  
  5115. # AT&T 7300 UNIX PC.  As of C-Kermit 6.1, many of these entries don't work
  5116. # any more due to "Out of memory" or "Too many defines" errors during
  5117. # compilation, at least not on systems without lots of memory.  The sys3upcgc
  5118. # entry works (using gcc) with optimization removed, and might also work
  5119. # with optimization enabled on machines with larger memories.
  5120.  
  5121. #AT&T 7300/UNIX PC (3B1) systems, sys3 but special handling for internal modem.
  5122. #Link with the shared library -- the conflict with openi in shared library
  5123. #is solved with -Dopeni=xopeni.  Note that the xermit target can't be used
  5124. #for the Unix PC; there is no select().
  5125. sys3upc:
  5126.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, shared lib...'
  5127.     @echo 'If shared lib causes trouble, use make sys3upcold.'
  5128.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5129.     "CFLAGS = -O -DATT7300 -DNOMKDIR -DUSE_MEMCPY -DNOREALPATH -DNOLEARN \
  5130.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5131.     -DNOREDIRECT -DNOGFTIMER -DNOUNICODE $(KFLAGS) -Dopeni=xopeni" \
  5132.     "CC2 = ld /lib/crt0s.o /lib/shlib.ifile" "LNKFLAGS = -s"
  5133.  
  5134. #AT&T 7300/Unix PC systems, minimum kermit for those with smaller amounts
  5135. #of memory.
  5136. sys3upcm:
  5137.     @echo Minimum interactive
  5138.     $(MAKE) "MAKE=$(MAKE)" sys3upc KTARGET=$${KTARGET:-$(@)} \
  5139.     "KFLAGS=-DNOSPL -DNOFRILLS -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS \
  5140.     -DNOSYSLOG -DNOSETKEY -DNOREALPATH"
  5141.  
  5142. #AT&T 7300/UNIX PC (3B1) systems, with curses support.
  5143. #Curses and the shared library don't get along, so we don't use the
  5144. #shared library.  We need to include CK_NEWTERM to avoid a conflict
  5145. #with curses and buffering on stdout.  Merged with submission by
  5146. #Robert Weiner/Programming Plus, rweiner@watsun.cc.columbia.edu.
  5147. #We don't need -Dopeni=xopeni since we're not using the shared library,
  5148. #but we keep it to be consistent with the other entries.
  5149. sys3upcc:
  5150.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  5151.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5152.     "CFLAGS = -O -DATT7300 -DNOREALPATH \
  5153.     -DCK_CURSES -DCK_NEWTERM -DNOMKDIR -DNOREDIRECT -DNOGFTIMER -DNOLEARN \
  5154.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5155.     -DUSE_MEMCPY -DNOUNICODE $(KFLAGS) -Dopeni=xopeni" \
  5156.     "LIBS = -lcurses" "LNKFLAGS = -s"
  5157.  
  5158. #Like sys3upcc but for AT&T UNIX 3.51m (released as a patch on Fix Disk 2),
  5159. #adds hardware flow control.
  5160. att351m:
  5161.     $(MAKE) "MAKE=$(MAKE)" sys3upcc KTARGET=$${KTARGET:-$(@)} \
  5162.     "KFLAGS=-DCK_RTSCTS -DUNIX351M"
  5163.  
  5164. #As above but with gcc.
  5165. att351gm:
  5166.     $(MAKE) "MAKE=$(MAKE)" sys3upcgc KTARGET=$${KTARGET:-$(@)} \
  5167.     "KFLAGS=-DCK_RTSCTS -DUNIX351M"
  5168.  
  5169. #AT&T 7300 UNIX PC (3B1), as above, but no newterm().
  5170. sys3upcx:
  5171.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  5172.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5173.     "CFLAGS = -O -DATT7300 -DNOREALPATH -DNOUNICODE -DNOLEARN \
  5174.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5175.     -DCK_CURSES -DNOMKDIR -DNOREDIRECT -DNOGFTIMER -DUSE_MEMCPY $(KFLAGS) \
  5176.     -Dopeni=xopeni" "LIBS = -lcurses -ltermcap" "LNKFLAGS = -s"
  5177.  
  5178. #AT&T 7300/UNIX PC (3B1) systems, with curses and shared library support.
  5179. sys3upcshcc:
  5180.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, shared lib...'
  5181.     @echo 'With curses.  Requires shcc.'
  5182.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5183.     "CFLAGS = -O -DATT7300 -DNOMKDIR -DNOREALPATH -DNOLEARN \
  5184.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5185.     -DCK_NEWTERM -DCK_CURSES  -DNOREDIRECT -DNOGFTIMER \
  5186.     -DUSE_MEMCPY -DNOUNICODE $(KFLAGS) -Dopeni=xopeni" \
  5187.     "LNKFLAGS = -i -s" "CC = shcc" "CC2 = shcc" "LIBS = -lcurses"
  5188.  
  5189. #AT&T 7300/UNIX PC (3B1) systems, as above, no curses, but use gcc.
  5190. sys3upcg:
  5191.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC...'
  5192.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5193.     "CFLAGS = -DATT7300 -DNOREDIRECT -DUSE_MEMCPY -DNOUNICODE -DNOLEARN \
  5194.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5195.     -DNOGFTIMER -DNOMKDIR -DNOREALPATH $(KFLAGS) -Dopeni=xopeni" \
  5196.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s -shlib"
  5197.  
  5198. #AT&T 7300/UNIX PC (3B1) systems, curses and gcc.
  5199. #Optimization omitted -- add it back in if your machine has lots of memory.
  5200. sys3upcgc:
  5201.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC, curses...'
  5202.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5203.     "CFLAGS = -DATT7300 -DNOREDIRECT -DUSE_MEMCPY -DNOGFTIMER -DNOUNICODE \
  5204.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5205.     -DCK_CURSES -DCK_NEWTERM -DNOMKDIR -DNOREALPATH -DNOLEARN $(KFLAGS)" \
  5206.     "CC = gcc" "CC2 = gcc" "LIBS = -lcurses" "LNKFLAGS = -s"
  5207.  
  5208. #AT&T 7300/UNIX PC (3B1) systems, special handling for internal modem.
  5209. #No FULLSCREEN file transfer display (curses).
  5210. sys3upcold:
  5211.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC...'
  5212.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5213.     "CFLAGS = -DATT7300 -DNOMKDIR -DUSE_MEMCPY -DNOUNICODE -DNOLEARN \
  5214.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5215.     -DNOGFTIMER -DNOREDIRECT -DNOREALPATH $(KFLAGS) -O" "LNKFLAGS = -i"
  5216.  
  5217. #As above, but with gcc. mininum features - fits on a 400K UNIX PC floppy
  5218. #after compression with room to spare; add -DNOSHOW or other -DNOxxxx items
  5219. #to reduce size even further.
  5220. sys3upcgm:
  5221.     @echo Minimum interactive
  5222.     $(MAKE) "MAKE=$(MAKE)" sys3upcg KTARGET=$${KTARGET:-$(@)} \
  5223.     "KFLAGS=-DNOSPL -DNOFRILLS -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS \
  5224.     -DNOSETKEY $(KFLAGS)"
  5225.  
  5226. #This target is designed to create a version with the most features possible
  5227. #that, after compression, still fits on a 400K UNIX PC floppy.
  5228. sys3upcgfd:
  5229.     @echo 'Making C-Kermit $(CKVER) for AT&T 7300 UNIX PC floppy...'
  5230.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5231.     "CFLAGS = -DATT7300 -DNOREDIRECT -DUSE_MEMCPY -DNOSPL -DNOLEARN \
  5232.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5233.     -DNOGFTIMER -DNOREALPATH -Dopeni=xopeni \
  5234.     -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS -DNOSETKEY -DNOMKDIR $(KFLAGS)" \
  5235.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s"
  5236.  
  5237. #AT&T 6300 PLUS (warning, -O might make it run out of space).
  5238. #NOTE: Remove -DHDBUUCP if not using Honey DanBer UUCP.
  5239. att6300:
  5240.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS...'
  5241.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5242.     "CFLAGS = -DATT6300 -DHDBUUCP -DNOFILEH -DNOREALPATH -DNOLEARN \
  5243.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5244.     -DNOUNICODE $(KFLAGS) -O -Ml -i" "LNKFLAGS = -i -Ml"
  5245.  
  5246. #As above, but with curses support.  Debugging disabled to prevent thrashing.
  5247. att6300c:
  5248.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS...'
  5249.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5250.     "CFLAGS = -DATT6300 -DHDBUUCP -DNOFILEH -DNOCSETS -DNOREALPATH \
  5251.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5252.     -DCK_CURSES -DNODEBUG -DNOUNICODE -DNOLEARN $(KFLAGS) -O -Ml -i" \
  5253.     "LNKFLAGS = -i -Ml" "LIBS = -lcurses"
  5254.  
  5255. #AT&T 6300 PLUS with no curses, no debugging (about 34K smaller)
  5256. # -Optimization saves about 20K too.
  5257. att6300nd:
  5258.     @echo 'Making C-Kermit $(CKVER) for AT&T 6300 PLUS, no debugging...'
  5259.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5260.     "CFLAGS = -DATT6300 -DHDBUUCP -DNODEBUG -DNOFILEH -DNOREALPATH \
  5261.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5262.     -DNOUNICODE -DNOLEARN $(KFLAGS) -O -i -Ml" "LNKFLAGS = -i -Ml"
  5263.  
  5264. #AT&T 3B2 and maybe 3B20-series computers running AT&T UNIX System V R3.
  5265. #This one was actually used to build C-Kermit 7.0 successfully on a 3B2/300.
  5266. att3b2:
  5267.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2'
  5268.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5269.     "CFLAGS = -DATTSV -DNOREDIRECT -DUSE_MEMCPY \
  5270.     -DNOTIMEVAL -DNOTIMEZONE -DMINIDIAL -DNOCHANNELIO -DNOBIGBUF \
  5271.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5272.     -DNOGFTIMER -DNOREALPATH -Dopeni=xopeni -DNOFRILLS -DNOLEARN \
  5273.     -DNOHELP -DNODEBUG -DNOTLOG -DNOCSETS -DNOSETKEY -DNOMKDIR $(KFLAGS)" \
  5274.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -s"
  5275.  
  5276. # The next two are likely not to work as-is.
  5277.  
  5278. #AT&T 3B2, 3B20-series computers running AT&T UNIX System V.
  5279. #This is just generic System V with Honey DanBer UUCP, so refer to sys3hdb.
  5280. #Remove -DNONAWS if you can get away with it.
  5281. att3bx:
  5282.     $(MAKE) "MAKE=$(MAKE)" sys3hdb KTARGET=$${KTARGET:-$(@)} \
  5283.     "KFLAGS=$(KFLAGS) -DNONAWS -DNOTIMEVAL"
  5284.  
  5285. # 3Bx with charsets (except Unicode) but no curses.
  5286. att3bx1:
  5287.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  5288.     @echo 'with Honey DanBer UUCP  no curses...'
  5289.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5290.     "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -DNOREDIRECT \
  5291.     -DNOTIMEVAL -DNOTIMEZONE -DMINIDIAL -DNOCHANNELIO -DNOBIGBUF \
  5292.     -DNOHELP -DNODEBUG -DNOGFTIMER -DNOLEARN \
  5293.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5294.     -DNOREALPATH -DNOUNICODE -i" \
  5295.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -i -s"
  5296.  
  5297. #AT&T 3B2, 3B20-series computers running AT&T UNIX System V,
  5298. #with fullscreen file transfer display.
  5299. att3bxc:
  5300.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  5301.     @echo 'with Honey DanBer UUCP and curses...'
  5302.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5303.     "CFLAGS = -DATTSV -DHDBUUCP -DNONAWS -DNOTIMEVAL $(KFLAGS) \
  5304.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5305.     -DNOREALPATH -DCK_CURSES -DCK_NEWTERM -DNOUNICODE -DNOLEARN -i -O" \
  5306.     "LNKFLAGS = -i" "LIBS=-lcurses"
  5307.  
  5308. #3bx with curses but no charsets
  5309. att3bxc3:
  5310.     @echo 'Making C-Kermit $(CKVER) for AT&T 3B2 or 3B20'
  5311.     @echo 'with Honey DanBer UUCP with curses...  no CSETS'
  5312.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5313.     "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -DNOREDIRECT \
  5314.     -DNOTIMEVAL -DNOTIMEZONE -DMINIDIAL -DNOCHANNELIO -DNOBIGBUF \
  5315.     -DNOHELP -DNODEBUG -DNOGFTIMER -DNOLEARN \
  5316.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5317.     -DNOREALPATH -DNOCSETS -DCK_CURSES -DCK_NEWTERM -i" \
  5318.     "CC = gcc" "CC2 = gcc" "LNKFLAGS = -i -s" "LIBS = -lcurses"
  5319.  
  5320. #Any System V R2 or earlier with Honey DanBer UUCP (same as above)
  5321. sys3hdb:
  5322.     @echo 'Making C-Kermit $(CKVER) for AT&T UNIX System III'
  5323.     @echo 'or System V R2 or earlier with Honey DanBer UUCP...'
  5324.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5325.     "CFLAGS = -DATTSV -DHDBUUCP -DNOREALPATH -DNOUNICODE -DNOLEARN \
  5326.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5327.     $(KFLAGS) -i -O" "LNKFLAGS = -i"
  5328.  
  5329. #Sperry/UNISYS 5000 UTS V 5.2 (System V R2), Honey DanBer UUCP
  5330. unisys5r2:
  5331.     @echo 'Making C-Kermit $(CKVER) for Sperry/UNISYS 5000 UTS V 5.2...'
  5332.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5333.     "CFLAGS = -DATTSV -DUNISYS52 -DHDBUUCP -DNOREALPATH -DNOUNICODE \
  5334.     -DNOSYSLOG -DNOSYMLINK -DNOGETUSERSHELL -DNOINITGROUPS -DNOFTRUNCATE \
  5335.     -DNOLEARN $(KFLAGS) -i -O" "LNKFLAGS = -i"
  5336.  
  5337. #In case they say "make sys5hdb" instead of "make sys3hdb"...
  5338. sys5hdb:
  5339.     $(MAKE) "MAKE=$(MAKE)" sys3hdb
  5340.  
  5341. #Create the common header line for all hpux[5-11]* entries and above. This 
  5342. #extra entry is here because our header message length may differ for each 
  5343. #C-Kermit version. Don't use 'fold -s' for HP-UX 5.x - 7.x! This option is 
  5344. #available only for HP-UX 8.0 and above!
  5345. hpux-header:
  5346.     @HPUX=`uname -r | sed -e 's/^[^1-9]*//' -e 's/\.00$$/.0/'` ; \
  5347.     [ "$(MESSAGE0)" ] && MESSAGE1="$(MESSAGE0)" ; \
  5348.     Message0='Making C-Kermit $(CKVER) for HP9000 HP-UX' ; \
  5349.     Message1=$${MESSAGE1:='without any extra compiler optimization'} ; \
  5350.     MessageH="$$Message0 $$HPUX" ; \
  5351.     case $$HPUX in \
  5352.       [567].*) echo "$$MessageH\n$$Message1" ;; \
  5353.           *.*) echo "$$MessageH $${Message1}$(MESSAGE1A)" | fold -s ;; \
  5354.     esac | sed -e 's/^ //' -e 's/ *$$//'
  5355.  
  5356. # Peter E's updated HP-UX 5.xx entries Oct 2001.
  5357.  
  5358. #HP-9000 500 HP-UX 5.xx, no TCP/IP.
  5359. # Last known successful build: C-Kermit 8.0.206 2002/20/27.
  5360. hpux0500:
  5361.     @MESSAGE0="no TCP/IP and no compiler optimization";\
  5362.     MESSAGE0=$${MESSAGE1:-$$MESSAGE0} \
  5363.     $(MAKE) hpux-header
  5364.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5365.     "CFLAGS = -DHPUX -DHPUX5 -DHPUXPRE65 -DNOREDIRECT -DDCLGETCWD \
  5366.     -DNOGETUSERSHELL -DNOGFTIMER -DNOSYSLOG -DNOTOMACROS -DNOLSTAT \
  5367.     -DNOSYMLINK -DNOINITGROUPS -DNOUNICODE -DNOLEARN -DNOLONGLONG \
  5368.     -DVOID=int -DCKVOID=int $(KFLAGS)" "LIBS = $(LIBS)" "LNKFLAGS = "
  5369.  
  5370. #HP-9000 500 HP-UX 5.21 with Wollongong WIN/TCP 1.2 TCP/IP.
  5371. #Requires /usr/wins/usr/include and /usr/lib/libnet.a from Wollongong.
  5372. #Optimization skipped - takes forever.    Really.
  5373. # WARNING: this doesn't work if a file called "hpux0500" is on the disk.
  5374. # Last known successful build: C-Kermit 8.0.206 2002/20/27.
  5375. hpux0500wintcp:
  5376.     @MESSAGE1="with WIN/TCP but without any extra compiler optimization" \
  5377.     $(MAKE) hpux0500 KTARGET=$${KTARGET:-$(@)} \
  5378.     "KFLAGS = -DTCPSOCKET -DHPUX5WINTCP -DINADDRX -DNO_DNS_SRV \
  5379.     -DNOMHHOST -DVOID=int -DCKVOID=int -DNOHADDRLIST -DNOLONGLONG \
  5380.     -I/usr/wins/usr/include $(KFLAGS)" "LIBS = /usr/lib/libnet.a"
  5381.  
  5382. #HP-UX 6.5, short filenames, no network and no curses support.
  5383. #ckcpro, ckuusr, ckuus3 and others are broken out because they make the
  5384. #optimizer run away.  Note that the XERMIT target does not work with HP-UX 6.5!
  5385. #
  5386. #If you get compiler warnings like:
  5387. #'Switch table overflow. Try the -Wc,-Nw option.' (for ckcuni.c, or
  5388. #other files) increase the '...' value in '-Wc,-Nw...'! The default maximum
  5389. #switch table stack (-Nw) is 250 table entries. ckcuni.c from Oct 16 2009
  5390. #needs 257 table entries (C-Kermit Version "9.0.299").
  5391. #OK: 2010/03/26
  5392. hpux0650:
  5393.     @$(MAKE) hpux-header
  5394.     @MESSAGE2=$${MESSAGE2:-'and NO network'}; \
  5395.     echo "supporting: NO long filenames $$MESSAGE2."
  5396.  
  5397.     $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  5398.         ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) ckuus6.$(EXT) \
  5399.         ckuusr.$(EXT) ckuxla.$(EXT) ckcftp.$(EXT) ckcpro.$(EXT) \
  5400.     "CFLAGS = -DHPUX -DHPUX6 -DSIG_V -DNOSYSLOG -DNOSELECT -DFNFLOAT \
  5401.     -DDCLGETCWD -DNOGETUSERSHELL -DNO_DNS_SRV -DNOLEARN -DNOLONGLONG \
  5402.     $(KFLAGS)"
  5403.  
  5404.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  5405.     "CFLAGS = -DHPUX -DHPUX6 -DSIG_V -DNOSYSLOG -DNOSELECT -DFNFLOAT \
  5406.     -DDCLGETCWD -DNOGETUSERSHELL -DNO_DNS_SRV -DNOLEARN -DNOLONGLONG \
  5407.     $(KFLAGS) -Wc,-Nw260 $(OFLAGS)" "LNKFLAGS = -s" "LIBS = -lm $(LIBS)"
  5408.  
  5409. #Exactly as above, plus curses:
  5410. #OK: 2009/10/06
  5411. hpux0650c:
  5412.     @MESSAGE2="and NO network but with curses" \
  5413.     $(MAKE) hpux0650 KTARGET=$${KTARGET:-$(@)} \
  5414.     "KFLAGS = -DCK_CURSES $(KFLAGS)" \
  5415.     "LIBS = -lcurses"
  5416.  
  5417. #Exactly as above, plus curses + network:
  5418. #OK: 2009/10/02
  5419. hpux0650tcpc:
  5420.     @MESSAGE2="but with curses and with TCP/IP" \
  5421.     $(MAKE) hpux0650 KTARGET=$${KTARGET:-$(@)} \
  5422.     "KFLAGS=-DCK_CURSES -DTCPSOCKET -DNOHADDRLIST \
  5423.     -DINTSELECT -DNOCKGETFQHOST $(KFLAGS)" \
  5424.     "LIBS=-lcurses"
  5425.  
  5426. #Exactly as hpux0650 but with compiler optimization:
  5427. #OK: 2009/10/06
  5428. hpux0650o:
  5429.     @MESSAGE1="with compiler optimization" \
  5430.     $(MAKE) hpux0650 KTARGET=$${KTARGET:-$(@)} \
  5431.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5432.  
  5433. #Exactly as hpux0650c but with compiler optimization:
  5434. #OK: 2009/10/06
  5435. hpux0650oc:
  5436.     @MESSAGE1="with compiler optimization" \
  5437.     $(MAKE) hpux0650c KTARGET=$${KTARGET:-$(@)} \
  5438.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5439.  
  5440. #Exactly as hpux0650tcpc but with compiler optimization:
  5441. #OK: 2009/10/06
  5442. hpux0650otcpc:
  5443.     @MESSAGE1="with compiler optimization" \
  5444.     $(MAKE) hpux0650tcpc KTARGET=$${KTARGET:-$(@)} \
  5445.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5446.  
  5447. #Take this as startup entry for all 'non-optimized' files under HP-UX 7.x!
  5448. #Make sure we don't call it with the '-O' option because this will blow up
  5449. #the compiler!
  5450. #OK: 2009/09/30
  5451. hpux0700noopt:
  5452.     @case "$(CFLAGS)" in \
  5453.     *-O*) echo "Don't use CFLAGS= -O here!" ;; \
  5454.        *) $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  5455.           ckuusr.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) ckuus5.$(EXT) \
  5456.           ckuus6.$(EXT) ckuus7.$(EXT) ckuxla.$(EXT) \
  5457.           ckcuni.$(EXT) ckcftp.$(EXT) ckcpro.$(EXT) \
  5458.           ;; \
  5459.     esac
  5460.  
  5461. #HP-UX 7.0, no long filenames, no network support, no curses.
  5462. #If you get compiler warnings like:
  5463. #'Switch table overflow. Try the -Wc,-Nw option.' (for ckcuni.c, or
  5464. #other files) increase the '...' value in '-Wc,-Nw...'! The default maximum
  5465. #switch table stack (-Nw) is 250 table entries. ckcuni.c from Oct 16 2009
  5466. #needs 257 table entries (C-Kermit Version "9.0.299").
  5467. #OK: 2010/10/26
  5468. hpux0700sf:
  5469.     @$(MAKE) hpux-header
  5470.     @echo 'supporting: NO long filenames, NO network, NO curses.'
  5471.     $(MAKE) hpux0700noopt KTARGET=$${KTARGET:-$(@)} \
  5472.     "CFLAGS = -DHPUX -DHPUX7 -DSIG_V -DNOGETUSERSHELL -DFNFLOAT \
  5473.     -DNO_DNS_SRV $(KFLAGS) -Wc,-Nw260"
  5474.  
  5475.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5476.     "CFLAGS = -DHPUX -DHPUX7 -DSIG_V -DNOGETUSERSHELL -DFNFLOAT \
  5477.     -DNO_DNS_SRV $(KFLAGS) -Wc,-Nw260 $(OFLAGS)" \
  5478.     "LNKFLAGS = -s" "LIBS = -lm $(LIBS)"
  5479.  
  5480. #Exactly as hpux0700sf but with compiler optimization:
  5481. #OK: 2009/09/30
  5482. hpux0700osf:
  5483.     @MESSAGE1="with compiler optimization" \
  5484.     $(MAKE) hpux0700sf KTARGET=$${KTARGET:-$(@)} \
  5485.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5486.  
  5487. #HP-UX 7.0, short filenames, but with tcp/ip and curses.
  5488. #To use this, you must have bought the ARPA Services Product from HP, and you
  5489. #must have /usr/lib/libBSD.a.
  5490. #
  5491. #If you get compiler warnings like:
  5492. #'Symbol table overflow. Try the -Wc,-Ns option.' (as for ckuus4.c or
  5493. #other files) increase the '...' value in '-Wc,-Ns...'! The default maximum
  5494. #symbol table size (-Ns) is 2000 table entries. ckuus4.c from Mar 12 2010
  5495. #needs 2031 table entries (C-Kermit Version "9.0.299").
  5496. #OK: 2010/03/24
  5497. hpux0700sftcpc:
  5498.     @$(MAKE) hpux-header
  5499.     @echo 'supporting: NO long filenames, \c'
  5500.     @echo 'but with networking, curses, HDB uucp...'
  5501.     $(MAKE) hpux0700noopt KTARGET=$${KTARGET:-$(@)} \
  5502.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V \
  5503.     -DCK_REDIR -DCK_RTSCTS -DCK_CURSES -DNOGETUSERSHELL -DFNFLOAT \
  5504.     -DNO_DNS_SRV -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" \
  5505.     -DNOLONGLONG $(KFLAGS) -Wc,-Nw260,-Ns2040"
  5506.  
  5507.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5508.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V \
  5509.     -DCK_REDIR -DCK_RTSCTS -DCK_CURSES -DNOGETUSERSHELL -DFNFLOAT \
  5510.     -DNO_DNS_SRV -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" \
  5511.     -DNOLONGLONG $(KFLAGS) -Wc,-Nw260,-Ns2040 $(OFLAGS)" \
  5512.     "LNKFLAGS = -s" "LIBS = -lm -lBSD -lcurses"
  5513.  
  5514. #Exactly as above but with compiler optimization:
  5515. #OK: 2009/09/30
  5516. hpux0700osftcpc:
  5517.     @MESSAGE1="with compiler optimization" \
  5518.     $(MAKE) hpux0700sftcpc KTARGET=$${KTARGET:-$(@)} \
  5519.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5520.  
  5521. #HP 9000 series 300/800 HP-UX 7.0, long filenames, network support, HDB uucp,
  5522. #but NO curses. See comments in hpux0700sftcpc about TCP/IP support.
  5523. #
  5524. #If you get compiler warnings like:
  5525. #'Symbol table overflow. Try the -Wc,-Ns option.' (as for ckuus4.c or
  5526. #other files) increase the '...' value in '-Wc,-Ns...'! The default maximum
  5527. #symbol table size (-Ns) is 2000 table entries. ckuus4.c from Mar 12 2010
  5528. #needs 2031 table entries (C-Kermit Version "9.0.299").
  5529. #OK: 2010/03/24
  5530. hpux0700lfn:
  5531.     @$(MAKE) hpux-header
  5532.     @echo 'supporting: long filenames, networking, HDB uucp$(MESSAGE2)...'
  5533.     $(MAKE) hpux0700noopt KTARGET=$${KTARGET:-$(@)} \
  5534.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V -DFNFLOAT \
  5535.     -DNOGETUSERSHELL -DNOSETBUF -DCK_REDIR -DCK_RTSCTS -DLONGFN \
  5536.     -DNO_DNS_SRV -DDIRENT -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" \
  5537.     -DNOLONGLONG $(KFLAGS) -Wc,-Nw260,-Ns2040"
  5538.  
  5539.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5540.     "CFLAGS =  -DHPUXDEBUG -DHPUX -DHPUX7 -DTCPSOCKET -DSIG_V -DFNFLOAT \
  5541.     -DNOGETUSERSHELL -DNOSETBUF -DCK_REDIR -DCK_RTSCTS -DLONGFN \
  5542.     -DNO_DNS_SRV -DDIRENT -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" \
  5543.     -DNOLONGLONG $(KFLAGS) -Wc,-Nw260,-Ns2040 $(OFLAGS)" \
  5544.     "LNKFLAGS = -s" "LIBS = -lm -lBSD $(LIBS)"
  5545.  
  5546. #Exactly as above + curses.
  5547. #OK: 2009/09/30
  5548. hpux0700lfnc:
  5549.     @MESSAGE2=', curses' \
  5550.     $(MAKE) hpux0700lfn KTARGET=$${KTARGET:-$(@)} \
  5551.     "KFLAGS = -DCK_CURSES $(KFLAGS)" \
  5552.     "LIBS = -lcurses"
  5553.  
  5554. #Exactly as above hpux0700lfn but with compiler optimization:
  5555. #OK: 2009/09/30
  5556. hpux0700olfn:
  5557.     @MESSAGE1="with compiler optimization" \
  5558.     $(MAKE) hpux0700lfn KTARGET=$${KTARGET:-$(@)} \
  5559.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5560.  
  5561. #Exactly as above hpux0700lfnc but with compiler optimization:
  5562. #OK: 2009/09/30
  5563. hpux0700olfnc:
  5564.     @MESSAGE1="with compiler optimization" \
  5565.     $(MAKE) hpux0700lfnc KTARGET=$${KTARGET:-$(@)} \
  5566.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5567.  
  5568. #HP 9000 Series 300 or 400, HP-UX 8.0, long filenames and TCP/IP support.
  5569. #This one should also work on 700/800, but without PA-specific optimization.
  5570. #In case -DCK_RTSCTS and -DCK_REDIR make trouble, remove them.
  5571. #NOTE: ckcpro.c, ckuusr.c and ckuus3.c blow up the optimizer, so don't optimize
  5572. #them.
  5573. #For HP-UX 8.0 on Motorola CPUs, you might have to reinstall your kernel with
  5574. #maxdsiz >= 0x03000000.  But if physical memory is small, that still will not
  5575. #help much.
  5576. #OK: 2009/10/01
  5577. hpux0800:
  5578.     @$(MAKE) hpux-header
  5579.     @MESSAGE3=$${MESSAGE3:='TCP/IP'}; \
  5580.     echo "supporting: long filenames, $$MESSAGE3, HDB UUCP$(MESSAGE2)..."
  5581.     $(MAKE) -B "CC=$(CC)" "CC2=$(CC2)" KTARGET=$${KTARGET:-$(@)} \
  5582.     ckcpro.$(EXT) ckuusr.$(EXT) ckuus3.$(EXT) \
  5583.     "CFLAGS =  -DCK_REDIR -DHPUXDEBUG -DHPUX -DHPUX8 -DRENAME -DSIG_V \
  5584.     -DNOSETBUF -DDIRENT -DCK_RTSCTS -DSTERMIOX -DLONGFN -DTCPSOCKET \
  5585.     -DHDBUUCP  -DNO_DNS_SRV -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT \
  5586.     -DNOLONGLONG $(KFLAGS)"
  5587.  
  5588.     $(MAKE) -B "CC=$(CC)" "CC2=$(CC2)" xermit KTARGET=$${KTARGET:-$(@)} \
  5589.     "CFLAGS =  -DCK_REDIR -DHPUXDEBUG -DHPUX -DHPUX8 -DRENAME -DSIG_V \
  5590.     -DNOSETBUF -DDIRENT -DCK_RTSCTS -DSTERMIOX -DLONGFN -DTCPSOCKET \
  5591.     -DHDBUUCP  -DNO_DNS_SRV -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT \
  5592.     -DNOLONGLONG -DNODCLENDUSERSHELL $(KFLAGS) $(OFLAGS)" \
  5593.     "LNKFLAGS = -s" "LIBS = -lm -lBSD $(LIBS)"
  5594.  
  5595. #Exactly as above hpux0800 + curses.
  5596. #OK: 2009/10/01
  5597. hpux0800c:
  5598.     @MESSAGE2=', curses' \
  5599.     $(MAKE) hpux0800  KTARGET=$${KTARGET:-$(@)} \
  5600.     "KFLAGS = $(KFLAGS) -DCK_CURSES" "LIBS = -lcurses"
  5601.  
  5602. #HP 9000 HP-UX 8.0, no TCP/IP because /usr/lib/libBSD.a can't be found,
  5603. #or TCP/IP header files missing.
  5604. #OK: 2009/10/01
  5605. hpux0800notcp:
  5606.     @MESSAGE3='NO network, NO curses' \
  5607.     $(MAKE) "MAKE=$(MAKE)" hpux0800 KTARGET=$${KTARGET:-$(@)} \
  5608.     "KFLAGS = $(KFLAGS) -UTCPSOCKET"
  5609.  
  5610. #Now the same as above hpux0800 but with compiler optimization
  5611. #OK: 2009/10/01
  5612. hpux0800o:
  5613.     @MESSAGE1="with compiler optimization" \
  5614.     $(MAKE) hpux0800 KTARGET=$${KTARGET:-$(@)} \
  5615.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5616.  
  5617. #Exactly as above hpux0800 + curses and with compiler optimization.
  5618. #OK: 2009/10/01
  5619. hpux0800oc:
  5620.     @MESSAGE1="with compiler optimization" \
  5621.     $(MAKE) hpux0800c KTARGET=$${KTARGET:-$(@)} \
  5622.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O" "LIBS = -lcurses"
  5623.  
  5624. #Exactly as above hpux0800notcp but with compiler optimization
  5625. #OK: 2009/10/01
  5626. hpux0800onotcp:
  5627.     @MESSAGE1="with compiler optimization" \
  5628.     $(MAKE) "MAKE=$(MAKE)" hpux0800notcp KTARGET=$${KTARGET:-$(@)} \
  5629.     "KFLAGS = $(KFLAGS)" "OFLAGS = -O"
  5630.  
  5631. #HP 9000 Series 700 or 800, HP-UX 8.0, long filenames and TCP/IP support.
  5632. # Like the previous entries, but with PA-RISC-specific optimization.
  5633. #OK: 2009/10/01
  5634. hpux0800pa:
  5635.     @MESSAGE1="with PA-RISC-specific optimization" \
  5636.     $(MAKE) hpux0800 KTARGET=$${KTARGET:-$(@)} \
  5637.     "KFLAGS = $(KFLAGS) +Obb1100"
  5638.  
  5639. #As above, but with curses.
  5640. #OK: 2009/10/01
  5641. hpux0800pac:
  5642.     @MESSAGE1="with PA-RISC-specific optimization" \
  5643.     $(MAKE) hpux0800c KTARGET=$${KTARGET:-$(@)} \
  5644.     "KFLAGS = $(KFLAGS) +Obb1100"
  5645.  
  5646. #As above, but compiled with GCC 2.3.3.
  5647. #OK: 2009/10/01
  5648. hpux0800pagcc:
  5649.     @MESSAGE1='using the gcc compiler' \
  5650.     $(MAKE) hpux0800 KTARGET=$${KTARGET:-$(@)} \
  5651.     "CC=gcc" "CC2=gcc" "KFLAGS = -funsigned-char $(KFLAGS)"
  5652.  
  5653. #HP-UX 9.0, 9.01, 9.03, 9.04, 9.05, 9.07, 9.10 ..., + TCP/IP + curses, fully
  5654. #configured.  Use this entry with the restricted compiler: no optimization, no
  5655. #ANSI support.  If you get unresolved sockets library references at link time,
  5656. #then try adding -lBSD to LIBS, or else remove -DTCPSOCKET to build a version
  5657. #without TCP/IP support.
  5658. #
  5659. #Please note that we have to add the compiler option +DA1.0/+DA1.1 to avoid
  5660. #core-dumps for large arguments in IF MATCH. The man page says these options
  5661. #are default but C-Kermit dumps core without them! Therefore keep them
  5662. #untouched. If you want to overwrite or disable the +DA1.0/+DA1.1 option use
  5663. #'make hpux0900 OFLAGS=...'. An other possibility would be to create a new
  5664. #kernel with maxssiz >= 0x01185000 (default maxssiz=0x00800000).
  5665. #OK: 2009/09/24
  5666. hpux0900:
  5667.     @MESSAGE1A='. Read hpux0900 entry comments if you have trouble.' \
  5668.     $(MAKE) hpux-header
  5669.     @case `uname -m` in \
  5670.       */[34]*) KFLAGS='-DNOLONGLONG $(KFLAGS)' ;; \
  5671.       */7*)    AFLAGS='+DA1.1' ;; \
  5672.       */8*)    AFLAGS='+DA1.0' ;; \
  5673.     esac ; \
  5674.     OFLAGS=$${OFLAGS:-$$AFLAGS} ; \
  5675.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  5676.     "CFLAGS = -DHPUXDEBUG -DHPUX9 -DSTERMIOX -DDIRENT -DUTIMEH \
  5677.     -DNOSETBUF -DCK_CURSES -DTCPSOCKET -DRENAME -DCK_REDIR -DLONGFN \
  5678.     -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT \
  5679.     -DNODCLENDUSERSHELL $$KFLAGS $$OFLAGS" \
  5680.     "LNKFLAGS = -s" "LIBS = -lm -lcurses" "CC=$(CC)" "CC2=$(CC2)"
  5681.  
  5682. #Like hpux0900, but for the "value-added" compiler on all HP 9000 models.
  5683. #Adds optimization and ANSI compilation:
  5684. # +O2 makes smaller executable (= -O = Level-1 and global optimization)
  5685. # +O3 adds interprocedural global optimization, makes bigger executable.
  5686. # Please note: To support long-long we would need compiler switch '-Ae' but
  5687. # this one works only on Risc systems. But the equivalant compiler flags
  5688. # '-Aa -D_HPUX_SOURCE +e' works for Motorola and Risc.
  5689. # If optimization fails on some modules, you can add:
  5690. #  +Obb<n>, +Olimit <n>, or +Onolimit, depending on your cc version,
  5691. # where <n> is a number, e.g. +Obb1200.  In other words, if you get optimizer
  5692. # warnings, add (for example) +Obb1200; if you still get optimizer warnings,
  5693. # increase the number.  Repeat until warnings go away.  If your compiler
  5694. # permits it, use +Onolimit. If optimizer blows up on ckcpro.c, see next entry.
  5695. # Reportedly, on some configurations, such as HP9000/425e or /340, perhaps
  5696. # depending on the amount of main memory, this entry might fail no matter what
  5697. # you do ("Out of Memory", "cc: Fatal error in /lib/c.c1", etc).  In that case
  5698. # use "make hpux0900" (no "o").
  5699. #OK: 2009/09/24
  5700. hpux0900o:
  5701.     @MESSAGE1=$${MESSAGE1:-"with compiler optimization"} \
  5702.     $(MAKE) hpux0900 KTARGET=$${KTARGET:-$(@)} \
  5703.     "KFLAGS = $(KFLAGS) -Aa -DCK_ANSIC -D_HPUX_SOURCE +O2 +e"
  5704.  
  5705. # For HP-UX 9.0 on Motorola CPUs, optimization of ckcpro.c tends to blow up
  5706. # the compiler.  You might have to reinstall your kernel with maxdsiz >=
  5707. # 0x03000000.  But if physical memory is small, that still will not help much.
  5708. # In that case, use this entry to skip optimization of ckcpro.c.  But for
  5709. # C-Kermit 8.0.208 you need a kernel with maxdsiz >= 0x02000000 to compile an
  5710. # optimized ckcftp.c.
  5711. # Please note: To support long-long we would need compiler switch '-Ae' but
  5712. # this one works only on Risc systems. But the equivalant compiler flags
  5713. # '-Aa -D_HPUX_SOURCE +e' works for Motorola and Risc.
  5714. hpux0900m68ko:
  5715.     @MESSAGE1='without compiler optimization for ckcpro.$(EXT) ...' \
  5716.     $(MAKE) hpux-header
  5717.     $(MAKE) ckuusr.$(EXT) ckuus3.$(EXT) ckuus4.$(EXT) \
  5718.     ckcftp.$(EXT) ckcpro.$(EXT) \
  5719.     "CFLAGS = -DHPUXDEBUG -DHPUX9 -DSTERMIOX -DDIRENT \
  5720.     -DNOSETBUF -DCK_CURSES -DTCPSOCKET -DRENAME  -DCK_REDIR -DLONGFN \
  5721.     -DHDBUUCP -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DFNFLOAT $(KFLAGS)"
  5722.     @echo
  5723.     @MESSAGE1="with compiler optimization for the rest" \
  5724.     $(MAKE) hpux0900 KTARGET=$${KTARGET:-$(@)} \
  5725.     "KFLAGS = $(KFLAGS) -Aa -DCK_ANSIC -D_HPUX_SOURCE +O2 +e"
  5726.  
  5727. # Old name for hpux0900m68ko.
  5728. hpux0900mot:
  5729.     $(MAKE) hpux0900m68ko KTARGET=$${KTARGET:-$(@)} "KFLAGS = $(KFLAGS)"
  5730.  
  5731. #Like hpux0900o but with additional model-700/800-specific optimizations.
  5732. # +ESlit = consolidate strings in read-only memory.
  5733. # +ESfsc = inline millicode calls when comparing pointers.
  5734. hpux0900o700:
  5735.     @echo 'If you get optimizer warnings \c'
  5736.     @echo 'try "make hpux0900o700 KFLAGS=+Obb1200"'
  5737.     @MESSAGE1="with PA-RISC-specific optimizations" \
  5738.     $(MAKE) hpux0900o KTARGET=$${KTARGET:-$(@)} \
  5739.     "KFLAGS = $(KFLAGS) +ESlit +ESsfc"
  5740.  
  5741. #HP-UX 9.0, 9.01, 9.03, 9.04, 9.05, 9.07, 9.10 ..., + TCP/IP + curses, fully
  5742. #configured, built with gcc, all models except 800 series.
  5743. #You might need to add the include path for gcc headers, for example:
  5744. # 'KFLAGS=-I/usr/gnu/lib/gcc-lib/hppa1.1-hp-hpux/2.4.5/include/'
  5745. hpux0900gcc:
  5746.     @MESSAGE1='using the gcc compiler' \
  5747.     $(MAKE) hpux0900 KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  5748.     "KFLAGS = -DCK_ANSIC $(KFLAGS)" \
  5749.     "OFLAGS = -funsigned-char -O2 $(OFLAGS)"
  5750.  
  5751. #HP-9000 HP-UX 10.0 + TCP/IP + curses, fully configured.
  5752. #Use with restricted (bundled) compiler: no optimization, no ANSI support.
  5753. #libcurses needed for fullscreen file xfer display in HP-UX 10.00 and 10.01.
  5754. #libHcurses (NOT libcurses!) for fullscreen display, to work around fatal bugs
  5755. #in HP-UX 10.10 and 10.20 curses. Maybe we could use lcurses for 10.30, since
  5756. #the 10.10 curses problem is supposedly fixed in 10.30.
  5757. # +DA1.0 = Generate PA-RISC 1.0 code that runs on both 700 and 800 models.
  5758. # +DA1.1 = Generate PA-RISC 1.1 code that runs on both 700 and 800 models.
  5759. # Note that HP-UX 10.20 and upwards do not support PA-RISC 1.0 systems.
  5760. # And that as of Dec 2001, 11.00 and 11.11 are PA-only and 11.20 is IA64-only.
  5761. # Later 11.2x releases are expected to be for both.  Architecture can be
  5762. # determined with the model command, at least in 10.20 and later...
  5763. #For future releases, we need to include +DA1.1 for PA builds, so that a
  5764. #binary built on PA 2.0 will still work on PA 1.1 machines, whereas +DA1.1
  5765. #must NOT be included for IA64 builds.
  5766. #4 Jan 2006 - Added Large File Support (LFS).  Large files (>2GB) are
  5767. #possible in HP-UX 10.20 and later.  The only change is to add:
  5768. # -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
  5769. #to KFLAGS.  These should be harmless in 10.00 and 10.10, if any of examples
  5770. #of those still exist, but I have no way to test this hypothesis.
  5771. #OK: 2009/11/16
  5772. hpux1000:
  5773.     @$(MAKE) hpux-header
  5774.     @LIBS='-lHcurses' ; \
  5775.     AFLAGS='+DA1.1' ; \
  5776.     case `uname -r` in \
  5777.        [AB].10.0*)  KFLAGS='-DHPUX1000 $(KFLAGS)' ; \
  5778.                     AFLAGS='+DA1.0' ; LIBS='-lcurses'  ;; \
  5779.        [AB].10.1*)  KFLAGS='-DHPUX1010 -D__HP_CURSES $(KFLAGS)' ; \
  5780.                     ;; \
  5781.        [AB].10.2*)  KFLAGS='-DHPUX1020 -D__HP_CURSES $(KFLAGS)' ; \
  5782.                     ;; \
  5783.        [AB].10.3*)  KFLAGS='-DHPUX1030 -D__HP_CURSES $(KFLAGS)' ; \
  5784.                     ;; \
  5785.        [AB].10.?*)  KFLAGS='-DHPUX10XX -D__HP_CURSES $(KFLAGS)' ; \
  5786.                     ;; \
  5787.        [AB].11.0*)  KFLAGS='-DHPUX1100 -D__HP_CURSES $(KFLAGS)' ; \
  5788.                     ;; \
  5789.        [AB].11.1*)  KFLAGS='-DHPUX1100 -D__HP_CURSES $(KFLAGS)' ; \
  5790.                     ;; \
  5791.        [AB].11.?*)  KFLAGS='-DHPUX1100 -D__HP_CURSES $(KFLAGS)' ; \
  5792.                     AFLAGS='' ; LIBS='-lcurses' ;; \
  5793.     esac ; \
  5794.     OFLAGS=$${OFLAGS:-$$AFLAGS} ; \
  5795.     $(MAKE) "SHELL=/usr/bin/sh" xermit KTARGET=$${KTARGET:-$(@)} \
  5796.     "CC=$(CC)" "CC2=$(CC2)" \
  5797.     "CFLAGS = -DHPUX10 -DDIRENT -DSTERMIOX -DCK_DSYSINI -DHDBUUCP \
  5798.     -DCK_CURSES -DCK_WREFRESH -DTCPSOCKET -DCK_REDIR -DRENAME -DFNFLOAT \
  5799.     -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
  5800.     $$KFLAGS $$OFLAGS" \
  5801.     "LNKFLAGS=-s $(LNKFLAGS)" "LIBS = -lm $$LIBS $(KLIBS)"
  5802.  
  5803. # This is a kludge, copying hpux0900gcc and adapting hpux1000
  5804. # (add CC and CC2, drop the A1.[0||1])
  5805. # Builds w/ no compiler warnings but minimally tested.
  5806. #
  5807. #OK: 2009/09/21
  5808. hpux1000gcc:
  5809.     @MESSAGE1="using the gcc compiler $(MESSAGE1)" \
  5810.     $(MAKE) hpux1000 KTARGET=$${KTARGET:-$(@)} CC=gcc CC2=gcc \
  5811.     "KFLAGS = $(KFLAGS)" "OFLAGS = -DCK_ANSIC -funsigned-char -O2"
  5812.  
  5813. # Trusted HP-UX 10
  5814. # echo KFLAGS=$(KFLAGS) YTARGET YTARGET=$(YTARGET) $(XTARGET) ;
  5815. hpux1000t:
  5816.     @case "$(KTARGET)" in \
  5817.        *+openssl | *+ssl) \
  5818.         KENTRY=hpux1000o+openssl ;; \
  5819.        *gcc) \
  5820.         KENTRY=hpux1000gcc ;; \
  5821.        *o+) KENTRY=hpux1000o+ ;; \
  5822.        *o)    KENTRY=hpux1000o ;; \
  5823.        *)    KENTRY=hpux1000 ;; \
  5824.     esac ; \
  5825.     MESSAGE1="and support for 'Trusted HP-UX'" \
  5826.     $(MAKE) $$KENTRY KTARGET=$${KTARGET:-$(@)} \
  5827.     "KFLAGS = $(KFLAGS) -DHPUX10_TRUSTED" "KLIBS=-lsec"
  5828.  
  5829. hpux1000to:
  5830.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  5831.  
  5832. hpux1000to+:
  5833.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  5834.  
  5835. hpux1000tgcc:
  5836.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  5837.  
  5838. hpux1000to+ssl hpux1000to+openssl:
  5839.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  5840.  
  5841. hpux1000tgcc+ssl hpux1000tgcc+openssl:
  5842.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  5843.  
  5844. #HP-9000 HP-UX 10.00 and higher with ANSI prototyping and optimization.
  5845. #PA-RISC only, no Motorola or other hardware is support in HP-UX 10.00++.
  5846. #The unbundled optional compiler is required.
  5847. #Your path should start with /opt/ansic/bin.
  5848. # -Wl,-Fw = Remove stack unwind table (info used by debuggers).
  5849. # +O2 makes a smaller executable (= -O = Level-1 and global optimization).
  5850. # +O3 adds interprocedural global optimization, makes a bigger executable.
  5851. # +Onolimit allows all modules to be optimized, no matter how complex.  But:
  5852. #  (a) +Onolimit does not seem to always be there in HP-UX 10.00, and:
  5853. #  (b) some modules might take hours on low-memory and/or slow systems.
  5854. # The following are PA-RISC-specific optimizations:
  5855. # +ESlit = Consolidate strings in read-only memory.
  5856. # +ESfsc = Inline millicode calls when comparing pointers.
  5857. # You might need to configure your kernel for a maxdsiz of 0x0B000000 (176MB)
  5858. # or greater to prevent the optimizer from running out of space.
  5859. # December 2001: +ESlit +ESsfc removed because not supported on IA64.
  5860. # Somebody who cares can use 'model' to see whether it's PA-RISC or IA64
  5861. # and include the architecture-specific optimization flags.  Also note:
  5862. # +DA1.1 is PA-only.  If this is included in in HP-UX 11.00 or later,
  5863. # then +DS2.0 should be included too (but don't use +DS2.0 without +DA1.1,
  5864. # or else the binary won't run on older PA hardware).
  5865. #OK: 2009/09/21
  5866. hpux1000o:
  5867.     @case `uname -m` in \
  5868.       ia64) ;; \
  5869.       *) MFLAGS='+ESlit +ESsfc' ;; \
  5870.     esac ; \
  5871.     MESSAGE1="with PA-RISC-specific optimizations $(MESSAGE1)" \
  5872.     $(MAKE) "SHELL=/usr/bin/sh" "PATH=/opt/ansic/bin:$$PATH" hpux1000 \
  5873.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = $(KFLAGS) \
  5874.     -Ae -D_HPUX_SOURCE -DCK_ANSIC -DUTIMEH \
  5875.     +O2 -Wl,-Fw $$MFLAGS"
  5876.  
  5877. #Like hpux1000o but with "+Onolimit".
  5878. #On 700 series set kernel parameter maxdsiz >= 0x0D000000 (=208MB).
  5879. #Takes a long time.
  5880. hpux1000o+:
  5881.     @MESSAGE1="and +Onolimit $(MESSAGE1)" KTARGET=$${KTARGET:-$(@)} \
  5882.     $(MAKE) hpux1000o \
  5883.     "KFLAGS = $(KFLAGS) +Onolimit"
  5884.  
  5885. #HP-UX 10.xx + 11.xx with optimizing ANSI compiler and OpenSSL.
  5886. #Define SSLLIB and SSLINC appropriately for your OpenSSL installation.
  5887. #To overwrite the default SSLLIB and SSLINC settings you can also use the
  5888. #command-line variable KSSLLIB and KSSLINC like:
  5889. #make hpux1000o+openssl KSSLLIB=-L/opt/openssl/lib KSSLINC=-I/...
  5890. #Ditto for the Zlib location.
  5891. #This entry works for C-Kermit 8.0.206 on HP-UX 10.20 + 11.11
  5892. #with OpenSSL 0.9.6 + 0.9.7
  5893. #NOTE: an ANSI C compiler is required for the SSL interface.  If you don't
  5894. #have the HP Optimizing ANSI compiler, see the hpux1000gcc+openssl target
  5895. #below.
  5896. hpux1000o+ssl hpux1000o+openssl:
  5897.     @case "$(KTARGET)" in \
  5898.        *gcc+*) \
  5899.             KENTRY=hpux1000gcc ;; \
  5900.        *)   KENTRY=hpux1000o ;; \
  5901.     esac ; \
  5902.     case "$(KTARGET)" in \
  5903.        *-zlib*) \
  5904.             DZLIB= LZLIB= ;; \
  5905.        *)   DZLIB=-DZLIB LZLIB='-L/opt/zlib/lib -lz' ;; \
  5906.     esac ; \
  5907.     SSLINC=$${KSSLINC:-$(SSLINC)}; \
  5908.     SSLLIB=$${KSSLLIB:-$(SSLLIB)}; \
  5909.     MESSAGE1="and with OpenSSL $(MESSAGE1)" \
  5910.     $(MAKE) $$KENTRY KTARGET=$${KTARGET:-$(@)} \
  5911.     KFLAGS="-DCK_AUTHENTICATION -DCK_SSL -DOPENSSL_097 $$DZLIB \
  5912.     $$SSLINC $(KFLAGS)" \
  5913.     KLIBS="$(KLIBS) \
  5914.     $$SSLLIB -lssl -lcrypto \
  5915.     $$LZLIB \
  5916.     "
  5917.  
  5918. # Ditto but without Zlib:
  5919. hpux1000o+ssl-zlib hpux1000o+openssl-zlib:
  5920.     @MESSAGE1="but without Zlib $(MESSAGE1)" \
  5921.     $(MAKE) hpux1000o+ssl KTARGET=$${KTARGET:-$(@)}
  5922.  
  5923. #HP-UX 10.00 or higher with OpenSSL 0.9.7.  Compiled with gcc.
  5924. #From Chris Chaney, NEC America Inc.  His instructions:
  5925. # (1) Install gcc version 3.2.3 & binutils version 2.13.2
  5926. #     (used binary depot from http://hpux.cs.utah.edu/)
  5927. # (2) Install gcc make version 3.80 from http://hpux.cs.utah.edu/
  5928. #
  5929. # or: gcc 2.9.2000-12-1 from "Linux to hp-ux 11.0/11i porting kit version 1.0
  5930. #     (2CD)" free from:  http://www.software.hp.com
  5931. #
  5932. # (3) Install openSSL version 0.9.7b from http://www.software.hp.com
  5933. # (4) Install flex version 2.5.4 from http://hpux.cs.utah.edu/
  5934. # (5) Install gmp version 3.1.1 from http://hpux.cs.utah.edu/
  5935. #
  5936. #Note from Peter Eichhorn, assyst Munich. It works also without gcc make!
  5937. hpux1000gcc+ssl hpux1000gcc+openssl:
  5938.     $(MAKE) hpux1000o+openssl KTARGET=$${KTARGET:-$(@)}
  5939.  
  5940. # Ditto but without Zlib:
  5941. hpux1000gcc+ssl-zlib hpux1000gcc+openssl-zlib:
  5942.     $(MAKE) hpux1000o+openssl-zlib KTARGET=$${KTARGET:-$(@)}
  5943.  
  5944. # Same for HP-UX 11
  5945. hpux1100o+ssl hpux1100o+openssl:
  5946.     $(MAKE) hpux1000o+openssl KTARGET=$${KTARGET:-$(@)}
  5947.  
  5948. #OK: 2009/09/26
  5949. hpux1100gcc+ssl hpux1100gcc+openssl:
  5950.     $(MAKE) hpux1000gcc+openssl KTARGET=$${KTARGET:-$(@)}
  5951.  
  5952. hpux1100o+ssl-zlib hpux1100o+openssl-zlib:
  5953.     $(MAKE) hpux1000o+openssl-zlib KTARGET=$${KTARGET:-$(@)}
  5954.  
  5955. hpux1100gcc+ssl-zlib hpux1100gcc+openssl-zlib:
  5956.     $(MAKE) hpux1000gcc+openssl-zlib KTARGET=$${KTARGET:-$(@)}
  5957.  
  5958. # HP-UX 11
  5959. # Note: these are 32-bit builds even on IA64.
  5960. # Adding +DD64 to CFLAGS produces 64-bit object files,
  5961. # but the linker fails to find the needed 64-bit libs.
  5962. #OK: 2009/09/26
  5963. hpux1100:
  5964.     $(MAKE) hpux1000 KTARGET=$${KTARGET:-$(@)}
  5965.  
  5966. #OK: 2009/09/26
  5967. hpux1100o:
  5968.     $(MAKE) hpux1000o KTARGET=$${KTARGET:-$(@)}
  5969.  
  5970. hpux1100o+:
  5971.     $(MAKE) hpux1000o+ KTARGET=$${KTARGET:-$(@)}
  5972.  
  5973. #OK: 2009/09/26
  5974. hpux1100gcc:
  5975.     $(MAKE) hpux1000gcc KTARGET=$${KTARGET:-$(@)}
  5976.  
  5977. # Trusted HP-UX 11
  5978. hpux1100t:
  5979.     $(MAKE) hpux1000t KTARGET=$${KTARGET:-$(@)}
  5980.  
  5981. hpux1100to:
  5982.     $(MAKE) hpux1000to KTARGET=$${KTARGET:-$(@)}
  5983.  
  5984. hpux1100to+:
  5985.     $(MAKE) hpux1000to+ KTARGET=$${KTARGET:-$(@)}
  5986.  
  5987. hpux1100tgcc:
  5988.     $(MAKE) hpux1000tgcc KTARGET=$${KTARGET:-$(@)}
  5989.  
  5990. hpux1100to+ssl hpux1100to+openssl:
  5991.     $(MAKE) hpux1000to+openssl KTARGET=$${KTARGET:-$(@)}
  5992.  
  5993. hpux1100tgcc+ssl hpux1100tgcc+openssl:
  5994.     $(MAKE) hpux1000tgcc+openssl KTARGET=$${KTARGET:-$(@)}
  5995.  
  5996. #Regulus on CIE Systems 680/20
  5997. cie:
  5998.     @echo 'Making C-Kermit $(CKVER) for CIE Systems 680/20 Regulus...'
  5999.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6000.     "CFLAGS = -DATTSV -DNOFILEH -DCIE -DNOLEARN $(KFLAGS) -O" "LNKFLAGS ="
  6001.  
  6002. # Linux 1.2 or later with gcc, dynamic libraries, ncurses, TCP/IP.
  6003. #
  6004. # If your Linux system has curses rather than ncurses, use the linuxc
  6005. # entry, or if that doesn't work, linuxnc.
  6006. #
  6007. # The Kermit "large memory model" is used by default to configure big packet
  6008. # and script buffers, etc.  For small-memory or limited-resource systems,
  6009. # "make linux KFLAGS=-DNOBIGBUF".
  6010. #
  6011. # -DLINUXFSSTND (Linux File System Standard 1.2) gives UUCP lockfile /var/lock
  6012. # with string pid.  Remove this to get /usr/spool/uucp with int pid, used in
  6013. # very early Linux versions.  FSSTND 1.2 also says that the PID string in the
  6014. # UUCP lock file has leading spaces.  This is a change from FSSTND 1.0, which
  6015. # used leading zeros.  Add -DFSSTND10 to support FSSTND 1.0 instead of 1.2.
  6016. # I hope subsequent editions of the file-system standard did not change these
  6017. # again.
  6018. #
  6019. # Add -DOLINUXHISPEED (Old Linux High Speed support) to turn on an ugly kludge
  6020. # in Linux 1.0 and earlier to support speeds of 57600 and 115200.  Extremely
  6021. # old Linux systems (pre-0.99pl15) will not support this.  If OLINUXHISPEED is
  6022. # not defined, then only the standard POSIX termios methods of setting the port
  6023. # speed will be used, and in this case speeds can be as high as 460800 in most
  6024. # modern Linux versions.
  6025. #
  6026. # -DCK_POSIX_SIG (POSIX signal handling) is good for Linux releases back to at
  6027. # least 0.99.14; if it causes trouble for you, remove it from the CFLAGS.
  6028. #
  6029. # -pipe removes the need for temp files - remove it if it causes trouble.
  6030. #
  6031. # -funsigned-char makes all characters unsigned, as they should have been
  6032. #  in the first place.
  6033. #
  6034. # Add -DCK_DSYSINI if you want a shared system-wide init file.
  6035. #
  6036. # See http://www.columbia.edu/kermit/ckubwr.html about -DNOCOTFMC.
  6037. # Better still, should read the entire Linux section of that document.
  6038. #
  6039. # The "linuxa" entry can be referenced directly on LIBC systems, but not
  6040. # GLIBC, where -lcrypt is required.  The "make linux" entry should normally
  6041. # be used for all builds on all Linux distributions unless you have special
  6042. # requirements, in which case keep reading.  CK_NEWTERM added after 7.0b04
  6043. # due to new complaints about ncurses changing buffering of tty.
  6044.  
  6045. linuxa:
  6046.     @echo 'Making C-Kermit $(CKVER) for Linux 1.2 or later...'
  6047.     @echo 'IMPORTANT: Read the comments in the linux section of the'
  6048.     @echo 'makefile if you have trouble.'
  6049.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6050.     "CFLAGS = -O -DLINUX -pipe -funsigned-char -DFNFLOAT -DCK_POSIX_SIG \
  6051.     -DCK_NEWTERM -DTCPSOCKET -DLINUXFSSTND -DNOCOTFMC -DPOSIX \
  6052.     -DUSE_STRERROR $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6053.     "LIBS = $(LIBS) -lm"
  6054.  
  6055. # As above but with profiling
  6056. linuxp:
  6057.     $(MAKE) linuxa KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS) -pg" \
  6058.     "LIBS=-pg -lcrypt -lresolv"
  6059.  
  6060. #Linux.  This entry should work for any Linux distribution on any platform,
  6061. #32-bit or 64-bit, except for extremely ancient ones.  Automatically detects:
  6062. # . curses, ncurses, or no curses
  6063. # . Old versus new pty handling (new == glibc 2.1++)
  6064. # . Presence or absence of libcrypt.a and <crypt.h>
  6065. # . Presence or absence of libresolv.a
  6066. # . Transitional Long File API for 32-bit platforms (SUS V2 UNIX 98 LFS).
  6067. #Note: The HAVE_PTMX test was previously "if test -c /dev/ptmx" but this was
  6068. #not sufficient for Debian 2.1, because although it had /dev/ptmx, it did not
  6069. #have grantpt(), unlockpt(), or ptsname(), so has been changed to look for a
  6070. #grantpt() prototype in the header files.  Modified in 8.0.206 to allow for
  6071. #libraries that contain .so's but no .a's, e.g. Mandrake 9.0.
  6072. #HAVE_BAUDBOY added in 8.0.210 for Red Hat -- it's like AIX ttylock().
  6073. #Modified 17 Aug 2005 to use openpty() if available because the other stuff
  6074. #dumps core in 64-bit ia64 and x86_64 builds.
  6075. #Long file support for 32-bit builds added in 8.0.212 - if features.h contains
  6076. #__USE_LARGEFILE64 then we set the flags that must be set before reading any
  6077. #header files; on 32-bit platforms such as i386, this produces a 32-bit build
  6078. #capable of accessing, sending, receiving, and managing long (> 2GB) files.
  6079. #On 64-bit platforms, it does no harm.
  6080. #As of 3 March 2009 we detect automatically if we have curses, ncurses,
  6081. #or no curses at all.
  6082. #Added HAVE_LOCKDEV as openSuSE >= 11.3 uses ttylock directly instead of
  6083. #baudboy 2010/08/23
  6084. #OK: 2011/06/18
  6085. linux:
  6086.     @if test \
  6087.     `grep grantpt /usr/include/*.h /usr/include/sys/*.h | wc -l` -gt 0; \
  6088.     then if test -c /dev/ptmx; then HAVE_PTMX='-DHAVE_PTMX'; \
  6089.     else HAVE_PTMX=''; fi; fi ; \
  6090.     if test `grep openpty /usr/include/pty.h | wc -l` -gt 0; \
  6091.     then HAVE_OPENPTY='-DHAVE_OPENPTY'; \
  6092.     else HAVE_OPENPTY=''; fi ; \
  6093.     HAVE_LIBCURSES=''; \
  6094.     if test -f /usr/lib64/libncurses.so || \
  6095.        test -f /usr/lib/libncurses.a  || \
  6096.        test -f /usr/lib/libncurses.so; then \
  6097.       HAVE_LIBCURSES='-lncurses'; \
  6098.     else if test -f /usr/lib64/libcurses.so || \
  6099.        test -f /usr/lib/libcurses.a || \
  6100.        test -f /usr/lib/libcurses.so; then \
  6101.          HAVE_LIBCURSES='-lcurses'; fi; fi; \
  6102.     HAVE_CURSES=''; \
  6103.     if test -n '$$HAVE_LIBCURSES'; then \
  6104.       if test -f /usr/include/ncurses.h; then \
  6105.         HAVE_CURSES='-DCK_NCURSES  -I/usr/include/ncurses'; \
  6106.       else if test -f /usr/include/curses.h; then \
  6107.         HAVE_CURSES='-DCK_CURSES'; \
  6108.     fi; fi; fi; \
  6109.     if test -f /usr/include/baudboy.h || test -f /usr/include/ttylock.h; \
  6110.     then HAVE_LOCKDEV='-DHAVE_LOCKDEV' ; \
  6111.     else HAVE_LOCKDEV='' ; fi ; \
  6112.     if test -f /usr/include/baudboy.h ; \
  6113.     then HAVE_BAUDBOY='-DHAVE_BAUDBOY' ; \
  6114.     else HAVE_BAUDBOY='' ; fi ; \
  6115.     $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  6116.     "KFLAGS=$$HAVE_CURSES $$HAVE_PTMX $$HAVE_LOCKDEV \
  6117.     $$HAVE_BAUDBOY $$HAVE_OPENPTY \
  6118.     `grep __USE_LARGEFILE64 /usr/include/features.h > /dev/null && \
  6119.     echo '-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64'` \
  6120.     `if test -f /usr/include/crypt.h; then echo -DHAVE_CRYPT_H; fi` \
  6121.     $(KFLAGS)" \
  6122.     "LIBS=$(LIBS) $$HAVE_LIBCURSES \
  6123.     `if test -n '$$HAVE_OPENPTY'; then echo -lutil; fi` \
  6124.     `if test -f /usr/lib64/libresolv.a || test -f /usr/lib64/libresolv.so \
  6125.     || test -f /usr/lib/libresolv.a || test -f /usr/lib/libresolv.so \
  6126.     || test -f /usr/lib/i386-linux-gnu/libresolv.a \
  6127.     || test -f /usr/lib/i386-linux-gnu/libresolv.so \
  6128.     || ls /lib/x86_64-linux-gnu/libresolv.* > /dev/null 2> /dev/null; \
  6129.     then echo -lresolv; fi` \
  6130.     `if test -f /usr/lib64/libcrypt.a || test -f /usr/lib64/libcrypt.so \
  6131.     || test -f /usr/lib/libcrypt.a || test -f /usr/lib/libcrypt.so \
  6132.     || ls /lib/x86_64-linux-gnu/libcrypt.* > /dev/null 2> /dev/null; \
  6133.     then echo -lcrypt; fi` \
  6134.     `if test -f /usr/lib64/liblockdev.a || \
  6135.     test -f /usr/lib64/liblockdev.so || \
  6136.     test -f /usr/lib/liblockdev.a || \
  6137.     test -f /usr/lib/liblockdev.so; \
  6138.     then echo -llockdev; fi`" \
  6139.     linuxa
  6140.  
  6141. # Linux + Shadow passwords + PAM
  6142. # OK 2011/06/18
  6143. linux+shadow+pam:
  6144.     @echo 'Making C-Kermit $(CKVER) for Linux+Shadow+PAM...'
  6145.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} \
  6146.     KFLAGS="-DCK_SHADOW -DCK_PAM $(KFLAGS)" \
  6147.     "LNKFLAGS = $(LNKFLAGS)" \
  6148.     "LIBS = -lpam"
  6149.  
  6150. # Linux systems that have no <sys/select.h>.
  6151. # (not tested in recent years, perhaps no longer needed)
  6152. linuxns:
  6153.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} KFLAGS=-DNO_SYS_SELECT_H
  6154.  
  6155. # Linux-script-only:
  6156. # A minimum-size version for Linux that does only scripting and
  6157. # serial communication -- no networks, no file transfer, no security.
  6158. # OK 2011/06/18
  6159. linuxso:
  6160.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6161.     "CFLAGS = -O -DLINUX -pipe -funsigned-char -DPOSIX -DCK_POSIX_SIG \
  6162.     -DLINUXFSSTND -DNOCOTFMC -DNOXFER -DNODEBUG -DNOCSETS -DNOHELP \
  6163.     -DNONET -DMINIDIAL -DNOSCRIPT -DNOIKSD -DNOPUSH $(KFLAGS)" \
  6164.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = "
  6165.  
  6166. # Secure targets for Linux.  These work on RHAS4, RHEL4, and RHEL5,
  6167. # unlike some of the older targets that follow.  They hook into the main Linux
  6168. # target so we pick up all the other new stuff - large files, baudboy.h, the
  6169. # appropriate pty interface, etc.
  6170.  
  6171. # Linux with Kerberos 5.
  6172. # Use "make linux+krb5 KFLAGS=-DNO_KRB5_INIT_ETS" if necessary.
  6173. #OK 2011/06/16 on Fedora 14 with:
  6174. # make linux+krb5 "LIBS=$LIBS /lib/libk5crypto.so.3 /lib/libcom_err.so.2"
  6175. # On RHEL5: make linux+krb5 -UCK_DES
  6176. linux+krb5:
  6177.     @echo 'Making C-Kermit $(CKVER) for Linux with Kerberos 5...'
  6178.     @case `openssl version` in \
  6179.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  6180.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  6181.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  6182.       *) OPENSSLOPTION="" ;; \
  6183.     esac; \
  6184.     HAVE_DES=''; \
  6185.     DES_LIB=''; \
  6186.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  6187.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  6188.           DES_LIB='-ldes425'; \
  6189.           HAVE_DES='-DCK_DES -DLIBDES'; \
  6190.               echo "HAVE DES"; \
  6191.            else echo "NO DES"; \
  6192.     fi; \
  6193.     K5CRYPTO=''; \
  6194.         if ls /lib/libk5crypto* > /dev/null 2> /dev/null; then \
  6195.                 K5CRYPTO='-lk5crypto'; \
  6196.     else if ls /usr/lib/libk5crypto* > /dev/null 2> /dev/null; then \
  6197.         K5CRYPTO='-lk5crypto'; \
  6198.         else if ls /usr/lib64/libk5crypto* > /dev/null 2> /dev/null; then \
  6199.                 K5CRYPTO='-lk5crypto'; \
  6200.         fi; fi; fi; \
  6201.     COM_ERR=''; \
  6202.     if ls /lib/libcom_err* > /dev/null 2> /dev/null; then \
  6203.         COM_ERR='-lcom_err'; \
  6204.     fi; \
  6205.     GSSAPILIB='-lgssapi'; \
  6206.     if ls /lib/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  6207.         GSSAPILIB='-lgssapi_krb5'; \
  6208.     else if ls /usr/lib/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  6209.         GSSAPILIB='-lgssapi_krb5'; \
  6210.     else K5DIR=`echo $(K5LIB) | sed 's|-L||'`; \
  6211.         if ls $$K5DIR/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  6212.             GSSAPILIB='-lgssapi_krb5'; \
  6213.     fi; fi; fi; \
  6214.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6215.     "KFLAGS= -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 $$OPENSSLOPTION \
  6216.     -DCK_ENCRYPTION $$HAVE_DES $(K5INC) $(K5INC)/krb5 \
  6217.     -I/usr/include/et $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6218.     "LIBS = $(K5LIB) $$DES_LIB -lcrypto $$GSSAPILIB -lkrb5 \
  6219.     $$K5CRYPTO $$COM_ERR $(LIBS)" ; \
  6220.     if [ ! -f ./wermit ] || [ ./ckcmai.o -nt ./wermit ] ; then \
  6221.         echo ""; \
  6222.         echo "If build failed try:"; \
  6223.         echo ""; \
  6224.         echo "  make clean ; make $${KTARGET:-$(@)} KFLAGS=-UCK_DES"; \
  6225.         echo ""; \
  6226.     fi
  6227.  
  6228. # Linux with Kerberos 5 and Kerberos 4.
  6229. # Use "make linux+krb5 KFLAGS=-DNO_KRB5_INIT_ETS" if necessary.
  6230. # Add "KFLAGS=-UCK_DES" if failure messages look DES-related.
  6231. # UNTESTED (because I can't find a box with Krb4 and Krb5 installed)
  6232. linux+krb5+krb4:
  6233.     @echo 'Making C-Kermit for Linux with Kerberos 4 and Kerberos 5'
  6234.     $(MAKE) linux+krb5 KTARGET=$${KTARGET:-$(@)} \
  6235.     "KFLAGS=-DKRB4 -DKRB524 $(KFLAGS)" "LIBS=$(LIBS) -lkrb4"
  6236.  
  6237. # Linux with OpenSSL 
  6238. # In Linux, SSL libs are often in /lib or /usr/lib and so found by default.
  6239. # This targets takes into account the DES library might or might not
  6240. # exist.  If it does exist, however, the target will require some editing
  6241. # if its basename is not libdes425.  - fdc Tue Sep 21 14:28:00 2010
  6242. # IMPORTANT: Some Linux platforms have DES libraries but they are missing
  6243. # functions used by Kermit.  In that case you will get fatal errors at
  6244. # link time involving routines such as des_ecb3_encrypt, des_random_seed,
  6245. # and des_set_odd_parity.  In that case, "make linux KFLAGS=-UCK_DES"
  6246. # There's a new warning at the end that should come out if this happens,
  6247. # and that should not come out if it didn't.
  6248. #
  6249. linux+ssl linux+openssl linux+openssl+zlib+shadow+pam linux+openssl+shadow:
  6250.     @echo 'Making C-Kermit $(CKVER) for Linux+OpenSSL SSLLIB=$(SSLLIB)'
  6251.     @case `openssl version` in \
  6252.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  6253.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  6254.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  6255.       *) OPENSSLOPTION="" ;; \
  6256.     esac; \
  6257.     HAVE_DES=''; \
  6258.     DES_LIB=''; \
  6259.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  6260.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  6261.           DES_LIB='-ldes425'; \
  6262.           HAVE_DES='-DCK_DES -DLIBDES'; \
  6263.           echo "HAVE DES"; \
  6264.        else echo "NO DES"; \
  6265.     fi; \
  6266.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6267.     "KFLAGS= -DCK_AUTHENTICATION -DCK_ENCRYPTION -DCK_CAST $$HAVE_DES \
  6268.     -DCK_SSL -DCK_PAM -DZLIB -DCK_SHADOW $$OPENSSLOPTION $(SSLINC) \
  6269.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6270.     "LIBS = $(SSLLIB) -lssl $$DES_LIB -lcrypto -lpam -ldl -lz $(LIBS)" ; \
  6271.     if [ ! -f ./wermit ] || [ ./ckcmai.o -nt ./wermit ] ; then \
  6272.         echo ""; \
  6273.         echo "If build failed try:"; \
  6274.         echo ""; \
  6275.         echo "  make clean ; make $${KTARGET:-$(@)} KFLAGS=-UCK_DES"; \
  6276.         echo ""; \
  6277.     fi
  6278.  
  6279. # Linux with Kerberos 5 and OpenSSL
  6280. # OK 2011/05/16
  6281. # Add -UCK_DES if functions like des_ecb3_encrypt, es_random_seed,
  6282. # come up missing at link time.
  6283. linux+krb5+ssl linux+krb5+openssl:
  6284.     @echo 'Making C-Kermit $(CKVER) for Linux with Krb5 and OpenSSL...'
  6285.     @case `openssl version` in \
  6286.       *0.9.7*) OPENSSLOPTION="-DOPENSSL_097" ;; \
  6287.       *0.9.8*) OPENSSLOPTION="-DOPENSSL_098" ;; \
  6288.       *1.[0-9].[0-9]*) OPENSSLOPTION="-DOPENSSL_100" ;; \
  6289.       *) OPENSSLOPTION="" ;; \
  6290.     esac; \
  6291.     HAVE_DES=''; \
  6292.     DES_LIB=''; \
  6293.     if ls /usr/lib/libdes* > /dev/null 2> /dev/null || \
  6294.        ls $(SSLLIB)/libdes* > /dev/null 2> /dev/null; then \
  6295.           DES_LIB='-ldes425'; \
  6296.           HAVE_DES='-DCK_DES -DLIBDES'; \
  6297.           echo "HAVE DES"; \
  6298.        else echo "NO DES"; \
  6299.     fi; \
  6300.     K5CRYPTO=''; \
  6301.         if ls /lib/libk5crypto* > /dev/null 2> /dev/null; then \
  6302.                 K5CRYPTO='-lk5crypto'; \
  6303.     else if ls /usr/lib/libk5crypto* > /dev/null 2> /dev/null; then \
  6304.         K5CRYPTO='-lk5crypto'; \
  6305.         else if ls /usr/lib64/libk5crypto* > /dev/null 2> /dev/null; then \
  6306.                 K5CRYPTO='-lk5crypto'; \
  6307.     fi; fi; fi; \
  6308.     COM_ERR=''; \
  6309.     if ls /lib/libcom_err* > /dev/null 2> /dev/null; then \
  6310.         COM_ERR='-lcom_err'; \
  6311.     fi; \
  6312.     GSSAPILIB='-lgssapi'; \
  6313.     if ls /lib/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  6314.         GSSAPILIB='-lgssapi_krb5'; \
  6315.     else if ls /usr/lib/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  6316.         GSSAPILIB='-lgssapi_krb5'; \
  6317.     else K5DIR=`echo $(K5LIB) | sed 's|-L||'`; \
  6318.         if ls $$K5DIR/libgssapi_krb5* > /dev/null 2> /dev/null; then \
  6319.             GSSAPILIB='-lgssapi_krb5'; \
  6320.     fi; fi; fi; \
  6321.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6322.     "KFLAGS= -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 \
  6323.     -DCK_SSL -DCK_PAM -DZLIB -DCK_SHADOW $$OPENSSLOPTION $(SSLINC) \
  6324.     -DCK_ENCRYPTION $$HAVE_DES $(K5INC) $(K5INC)/krb5 \
  6325.     -I/usr/include/et $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6326.     "LIBS = $(K5LIB) $(SSLLIB) -lssl $$DES_LIB -lpam -lz \
  6327.     -lcrypto $$GSSAPILIB -lkrb5 $$K5CRYPTO $$COM_ERR $(LIBS)" ; \
  6328.     if [ ! -f ./wermit ] || [ ./ckcmai.o -nt ./wermit ] ; then \
  6329.         echo ""; \
  6330.         echo "If build failed try:"; \
  6331.         echo ""; \
  6332.         echo "  make clean ; make $${KTARGET:-$(@)} KFLAGS=-UCK_DES"; \
  6333.         echo ""; \
  6334.     fi
  6335.  
  6336. # ::BEGIN_OLD_LINUX_TARGETS::
  6337.  
  6338. # The remaining Linux entries are for special or customized builds.  They have
  6339. # not been generalized ("subroutinized") like the ones above.  Ideally, we
  6340. # should allow for every combination of libc vs glibc, gcc vs egcs, curses vs
  6341. # ncurses, Kerberos IV vs Kerberos V vs SRP (in any combination), and so on.
  6342. # The best way to do this is to set KFLAGS and LIBS values and then chain to
  6343. # the main "linux" target, as in the examples just above.  To skip past all of
  6344. # these old targets (and there are many) search for ::END_OLD_LINUX_TARGETS::
  6345. # (after this line).
  6346.  
  6347. #Sharp Zaurus SL-5500 - Linux based
  6348. zsl5500:
  6349.     @echo 'Making C-Kermit $(CKVER) for Sharp Zaurus SL-5500...'
  6350.     @touch ckcpro.c
  6351.     @touch wart
  6352.     $(MAKE) linuxnc KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DZSL5500" \
  6353.     "CC = gcc" "CC2 = gcc"
  6354.  
  6355. #Mklinux DR3 has horrible bug in <utmpbits.h> - see ckufio.c.
  6356. mklinux:
  6357.     $(MAKE) KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DUTMPBUG" \
  6358.     "LIBS=-lcrypt -lresolv" linuxa
  6359.  
  6360. #LinuxPPC 1999
  6361. linuxppc:
  6362.     @echo 'Making C-Kermit $(CKVER) for LinuxPPC 1999...'
  6363.     @if test -f /usr/lib/libcrypt.a; then \
  6364.         if test -f /usr/lib/libresolv.a; then \
  6365.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  6366.         "KFLAGS=$(NCURSES_CPP) -DHAVE_CRYPT_H \
  6367.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  6368.             "LIBS=-lncurses -lresolv -lcrypt" linuxa ; \
  6369.         else \
  6370.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  6371.         "KFLAGS=$(NCURSES_CPP) -DHAVE_CRYPT_H \
  6372.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  6373.             "LIBS=-lncurses -lcrypt" linuxa ; \
  6374.         fi \
  6375.     else \
  6376.         if test -f /usr/lib/libresolv.a; then \
  6377.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  6378.         "KFLAGS=$(NCURSES_CPP) \
  6379.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  6380.             "LIBS=-lncurses -lresolv" linuxa ; \
  6381.         else \
  6382.             $(MAKE) KTARGET=$${KTARGET:-$(@)} \
  6383.         "KFLAGS=$(NCURSES_CPP) \
  6384.         -DLOCK_DIR=\\\\\\"\"/var/lock/modem\\\\\\"\" $(KFLAGS)" \
  6385.             "LIBS=-lncurses" linuxa ; \
  6386.         fi \
  6387.     fi
  6388.  
  6389.  
  6390. # Like "make linux" but built with egcs rather than gcc.
  6391. # If you get "Internal compiler error xxx, output pipe has been closed",
  6392. # try removing -pipe.
  6393. linuxegcs:
  6394.     @echo 'Making C-Kermit $(CKVER) for Linux 1.2 or later with egcs...'
  6395.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = egcs" "CC2 = egcs" \
  6396.     "CFLAGS = -O -DLINUX -pipe -funsigned-char \
  6397.     -DPOSIX -DCK_POSIX_SIG -DCK_NCURSES -DNOCOTFMC \
  6398.     -DTCPSOCKET -DLINUXFSSTND $(KFLAGS)" \
  6399.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lncurses -lcrypt -lresolv"
  6400.  
  6401. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1 (no K4 compatibility).
  6402. linux+krb5-old:
  6403.     @echo 'Making C-Kermit $(CKVER) for Linux on Intel with Kerberos...'
  6404.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6405.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6406.     -DCK_AUTHENTICATION -DCK_KERBEROS -DKRB5 \
  6407.     -DCK_ENCRYPTION -DCK_DES -DCK_CURSES -DCK_POSIX_SIG \
  6408.     -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H $(K5INC) $(K5INC)/krb5 \
  6409.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6410.     "LIBS = $(K5LIB) -lncurses -ltermcap -ldes425 -lkrb5 \
  6411.     -lcom_err -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  6412.  
  6413. # Linux on Intel PC with SRP 1.7.4 using GNU MP, Krypto, and Eric Young's
  6414. # DES library.  Remove the -DCK_DES, -DLIBDES and -ldes if you do not have
  6415. # Eric Young's# libdes.a installed.
  6416. #
  6417. linux+srp+gmp:
  6418.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6419.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6420.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6421.     -DCK_AUTHENTICATION -DCK_SRP \
  6422.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  6423.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6424.     $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6425.     "LIBS = $(SRPLIB) \
  6426.     -lncurses -ltermcap -lsrp -lgmp -ldes -lkrypto -lcrypt -lresolv"
  6427.  
  6428. linux+srp+gmp+no-des:
  6429.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP ...'
  6430.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6431.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6432.     -DCK_AUTHENTICATION -DCK_SRP \
  6433.     -DCK_ENCRYPTION -DCK_CAST \
  6434.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6435.     $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6436.     "LIBS = $(SRPLIB) \
  6437.     -lncurses -ltermcap -lsrp -lgmp -lkrypto -lcrypt -lresolv"
  6438.  
  6439. linux+srp+gmp-export:
  6440.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6441.     $(MAKE) srpmit-export KTARGET=$${KTARGET:-$(@)} \
  6442.     "CC = gcc" "CC2 = gcc" \
  6443.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6444.     -DCK_AUTHENTICATION -DCK_SRP -DFNFLOAT \
  6445.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6446.     $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6447.     "LIBS = $(SRPLIB) \
  6448.     -lncurses -ltermcap -lsrp -lgmp -lkrypto -lcrypt -lm -lresolv"
  6449.  
  6450. linux+srp+gmp+pam:
  6451.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6452.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6453.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6454.     -DCK_AUTHENTICATION -DCK_SRP \
  6455.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  6456.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6457.     -DCK_PAM -DFNFLOAT $(SRPINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6458.     "LIBS = $(SRPLIB) -lncurses -ltermcap -lsrp -lgmp -ldes -lkrypto \
  6459.     -lcrypt -lpam -ldl -lm -lresolv"
  6460.  
  6461. #Linux on Intel PC with SRP 1.7.4 built with OpenSSL for Big Number Math
  6462. #and Cryptographic functionality.
  6463. #
  6464. linux+srp:
  6465.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6466.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6467.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6468.     -DCK_AUTHENTICATION -DCK_SRP \
  6469.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  6470.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6471.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6472.     "LIBS = $(SRPLIB) $(SSLLIB) \
  6473.     -lncurses -ltermcap -lsrp -lkrypto -lcrypto -lcrypt -lresolv"
  6474.  
  6475. linux+srp+pam:
  6476.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6477.     $(MAKE) srpmit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6478.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6479.     -DCK_AUTHENTICATION -DCK_SRP \
  6480.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  6481.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6482.     -DCK_PAM -DFNFLOAT $(SRPINC) $(SSLINC) $(KFLAGS)" \
  6483.     "LNKFLAGS = $(LNKFLAGS)" \
  6484.     "LIBS = $(SRPLIB) $(SSLLIB) -lncurses -ltermcap -lsrp -lkrypto \
  6485.     -lcrypto -lcrypt -lpam -ldl -lm -lresolv"
  6486.  
  6487. #Linux on Intel PC with SRP and SSL/TLS.
  6488. #
  6489. # libsrp.a should be build with OpenSSL
  6490. # Requires the Kerberos 1.2.2 or higher to be compiled with KRB4 compatibility.
  6491. #Remove -ltermcap if it causes trouble e.g. in Debian 2.2.
  6492. #If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6493. linux+srp+openssl:
  6494.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6495.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6496.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6497.     -DCK_AUTHENTICATION -DCK_SRP \
  6498.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  6499.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6500.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6501.     "LIBS = $(SRPLIB) $(SSLLIB) \
  6502.     -lncurses -ltermcap -lsrp -lssl -lkrypto -lcrypto \
  6503.     -lcrypt -lresolv"
  6504.  
  6505. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2 and SRP.
  6506. #
  6507. # libsrp.a should be build with GNU MP (libgmp.a)
  6508. # instead of AT&T CryptoLib (libcrypt.a) due to naming conflicts with
  6509. # standard distribution Linux libraries.
  6510. # Requires the Kerberos 1.2.2 or higher to be compiled with KRB4 compatibility.
  6511. linux+krb5+krb4+srp:
  6512.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB54+SRP...'
  6513.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6514.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6515.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6516.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  6517.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6518.     $(K5INC) $(K5INC)/krb5 $(SRPINC) \
  6519.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6520.     "LIBS = $(K5LIB) $(SRPLIB) \
  6521.     -lncurses -ltermcap -lsrp -lgmp -lgssapi_krb5 -lkrypto \
  6522.     -ldes -lkrb4 -ldes425 -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv"
  6523.  
  6524. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP and SSL/TLS.
  6525. #
  6526. # libsrp.a should be build with OpenSSL
  6527. # Requires the Kerberos 1.2.2 or higher to be compiled with KRB4 compatibility.
  6528. # Requires OpenSSL 0.9.6a or higher
  6529. #If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6530. linux+krb5+krb4+srp+openssl:
  6531.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6532.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6533.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6534.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6535.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  6536.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6537.     $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  6538.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6539.     "LIBS = $(K5LIB) $(SRPLIB) $(SSLLIB) \
  6540.     -lncurses -ltermcap -lsrp \
  6541.     -lkrb4 -lssl -lkrypto -lcrypto \
  6542.     -lkrb5 -lcom_err -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  6543.  
  6544. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SSL/TLS.
  6545. #
  6546. # libsrp.a should be build with OpenSSL
  6547. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6548. #If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6549. linux+krb5+krb4+openssl:
  6550.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL...'
  6551.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6552.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6553.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6554.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL \
  6555.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6556.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  6557.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6558.     "LIBS = $(K5LIB) $(SSLLIB) \
  6559.     -lncurses -ltermcap \
  6560.     -lkrb4 -lssl -lcrypto -lkrb5 -lcom_err \
  6561.     -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  6562.  
  6563. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1, SSL/TLS.
  6564. #
  6565. # libsrp.a should be build with OpenSSL
  6566. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6567. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6568. linux+krb5+krb4+openssl+shadow:
  6569.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL...'
  6570.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6571.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6572.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6573.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_SHADOW \
  6574.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6575.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  6576.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6577.     "LIBS = $(K5LIB) $(SSLLIB)  \
  6578.     -lncurses -ltermcap \
  6579.     -lkrb4 -lssl -lcrypto -lkrb5 -lcom_err \
  6580.     -lk5crypto -lgssapi_krb5 -lcrypt -lresolv"
  6581.  
  6582. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2, SSL/TLS.
  6583. #
  6584. # libsrp.a should be build with OpenSSL
  6585. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6586. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6587. linux+krb5+krb4+openssl+zlib+shadow:
  6588.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL...'
  6589.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6590.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6591.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 -DZLIB \
  6592.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_SHADOW \
  6593.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6594.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  6595.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6596.     "LIBS = $(K5LIB) $(SSLLIB) \
  6597.     -lncurses -ltermcap \
  6598.     -lkrb4 -lssl -lcrypto -lkrb5 -lcom_err \
  6599.     -lk5crypto -lgssapi_krb5 -lcrypt -lresolv -lz"
  6600.  
  6601. linux+krb5+krb4+srp-export:
  6602.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6603.     $(MAKE) xermit-export KTARGET=$${KTARGET:-$(@)} \
  6604.     "CC = gcc" "CC2 = gcc" \
  6605.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6606.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6607.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6608.     $(K5INC) $(K5INC)/krb5 $(SRPINC) \
  6609.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6610.     "LIBS = $(SRPLIB) $(K5LIB) \
  6611.     -lncurses -ltermcap -lsrp -lgmp -lkrb4 -ldes425 -lkrb5 -lgssapi_krb5 \
  6612.     -lcom_err -lk5crypto -lkrypto -lcrypt -lresolv"
  6613.  
  6614. linux+krb5+krb4+srp+pam:
  6615.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with SRP...'
  6616.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6617.     "CFLAGS = -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6618.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6619.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES \
  6620.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6621.     -DCK_PAM $(K5INC) $(K5INC)/krb5 $(SRPINC) \
  6622.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6623.     "LIBS = $(SRPLIB) $(K5LIB) \
  6624.     -lncurses -ltermcap -lsrp -lgmp -ldes -lkrb4 -ldes425 -lkrb5 \
  6625.     -lcom_err -lk5crypto -lgssapi_krb5 -lkrypto -lcrypt -lpam -ldl \
  6626.     -lresolv"
  6627.  
  6628. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP and SSL/TLS.
  6629. # and PAM.
  6630. #
  6631. # libsrp.a should be build with OpenSSL
  6632. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6633. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6634. linux+krb5+krb4+srp+openssl+pam-debug:
  6635.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6636.     $(MAKE) xermit-debug KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6637.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6638.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6639.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM \
  6640.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6641.     -w -Dmalloc=dmalloc -Dfree=dfree -DMDEBUG $(K5INC) $(K5INC)/krb5 \
  6642.     $(SRPINC) $(SSLINC) $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6643.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB) \
  6644.     -lncurses -ltermcap -lsrp -lkrb4 -lssl -lkrypto -lcrypto \
  6645.     -lkrb5 -lcom_err -lk5crypto -lgssapi_krb5 -lcrypt -lresolv -lpam -ldl"
  6646.  
  6647. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.1, SRP and SSL/TLS.
  6648. # and PAM.
  6649. #
  6650. # libsrp.a should be build with OpenSSL
  6651. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6652. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6653. linux+krb5+krb4+srp+openssl+pam:
  6654.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6655.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6656.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6657.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6658.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM \
  6659.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6660.     $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  6661.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6662.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB)  \
  6663.     -lm -lncurses -ltermcap -lsrp \
  6664.     -lkrb4 -lssl -lkrypto  -lcrypto -lgssapi_krb5 \
  6665.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl"
  6666.  
  6667. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP, OpenSSL
  6668. # with ZLIB and PAM
  6669. #
  6670. # libsrp.a should be build with OpenSSL
  6671. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6672. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6673. linux+krb5+krb4+srp+openssl+zlib+pam:
  6674.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6675.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6676.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6677.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6678.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  6679.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6680.     $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  6681.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6682.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB) \
  6683.     -lm -lncurses -ltermcap -lsrp \
  6684.     -lkrb4 -lssl -lkrypto  -lcrypto -lgssapi_krb5 \
  6685.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  6686.  
  6687. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, SRP, OpenSSL
  6688. # with ZLIB, Shadow Passwords, and PAM
  6689. #
  6690. # libsrp.a should be build with OpenSSL
  6691. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6692. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6693. linux+krb5+krb4+srp+openssl+zlib+shadow+pam:
  6694.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6695.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6696.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6697.     -DCK_AUTHENTICATION -DCK_SRP -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6698.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  6699.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6700.     -DCK_SHADOW $(K5INC) $(K5INC)/krb5 $(SRPINC) $(SSLINC) \
  6701.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6702.     "LIBS = $(SRPLIB) $(K5LIB) $(SSLLIB) \
  6703.     -lm -lncurses -ltermcap -lsrp -lkrypto \
  6704.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 \
  6705.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  6706.  
  6707. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, OpenSSL
  6708. # with Shadow Passwords, PAM
  6709. #
  6710. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6711. linux+krb5+krb4+openssl+shadow+pam:
  6712.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SSL,...'
  6713.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6714.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6715.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6716.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM \
  6717.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6718.     -DCK_SHADOW $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  6719.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6720.     "LIBS = $(K5LIB) $(SSLLIB) \
  6721.     -lm -lncurses -ltermcap \
  6722.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 \
  6723.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl"
  6724.  
  6725. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, OpenSSL
  6726. # with ZLIB, Shadow Passwords, PAM
  6727. #
  6728. # libsrp.a should be build with OpenSSL
  6729. # Requires the Kerberos 1.2.2 be compiled with KRB4 compatibility.
  6730. # If you have OpenSSL 0.9.7 or later, add -DOPENSSL_097 to KFLAGS.
  6731. linux+krb5+krb4+openssl+zlib+shadow+pam:
  6732.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB,SRP,SSL...'
  6733.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6734.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6735.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DKRB4 -DKRB524 \
  6736.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  6737.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6738.     -DCK_SHADOW $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  6739.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6740.     "LIBS = $(K5LIB) $(SSLLIB) \
  6741.     -lm -lncurses -ltermcap \
  6742.     -lkrb4 -lssl -lcrypto -lgssapi_krb5 \
  6743.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  6744.  
  6745. #Red Hat 9 - full install includes Kerberos 5 (4 compat), PAM, SSL.
  6746. #Also works around bug in curses in which terminal goes dead after
  6747. #returning from file-transfer display.  Assumes OpenSSL 0.9.7 or later.
  6748. redhat9:
  6749.     @echo "Building SECURE Kermit for Red Hat 9.0..."
  6750.     $(MAKE) linux+krb5+krb4+openssl+zlib+shadow+pam \
  6751.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH90 -DOPENSSL_097 $(KFLAGS)"
  6752.  
  6753. #Ditto plus SRP (which is not normally included with RH Linux).
  6754. redhat9+srp:
  6755.     @echo "Building SECURE Kermit for Red Hat 9.0..."
  6756.     $(MAKE) linux+krb5+krb4+srp+openssl+zlib+shadow+pam \
  6757.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH90 -DOPENSSL_097 $(KFLAGS)"
  6758.  
  6759. #For Red Hat AS 2.1 with OpenSSL
  6760. redhat21+ssl:
  6761.     @echo "Building SECURE Kermit for Red Hat 2.1..."
  6762.     $(MAKE) linux+openssl+zlib+shadow+pam \
  6763.     KTARGET=$${KTARGET:-$(@)} "KFLAGS =  $(KFLAGS)"
  6764.  
  6765. #Red Hat Linux 8.0 - full install includes Kerberos 5 (4 compat), PAM, SSL.
  6766. #Also works around bug in curses in which terminal goes dead after
  6767. #returning from file-transfer display.
  6768. redhat80:
  6769.     @echo "Building SECURE Kermit for Red Hat 8.0..."
  6770.     $(MAKE) linux+krb5+krb4+openssl+zlib+shadow+pam \
  6771.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH80 $(KFLAGS)"
  6772.  
  6773. redhat80+srp:
  6774.     @echo "Building SECURE Kermit for Red Hat 8.0..."
  6775.     $(MAKE) linux+krb5+krb4+srp+openssl+zlib+shadow+pam \
  6776.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH80 $(KFLAGS)"
  6777.  
  6778. #Red Hat Linux 7.3 - full install includes Kerberos 5 (4 compat), PAM, SSL.
  6779. #Also works around bug in curses in which terminal goes dead after
  6780. #returning from file-transfer display.
  6781. redhat73:
  6782.     @echo "Building SECURE Kermit for Red Hat 7.3..."
  6783.     $(MAKE) linux+krb5+krb4+openssl+zlib+shadow+pam \
  6784.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH73 $(KFLAGS)"
  6785.  
  6786. redhat73+srp:
  6787.     @echo "Building SECURE Kermit for Red Hat 7.3..."
  6788.     $(MAKE) linux+krb5+krb4+srp+openssl+zlib+shadow+pam \
  6789.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH73 $(KFLAGS)"
  6790.  
  6791. #Red Hat Linux 7.2 - full install includes Kerberos 5 (4 compat), PAM, SSL.
  6792. #Also works around bug in curses in which terminal goes dead after
  6793. #returning from file-transfer display.
  6794. redhat72:
  6795.     @echo "Building SECURE Kermit for Red Hat 7.2..."
  6796.     $(MAKE) linux+krb5+krb4+openssl+zlib+shadow+pam \
  6797.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH72 $(KFLAGS)"
  6798.  
  6799. redhat72+srp:
  6800.     @echo "Building SECURE Kermit for Red Hat 7.2..."
  6801.     $(MAKE) linux+krb5+krb4+srp+openssl+zlib+shadow+pam \
  6802.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH72 $(KFLAGS)"
  6803.  
  6804. #Red Hat Linux 7.1 - full install includes Kerberos 5 (4 compat), PAM, SSL.
  6805. #Also works around bug in curses in which terminal goes dead after
  6806. #returning from file-transfer display.
  6807. redhat71:
  6808.     @echo "Building SECURE Kermit for Red Hat 7.1..."
  6809.     $(MAKE) linux+krb5+krb4+openssl+zlib+shadow+pam \
  6810.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH71 $(KFLAGS)"
  6811.  
  6812. redhat71+srp:
  6813.     @echo "Building SECURE Kermit for Red Hat 7.1..."
  6814.     $(MAKE) linux+krb5+krb4+srp+openssl+zlib+shadow+pam \
  6815.     KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DRH71 $(KFLAGS)"
  6816.  
  6817. #Linux on Intel PC with Cygnus or MIT Kerberos 5 1.2.2, OpenSSL
  6818. # with ZLIB and PAM and Shadow passwords
  6819. linux+krb5+openssl+zlib+shadow+pam:
  6820.     @echo 'Making C-Kermit $(CKVER) for Linux on i386 with KRB5,SSL...'
  6821.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6822.     "CFLAGS = -g -O -funsigned-char -pipe -DPOSIX -DLINUX -DNOCOTFMC \
  6823.     -DCK_AUTHENTICATION -DCK_KERBEROS  -DKRB5 -DCK_SHADOW -DHAVE_PTMX \
  6824.     -DCK_ENCRYPTION -DCK_CAST -DCK_DES -DLIBDES -DCK_SSL -DCK_PAM -DZLIB \
  6825.     -DCK_CURSES -DCK_POSIX_SIG -DTCPSOCKET -DLINUXFSSTND -DHAVE_CRYPT_H \
  6826.     $(K5INC) $(K5INC)/krb5 $(SSLINC) \
  6827.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" \
  6828.     "LIBS = $(K5LIB) $(SSLLIB) \
  6829.     -lm -lncurses -ltermcap -lssl -lcrypto -lgssapi_krb5 \
  6830.     -lkrb5 -lcom_err -lk5crypto -lcrypt -lresolv -lpam -ldl -lz"
  6831.  
  6832. linuxnotcp:
  6833.     $(MAKE) linux KTARGET=$${KTARGET:-$(@)} "KFLAGS = -DNONET $(KFLAGS)"
  6834.  
  6835. # "make linuxnotcp" with lcc (see http://www.cs.princeton.edu/software/lcc)
  6836. # lcc does not understand various gcc extensions:
  6837. #  "__inline__" -- can be eliminated by adding "-D__inline__="
  6838. #  "__asm__ and "long long" -- in header files, should be surrounded by
  6839. #                              "#ifndef(__STRICT_ANSI__)"/"#endif"
  6840. #  however, TCP requires some __asm__ functions, so cannot be compiled
  6841. linuxnotcp-lcc:
  6842.     @echo 'Making C-Kermit $(CKVER) for Linux with lcc ...'
  6843.     @echo 'Read comments in makefile for additional information.'
  6844.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = lcc" "CC2 = lcc" \
  6845.     "CFLAGS = -DLINUX -DPOSIX -DCK_CURSES -DCK_POSIX_SIG \
  6846.     -UTCPSOCKET -DLINUXFSSTND -DNOLEARN $(KFLAGS)" \
  6847.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lcurses -ltermcap"
  6848.  
  6849. # Linux 0.99.14 thru 1.0 with gcc, dynamic libraries, curses, TCP/IP.
  6850. # For Linux 1.2 or later, use "make linux" (above).
  6851. #
  6852. # -DLINUXFSSTND (Linux File System Standard) gives UUCP lockfile /var/lock with
  6853. # string pid.  Remove this and get /usr/spool/uucp with int pid, which was used
  6854. # in early Linux versions.
  6855. #
  6856. # If you get compiler errors regarding <linux/serial.h>, add -DNOHISPEED.
  6857. #
  6858. # -DCK_POSIX_SIG (POSIX signal handling) is good for Linux releases back to at
  6859. # least 0.99.14; if it causes trouble for you, just remove it.
  6860. #
  6861. # -DCK_CURSES: Here we link with the regular curses library.  But you should
  6862. # be using ncurses.  Internally, the ckuusx.c module includes <curses.h>, but
  6863. # this really should be <ncurses.h>.  Thus if you have the new curses
  6864. # material, you should either install it with the standard names, or else
  6865. # create symbolic links from the standard names to the new ones.  If you get
  6866. # compile-time errors complaining about data definitions in termcap.h, it
  6867. # means you have new kernel material mixed with older libc header files.  To
  6868. # fix, add "#include <termios.h>" to the <termcap.h> file.  Or if all this is
  6869. # too confusing, create a new makefile entry based on this one, but with
  6870. # -DCK_CURSES removed from CFLAGS and the entire LIBS= clause removed.
  6871. #
  6872. # But wait, there's more.  On most Linux systems, -ltermcap must be included
  6873. # in LIBS.  But on others, the linker complains that libtermcap can't be
  6874. # found.  In that case, try removing -ltermcap from LIBS=.
  6875. #
  6876. # But wait, there's more.  The format of the PID string in the UUCP lockfile
  6877. # changed between Linux FSSTND 1.0 and 1.2.  In the earlier standard, it had
  6878. # leading zeros; in the second, it has leading spaces.  By default this entry
  6879. # uses the newer standard.  To force the older one, add -DFSSTND10.
  6880. #
  6881. # "The nice thing about the Linux standard is there are so many to choose from"
  6882. #
  6883. # NOTE: Remove -DBIGBUFOK for small-memory or limited-resource systems.
  6884. linux10:
  6885.     @echo 'Making C-Kermit $(CKVER) for Linux 1.0 or earlier...'
  6886.     @echo 'IMPORTANT: Read the comments in the linux section of the'
  6887.     @echo 'makefile if you get compilation or link errors.'
  6888.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6889.     "CFLAGS = -O -DPOSIX -DCK_CURSES -DCK_POSIX_SIG -DLINUX \
  6890.     -DTCPSOCKET -DLINUXFSSTND -DOLINUXHISPEED -DNOLEARN $(KFLAGS)" \
  6891.     "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lcurses -ltermcap"
  6892.  
  6893. #This version was used for Linux prior to C-Kermit 6.0.192.
  6894. #Now the "Linux File System Standard" is considered standard, ditto TCP/IP.
  6895. linuxold:
  6896.     @echo 'Making C-Kermit $(CKVER) for Linux...'
  6897.     @echo 'For FSSTND-recommended UUCP lockfiles, use:'
  6898.     @echo '  make linux "KFLAGS=-DLINUXFSSTND".'
  6899.     @echo 'Read comments in makefile for additional options.'
  6900.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6901.     "CFLAGS = -O -DLINUX -DPOSIX -DCK_CURSES -DCK_POSIX_SIG -DNOLEARN \
  6902.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS)" "LIBS = -lcurses -ltermcap"
  6903.  
  6904. # ::END_OLD_LINUX_TARGETS::
  6905.  
  6906. # LynxOS 2.2 with GCC compiler, TCP/IP and fullscreen display.
  6907. # Probably also works with Lynx 2.1, and maybe even Lynx 2.0.
  6908. # -X means use termios serial drivers rather than BSD4.3-style sgtty drivers.
  6909. # If you have trouble with this, try "make bsd KFLAGS=-DNOFDZERO".
  6910. lynx:
  6911.     @echo 'Making C-Kermit $(CKVER) for LynxOS 2.2 with TCP/IP'
  6912.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6913.     "CFLAGS= -O -DPOSIX -DDIRENT -DSETREUID -DCK_CURSES -DTCPSOCKET \
  6914.     -DCK_ANSIC -DLYNXOS -DNOLEARN" "LNKFLAGS = -X" "LIBS = -lcurses -lbsd"
  6915.  
  6916. lynx22:
  6917.     $(MAKE) lynx KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  6918.  
  6919. # LynxOS 2.1 with GCC compiler 1.40 and TCP/IP.
  6920. lynx21:
  6921.     @echo 'Making C-Kermit $(CKVER) for LynxOS 2.1 with TCP/IP'
  6922.     $(MAKE) kermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6923.     "CFLAGS= -O -DSETREUID -DTCPSOCKET -DCK_ANSIC -DBSD4 -DLYNXOS" \
  6924.     "LIBS = -lbsd"
  6925.  
  6926. #SCO Xenix 2.2.1 for IBM PC, XT, PS2/30, or other 8088 or 8086 machine
  6927. #Should this not work, try some of the tricks from sco286.
  6928. #NOTE: -DRENAME is omitted for early SCO Xenix releases because it didn't
  6929. #exist, or its semantics were different from the later POSIX-compliant
  6930. #version of rename().
  6931. sco86:
  6932.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/86...'
  6933.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6934.     "CFLAGS= -DXENIX -DNOFILEH -DNOIKSD -DNOUNICODE -DNOLEARN \
  6935.     $(KFLAGS) -Dunix -F 3000 -i -M0me" \
  6936.     "LNKFLAGS = -F 3000 -i -s -M0me" "LIBS = -lx"
  6937.  
  6938. #SCO Xenix/286 2.2.1, e.g. for IBM PC/AT, PS/2 Model 50, etc.
  6939. #Reportedly, this "make" can fail simply because of the size of this
  6940. #makefile.  If that happens, use "makeL", or edit out some of the
  6941. #other entries.  No debugging or character-set translation.
  6942. sco286:
  6943.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/286...'
  6944.     @echo 'If make fails, try using makeL.'
  6945.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6946.     "CFLAGS= -xenix -s -O -LARGE -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP \
  6947.     -DNOIKSD -DNODEBUG -DNOTLOG -DNOCSETS -DNOLEARN \
  6948.     $(KFLAGS) -F 3000 -i -M2let16" \
  6949.     "LIBS = -lx" "LNKFLAGS = -xenix -s -O -LARGE -F 3000 -i -M2let16"
  6950.  
  6951. #SCO Xenix/286 2.2.1, e.g. for IBM PC/AT, PS/2 Model 50, etc.
  6952. #As above, but with HDBUUCP (This one might need fixing -- see sco286).
  6953. sco286hdb:
  6954.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/286 with HDB UUCP...'
  6955.     @echo 'If make fails, try using makeL.'
  6956.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6957.     "CFLAGS= -s -O -LARGE -DXENIX -DNOFILEH -Dunix -DRDCHK -DNAP \
  6958.     -DHDBUUCP -DNOIKSD -DNOUNICODE -DNOLEARN \
  6959.     $(KFLAGS) -F 3000 -i -M2let32" \
  6960.     "LIBS = -lx" "LNKFLAGS = -s -O -LARGE -F 3000 -i -M2let32"
  6961.  
  6962. #SCO Xenix/386 2.2.2 and 2.2.3
  6963. sco386:
  6964.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.2.2...'
  6965.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6966.     "CFLAGS= -DXENIX -DNOFILEH -DNOIKSD -DNOREDIRECT -DNOLEARN \
  6967.     -Dunix -DRDCHK -DNAP -DNOUNICODE $(KFLAGS) -Otcl -M3e" \
  6968.     "LNKFLAGS = -s" "LIBS = -lx"
  6969.  
  6970. #SCO XENIX/386 2.2.3 with Excelan TCP/IP + curses.
  6971. # NOTE: This one might need some work in C-Kermit 6.0.
  6972. # You might need to include /usr/include/sys/types.h
  6973. # containing "typedef char *caddr_t;".  Then at least it compiles.
  6974. sco386netc:
  6975.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.2.3 + Excelan TCP'
  6976.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  6977.     "CFLAGS= -I/usr/include/exos -DXENIX -DCK_CURSES -DNOUNICODE \
  6978.     -Dunix -DRDCHK -DNAP -DTCPSOCKET -DEXCELAN -DNOJC -DNOMKDIR -DNOFILEH \
  6979.     -DNOLEARN -DNOREDIRECT -DNOIKSD -DNO_DNS_SRV $(KFLAGS) -Otcl -M3e" \
  6980.     "LNKFLAGS = -s" "LIBS = -lc -lx -lsocket -lcurses -ltermcap"
  6981.  
  6982. #SCO XENIX/386 2.3.3 with gcc 1.37 or later...
  6983. sco386gcc:
  6984.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.3.3, gcc...'
  6985.     @echo 'Add -D_NO_PROTOTYPE if you have trouble with Xenix header files'
  6986.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  6987.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  6988.     -DNOJC -DNODEBUG -DNOUNICODE -DNOLEARN $(KFLAGS) \
  6989.     -traditional -fpcc-struct-return -fstrength-reduce \
  6990.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  6991.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  6992.     -DM_SYSIII -DM_SYSV -DM_WORDSWAP -DM_XENIX -DNOIKSD -DNOREDIRECT \
  6993.     -DPWID_T=int " "LNKFLAGS = -s" "LIBS = -lx"
  6994.  
  6995. #As above, but with curses...
  6996. sco386gccc:
  6997.     @echo 'Making C-Kermit $(CKVER) for SCO Xenix/386 2.3.3, gcc...'
  6998.     @echo 'Add -D_NO_PROTOTYPE if you have trouble with Xenix header files'
  6999.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2 = gcc" \
  7000.     "CFLAGS= -O -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  7001.     -DNOJC -DNODEBUG -DCK_CURSES -DNOUNICODE -DNOLEARN $(KFLAGS) \
  7002.     -traditional -fpcc-struct-return -fstrength-reduce \
  7003.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DNOREDIRECT \
  7004.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  7005.     -DM_SYSIII -DM_SYSV -DM_WORDSWAP -DM_XENIX -DNOIKSD \
  7006.     -DPWID_T=int " "LNKFLAGS = -s" "LIBS = -lx -lcurses -ltermlib"
  7007.  
  7008. #SCO UNIX (and ODT) entries...
  7009. #
  7010. #NOTE: All SCO UNIX entry LIBS should have "-lc_s -lc -lx" IN THAT ORDER (if
  7011. #shared C library is desired), or else "-lc -lx" IN THAT ORDER.  Use shared C
  7012. #libraries to save memory, but then don't expect to run the resulting binary
  7013. #on a different machine.  When using -lc_s, you must also use -lc, because the
  7014. #shared C library does not contain all of libc.a.  And in all cases, -lc must
  7015. #ALWAYS precede -lx.
  7016. #
  7017. #ANOTHER NOTE: -DRENAME is included in all SCO UNIX entries.  Remove it if it
  7018. #causes trouble.  No harm is done by removing it (see ckuins.txt).
  7019. #
  7020. #AND ANOTHER: In theory, it should be possible to run SCO UNIX binaries on
  7021. #SCO Xenix 2.3 and later.  In practice, this might not work because of the
  7022. #libraries, etc.  Also, don't add the -link -z switch (which is supposed to
  7023. #root out references to null pointers) because it makes UNIX binaries core
  7024. #dump when they are run under Xenix.
  7025.  
  7026. #NOTE: -Otcl removed and replaced by -O, since -Otcl produced incorrect code.
  7027. #SCO UNIX/386 3.2.0, 3.2.1, and SCO Xenix 2.3.x
  7028. sco3r2:
  7029.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2.0 or 3.2.1 ...'
  7030.     @echo 'Warning: If make blows up, edit the makefile to join'
  7031.     @echo 'the following three continued lines into one line.'
  7032.     @echo 'Also, remove -DRENAME if _rename unresolved at link time.'
  7033.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7034.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DNOLEARN \
  7035.     -DRENAME -DNOIKSD -DNOJC $(KFLAGS) -O" \
  7036.     "LNKFLAGS = -s" "LIBS = -lc -lx"
  7037.  
  7038. #SCO UNIX/386 3.2.0 and SCO Xenix 2.3.x with Excelan TCP/IP support.
  7039. #In case of compilation or runtime problems, try adding
  7040. #"-DUID_T=int -DGID_T=int" to the CFLAGS.  If that doesn't work, try
  7041. #"-DUID_T=uid_t -DGID_T=gid_t".
  7042. sco3r2net:
  7043.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Excelan...'
  7044.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7045.     "CFLAGS= -I/usr/include/exos -DXENIX -DSVR3 -DNOFILEH -DNOLEARN \
  7046.     -DHDBUUCP -DRDCHK -DNAP -DRENAME -DTCPSOCKET -DEXCELAN -DNOJC \
  7047.     -DNOIKSD -DNOREDIRECT $(KFLAGS) -O" \
  7048.     "LNKFLAGS = -s" "LIBS = -lc -lx -lsocket"
  7049.  
  7050. #SCO UNIX/386 3.2.0 and SCO Xenix 2.3.x with Excelan TCP/IP support.
  7051. #As above, with curses added.
  7052. sco3r2netc:
  7053.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Excelan / curses...'
  7054.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7055.     "CFLAGS= -I/usr/include/exos -DXENIX -DSVR3 -DNOFILEH -DNOLEARN \
  7056.     -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET -DEXCELAN -DNOJC $(KFLAGS) \
  7057.     -DRENAME -DCK_CURSES -DNOREDIRECT -DNOIKSD -O" "LNKFLAGS = -s" \
  7058.     "LIBS = -lc -lx -lsocket -lcurses -ltermcap"
  7059.  
  7060. #SCO UNIX 3.2.x or SCO Xenix 2.3.x with Racal InterLan TCP/IP support
  7061. # Extra compile flags for other version of Racal InterLan TCP/IP:
  7062. # Xenix286/NP621-286, use -Ml -DPARAMH -DINTERLAN -Di286 -DSYSV
  7063. # Xenix386/NP621-386, use -DPARAMH -DINTERLAN -Di386 -DSYSV
  7064. # ISC386ix/NP622I, use -DSYSV -Di386
  7065. # SCO Unix3.2/NP622S, use -DSYSV -Di386 -DSCO_UNIX
  7066. # AT&T SVR3.2/NP622A, use -DSYSV -Di386 -DATT
  7067. sco3r2netri:
  7068.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 / Racal InterLan...'
  7069.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7070.     "CFLAGS= -I/usr/include/interlan -DXENIX -DNOFILEH -DHDBUUCP \
  7071.     -DSVR3 -DRDCHK -DNAP -DTCPSOCKET -DPARAMH -DINTERLAN -Di386 -DSYSV \
  7072.     -DRENAME -DNOREDIRECT -DNOIKSD -DNOJC -DNOLEARN $(KFLAGS) -Otcl -M3e" \
  7073.     "LNKFLAGS = -s" "LIBS = -lc -lx -ltcp"
  7074.  
  7075. # SCO XENIX/386 2.3.3 SysV with SCO TCP/IP
  7076. # System V STREAMS TCP developed by Lachman Associates Inc and
  7077. # Convergent Technologies.
  7078. # -DRENAME removed since some reports indicate it is not supported
  7079. # (whereas others say it is.)
  7080. sco3r2lai:
  7081.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX/386 2.3.3 + TCP/IP...'
  7082.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7083.     "CFLAGS= -DLAI_TCP -Di386 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK \
  7084.     -DNAP -DTCPSOCKET -DPWID_T=int -DNOREDIRECT -DNOIKSD -DNOLEARN \
  7085.     $(KFLAGS) -Otcl -i -M3e" \
  7086.     "LNKFLAGS = -i -s" "LIBS = -lc -lx -lsocket"
  7087.  
  7088. sco3r2laic:
  7089.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX/386 2.3.3 + TCP/IP...'
  7090.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7091.     "CFLAGS= -DLAI_TCP -Di386 -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK \
  7092.     -DNAP -DTCPSOCKET -DCK_ANSIC -DCK_CURSES -DM_TERMINFO -DNOLEARN \
  7093.     -DPWID_T=int -DNOREDIRECT -DNOIKSD $(KFLAGS) -Otcl -i -M3e" \
  7094.     "LNKFLAGS = -i -s" "LIBS = -ltinfo -lc -lx -lsocket"
  7095.  
  7096. #SCO UNIX/386 3.2v2 (POSIX job control), shared libraries.
  7097. sco3r22:
  7098.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 ...'
  7099.     make wermit KTARGET=$${KTARGET:-$(@)} \
  7100.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  7101.     -DNAP -DRENAME -DPID_T=pid_t -DPWID_T=int -DDIRENT -DNOIKSD \
  7102.     -DNOREDIRECT $(KFLAGS) -O" \
  7103.     "LNKFLAGS = -s" "LIBS = -lc_s -lc -lx"
  7104.  
  7105. #SCO UNIX/386 3.2v2, POSIX job control, fullscreen file transfer display,
  7106. #dynamic memory allocation, shared C library
  7107. sco3r22c:
  7108.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 ...'
  7109.     @echo 'Warning: If make blows up, edit the makefile to join'
  7110.     @echo 'the following four continued lines into one line.'
  7111.     make wermit KTARGET=$${KTARGET:-$(@)} \
  7112.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DNOLEARN \
  7113.     -DCK_CURSES -DDIRENT -DRENAME -DNOREDIRECT -DNOIKSD \
  7114.     -DPID_T=pid_t -DPWID_T=int $(KFLAGS) -O" \
  7115.     "LNKFLAGS = -s" "LIBS = -lcurses -lc_s -lc -lx"
  7116.  
  7117. #SCO UNIX/386 3.2v2 with gcc 1.40 or later (POSIX job control)
  7118. sco3r22gcc:
  7119.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2, gcc'
  7120.     @echo 'Warning: If make blows up, edit the makefile to join'
  7121.     @echo 'the following seven continued lines into one line.'
  7122.     make wermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" \
  7123.     "CFLAGS= -O -DPOSIX -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP \
  7124.     -DNOLEARN -DRENAME -traditional -fpcc-struct-return -fstrength-reduce \
  7125.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM \
  7126.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  7127.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  7128.     -DPID_T=pid_t -DPWID_T=int -DNOREDIRECT -DNOIKSD $(KFLAGS) " \
  7129.     "LNKFLAGS = -s" "LIBS = -lc_s -lc -lx"
  7130.  
  7131. #SCO UNIX/386 3.2v2 (ODT 1.1) (POSIX job control) with SCO TCP/IP, shared libs
  7132. #Requires SCO TCP/IP or ODT development system for telnet.h, etc.
  7133. sco3r22net:
  7134.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2.2 + TCP/IP...'
  7135.     @echo 'Warning: If make blows up, edit the makefile to join'
  7136.     @echo 'the following three continued lines into one line.'
  7137.     make xermit KTARGET=$${KTARGET:-$(@)} \
  7138.     "CFLAGS= -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET \
  7139.     -DRENAME -DPID_T=pid_t -DPWID_T=int -DDIRENT -DNOREDIRECT -DNOIKSD \
  7140.     $(KFLAGS) -O" "LNKFLAGS = -s" "LIBS = -lsocket -lc_s -lc -lx"
  7141.  
  7142. #As above, but with curses for fullscreen file transfer display.
  7143. #Requires SCO TCP/IP or ODT development system for telnet.h, etc.
  7144. sco3r22netc:
  7145.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v2 + TCP/IP...'
  7146.     @echo 'Warning: If make blows up, edit the makefile to join'
  7147.     @echo 'the following three continued lines into one line.'
  7148.     make xermit KTARGET=$${KTARGET:-$(@)} "CFLAGS= \
  7149.     -DXENIX -DSVR3 -DNOFILEH -DHDBUUCP -DRDCHK -DNAP -DTCPSOCKET -DRENAME \
  7150.     -DCK_CURSES -DDIRENT -DNOIKSD -DNOREDIRECT \
  7151.     -DPID_T=pid_t -DPWID_T=int -O $(KFLAGS)" \
  7152.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  7153.  
  7154. #SCO XENIX 2.3.4, no curses, no TCP/IP, no IKSD.
  7155. #This one built and tested in C-Kermit 7.0.
  7156. #lcfp is C library floating-point support.
  7157. #Use -M3 to generate 32-bit i386 code instead of 16-bit segmented i286 code.
  7158. #Use -Me to enable MS nonstandard keywords in system headers.
  7159. #Use -W2 or W3 to increase the warning level.
  7160. #OK: 2011/06/15
  7161. sco234:
  7162.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX 2.3.4...'
  7163.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7164.     "CFLAGS= -DSCO32 -DXENIX -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  7165.     -DNAP -DNOJC -DNOCOTFMC -DNOIKSD -DNOREDIRECT -DNOTNCODE -DNOGFTIMER \
  7166.     -DNOTIMEVAL -DNOTIMEZONE -DNOSYMLINK -DSCO234 -DDCLGETCWD $(KFLAGS) \
  7167.     -Otcl" "LNKFLAGS = -s" "LIBS = -lcfp -lc -lx"
  7168.  
  7169. #SCO XENIX 2.3.4, no TCP/IP, no IKSD, but with curses.
  7170. # Built and tested in C-Kermit 7.0.
  7171. # Note: XENIX 2.3.4 does not have newterm() so no point in adding -DCK_NEWTERM.
  7172. sco234c:
  7173.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX 2.3.4 + curses...'
  7174.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7175.     "CFLAGS= -DSCO32 -DXENIX -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  7176.     -DNAP -DNOJC -DNOCOTFMC -DNOIKSD -DNOREDIRECT -DNOTNCODE -DNOGFTIMER \
  7177.     -DNOTIMEVAL -DNOTIMEZONE -DNOSYMLINK -DCK_CURSES -DSCO234 \
  7178.     -DDCLGETCWD $(KFLAGS) -Otcl" \
  7179.     "LNKFLAGS = -s" "LIBS = -lcfp -lc -ltinfo -lx"
  7180.  
  7181. #SCO XENIX 2.3.4 with SCO TCP/IP and curses, no IKSD.
  7182. # Built and tested in C-Kermit 7.0.  TCP/IP works and curses works.
  7183. # Previous versions of this target included -lmalloc, but this caused "error:
  7184. # " _calloc : symbol defined more than once" at link time so I removed it.
  7185. # Results are likely to vary depending on exactly which version of the SDK
  7186. # and TCP/IP SDK you have.
  7187. sco234netc:
  7188.     @echo 'Making C-Kermit $(CKVER) for SCO XENIX 2.3.4 + TCP + curses...'
  7189.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7190.     "CFLAGS= -DSCO32 -DXENIX -DNOFILEH -DHDBUUCP -DRDCHK -DNOLEARN \
  7191.     -DNAP -DNOJC -DNOCOTFMC -DNOIKSD -DNOREDIRECT -DNOTNCODE -DNOGFTIMER \
  7192.     -DNOTIMEVAL -DNOTIMEZONE -DNOSYMLINK -DCK_CURSES -DSCO234 \
  7193.     -DDCLGETCWD -DTCPSOCKET -DNO_DNS_SRV $(KFLAGS) -Otcl" \
  7194.     "LNKFLAGS = -s" "LIBS = -ltinfo -lsocket -lcfp -lc -lx"
  7195.  
  7196. # SCO 3.2v4.x targets...
  7197.  
  7198. #  NOTE: Add -DDCLPOPEN and/or -DDCLFDOPEN to anySCO 3.2v4.x non-gcc entries
  7199. #  that complain about fdopen() or popen() at compile time.  They compile OK
  7200. #  without these flags as of July 1999.  However, the gcc entries seem to
  7201. #  need them, at least for gcc 2.7.2.2.
  7202.  
  7203. #  NOTE 2: To enable IKSD support, add:
  7204. #  -DCK_LOGIN -DNOGETUSERSHELL -DNOINITGROUPS
  7205. #  to CFLAGS (not tested).
  7206.  
  7207. #SCO UNIX/386 3.2v4 (POSIX job control), curses, ANSI C compilation,
  7208. #<dirent.h> (EAFS) file system.  Remove -lmalloc if it causes trouble.  It was
  7209. #put there to avoid core dumps caused by regular libc.a malloc.  Add -J to make
  7210. #all chars unsigned.  This version uses select() for CONNECT and also has
  7211. #high-precision timers and so might not work on non-TCP systems, in which case
  7212. #sco32v4ns should be used instead.
  7213. # If you get _ftime redefinition_ complaint, try adding -DODT30 to CFLAGS.
  7214. sco32v4:
  7215.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  7216.     make xermit KTARGET=$${KTARGET:-$(@)} \
  7217.     "CFLAGS= -DCK_SCO32V4 -DNOFILEH -DHDBUUCP -DCK_CURSES -DM_TERMINFO \
  7218.     -DNOANSI -DSELECT -DNOIKSD -DDCLGETCWD -NOLSTAT \
  7219.     -DNOLINKBITS -DDCLGETCWD $(KFLAGS) -O" \
  7220.     "LNKFLAGS = -s" "LIBS = -lcurses -lmalloc -lsocket -lc_s -lc -lx"
  7221.  
  7222. # As above, but with no dependence on sockets library or select().
  7223. sco32v4ns:
  7224.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  7225.     @echo 'No select() and no sockets library.'
  7226.     make wermit KTARGET=$${KTARGET:-$(@)} \
  7227.     "CFLAGS= -DCK_SCO32V4 -DNOFILEH -DHDBUUCP -DCK_CURSES -DM_TERMINFO \
  7228.     -DNOANSI -DNOIKSD -DNOGFTIMER -DCK_POLL -DNAP -DDCLGETCWD -DNOLSTAT \
  7229.     -DNOLINKBITS -DDCLGETCWD -DNOLEARN -O $(KFLAGS)" \
  7230.     "LNKFLAGS = -s" "LIBS = -lcurses -lmalloc -lc_s -lc -lx"
  7231.  
  7232. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  7233. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  7234. #Reportedly it's OK to add -DCK_REDIR and -DCK_WREFRESH, and to remove -lc_s.
  7235. #Requires SCO TCP/IP development system or ODT for telnet.h, etc.
  7236. #See sco32v4 above for additional comments.
  7237. #NOTE: No more room for -Dxxx -- 25 seems to be the limit.  Move some to
  7238. #ckcdeb.h or somewhere...
  7239. sco32v4net:
  7240.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  7241.     @echo 'If you get _ftime redefinition_ complaint,'
  7242.     @echo 'use make sco-odt30.'
  7243.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7244.     "CFLAGS= -DNOFILEH -DHDBUUCP -DTCPSOCKET -DCK_ANSIC -DCK_CURSES \
  7245.     -DNAP -DCK_WREFRESH -DNOLINKBITS -D_IBCS2 -DSELECT -DNOLSTAT \
  7246.     -DDCLGETCWD -DCK_SCO32V4 -DNOIKSD -O \
  7247.     $(KFLAGS)" "LNKFLAGS = $(LNKFLAGS) -s" \
  7248.     "LIBS = $(LIBS) -lcurses -lsocket -lmalloc -lsocket -lc_s -lc -lx"
  7249.  
  7250. #SCO UNIX/386 3.2v4 with gcc 1.40 or later, POSIX job control.
  7251. #Also see comments in sco32r4 entry.
  7252. sco32v4gcc:
  7253.     make xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" \
  7254.     "CFLAGS= -O -DNOFILEH -DHDBUUCP -DNOANSI -DCK_CURSES -DM_TERMINFO \
  7255.     -traditional -fpcc-struct-return -fstrength-reduce -funsigned-char \
  7256.     -D_KR -D_NO_PROTOTYPE -D_SVID -DNOIKSD -DCK_SCO32V4 -DNOLINKBITS \
  7257.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DSELECT -DNOLSTAT \
  7258.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 -DDCLGETCWD \
  7259.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  7260.     -DDCLPOPEN -DDCLFDOPEN $(KFLAGS) " \
  7261.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  7262.  
  7263. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  7264. #Requires SCO TCP/IP or ODT development system for telnet.h, etc.
  7265. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  7266. #gcc 1.40 or later.  Also see comments in sco32r4 entry.
  7267. sco32v4netgcc:
  7268.     make xermit KTARGET=$${KTARGET:-$(@)} "CC = gcc" "CC2=gcc" \
  7269.     "CFLAGS= -O2 -DNOFILEH -DHDBUUCP -DSELECT -DNOLSTAT \
  7270.     -DNOANSI -DTCPSOCKET -DCK_CURSES -DM_TERMINFO \
  7271.     -D_KR -D_NO_PROTOTYPE -D_SVID -DNOIKSD -DCK_SCO32V4 -DNOLINKBITS \
  7272.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DDCLGETCWD \
  7273.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 \
  7274.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  7275.     -DDCLPOPEN -DDCLFDOPEN $(KFLAGS)" \
  7276.     "LNKFLAGS = -s" "LIBS = -lcurses -lsocket -lc_s -lc -lx"
  7277.  
  7278. #As above but with bgcc BOUNDS CHECKING (for developers only).  -lcheck has
  7279. #bounds-checking replacements for malloc, memcpy, bcopy, etc, so must come
  7280. #before -lsocket and -lc.
  7281. sco32v4netbgcc:
  7282.     make xermit KTARGET=$${KTARGET:-$(@)} \
  7283.     "CC = bgcc -pipe -m386" "CC2=bgcc -pipe -m386" \
  7284.     "CFLAGS= -O1 -g -DNOFILEH -DHDBUUCP -DSELECT \
  7285.     -DNOANSI -DTCPSOCKET -DCK_CURSES -DM_TERMINFO \
  7286.     -D_KR -D_NO_PROTOTYPE -D_SVID -DNOIKSD -DCK_SCO32V4 -DNOLSTAT \
  7287.     -DM_BITFIELDS -DM_COFF -DM_I386 -DM_I86 -DM_I86SM -DNOLINKBITS \
  7288.     -DM_INTERNAT -DM_SDATA -DM_STEXT -DM_SYS3 -DM_SYS5 -DDCLGETCWD \
  7289.     -DM_SYSIII -DM_SYSV -DM_UNIX -DM_WORDSWAP -DM_XENIX -Dunix \
  7290.     -DDCLPOPEN -DDCLFDOPEN $(KFLAGS) " \
  7291.     "LNKFLAGS = -g" "LIBS = -lcurses -lcheck -lsocket -lx"
  7292.  
  7293. sco32v4netnd:
  7294.     @echo sco32v4net with no debug
  7295.     $(MAKE) "MAKE=$(MAKE)" sco32v4net KTARGET=$${KTARGET:-$(@)} \
  7296.     "KFLAGS=$(KFLAGS) -DNODEBUG -DNOTLOG" "LIBS=$(LIBS)"
  7297.  
  7298. sco3r2netnd:
  7299.     @echo sco32v4netnd built for SCO XENIX 2.3 under SCO UNIX...
  7300.     @echo   requires copying /lib/386/Slibc.a to /lib/386/Slibc_s.a and
  7301.     @echo   getting /lib/386/Slibsocket.a from a XENIX devkit.
  7302.     @echo   WARNING: poll/CK_POLL supported only on XENIX 2.3.4
  7303.     echo    For earlier XENIX systems, replace CK_POLL with RDCHK.
  7304.     $(MAKE) "MAKE=$(MAKE)" sco32v4netnd KTARGET=$${KTARGET:-$(@)} \
  7305.     "KFLAGS=$(KFLAGS) -x2.3 -DNORENAME -DNOSYMLINK" \
  7306.     "LNKFLAGS = $(LNKFLAGS) -x2.3" \
  7307.     "LIBS=-ldir -lcfp $(LIBS)"
  7308.  
  7309. #SCO UNIX/386 3.2v4 (POSIX job control), TCP/IP, curses, ANSI C compilation,
  7310. #<dirent.h> (EAFS) file system.  With DIRENT, -lc must come before -lx.
  7311. #Reportedly it's OK to add -DCK_REDIR and -DCK_WREFRESH, and to remove -lc_s.
  7312. #Requires SCO TCP/IP development system or ODT for telnet.h, etc.
  7313. #See sco32v4 above for additional comments.
  7314. # Note: "xermit" means use the select() version of the CONNECT module.
  7315. sco32v4netx:
  7316.     @echo 'Making C-Kermit $(CKVER) for SCO UNIX/386 3.2v4...'
  7317.     @echo 'If you get _ftime redefinition_ complaint,'
  7318.     @echo 'use make sco-odt30.'
  7319.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7320.     "CFLAGS= -DNOFILEH -DHDBUUCP -DTCPSOCKET -DCK_ANSIC -DCK_CURSES -DNAP \
  7321.     -DCK_WREFRESH -DNOLINKBITS -D_IBCS2 -DSELECT -DDCLGETCWD \
  7322.     -DCK_SCO32V4 -DNOIKSD -DNOLSTAT -O $(KFLAGS)" \
  7323.     "LNKFLAGS = $(LNKFLAGS) -s" \
  7324.     "LIBS = $(LIBS) -lcurses -lsocket -lmalloc -lsocket -lc_s -lc -lx"
  7325.  
  7326. sco32v4netndx:
  7327.     @echo sco32v4netx with no debug
  7328.     $(MAKE) "MAKE=$(MAKE)" sco32v4netx KTARGET=$${KTARGET:-$(@)} \
  7329.     "KFLAGS=$(KFLAGS) -DNODEBUG -DNOTLOG" "LIBS=$(LIBS)"
  7330.  
  7331. sco3r2netndx:
  7332.     @echo sco32v4netndx built for SCO XENIX 2.3 under SCO UNIX...
  7333.     @echo   requires copying /lib/386/Slibc.a to /lib/386/Slibc_s.a and
  7334.     @echo   getting /lib/386/Slibsocket.a from a XENIX devkit.
  7335.     @echo   WARNING: poll/CK_POLL supported only on XENIX 2.3.4
  7336.     echo    For earlier XENIX systems, replace CK_POLL with RDCHK.
  7337.     $(MAKE) "MAKE=$(MAKE)" sco32v4netndx KTARGET=$${KTARGET:-$(@)} \
  7338.     "KFLAGS=$(KFLAGS) -x2.3 -DNORENAME -DNOSYMLINK" \
  7339.     "LNKFLAGS = $(LNKFLAGS) -x2.3" \
  7340.     "LIBS=-ldir -lcfp $(LIBS)"
  7341.  
  7342. sco-odt30:
  7343.     @echo SCO ODT 3.0
  7344.     $(MAKE) "MAKE=$(MAKE)" sco32v4net KTARGET=$${KTARGET:-$(@)} \
  7345.     "KFLAGS=$(KFLAGS) -DODT30"
  7346.  
  7347. #SCO OpenServer 5.0 (SCO UNIX 3.2v5.0) with SCO development tools, no TCP/IP.
  7348. #SCO OSR5 is much more like standard System V than previous SCO releases.
  7349. #The SCO development tools include TCP/IP, so this target is only for creating
  7350. #artificially limited versions of kermit required by site policy rather than
  7351. #the operating system.  NOSYSLOG is included because syslog() requires the
  7352. #sockets library.
  7353. sco32v500:
  7354.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5...
  7355.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7356.     "CFLAGS= -O -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  7357.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  7358.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DNOSYSLOG \
  7359.     $(KFLAGS)" \
  7360.     "LIBS=-lcurses $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  7361.  
  7362. sco32v5:
  7363.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sco32v500
  7364.  
  7365.  
  7366. #SCO OpenServer 5.0 with networking, SCO development tools.
  7367. #Networking libraries are now provided with the OS.
  7368. sco32v500net:
  7369.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5...
  7370.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7371.     "CFLAGS= -O -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  7372.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  7373.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DTCPSOCKET \
  7374.     -DNO_DNS_SRV $(KFLAGS)" \
  7375.     "LIBS=-lcurses -lsocket $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  7376.  
  7377. sco32v5net:
  7378.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sco32v500net
  7379.  
  7380. #SCO OpenServer 5.0 with networking and OpenSSL, SCO development tools.
  7381. #Networking libraries are now provided with the OS.
  7382. sco32v500net+ssl:
  7383.     @echo Making C-Kermit $(CKVER) for SCO OSR5 with OpenSSL...
  7384.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7385.     "CFLAGS= -O -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  7386.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  7387.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DTCPSOCKET \
  7388.     -DNO_DNS_SRV -DCK_AUTHENTICATION -DCK_SSL -DCK_TRIGGER \
  7389.     $(SSLINC) $(SSLLIB) $(KFLAGS)" \
  7390.     "LIBS=$(SSLLIB) -lcurses -lsocket -lssl -lcrypto $(LIBS)" \
  7391.     "LNKFLAGS=$(LNKFLAGS)"
  7392.  
  7393. #SCO OpenServer 5.0 with gcc, no networking.
  7394. #Note: NOSYSLOG required for non-net entries because it requires <socket.h>
  7395. sco32v500gcc:
  7396.     @echo Using gcc...
  7397.     $(MAKE) "MAKE=$(MAKE)" sco32v500CC=gcc CC2=gcc \
  7398.     KTARGET=$${KTARGET:-$(@)} "KFLAGS= $(KFLAGS)"
  7399.  
  7400. #SCO OpenServer 5.0 with networking, gcc.
  7401. sco32v500netgcc:
  7402.     @echo TCP/IP networking added - using gcc...
  7403.     $(MAKE) "MAKE=$(MAKE)" sco32v500net CC=gcc CC2=gcc \
  7404.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=$(KFLAGS)"
  7405.  
  7406. #SCO OpenServer 5.0 with networking, gcc, elf.
  7407. sco32v500netgccelf:
  7408.     @echo TCP/IP networking added - using gcc, dynamic elf library
  7409.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  7410.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-O3 -belf" "LNKFLAGS=-belf"
  7411.  
  7412. sco32v502:
  7413.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  7414.     "KFLAGS=-DSCO_OSR502 $(KFLAGS)"
  7415.  
  7416. #SCO OpenServer 5.0.2 with networking, SCO development tools.
  7417. sco32v502net:
  7418.     @echo TCP/IP networking added...
  7419.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  7420.     "KFLAGS=-b elf -DSCO_OSR502 $(KFLAGS)"
  7421.  
  7422. #SCO OpenServer 5.0.4 (SCO UNIX 3.2v5.0.4) with SCO development tools.
  7423. #Like 5.0, but adds high serial speeds.  First POSIX-based SCO version.
  7424. #Note: the -O flag is deliberately omitted for /bin/cc (= /usr/ccs/bin/cc).
  7425. sco32v504:
  7426.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5.0.4...
  7427.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7428.     "CFLAGS= -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  7429.     -DSCO_OSR504 -b elf -DPOSIX \
  7430.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  7431.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DNOSYSLOG $(KFLAGS)" \
  7432.     "LIBS=-lcurses $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  7433.  
  7434. #SCO OpenServer 5.0.4 with gcc, no networking.
  7435. sco32v504gcc:
  7436.     @echo Using gcc...
  7437.     $(MAKE) "MAKE=$(MAKE)" sco32v504 "CC=gcc" "CC2=gcc" \
  7438.     KTARGET=$${KTARGET:-$(@)} "KFLAGS= $(KFLAGS)"
  7439.  
  7440. #SCO OpenServer 5.0.4 with networking.
  7441. #SCO development tools (/bin/cc = /usr/ccs/bin/cc).
  7442. #Optimization deliberately suppressed.
  7443. sco32v504net:
  7444.     @echo Making C-Kermit $(CKVER) for SCO OpenServer Release 5.0.4...
  7445.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7446.     "CFLAGS= -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  7447.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  7448.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DTCPSOCKET \
  7449.     -b elf -DSCO_OSR504 -DPOSIX -DNO_DNS_SRV $(KFLAGS)" \
  7450.     "LIBS=-lcurses -lsocket $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  7451.  
  7452. #SCO OpenServer 5.0.4 with networking, gcc.
  7453. sco32v504netgcc:
  7454.     @echo TCP/IP networking added - using gcc...
  7455.     @echo If gcc crashes on ckwart.c then build it by hand:
  7456.     @echo " gcc -o wart -DCK_SCOV5 ckwart.c"
  7457.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  7458.     KTARGET=$${KTARGET:-$(@)} "KFLAGS=-DSCO_OSR504 -DPOSIX $(KFLAGS)"
  7459.  
  7460. #SCO OpenServer 5.0.4 with networking, gcc, elf.
  7461. sco32v504netgccelf:
  7462.     @echo TCP/IP networking added - using gcc, dynamic elf library
  7463.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc"
  7464.     KTARGET=$${KTARGET:-$(@)} \
  7465.     "KFLAGS=-DSCO_OSR504 -DPOSIX -O3 -belf $(KFLAGS)" \
  7466.     LNKFLAGS="-belf"
  7467.  
  7468. #SCO OpenServer 5.0.5 (SCO UNIX 3.2v5.0.5) with SCO /bin/cc.
  7469. #Like 5.0, but adds high serial speeds.  First POSIX-based SCO version.
  7470. #You might have to add "LIBS=-ltinfo" (some do, some don't).
  7471. sco32v505:
  7472.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  7473.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  7474.  
  7475. #SCO OpenServer 5.0.5 (SCO UNIX 3.2v5.0.5) with SCO UDK.
  7476. #This one can't see the high serial speeds and anything to do with modem
  7477. #signals doesn't work because UKD cc has its own alternative universe of
  7478. #header files.
  7479. sco32v505udk:
  7480.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  7481.     "KFLAGS=-DSCO_OSR505 -DDCLTIMEVAL -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  7482.  
  7483. #SCO OpenServer 5.0.5 with networking, SCO /bin/cc.
  7484. #See comments with sco32v505 targets.
  7485. sco32v505net:
  7486.     @echo TCP/IP networking added...
  7487.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  7488.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  7489.  
  7490. #SCO OpenServer 5.0.5 with networking and OpenSSL, SCO /bin/cc.
  7491. #See comments with sco32v505 targets.
  7492. sco32v505net+ssl:
  7493.     @echo TCP/IP networking and OpenSSL added...
  7494.     $(MAKE) "MAKE=$(MAKE)" sco32v500net+ssl KTARGET=$${KTARGET:-$(@)} \
  7495.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -b elf -DPOSIX $(KFLAGS) " \
  7496.     "LIBS=$(SSLLIB) -lcurses -lsocket -lssl -lcrypto $(LIBS)" \
  7497.     "LNKFLAGS=$(LNKFLAGS)"
  7498.  
  7499. #SCO OpenServer 5.0.5 with networking, SCO UDK.
  7500. #See comments with above sco32v505 targets.
  7501. sco32v505udknet:
  7502.     @echo TCP/IP networking added...
  7503.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  7504.     "KFLAGS=-DSCO_OSR505 -DDCLTIMEVAL -DNOSHADOW -b elf -DPOSIX $(KFLAGS)"
  7505.  
  7506. #SCO OpenServer 5.0.5 with gcc, no networking.
  7507. sco32v505gcc:
  7508.     @echo Using gcc...
  7509.     $(MAKE) "MAKE=$(MAKE)" sco32v500 "CC=gcc" "CC2=gcc" \
  7510.     KTARGET=$${KTARGET:-$(@)} \
  7511.     "KFLAGS=-DSCO_OSR505 -DPOSIX -funsigned-char $(KFLAGS)"
  7512.  
  7513. #SCO OpenServer 5.0.5 with gcc, no networking, no shadow passwords.
  7514. sco32v505xgcc:
  7515.     @echo Using gcc...
  7516.     $(MAKE) "MAKE=$(MAKE)" sco32v500 "CC=gcc" "CC2=gcc" \
  7517.     KTARGET=$${KTARGET:-$(@)} \
  7518.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -DPOSIX -funsigned-char $(KFLAGS)"
  7519.  
  7520. #SCO OpenServer 5.0.5 with networking, gcc.
  7521. sco32v505netgcc:
  7522.     @echo TCP/IP networking added - using gcc...
  7523.     @echo If gcc crashes on ckwart.c then build it by hand:
  7524.     @echo " gcc -o wart -DCK_SCOV5 ckwart.c"
  7525.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  7526.     KTARGET=$${KTARGET:-$(@)} \
  7527.     "KFLAGS=-DSCO_OSR505 -DNOSHADOW -DPOSIX -funsigned-char $(KFLAGS)"
  7528.  
  7529. #egcs is just like gcc but generates ELF by default.
  7530. #Or you can include -melf (not -belf) to force it.
  7531. sco32v505netegcs:
  7532.     $(MAKE) "MAKE=$(MAKE)" "KFLAGS=$(KFLAGS)" sco32v505netgcc \
  7533.     KTARGET=$${KTARGET:-$(@)}
  7534.  
  7535. #SCO OpenServer 5.0.5 with networking, gcc, elf.
  7536. sco32v505netgccelf:
  7537.     @echo TCP/IP networking added - using gcc, dynamic elf library
  7538.     $(MAKE) "MAKE=$(MAKE)" sco32v500net "CC=gcc" "CC2=gcc" \
  7539.     "KFLAGS=-DSCO_OSR505 -DPOSIX -funsigned-char -O3 -belf $(KFLAGS)" \
  7540.     KTARGET=$${KTARGET:-$(@)} LNKFLAGS="-belf"
  7541.  
  7542. #SCO OpenServer 5.0.6 with SCO /bin/cc.
  7543. # Add -DDCLTIMEVAL when building with UDK.
  7544. #Like 5.0.5.   IMPORTANT: Use sco32v506a target for 5.0.6a.
  7545. sco32v506:
  7546.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  7547.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -b elf -DPOSIX $(KFLAGS)"
  7548.  
  7549. #SCO OpenServer 5.0.6 with networking, SCO /bin/cc.
  7550. # Add -DDCLTIMEVAL when building with UDK.
  7551. # IMPORTANT: Use sco32v506a target for 5.0.6a.
  7552. sco32v506net:
  7553.     @echo TCP/IP networking added...
  7554.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  7555.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -b elf -DPOSIX $(KFLAGS)"
  7556.  
  7557. #SCO OpenServer 5.0.6a, no networking, SCO development tools.
  7558. #This one has patched sio drivers that, for the first time,
  7559. #actually handle modem signals correctly.
  7560. # Add -DDCLTIMEVAL when building with UDK.
  7561. sco32v506a:
  7562.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  7563.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR506A -DNEEDMDMDEFS \
  7564.     -b elf -DPOSIX $(KFLAGS)"
  7565.  
  7566. #SCO OpenServer 5.0.6a with networking, SCO development tools.
  7567. # Add -DDCLTIMEVAL when building with UDK.
  7568. sco32v506anet:
  7569.     @echo TCP/IP networking added...
  7570.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  7571.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR506A -DNEEDMDMDEFS \
  7572.     -b elf -DPOSIX $(KFLAGS)"
  7573.  
  7574. #SCO OpenServer 5.0.7, no networking, SCO development tools.
  7575. #Adds flags to make PTY and SSH commands work.  These have been tested
  7576. #only in 5.0.7 but probably they can also be added to earlier OSR5 targets.
  7577. sco32v507:
  7578.     $(MAKE) "MAKE=$(MAKE)" sco32v500 KTARGET=$${KTARGET:-$(@)} \
  7579.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR507 -DNEEDMDMDEFS \
  7580.     -DHAVE_PTSNAME -DHAVE_PTMX -DHAVE_GRANTPT \
  7581.     -b elf -DPOSIX $(KFLAGS)"
  7582.  
  7583. #SCO OpenServer 5.0.7 as above but with networking.
  7584. sco32v507net:
  7585.     @echo TCP/IP networking added...
  7586.     $(MAKE) "MAKE=$(MAKE)" sco32v500net KTARGET=$${KTARGET:-$(@)} \
  7587.     "KFLAGS=-DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR507 -DNEEDMDMDEFS \
  7588.     -DHAVE_PTSNAME -DHAVE_PTMX -DHAVE_GRANTPT \
  7589.     -b elf -DPOSIX $(KFLAGS)"
  7590.  
  7591. #SCO OpenServer 6 (new target 30 Jan 2006)
  7592. sco_osr600 sco600:
  7593.     @echo Making C-Kermit $(CKVER) for SCO OpenServer 6.0.0...
  7594.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7595.     "CFLAGS= -O -DDIRENT -DHDBUUCP -DSVR4 -DCK_SCOV5 -DCK_RTSCTS \
  7596.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DSELECT -DSELECT_H \
  7597.     -DNOGETUSERSHELL -DNOLSTAT -DNOLINKBITS -DTCPSOCKET \
  7598.     -DNO_DNS_SRV -DSCO_OSR505 -DSCO_OSR506 -DSCO_OSR507 -DNEEDMDMDEFS \
  7599.     -DHAVE_PTSNAME -DHAVE_PTMX -DHAVE_GRANTPT -DDCLTIMEVAL \
  7600.     -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \
  7601.     -DSOCKOPT_T=socklen_t -DGSOCKNAME_T=size_t -DGPEERNAME_T=size_t \
  7602.     -DHERALD=\"\\\" SCO OpenServer `uname -v`\\\"\" \
  7603.     -b elf -DPOSIX $(KFLAGS)" \
  7604.     "LIBS=-lcurses -lsocket $(LIBS)" "LNKFLAGS=$(LNKFLAGS)"
  7605.  
  7606. #Tandy 16/6000 with Xenix 3.0 (16 bits)
  7607. #C-Kermit 7.0 (and later) do not build here; "too many defines".
  7608. #Add more -DNOxxx options to remove features if program won't load.
  7609. #Successful operation is a function of program size, physical memory,
  7610. #available swap space, etc.  The following stripped-down configuration
  7611. #seems to work on most Tandy 6000s.  NOTE: "-+" means allow long variable
  7612. #names, needed for C-Kermit 6.0 because some identifiers are not unique
  7613. #within the first six characters.
  7614. trs16:
  7615.     @echo 'Making C-Kermit $(CKVER) for Tandy 16/6000, Xenix 3.0...'
  7616.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7617.     "CFLAGS = -+ -DATTSV -DTRS16 -DNOMKDIR -DDCLPOPEN -DCK_CURSES \
  7618.     -DNODEBUG -DNOTLOG -DNOHELP -DNOSCRIPT -DNOCSETS -DNOIKSD \
  7619.     -DNOREDIRECT -DNOSYSLOG -DNOPUTENV -DNOREALPATH -DNOLEARN \
  7620.     $(KFLAGS) -O" "LIBS= -lcurses -ltermcap" "LNKFLAGS = -+ -n -s"
  7621.  
  7622. # QNX 4.21 and above, 32-bit version, Watcom C32 10.6, fully configured,
  7623. # except no job control because QNX 4.x does not support it.  New NCURSES
  7624. # library used instead of CURSES.
  7625. #
  7626. # -Oatx optimizes to favor speed over size: loop optimization, inline fn's.
  7627. # -Os favors size over speed.  Saves 30-40K out of about 1.75M.
  7628. # -3r = generate 386 code with register-based arg passing.
  7629. # -3s = generate 386 code with stack-based arg passing.
  7630. # -ms = separate code & data 4GB segments (32-bit builds only).
  7631. # -mf = flat memory model code+data in one 4GB segment (ditto).
  7632. # -zc = place literal strings in code segment.
  7633. # -N4M = Big stack (increase the digit upon SIGSEGVs at runtime).
  7634. # chars are unsigned by default (-j makes them signed by default).
  7635. # -NOUUCP is included because QNX doesn't use it.
  7636. # Add these to the end if you like but they dump core on my QNX 4.25 system:
  7637. #
  7638. #    @wermit -h >use.qnx
  7639. #    @usemsg wermit use.qnx
  7640. #    @rm use.qnx
  7641. #
  7642. # If you get warnings about HEADER or C_IN add -DNO_DNS_SRV.
  7643. # OK 2011/06/14
  7644. qnx32:
  7645.     @echo 'Making C-Kermit $(CKVER) for QNX 4.2x, 32-bit...'
  7646.     $(MAKE) xermit \
  7647.     "LNKFLAGS = -N4M -3r" \
  7648.     "CFLAGS = -ms -3r -DQNX -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL \
  7649.     -DCK_WREFRESH -DCK_REDIR -DSELECT -DSELECT_H -DCK_RTSCTS -DNOJC \
  7650.     -DNOINITGROUPS -DNOUUCP -DCK_ANSIC -DPID_T=pid_t -Oatx -zc $(KFLAGS)" \
  7651.     "LIBS= -lsocket -lncurses -ltermcap"
  7652.  
  7653. # As above but no networking since some QNX systems do not have TCP/IP
  7654. # installed, or the TCP/IP developers kit, which includes all the needed
  7655. # header files.  This entry has not been tested on a QNX system that, in
  7656. # fact, does not have TCP/IP installed; some adjustments might be necessary,
  7657. # in particular regarding the use of select(): is -lsocket needed, can we
  7658. # get the needed definitions from non-TCP/IP header files (FD_SET, etc)?
  7659. qnx32nonet:
  7660.     @echo 'Making C-Kermit $(CKVER) for QNX 4.2x, 32-bit, no net...'
  7661.     $(MAKE) xermit \
  7662.     "LNKFLAGS = -N4M -3r" \
  7663.     "CFLAGS = -3r -ms -DQNX -DNONET -DNOIKSD -DCK_CURSES \
  7664.     -DCK_WREFRESH -DCK_REDIR -DSELECT -DSELECT_H -DCK_RTSCTS -DNOJC \
  7665.     -DNOUUCP -DCK_ANSIC -DPID_T=pid_t -Oatx -zc $(KFLAGS)" \
  7666.     "LIBS= -lsocket -lncurses -ltermcap"
  7667.     @wermit -h >use.qnx
  7668.     @usemsg wermit use.qnx
  7669.     @rm use.qnx
  7670.  
  7671. # Synonym for qnx32.
  7672. qnx:
  7673.     $(MAKE) qnx32 "KFLAGS=$(KFLAGS)"
  7674.  
  7675. # QNX 4.21 and above, 16-bit version, Watcom C 8.5 - and higher on i286 PCs
  7676. # and above.
  7677. #
  7678. #    IMPORTANT: Do not use Watcom C 10.6!!!
  7679. #    If you have it installed, add "-v9.52 to CFLAGS"
  7680. #
  7681. # NOTE: QNX 4.23 onward does not work on 286's anyway.
  7682. # Stacksize 26000, objects larger than 100 bytes in their own segments,
  7683. # string constants to the codesegment, etc.  Fully configured except job ctrl.
  7684. # This entry works for building a 16-bit executable on a 32-bit system, but
  7685. # has not been tested on a 16-bit system.  Uses large memory model, links
  7686. # explicitly with large-model sockets library.  Correct-model curses library
  7687. # is chosen automatically.  See comment in qnx32 entry about -DNOUUCP.
  7688. #
  7689. # WARNING:
  7690. #
  7691. # Watcom C prior to 10.6 never had released curses library. To link against it,
  7692. # you must obtain ported free curses source from ftp://ftp.qnx.com/usr/free,
  7693. # then compile and build library (cursesl.lib) and place it in /usr/lib.  You
  7694. # must also copy curses.h to /usr/include.  Be aware that if you have Watcom
  7695. # 10.6 installed, you should already have curses.h, which is the new ncurses
  7696. # library. You must back it up and use free curses.h instead, since ncurses is
  7697. # only for 32-bit applications and some definitions in these files are
  7698. # different (e.g., clearok()).  For safety, curses is not defined in build.
  7699. #
  7700. # In 7.0 -DNOHELP added to keep ckuus2.c from blowing up; NOCSETS and NOSPL
  7701. # added because ckuus4 was blowing up, and NOFLOAT just because it seemed
  7702. # dangerous (remove -DNOFLOAT if you want to try it), The result works OK
  7703. # except for some mysterious beeps upon termination of the top-level keyword.
  7704. #
  7705. # Things to try next time we get in trouble:
  7706. #  . Change -zt100 to something smaller like -zt25
  7707. #  . Change -Oatx to -Omilerat (enable stack checking)
  7708. #  . Maybe get rid of -v9.52 -- it's only there because we were warned.
  7709. #
  7710. qnx16:
  7711.     @echo 'Making C-Kermit $(CKVER) for QNX 4.21, 16-bit...'
  7712.     $(MAKE) xermit \
  7713.     "LNKFLAGS = -2 -ml -N 26000" \
  7714.     "CFLAGS = -2 -Oatx -zc -zt100 -ml -DQNX -DQNX16 -DNOUUCP -DNOHELP \
  7715.     -DCK_REDIR -DSELECT -DSELECT_H -DNOJC -DNOGETUSERSHELL -DNOCSETS \
  7716.     -v9.52 -DTCPSOCKET -DCK_RTSCTS -DCK_ANSIC -DNOINITGROUPS -DNOKVERBS \
  7717.     -DNORANDOM -DNOCSETS -DNOSPL -DNOFLOAT -DPID_T=pid_t $(KFLAGS)"
  7718.  
  7719. # QNX 4.1, 16-bit version, with Watcom C 8.5 on i286 PCs and above.
  7720. # stacksize 26000, objects larger than 100 bytes in their own segments,
  7721. # string constants to the codesegment, etc.  Add -DNOUUCP if desired.
  7722. qnx16_41:
  7723.     @echo 'Making C-Kermit $(CKVER) for QNX 4.1, 16-bit...'
  7724.     $(MAKE) xermit \
  7725.     "LNKFLAGS = -mh -N 26000" "CFLAGS = -Wc,-fpc -Wc,-j -DNOGETUSERSHELL \
  7726.     -Wc,-Ols -Wc,-zdf -Wc,-zc -Wc,-zt100 -mh -DPOSIX -DQNX -DDIRENT \
  7727.     -DNOCYRIL -DNODEBUG -DNOMSEND -DMINIDIAL -DNOXMIT -DNOSCRIPT -DNOSPL \
  7728.     -DNOSETKEY -DNOINITGROUPS -DQNX16 -DPID_T=pid_t $(KFLAGS)"
  7729.  
  7730. # QNX Neutrino 2 (pwaechtler@qnx.de) crosscompiled on QNX 4.25.
  7731. # Gets lots of compiler warnings.
  7732. qnx_nto2+:
  7733.     @echo 'Making C-Kermit $(CKVER) for QNX Neutrino 2+ '
  7734.     cc -o wart ckwart.c
  7735.     $(MAKE) xermit \
  7736.     "CC = qcc -Vgcc_ntox86" \
  7737.     "CC2 = qcc -Vgcc_ntox86" \
  7738.     "LNKFLAGS = " \
  7739.     "CFLAGS = -DNEUTRINO -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL \
  7740.     -DNOUUCP -DCK_WREFRESH -DCK_REDIR -DSELECT -DSELECT_H -DCK_RTSCTS \
  7741.     -DNOJC -DNOINITGROUPS -DCK_ANSIC -DPID_T=pid_t -DUNIX -DDIRENT \
  7742.     -DMYREAD -DBSD44ORPOSIX -DSVORPOSIX -DNDGPWNAM $(KFLAGS)" \
  7743.     "LIBS= -lsocket -lncurses "
  7744.  
  7745. # QNX 6 (= Neutrino 2.xx) native build (kirussel@cisco.com).
  7746. qnx6:
  7747.     @echo 'Making C-Kermit $(CKVER) for QNX6'
  7748.     $(MAKE) xermit KTARGET=QNX6 \
  7749.     "CFLAGS = -DPOSIX -DCK_POSIX_SIG -DNETPTY -DNOARROWKEYS \
  7750.     -DUSE_TIOCSDTR -DBIGBUFOK -DCKMAXOPEN=100 -DRLOGCODE -DNOREALPATH \
  7751.     -DMAXNAMLEN=48 -DQNX6 -DUSE_TERMIO -DINIT_SPTY \
  7752.     -DCK_CURSES -DCK_WREFRESH -DCK_NEWTERM -DDYNAMIC \
  7753.     -DTCPSOCKET -DNOGETUSERSHELL -DCK_REDIR -DSELECT -DSELECT_H \
  7754.     -DCK_RTSCTS -DNOJC -DSVORPOSIX -DBSD44ORPOSIX -DNOUUCP -DCK_ANSIC \
  7755.     $(KFLAGS) -O" \
  7756.     "LIBS= -lsocket  -lncurses"
  7757.  
  7758. #MINIX/2.0 32 Bit version for intel 386+ running the POSIX-compliant MINIX
  7759. # version 2.0 (The definition of fatal avoids a conflict with a symbol by
  7760. # the same name in the curses library.) It is impossible to compile with
  7761. # network support since Minix does not support Berkeley sockets.
  7762. # Note: use chmem liberally on the compiler passes, make, and the final
  7763. # kermit executable. (3 megabytes of memory for each is sufficient.)
  7764. # From Terry McConnell, Syracuse U, and Will Rose.  Will says:
  7765. # The stacks for make and some compiler passes needed to be increased
  7766. # with chmem as follows:
  7767. #   make 1MB
  7768. #   /usr/lib/em_cemcom.ansi 3MB
  7769. #   /usr/lib/em_opt 1MB
  7770. #   /usr/lib/i386/cg 1MB
  7771. #   /usr/lib/i386/as 1MB
  7772. # The compiler temporary directory was set to /usr/tmp via the TMPDIR
  7773. # environment variable; more than 1MB of temporary space was needed.
  7774. # Kermit itself needs at least 1MB of stack.
  7775. minix20:
  7776.     @echo 'Making C-Kermit $(CKVER) for MINIX 2.0/386...'
  7777.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} EXT=o \
  7778.     "CFLAGS=  -wo -DV7 -DMINIX2 -DMINIX -DSIG_V -D_POSIX_SOURCE \
  7779.     -DCKCPU=\\\"i-386\\\" -DNOIKSD -Dfatal=myfatal -DCK_CURSES -DNOLEARN \
  7780.     -DNOSYSLOG -DUSE_MEMCPY -DNOREALPATH $(KFLAGS)" "LIBS= -lcurses"
  7781.  
  7782. #MINIX/386 (PC Minix modified by Bruce Evans in Australia for 386 addressing)
  7783. # For MINIX 1.5+ (but < 2.0)
  7784. minix386:
  7785.     @echo 'Making C-Kermit $(CKVER) for MINIX/386...'
  7786.     @echo 'TOTALLY UNTESTED!'
  7787.     $(MAKE) wermit EXT=s KTARGET=$${KTARGET:-$(@)} \
  7788.     "CFLAGS= -DV7 -DMINIX -D_POSIX_SOURCE -DNOLEARN $(KFLAGS)"
  7789.  
  7790. #MINIX/386 Minix modified by Bruce Evans in Australia to use 386 addressing
  7791. minix386gcc:
  7792.     @echo 'Making C-Kermit $(CKVER) for MINIX/386 with gcc...'
  7793.     @echo 'TOTALLY UNTESTED!'
  7794.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} "CC=gcc -g -O" "CC2=gcc -g" \
  7795.     "CFLAGS= -DV7 -DMINIX -D_POSIX_SOURCE -DNOLEARN $(KFLAGS)"
  7796.  
  7797. #MINIX - 68k version with ACK compiler.
  7798. # If you have trouble compiling or running wart, "touch wart".
  7799. # If it still doesn't work, "touch ckcpro.c".
  7800. # The version configured below has many features removed, including
  7801. # the TRANSMIT, MSEND, HELP, and SCRIPT commands, international
  7802. # character set support, and the entire script programming language.
  7803. # But it does have an interactive command parser.
  7804. # Make sure make(1) has (at least) 100000 chmemory!
  7805. # If you are using the Amsterdam C compiler, you might have to add "-D__ACK__".
  7806. minix68k:
  7807.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with ACK...'
  7808.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7809.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE -DNOLEARN \
  7810.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  7811.     -DNOSCRIPT -DNOCSETS -DNOSPL $(KFLAGS) \
  7812.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  7813.  
  7814. #MINIX - 68k version with c68 compiler.
  7815. # If you have trouble compiling or running wart, "touch wart" or
  7816. # "touch ckcpro.c". Compiling ckudia.c (no -DNODIAL!) might fail. :-(
  7817. # Give c68 250000 bytes of stack+heap; make sure make(1) has at least
  7818. # 100000 chmemory.  On a 1MB Atari ST this means that the recursive
  7819. # call of make fails due to memory shortage.  Try "make -n minixc68 >makeit",
  7820. # followed by ". makeit".  Otherwise, as above.
  7821. minixc68:
  7822.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with c68...'
  7823.     $(MAKE) wermit "CC= cc -c68" KTARGET=$${KTARGET:-$(@)} \
  7824.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE -DNOLEARN \
  7825.     -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  7826.     -DNOSCRIPT -DNOCSETS -DNOSPL $(KFLAGS) \
  7827.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  7828.  
  7829. #MINIX - 68k version with c68 compiler.
  7830. #A variation on the above that was recently (Sep 95) reported to work.
  7831. minixc68a:
  7832.     @echo 'Making C-Kermit $(CKVER) for MINIX 68k with c68...'
  7833.     $(MAKE) wermit "CC= cc -c68" KTARGET=$${KTARGET:-$(@)} \
  7834.     "CFLAGS= -DV7 -DMINIX -D_MINIX -D_POSIX_SOURCE \
  7835.     -DCK_ANSIC -DNODEBUG -DNOTLOG -DMINIDIAL -DEXTEN -DMYCURSES \
  7836.     -DNOSCRIPT -DNOCSETS -DNOSPL -DNOJC -DDIRENT -DNOLEARN \
  7837.     -DNOSETKEY -DNOESCSEQ $(KFLAGS) \
  7838.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V"
  7839.  
  7840. #MIPS Computer Systems with UMIPS RISC/OS 4.52 = AT&T UNIX System V R3.0.
  7841. #Remove -DNOJC if job control can be safely used.
  7842. mips:
  7843.     @echo 'Making C-Kermit $(CKVER) for MIPS RISC/OS...'
  7844.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7845.     "CFLAGS = -DMIPS -DDIRENT -DCK_POLL -DNOJC -DNOLEARN -DPID_T=int \
  7846.     -DGID_T=gid_t -DUID_T=uid_t -i -O1500 $(KFLAGS)"
  7847.  
  7848. #As above, but with TCP/IP and fullscreen support.
  7849. mipstcpc:
  7850.     @echo 'Making C-Kermit $(CKVER) for MIPS RISC/OS...'
  7851.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7852.     "CFLAGS = -DMIPS -DDIRENT -DCK_POLL -DNOJC \
  7853.     -DTCPSOCKET -DCK_CURSES -I/usr/include/bsd \
  7854.     -DPID_T=int -DGID_T=gid_t -DUID_T=uid_t -i -O1500 $(KFLAGS)" \
  7855.     "LIBS = -lcurses -lbsd"
  7856.  
  7857. #Motorola Delta System V/68 R3, signal() is void rather than int.
  7858. #Uses dirent.h and Honey DanBer uucp.  Supports TCP/IP.
  7859. #After building, use "mcs -d" to reduce size of the executable program.
  7860. sv68r3:
  7861.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3...'
  7862.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7863.     "CFLAGS = -DSVR3 -DSV68 -DDIRENT -DHDBUUCP -DNO_DNS_SRV -DTCPSOCKET \
  7864.     -DNOUNICODE -DNOLEARN -DUSE_MEMCPY $(KFLAGS) -O" "LNKFLAGS ="
  7865.  
  7866. #Motorola Delta System V/68 R3V5, signal() is void rather than int.
  7867. #Uses dirent.h and Honey DanBer UUCP.  Supports TCP/IP.
  7868. #After building, use "mcs -d" to reduce size of the executable program.
  7869. sv68r3v5:
  7870.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V5'
  7871.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  7872.     "CFLAGS = -DSVR3 -DSV68 -DDIRENT -DHDBUUCP -DNO_DNS_SRV -DUSE_MEMCPY \
  7873.     -DTCPSOCKET -DINADDRX -DNOUNICODE -DFNFLOAT -DNOLEARN $(KFLAGS) -O" \
  7874.     "LNKFLAGS =" "LIBS = -linet -lm"
  7875.  
  7876. #Motorola MVME147 System V/68 R3 V5.1. Requires gcc 2.1 to compile.
  7877. #After building, use "mcs -d" to reduce size of the executable program.
  7878. sv68r3v51:
  7879.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V5.1'
  7880.     $(MAKE) wermit "CC=gcc-delta" "CC2=gcc-delta" \
  7881.     KTARGET=$${KTARGET:-$(@)} \
  7882.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNODEBUG -DNO_DNS_SRV -DNOLEARN \
  7883.     -DNOUNICODE -DFNFLOAT -DSV68 -DUSE_MEMCPY $(KFLAGS) \
  7884.     -O2 -v -ftraditional" \
  7885.     "LNKFLAGS = -s -v" "LIBS = -lm881 -lm"
  7886.  
  7887. #Motorola MVME147 System V/68 R3V6. derived from Motorola Delta System R3V5.
  7888. #Checked on larger Motorola System V/68 R3V6 (with NSE Network Services Ext.)
  7889. #After building, use "strip" to reduce size of the executable program.
  7890. # "LIBS = -lnsl" removed in C-Kermit 6.1 - put back if needed.
  7891. # "LIBS = lm" added in 7.1/8.0 for floating-point math.
  7892. # ckuusr.c clobbers the optimizer.
  7893. sv68r3v6:
  7894.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/68 R3V6'
  7895.     $(MAKE) ckuusr.$(EXT) KTARGET=$${KTARGET:-$(@)} \
  7896.     "CFLAGS = -DSV68R3V6 -DDIRENT -DHDBUUCP -DNOLOGIN -DNOINITGROUPS \
  7897.     -DNOSYMLINK -DNOREDIRECT -DNOGFTIMER -DTCPSOCKET -DDCLGETCWD -DSV68 \
  7898.     -DNO_DNS_SRV -DNOUNICODE -DFNFLOAT -DSELECT -DUSE_MEMCPY $(KFLAGS)"
  7899.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7900.     "CFLAGS = -O -DSV68R3V6 -DDIRENT -DHDBUUCP -DNOLOGIN -DNOINITGROUPS \
  7901.     -DNOSYMLINK -DNOREDIRECT -DNOGFTIMER -DTCPSOCKET -DDCLGETCWD -DSV68 \
  7902.     -DNO_DNS_SRV -DNOUNICODE -DFNFLOAT -DSELECT -DUSE_MEMCPY $(KFLAGS)" \
  7903.     "LNKFLAGS =" "LIBS = -lm"
  7904.  
  7905. #Motorola Delta System V/88 R32, signal() is void rather than int.
  7906. #Uses dirent.h and Honey DanBer uucp.  Needs <sys/utime.h> for setting
  7907. #file dates.  Supports TCP/IP.
  7908. #After building, use "mcs -d" to reduce size of the executable program.
  7909. sv88r32:
  7910.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R32...'
  7911.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7912.     "CFLAGS = -DSV88R32 -DDIRENT -DHDBUUCP -DTCPSOCKET \
  7913.     -DSYSUTIMEH -DCK_CURSES -DNOGETUSERSHELL -DGTODONEARG $(KFLAGS) -O" \
  7914.     "LIBS= -lcurses -lresolv" "LNKFLAGS = -s"
  7915.  
  7916. #Motorola Delta System V/88 R40.  Has <sys/termiox.h>, regular Berkeley
  7917. #sockets library, i.e. in.h and inet.h are not misplaced in sys (rather than
  7918. #netinet and arpa, respectively).  Uses ANSI C constructs, advisory file
  7919. #locking on devices, etc.  curses support added.  Reportedly, the
  7920. #/usr/include/sys/vnode.h file has a bug which must be fixed before this
  7921. #makefile entry can work correctly.  The "if DEBUG" directive at about line
  7922. #320 must be changed to "ifdef DEBUG" (Reportedly, this was fixed in
  7923. #in System V/88 R4.3).
  7924. #After building, use "mcs -d" to reduce size of the executable program.
  7925. sv88r40:
  7926.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R40...'
  7927.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7928.     "CFLAGS = -O -DSVR4 -DMOTSV88R4 -DDIRENT -DHDBUUCP -DSTERMIOX \
  7929.     -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL -DGTODONEARG -DFNFLOAT \
  7930.     $(KFLAGS)" \
  7931.     "LIBS= -lsocket -lnsl -lcurses -lresolv -lm" "LNKFLAGS = -s"
  7932.  
  7933. #As above but without the floating-point math library.
  7934. sv88r40nm:
  7935.     @echo 'Making C-Kermit $(CKVER) for Motorola UNIX System V/88 R40...'
  7936.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7937.     "CFLAGS = -O -DSVR4 -DMOTSV88R4 -DDIRENT -DHDBUUCP -DSTERMIOX \
  7938.     -DTCPSOCKET -DCK_CURSES -DNOGETUSERSHELL -DGTODONEARG $(KFLAGS)" \
  7939.     "LIBS= -lsocket -lnsl -lcurses -lresolv" "LNKFLAGS = -s"
  7940.  
  7941. #As above but with floating-point math library support \ffp...() functions
  7942. #and S-Expressions.
  7943.  
  7944. #Olivetti X/OS R2.3, 3.x.
  7945. #NOTES:
  7946. # . If you build the executable on 2.x X/OS, it will also run on 3.x.
  7947. # . If you build it on 3.x X/OS, it will NOT run on 2.x.
  7948. # . Kermit can run with no privileges unless the uucp lines are protected,
  7949. #   in which case kermit must be owned by uucp with suid bit set:
  7950. #   chown uucp kermit ; chmod 4111 kermit.
  7951. xos23:
  7952.     @echo 'Making C-Kermit $(CKVER) for Olivetti X/OS...'
  7953.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7954.     'CFLAGS=-OLM -DOXOS -DTCPSOCKET -DHDBUUCP $(KFLAGS)' \
  7955.     "LIBS=" "LNKFLAGS="
  7956.  
  7957. #As above, but with curses.
  7958. xos23c:
  7959.     @echo 'Making C-Kermit $(CKVER) for Olivetti X/OS with curses...'
  7960.     $(MAKE) xermit KTARGET=$${KTARGET:-$(@)} \
  7961.     'CFLAGS=-OLM -DOXOS -DTCPSOCKET -DHDBUUCP -DCK_CURSES $(KFLAGS)' \
  7962.     "LIBS=-lcurses" "LNKFLAGS="
  7963.  
  7964. ckuuid:
  7965.     @echo 'building C-Kermit $(CKVER) set-UID/set-GID test programs'
  7966.     $(CC) -DANYBSD -DSAVEDUID -o ckuuid1 ckuuid.c
  7967.     $(CC) -DANYBSD -o ckuuid2 ckuuid.c
  7968.     $(CC) -DANYBSD -DNOSETREU -o ckuuid3 ckuuid.c
  7969.     $(CC) -DANYBSD -DSETEUID -DNOSETREU -o ckuuid4 ckuuid.c
  7970.     $(CC) -o ckuuid5 ckuuid.c
  7971.     @echo 'Read the top of ckuuid.c for directions...for testing'
  7972.     @echo 'you must make these programs setuid and setgid'
  7973.  
  7974. ############################################################################
  7975. # A N T I Q U I T I E S
  7976. #
  7977. # The following are antique targets from C-Kermit 5A or earlier.  They have
  7978. # not been updated or tested in years.  Most of them will need recent features
  7979. # disabled, usually with some combination of -DNOUNICODE, -DNOIKSD, -DNOANSI,
  7980. # -DNOCKGHNLHOST, -DNO_DNS_SRV, -DNOREDIRECT, -DNOREALPATH, -DNOCURSES, etc.
  7981. # They are also missing the KTARGET=$${KTARGET:-$(@)} business.
  7982. # For details see ckuins.txt and ckccfg.txt.
  7983. #
  7984. ############################################################################
  7985.  
  7986. #Berkeley Unix 2.8, 2.9 for PDP-11s with I&D space, maybe also Ultrix-11???
  7987. #C-Kermit(5A) is simply too large (even turning off almost every feature
  7988. #available) to run without both I&D space plus overlays.  The old comment
  7989. #suggested running 'pcc' but that won't help.  Changing 'cc' to 'ckustr.sed'
  7990. #will cause a string extraction to be done, saving D space by moving strings
  7991. #to a file.
  7992. bsd29:
  7993.     @echo Making C-Kermit $(CKVER) for 2.8 or 2.9BSD.
  7994.     @echo Read the makefile if you have trouble with this...
  7995.     $(MAKE) ovwermit \
  7996.     "CFLAGS= -DBSD29 -DNODEBUG -DNOTLOG -DNOCSETS -DNOHELP \
  7997.     -DNOSCRIPT -DNOSPL -DNOXMIT -DNODIAL $(KFLAGS)" \
  7998.     "LNKFLAGS= -i -lndir" "CC= cc " "CC2= cc"
  7999.  
  8000. bsd210:
  8001.     @echo Please use ckubs2.mak to build C-Kermit $(CKVER) for 2.10BSD.
  8002.  
  8003. bsd211:
  8004.     @echo Please use ckubs2.mak to build C-Kermit $(CKVER) for 2.11BSD.
  8005.  
  8006. #Charles River Data Systems Universe with UNOS Version 9.2
  8007. crds:
  8008.     @echo 'Making C-Kermit $(CKVER) for Charles River Data Systems...'
  8009.     make xermit \
  8010.     "CFLAGS = -DATTSV -DNOANSI -DDIRENT -DLONGFN -DTCPSOCKET \
  8011.     -DLOCK_DIR=\\\"/usr/spool/uucp\\\" -DNOSETREU \
  8012.     -Dsuspend=ksuspend $(KFLAGS) -O" "LNKFLAGS ="
  8013.  
  8014. #Microport SV/AT for IBM PC/AT 286 and clones, System V R2.
  8015. #The -O flag may fail on some modules (like ckuus2.c), in which case you
  8016. #should compile them by hand, omitting the -O.  If you get "hash table
  8017. #overflow", try adding -DNODEBUG.
  8018. #Also, reportedly this compiles better with gcc than with cc.
  8019. mpsysv:
  8020.     @echo 'Making C-Kermit $(CKVER) for Microport SV/AT 286...'
  8021.     $(MAKE) wermit \
  8022.     "CFLAGS= -DATTSV -DNOLEARN $(KFLAGS) -O -Ml" "LNKFLAGS = -Ml"
  8023.  
  8024. #Microsoft "Xenix/286" e.g. for IBM PC/AT
  8025. xenix:
  8026.     @echo 'Making C-Kermit $(CKVER) for Xenix/286'
  8027.     $(MAKE) wermit \
  8028.     "CFLAGS= -DXENIX -DNOFILEH -DNOLEARN $(KFLAGS) -Dunix -F 3000 -i" \
  8029.     "LNKFLAGS = -F 3000 -i"
  8030.  
  8031. #PC/IX, Interactive Corp System III for IBM PC/XT
  8032. pcix:
  8033.     @echo 'Making C-Kermit $(CKVER) for PC/IX...'
  8034.     $(MAKE) wermit \
  8035.     "CFLAGS= -DPCIX -DISIII -DNOLEARN $(KFLAGS) \
  8036.     -Dsdata=sdatax -O -i" "LNKFLAGS = -i"
  8037.  
  8038. #Integrated Solutions Inc V8S VME 68020
  8039. isi:
  8040.     @echo Making C-Kermit $(CKVER) for 4.2BSD on ISI...
  8041.     $(MAKE) wermit "CC = cc" \
  8042.     "CFLAGS= -DBSD4 -DTCPSOCKET -DINADDRX -DDCLPOPEN -DDEBUG -DNOSETREU \
  8043.     -DCK_CURSES -DNOLEARN $(KFLAGS)" "LIBS = -lcurses -ltermcap"
  8044.  
  8045. #Interactive Corp version of AT&T System III
  8046. #is3: (very old, probably not sufficient for 5A or later)
  8047. #    @echo 'Making C-Kermit $(CKVER) for Interactive System III...'
  8048. #    make wermit "CFLAGS = -DISIII -Ddata=datax -O -i" "LNKFLAGS = -i"
  8049. #The following should work, use it if you don't have gcc.
  8050. #Use is3gcc if you have gcc.
  8051. is3:
  8052.     @echo 'Making C-Kermit $(CKVER) for Interactive System III...'
  8053.     $(MAKE) wermit \
  8054.     "CFLAGS= -DISIII $(KFLAGS) -Ddata=datax -DNAP -DHDBUUCP
  8055.     -DLOCK_DIR=\"/usr/spool/uucp\" -DSIGTYP=void -O -i" "LNKFLAGS = -i"
  8056.  
  8057. #Interactive UNIX System V R3, no network support.  Uses <dirent.h> and Honey
  8058. #DanBer UUCP.  If this entry does not compile correctly, try any or all of the
  8059. #following.  These suggestions also apply more or less to the other is5r3xxx
  8060. #entries that follow this one.
  8061. # . Remove the UID_T and GID_T definitions, or change them as required.
  8062. # . Change -DDIRENT to -DSDIRENT.
  8063. # . Add -DSIGTYP=void.
  8064. # . Remove -g from LNKFLAGS.
  8065. # . Add -DNOANSI to remove compiler complaints about ANSI C constructions
  8066. # . Add other -DNOxxx's to save space (e.g. -DNOCSETS)
  8067. # See the next few makefile entries for related examples.
  8068. # Also see sys5r32is for making a portable i386 SVR3 binary.
  8069. is5r3:
  8070.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix or later...'
  8071.     @echo 'If this does not work please read the makefile entry.'
  8072.     $(MAKE) wermit \
  8073.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -g -DNOCSETS -DNOREALPATH \
  8074.     -DUID_T=ushort -DGID_T=ushort -DI386IX $(KFLAGS)" \
  8075.     "LNKFLAGS = -g"
  8076.  
  8077. #Interactive Corp System System V R3 with gcc
  8078. is3gcc:
  8079.     @echo 'Making C-Kermit $(CKVER) for Interactive System V R3 / gcc...'
  8080.     $(MAKE) wermit CC=gcc CC2=gcc \
  8081.     'CFLAGS = -D_SYSV3 -DISIII -Ddata=datax -DNAP -DHDBUUCP -DNOREALPATH \
  8082.     -DLOCK_DIR=\"/usr/spool/uucp\" -DSIGTYP=void -O' "LNKFLAGS ="
  8083.  
  8084. #Interactive UNIX System V R3, POSIX variant.  Untested.
  8085. #Uses dirent.h and Honey DanBer uucp.  Read comments in is5r3 entry.
  8086. is5r3p:
  8087.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix or later...'
  8088.     $(MAKE) wermit \
  8089.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP -g -DNOCSETS -DNOREALPATH \
  8090.     -DI386IX -DPOSIX $(KFLAGS)" "LNKFLAGS=" "LIBS=-lcposix"
  8091.  
  8092. #Interactive UNIX SVR3 2.2.1, job control, curses, no net, gcc.
  8093. is5r3gcc:
  8094.     $(MAKE) wermit CC=gcc CC2=gcc \
  8095.     "CFLAGS=-g -posix -DSVR3 -DDIRENT -DNOREALPATH \
  8096.     -DHDBUUCP -O -DNOCSETS -DI386IX -DSVR3JC -DCK_CURSES \
  8097.     $(KFLAGS)" LNKFLAGS="-posix" LIBS="-lcurses -lc_s"
  8098.  
  8099. #Interactive UNIX System V R3 with TCP/IP network support.
  8100. #Needs -linet for net functions.  signal() is void rather than int.
  8101. #Uses dirent.h and Honey DanBer uucp. Read comments in is5r3 entry.
  8102. #Also see is5r3net2 if you have trouble with this entry.
  8103. is5r3net:
  8104.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix...'
  8105.     @echo 'If this does not work please read the makefile entry.'
  8106.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  8107.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET -DNOREALPATH \
  8108.     -DI386IX $(KFLAGS) -O" "LIBS = -linet"
  8109.  
  8110. is5r3netgcc:
  8111.     $(MAKE) is5r3net CC=gcc CC2=gcc
  8112.  
  8113. #Interactive UNIX System V R3, no job control, signal() void rather than int.
  8114. #Uses dirent.h and Honey DanBer uucp.  Needs -linet for net functions.
  8115. #Read comments in is5r3 entry.  Use this entry if is5r3net fails.
  8116. #Saves some space by stripping (-s) and using shared library (-lc_s).
  8117. is5r3net2:
  8118.     @echo 'Making C-Kermit $(CKVER) for Interactive 386/ix...'
  8119.     $(MAKE) wermit \
  8120.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DTCPSOCKET -DNOJC -DNOREALPATH \
  8121.     -DSIGTYP=void -DNOANSI -DI386IX $(KFLAGS) -O" \
  8122.     "LNKFLAGS= -s" "LIBS = -linet -lc_s"
  8123.  
  8124. #Interactive UNIX System V R3 (version 2.2 or later) with job control & curses.
  8125. #Uses dirent.h and Honey DanBer UUCP.
  8126. is5r3jc:
  8127.     @echo 'Making C-Kermit $(CKVER) for Interactive Unix 2.2 or later...'
  8128.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  8129.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  8130.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES \
  8131.     -DPOSIX_JC -DCK_REDIR -DCK_POLL -DDCLGETCWD \
  8132.     $(KFLAGS)" "LIBS=-lcurses -lc_s -linet"
  8133.  
  8134. is5r3jcgcc:
  8135.     $(MAKE) is5r3jc CC="gcc -DCK_ANSILIBS -DDCGPWNAM -O4" CC2=gcc \
  8136.     KFLAGS="$(KFLAGS)" LNKFLAGS="$(LNKFLAGS)"
  8137.  
  8138. #Sunsoft/Interactive UNIX System V R3 (version 2.2 or later)
  8139. #with job control, curses, and TCP/IP networking.
  8140. #Uses dirent.h and Honey DanBer UUCP.
  8141. is5r3netjc:
  8142.     @echo 'Making C-Kermit $(CKVER) for Interactive Unix 2.2 or later...'
  8143.     $(MAKE) wermit CC="$(CC)" CC2="$(CC2)" \
  8144.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -O -DNOCSETS -DNOREALPATH \
  8145.     -DUID_T=ushort -DGID_T=ushort -DI386IX -DSVR3JC -DCK_CURSES \
  8146.     -DPOSIX_JC -DCK_REDIR -DTCPSOCKET -DSELECT \
  8147.     $(KFLAGS)" "LIBS=-linet -lcurses -lc_s"
  8148.  
  8149. is5r3netjcgcc:
  8150.     $(MAKE) is5r3netjc CC="gcc -DCK_ANSILIBS -DDCGPWNAM -O4" CC2=gcc \
  8151.     KFLAGS="$(KFLAGS)" LNKFLAGS="$(LNKFLAGS)"
  8152.  
  8153. #Masscomp System III
  8154. rtu:
  8155.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU System III...'
  8156.     $(MAKE) wermit \
  8157.     "CFLAGS= -UFIONREAD -DATTSV $(KFLAGS) -O" "LNKFLAGS =" "LIBS= -ljobs"
  8158.  
  8159. #Masscomp/Concurrent RTU 4.0 or later, Berkeley environment.
  8160. #Includes <ndir.h> = /usr/include/ndir.h
  8161. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  8162. rtubsd:
  8163.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.1A...'
  8164.     ucb make wermit \
  8165.     "CFLAGS= -DBSD4 -DRTU -DNDIR -DHDBUUCP -DTCPSOCKET $(KFLAGS)" \
  8166.     "LIBS = -lndir"
  8167.  
  8168. #Masscomp/Concurrent RTU 4.0 or later, same as above,
  8169. #Includes "usr/lib/ndir.h"
  8170. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  8171. rtubsd2:
  8172.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.1A...'
  8173.     ucb make wermit \
  8174.     "CFLAGS= -DBSD4 -DRTU -DXNDIR -DHDBUUCP $(KFLAGS)" \
  8175.     "LIBS = -lndir"
  8176.  
  8177. #Masscomp/Concurrent RTU 4.0 or later, same as above,
  8178. #Includes <sys/ndir.h>
  8179. #Note "LIBS = -lndir" might not be necessary because of "ucb make".
  8180. rtubsd3:
  8181.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.x BSD...'
  8182.     ucb make wermit "CFLAGS= -DBSD4 -DRTU -DHDBUUCP $(KFLAGS)" \
  8183.     "LIBS = -lndir"
  8184.  
  8185. #Masscomp/Concurrent RTU 4.0 or later, System V R2, using <dirent.h>.
  8186. #In case of problems, add back the -DRTU switch.
  8187. #In case -DTCPSOCKET gives trouble, remove it.
  8188. rtus5:
  8189.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU 4.x...'
  8190.     $(MAKE) wermit \
  8191.     "CFLAGS= -DATTSV -DHDBUUCP -DDIRENT -DTCPSOCKET $(KFLAGS)"
  8192.  
  8193. #Masscomp/Concurrent RTU 4.x, System V R3, using <dirent.h>.
  8194. #Use this one if rtus5 gives warnings about pointer type mismatches.
  8195. #In case of problems, add back the -DRTU switch.
  8196. rtus5r3:
  8197.     @echo 'Making C-Kermit $(CKVER) for Masscomp RTU Sys V R3...'
  8198.     $(MAKE) wermit "CFLAGS= -DSVR3 -DHDBUUCP -DDIRENT $(KFLAGS)"
  8199.  
  8200. #DEC Pro-3xx with Pro/Venix V1.0 or V1.1
  8201. # Requires code-mapping on non-I&D-space 11/23 processor, plus some
  8202. # fiddling to get interrupt targets into resident code section.
  8203. # This almost certainly doesn't work any more.
  8204. provx1:
  8205.     @echo 'Making C-Kermit $(CKVER) for DEC Pro-3xx, Pro/Venix 1.x...'
  8206.     $(MAKE) wart "CFLAGS= -DPROVX1 $(KFLAGS)" "LNKFLAGS= "
  8207.     $(MAKE) wermit "CFLAGS = -DPROVX1 -DNOFILEH -md780" \
  8208.         "LNKFLAGS= -u _sleep -lc -md780"
  8209.  
  8210. #Nixdorf Targon/31.
  8211. #AT&T UNIX System V R3, signal() is void rather than int.
  8212. #Uses dirent.h without Honey DanBer uucp.
  8213. t31tos40x:
  8214.     @echo 'Making C-Kermit $(CKVER) for Targon/31 with TOS 4.0.xx...'
  8215.         $(MAKE) wermit \
  8216.         "CFLAGS= -DSVR3 -DDIRENT $(KFLAGS) -O" \
  8217.         "LNKFLAGS="
  8218.  
  8219. #NCR Tower 1632, OS 1.02
  8220. tower1:
  8221.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 1632, OS 1.02...'
  8222.     $(MAKE) wermit "CFLAGS= -DTOWER1 $(KFLAGS)"
  8223.  
  8224. #NCR Tower 32, OS Release 1.xx.xx
  8225. tower32-1:
  8226.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 Rel 1 System V R2...'
  8227.     @echo 'Add KFLAGS=-DISDIRBUG if you get errors about S_ISREG/S_ISDIR.'
  8228.     $(MAKE) wermit \
  8229.     "CFLAGS = -DATTSV $(KFLAGS) -O" "LNKFLAGS = -n"
  8230.  
  8231. #NCR Tower 32, OS Release 2.xx.xx
  8232. tower32-2:
  8233.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 Rel 2 System V R2...'
  8234.     $(MAKE) wermit \
  8235.     "CFLAGS = -DATTSV -DHDBUUCP $(KFLAGS) -O2" \
  8236.     "LNKFLAGS = -n"
  8237.  
  8238. #NCR Tower 32, OS Releases based on System V R3
  8239. #Don't add -DNAP (doesn't work right) or -DRDCHK (not available in libc).
  8240. tower32:
  8241.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 System V R3...'
  8242.     $(MAKE) wermit \
  8243.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNOSYSIOCTLH $(KFLAGS) \
  8244.     -DUID_T=ushort -DGID_T=ushort -O1"
  8245.  
  8246. #NCR Tower 32, OS Releases based on System V R3
  8247. tower32g:
  8248.     @echo 'Making C-Kermit $(CKVER) for NCR Tower 32 System V R3, gcc...'
  8249.     $(MAKE) wermit "CC = gcc" \
  8250.     "CFLAGS = -DSVR3 -DDIRENT -DHDBUUCP -DNOSYSIOCTLH $(KFLAGS) \
  8251.     DUID_T=ushort -DGID_T=ushort -O -fstrength-reduce -fomit-frame-pointer"
  8252.  
  8253. #Fortune 32:16, For:Pro 1.8 (mostly like 4.1bsd)
  8254. ft18:
  8255.     @echo 'Making C-Kermit $(CKVER) for Fortune 32:16 For:Pro 1.8...'
  8256.     $(MAKE) wermit \
  8257.     "CFLAGS= -DNODEBUG -DBSD4 -DFT18 -DNOFILEH $(KFLAGS) \
  8258.     -DPID_T=short"
  8259.  
  8260. #Fortune 32:16, For:Pro 2.1 (mostly like 4.1bsd).
  8261. #The modules that break the optimizer are compiled separately.
  8262. ft21:
  8263.     @echo 'Making C-Kermit $(CKVER) for Fortune 32:16 For:Pro 2.1...'
  8264.     $(MAKE) ckuusx.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  8265.     -SYM 800  -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  8266.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  8267.     $(MAKE) ckuxla.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  8268.     -SYM 800  -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  8269.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  8270.     $(MAKE) ckudia.$(EXT) "CFLAGS= -DNODEBUG -DBSD4 -DFT21 -DNOFILEH \
  8271.     -SYM 800  -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  8272.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  8273.     $(MAKE) wermit \
  8274.     "CFLAGS= -O -DNODEBUG -DBSD4 -DFT21 -DNOFILEH -SYM 800 \
  8275.     -DCK_CURSES $(KFLAGS) -DPID_T=short" \
  8276.     "LNKFLAGS= -n -s" "LIBS= -lcurses -ltermcap -lv -lnet"
  8277.  
  8278. #Valid Scaldstar
  8279. #Berkeleyish, but need to change some variable names.
  8280. valid:
  8281.     @echo 'Making C-Kermit $(CKVER) for Valid Scaldstar...'
  8282.     $(MAKE) wermit \
  8283.     "CFLAGS= -DBSD4 -DNODEBUG -DNOTLOG -Dcc=ccx -DFREAD=1 $(KFLAGS)"
  8284.  
  8285. #IBM IX/370 on IBM 370 Series mainframes
  8286. #Mostly like sys3, but should buffer packets.
  8287. ix370:
  8288.     @echo 'Making C-Kermit $(CKVER) for IBM IX/370...'
  8289.     $(MAKE) wermit "CFLAGS = -DIX370 -DATTSV $(KFLAGS) -i -O" \
  8290.     "LNKFLAGS = -i"
  8291.  
  8292. #Amdahl UTS 2.4 on IBM 370 series compatible mainframes.
  8293. #Mostly like V7, but can't do initrawq() buffer peeking.
  8294. uts24:
  8295.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTS 2.4...'
  8296.     $(MAKE) wermit "CFLAGS=-DV7 -DPROCNAME=\\\"$(PROC)\\\" \
  8297.     -DUTS24 -DBOOTNAME=\\\"$(BOOTFILE)\\\" -DNPROCNAME=\\\"$(NPROC)\\\" \
  8298.     -DNPTYPE=$(NPTYPE) $(DIRECT) $(KFLAGS)"
  8299.  
  8300. #Amdahl UTSV UNIX System V = System V R2 or earlier.
  8301. utsv:
  8302.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTSV...'
  8303.     $(MAKE) wermit \
  8304.     "CFLAGS = -DUTSV $(KFLAGS) -i -O" "LNKFLAGS = -i"
  8305.  
  8306. #Amdahl UTSV UNIX System V = System V R2 or earlier, with TCP sockets library.
  8307. utsvtcp:
  8308.     @echo 'Making C-Kermit $(CKVER) for Amdahl UTSV w/tcp...'
  8309.     $(MAKE) wermit "CFLAGS = \
  8310.     -DTCPSOCKET -DUTSV $(KFLAGS) -i -O" "LNKFLAGS = -i" \
  8311.     "LIBS = -lsocket"
  8312.  
  8313. #BBN C/70 with IOS 2.0
  8314. #Mostly Berkeley-like, but with some ATTisms
  8315. c70:
  8316.     @echo 'Making C-Kermit $(CKVER) for BBN C/70 IOS 2.0...'
  8317.     $(MAKE) wermit "CFLAGS= -DBSD4 -DC70 $(KFLAGS)"
  8318.  
  8319. #Zilog ZEUS 3.21
  8320. zilog:
  8321.     @echo 'Making C-Kermit $(CKVER) for Zilog Zeus 3.21...'
  8322.     $(MAKE) wermit \
  8323.     "CFLAGS = -DATTSV -DZILOG -DNODEBUG $(KFLAGS) -i -O" \
  8324.     "LNKFLAGS = -i -lpw"
  8325.  
  8326. #Whitechapel MG-1 Genix 1.3
  8327. white:
  8328.     @echo 'Making C-Kermit $(CKVER) for Whitechapel MG-1 Genix 1.3...'
  8329.     @touch ckcpro.c
  8330.     $(MAKE) wermit "CFLAGS= -DBSD4 -Dzkself()=0  $(KFLAGS)"
  8331.  
  8332. #Pixel 1000
  8333. pixel:
  8334.     @echo 'Making C-Kermit $(CKVER) for Pixel 1000...'
  8335.     $(MAKE) wermit "CFLAGS= -DBSD4 -Dzkself()=0 $(KFLAGS)"
  8336.  
  8337. ptx:
  8338.     $(MAKE) "MAKE=$(MAKE)" dynixptx12
  8339.  
  8340. #CDC VX/VE 5.2.1
  8341. vxve:
  8342.     @echo 'Making C-Kermit $(CKVER) for CDC VX/VE 5.2.1...'
  8343.     $(MAKE) wermit \
  8344.     "CFLAGS = -DATTSV -DVXVE -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  8345.     "LNKFLAGS = -i"
  8346.  
  8347. #DIAB DS90 or LUXOR ABC-9000 with pre-5.2 DNIX.  Sys V with nap() and rdchk().
  8348. # nd = no opendir(), readdir(), closedir(), etc.
  8349. # Some of the modules fail to compile with -O.
  8350. dnixnd:
  8351.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with very old DNIX 5.2.'
  8352.     $(MAKE) wermit \
  8353.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDCLPOPEN \
  8354.     -U__STDC__ $(KFLAGS)"
  8355.  
  8356. #DIAB DS90 with DNIX 5.2.  Sys V with nap() and rdchk().
  8357. # This one has opendir(), readdir(), closedir(), etc.
  8358. # Some of the modules fail to compile with -O.
  8359. dnix:
  8360.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with old DNIX 5.2...'
  8361.     $(MAKE) wermit \
  8362.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDIRENT  \
  8363.     -U__STDC__ $(KFLAGS)"
  8364.  
  8365. #DIAB DS90 with DNIX 5.2.  Sys V with nap() and rdchk().
  8366. # As above, but with curses and TCP/IP.
  8367. # You might get complaints about redefinition of O_RDONLY, etc, because
  8368. # of bugs in the DNIX header files, which can be fixed by adding #ifndef...
  8369. # around the offending definitions in the header files.
  8370. dnixnetc:
  8371.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with old DNIX 5.2...'
  8372.     $(MAKE) wermit \
  8373.     "CFLAGS = -DATTSV -DNAP -DRDCHK -DDIRENT  \
  8374.     -DTCPSOCKET -DCK_CURSES -I/usr/include/bsd -U__STDC__ $(KFLAGS)" \
  8375.     "LIBS = -ln -lcurses"
  8376.  
  8377. #DIAB DS90 with DNIX 5.3 or later, with HDB UUCP, nap() and rdchk().
  8378. dnix5r3:
  8379.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  8380.     @echo 'with Honey DanBer UUCP'
  8381.     $(MAKE) wermit \
  8382.     "CFLAGS = -DSVR3 -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  8383.     -DCK_CURSES -DRENAME $(KFLAGS) -O" "LIBS= -lcurses"
  8384.  
  8385. #DIAB DS90 with DNIX 5.3 or later, with HDB UUCP, nap() and rdchk() + TCP/IP
  8386. dnix5r3net:
  8387.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  8388.     @echo 'with Honey DanBer UUCP and TCP/IP'
  8389.     $(MAKE) wermit \
  8390.     "CFLAGS = -DSVR3 -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  8391.     -DTCPSOCKET -DCK_CURSES -DRENAME $(KFLAGS) -O \
  8392.     -I/usr/include/bsd" "LIBS = -ln -lcurses"
  8393.  
  8394. #DIAB DS90 with DNIX 5.3 2.2 or later, with HDB UUCP, nap() and rdchk(),
  8395. #ANSI C compilation and libraries.
  8396. #Note that for DNIX 5.3 2.2 you have to correct a bug in /usr/include/stdlib.h:
  8397. #change "extern    void free(char *str);"
  8398. #to     "extern void free(void *str);"
  8399. #NOTE: This bug is reportedly fixed in DNIX 5.3 2.2.1.
  8400. #Should you get fatal errors caused by harmless pointer-type mismatches,
  8401. #like between signed and unsigned char, just remove -X7.
  8402. dnix5r3ansi:
  8403.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  8404.     @echo 'with ANSI C Honey DanBer UUCP'
  8405.     $(MAKE) wermit \
  8406.     "CFLAGS = -DSVR3 -DDIAB -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  8407.     -DCK_ANSILIBS -DCK_CURSES -DRENAME -O -X7 -X9 $(KFLAGS)" \
  8408.     "LIBS= -lcurses"
  8409.  
  8410. #DIAB DS90 with DNIX 5.3 2.2 or later, with HDB UUCP, nap() and rdchk(),
  8411. # + TCP/IP, ANSI C compilation and libraries.
  8412. #Should you get fatal errors caused by harmless pointer-type mismatches,
  8413. #like between signed and unsigned char, just remove -X7.
  8414. dnix5r3ansinet:
  8415.     @echo 'Making C-Kermit $(CKVER) for DIAB DS90 with DNIX 5.3...'
  8416.     @echo 'with ANSI C Honey DanBer UUCP'
  8417.     $(MAKE) wermit \
  8418.     "CFLAGS = -DSVR3 -DDIAB -DHDBUUCP -DNAP -DRDCHK -DDIRENT \
  8419.     -DTCPSOCKET -DCK_ANSILIBS -DCK_CURSES -DRENAME -O -X7 -X9 $(KFLAGS) \
  8420.     -I/usr/include/bsd" "LIBS= -ln -lcurses"
  8421.  
  8422. #Ridge 32 with ROS 3.2
  8423. ridge32:
  8424.     @echo 'Making C-Kermit $(CKVER) Ridge 32 ROS 3.2'
  8425.     $(MAKE) wermit \
  8426.     "CFLAGS = -DATTSV -DNOFILEH -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  8427.     "LNKFLAGS = -i"
  8428.  
  8429. #Altos 486, 586, or 986 with Xenix 3.0
  8430. altos:
  8431.     @echo 'Making C-Kermit $(CKVER) for Altos x86 with Xenix 3.0...'
  8432.     $(MAKE) wermit \
  8433.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG $(KFLAGS) -i -O" \
  8434.     "LNKFLAGS= -i"
  8435.  
  8436. #Altos 986 with Xenix 3.0, as above, but command-line only, minimal size.
  8437. #For systems with small memories.  It might also be necessary to chop certain
  8438. #modules up into smaller pieces, e.g. ckuus3-6, because of symbol table
  8439. #overflow.   If this makefile is too big or complex for the Altos, compile
  8440. #and link by hand or write shell scripts.
  8441. altosc:
  8442.     @echo 'Making C-Kermit $(CKVER) for Altos x86 Xenix 3.0, remote...'
  8443.     $(MAKE) wermit \
  8444.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG -DNOSCRIPT -DNODIAL \
  8445.     -DNOCSETS -DNOANSI -DNOMSEND -DNOSPL -DNOICP $(KFLAGS) -Mm -O" \
  8446.     "LNKFLAGS= -Mm -s"
  8447.  
  8448. #Altos 986 with Xenix 3.0, as above, but interactive only, minimal size.
  8449. altosi:
  8450.     @echo 'Making C-Kermit $(CKVER) for Altos x86 Xenix 3.0, local...'
  8451.     $(MAKE) wermit \
  8452.     "CFLAGS= -DATTSV -DA986 -DNODEBUG -DNOTLOG -DNOSCRIPT -DNODIAL \
  8453.     -DNOCSETS -DNOANSI -DNOMSEND -DNOSPL -DNOCMDL -DNOFRILLS -DNOHELP \
  8454.     -DNOSETKEY $(KFLAGS) -Mm -O" "LNKFLAGS= -Mm -s"
  8455.  
  8456. # Altos ACS68000 68000 System, UNIX System 3 Release 2, 512k memory.
  8457. # also needs getcwd() external function; see ckuins.txt file.
  8458. # also, sys/types.h needed modifying:
  8459. #   #ifdef __SYS_TYPES_H__, #define ..., #endif
  8460. # also, ckuus2.c MUST be compiled NOOPT else symbol table is destroyed!
  8461. # Submission by Robert Weiner/Programming Plus, rweiner@progplus.com.
  8462. #
  8463. altos3:
  8464.     @echo 'Making C-Kermit $(CKVER) for Altos ACS68k UNIX System III'
  8465.     $(MAKE) ckuus2.$(EXT) "CFLAGS = -DATTSV -DNOCSETS -DNOSETKEY -DNOJC \
  8466.     -DNODIAL -DDCLPOPEN -DNOSCRIPT -DNOHELP $(KFLAGS) -i"
  8467.     $(MAKE) wermit \
  8468.     "CFLAGS = -DATTSV -DNOCSETS -DNOSETKEY -DNOJC \
  8469.     -DNODIAL -DDCLPOPEN -DNOSCRIPT -DNOHELP $(KFLAGS) -i -O" \
  8470.     "LNKFLAGS = -i" "LIBS = getcwd.$(EXT)"
  8471.  
  8472. #MINIX - Original PC version with 64K+64K limit.
  8473. # Reportedly, the linker (asld) can run out of space while linking.  The only
  8474. # way around this is to make a copy of libc.a from which all modules that are
  8475. # not used by Kermit are removed.  If you have trouble compiling or running
  8476. # wart, "touch wart".  If that doesn't help, "touch ckcpro.c".
  8477. # The version configured below has no interactive command parser.
  8478. # If you can build this version successfully, maybe there will be room for
  8479. # a minimal interactive command parser too; try replacing -DNOICP with
  8480. # -DNOSPL, plus every other -DNOxxx flag there is, except for -DNOICP
  8481. # (see ckccfg.txt).
  8482. minix:
  8483.     @echo 'Making C-Kermit $(CKVER) for MINIX, no command parser...'
  8484.     @echo 'TOTALLY UNTESTED!'
  8485.     $(MAKE) wermit EXT=s \
  8486.     "CFLAGS= -DV7 -DMINIX -i -D_MINIX -D_POSIX_SOURCE \
  8487.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V \
  8488.     -DNOXMIT -DNOMSEND -DNOFRILLS -DNODIAL -DNOHELP -DNODEBUG -DNOTLOG \
  8489.     -DNOSCRIPT -DNOCSETS -DNOICP -DNOSETKEY $(KFLAGS)" \
  8490.     "LNKFLAGS= -i -T"
  8491.  
  8492. #MINIX - PC version with 64K+64K limit, new (as yet unreleased) ACK 2.0 beta C
  8493. #compiler, which outputs .o object files, rather than .s.  But 'make' still
  8494. #expects .s files, so must be patched to use .o.  Tested on Minix 1.5.10.
  8495. minix15:
  8496.     @echo 'Making C-Kermit $(CKVER) for MINIX (new ACK 2.0 compiler),'
  8497.     @echo 'no command parser...  TOTALLY UNTESTED!'
  8498.     $(MAKE) wermit \
  8499.     "CFLAGS= -DV7 -DMINIX -i -D_MINIX -D_POSIX_SOURCE \
  8500.     -DPID_T=pid_t -DUID_T=uid_t -DGID_T=gid_t -DSIG_V -DNODIAL \
  8501.     -DNOHELP -DNODEBUG -DNOTLOG -DNOSCRIPT -DNOCSETS -DNOICP $(KFLAGS)" \
  8502.     "LNKFLAGS= -i -T"
  8503.  
  8504. #MINIX3 - MINIX 3.0 (no VM) - May-Aug 2005 (not sure if this ever worked...)
  8505. minix3:
  8506.     @echo 'Making C-Kermit $(CKVER) for MINIX3...'
  8507.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  8508.     "CFLAGS= -DPOSIX -DNOUUCP -DNOLEARN $(KFLAGS) -DMINIX2 \
  8509.     -DMINIX3 -DNO_PARAM_H -DNOSYSLOG -DNOGETUSERSHELL \
  8510.     -DNOINITGROUPS -DNOFTRUNCATE -DNOARROWKEYS -DDNOREALPATH \
  8511.     -DTCPSOCKET -DNOTIMEZONE -DNOFTP -DNO_DNS_SRV -O"
  8512.  
  8513. #MINIX315 - MINIX 3 1.5 - January 2010
  8514. minix315:
  8515.     @echo 'Making C-Kermit $(CKVER) for Minix 3 1.5...'
  8516.     $(MAKE) wermit KTARGET=$${KTARGET:-$(@)} \
  8517.     "CFLAGS= -DMINIX315 -DPOSIX -DNOUUCP -DNOJC -DNOLEARN $(KFLAGS) \
  8518.     -DHAVE_OPENPTY -DNO_PARAM_H -DNOSYSLOG -DNOGETUSERSHELL \
  8519.     -DSYSTIMEH -DNOINITGROUPS -DNOFTRUNCATE -DNOARROWKEYS -DNOREALPATH \
  8520.     -DTCPSOCKET -DNOTIMEZONE -DNO_DNS_SRV -DNOFTP -O"
  8521.  
  8522. #PFU Compact A Series UNIX System V R3, SX/A TISP V10/L50 (Japan)
  8523. #Maybe the -i link option should be removed?
  8524. sxae50:
  8525.     @echo 'Making C-Kermit $(CKVER) for PFU SX/A V10/L50...'
  8526.     $(MAKE) xermit \
  8527.     "CFLAGS= -DSVR3 -DDIRENT -DsxaE50 -DTCPSOCKET $(KFLAGS) -i -O" \
  8528.     "LNKFLAGS= "
  8529.  
  8530. #Tektronix 6130, 4319, 4301, etc, with UTek OS, /usr/spool/uucp/LCK./...
  8531. #The models that support hardware flow control.
  8532. utek:
  8533.     @echo 'Making C-Kermit $(CKVER) for 4.2BSD/UTek, hardware flow control'
  8534.     $(MAKE) wermit \
  8535.     "CFLAGS= -O -DLCKDIR -DBSD4 -DTCPSOCKET \
  8536.     -DUTEK -DDCLPOPEN -DLOCK_DIR=\\\"/usr/spool/uucp/LCK.\\\" \
  8537.     -DTRMBUFL=2048 -DCK_DTRCTS $(KFLAGS)"
  8538.  
  8539. #Tektronix 4315, 4316, 4317 with UTek OS, /usr/spool/uucp/LCK./...
  8540. #The models that do not fully support hardware flow control.
  8541. uteknohwfc:
  8542.     @echo 'Making C-Kermit $(CKVER) for 4.2BSD/UTek, no h/w flow control'
  8543.     $(MAKE) wermit \
  8544.     "CFLAGS= -O -DLCKDIR -DBSD4 -DTCPSOCKET \
  8545.     -DUTEK -DDCLPOPEN -DLOCK_DIR=\\\"/usr/spool/uucp/LCK.\\\" \
  8546.     -DTRMBUFL=2048 $(KFLAGS)"
  8547.  
  8548. #Tektronix XD88 with  UTekV OS
  8549. utekvr3:
  8550.     @echo 'Making C-Kermit $(CKVER) for Tektronix XD88 UTekV R3...'
  8551.     $(MAKE) wermit \
  8552.     "CFLAGS= -DSVR3 -DDIRENT -DHDBUUCP \
  8553.     -DTCPSOCKET -DSYSUTIMEH -DCK_CURSES $(KFLAGS) -O" \
  8554.     "LIBS= -lcurses" "LNKFLAGS= -s"
  8555.  
  8556. #Perkin-Elmer 3200 Xelos R02 or earlier
  8557. ccop1:
  8558.     @echo 'Making C-Kermit $(CKVER) for Xelos & Public Domain Dirent calls'
  8559.     @echo 'or System V R2 or earlier...'
  8560.     $(MAKE) wermit \
  8561.     "CFLAGS = -DATTSV -Dvoid=int -DDIRENT -DCK_CURSES \
  8562.     $(KFLAGS) -O" "LNKFLAGS =" "LIBS= -lcurses -ltermlib"
  8563.  
  8564. #Encore, UMAX 4.3 (BSD) but without acucntrl program.
  8565. encore:
  8566.     $(MAKE) "MAKE=$(MAKE)" umax43 "KFLAGS=$(KFLAGS)"
  8567.  
  8568. #Encore, as above, but with curses file transfer display included.
  8569. encorec:
  8570.     $(MAKE) "MAKE=$(MAKE)" umax43 "KFLAGS=-DCK_CURSES $(KFLAGS)" \
  8571.     "LIBS= -lcurses -ltermcap"
  8572.  
  8573. #Encore, UMAX 4.3 (BSD) but without acucntrl program.
  8574. umax43:
  8575.     @echo Making C-Kermit $(CKVER) for Encore UMAX 4.3...
  8576.     $(MAKE) "MAKE=$(MAKE)" PARALLEL=4 xermit \
  8577.     "CFLAGS= -DBSD43 -DENCORE -DTCPSOCKET $(KFLAGS) -O"
  8578.  
  8579. #Encore, UMAX 4.2 (BSD)
  8580. umax42:
  8581.     @echo Making C-Kermit $(CKVER) for Encore UMAX 4.2...
  8582.     $(MAKE) "MAKE=$(MAKE)" PARALLEL=4 xermit \
  8583.     "CFLAGS= -DBSD4 -DENCORE -DTCPSOCKET $(KFLAGS) -O"
  8584.  
  8585. #Encore 88K UMAX 5.3 with TCP/IP support
  8586. encore88k:
  8587.     @echo 'Making C-Kermit $(CKVER) for Encore 88K UMAX V, TCP/IP...'
  8588.     $(MAKE) xermit \
  8589.     "CFLAGS = -q ext=pcc -DSVR3 -DTCPSOCKET -DDIRENT \
  8590.     -DNOGETID_PROTOS -DHDBUUCP $(KFLAGS) -O" "LNKFLAGS ="
  8591.  
  8592. #Encore 88K UMAX 5.3 with TCP/IP support
  8593. encore88kgcc:
  8594.     @echo 'Making C-Kermit $(CKVER) for Encore 88K UMAX V, TCP/IP, gcc...'
  8595.     $(MAKE) xermit CC=gcc CC2=gcc \
  8596.     "CFLAGS = -DSVR3 -DTCPSOCKET -DDIRENT \
  8597.     -DNOGETID_PROTOS -DHDBUUCP $(KFLAGS) -O" "LNKFLAGS ="
  8598.  
  8599. #SONY NEWS, NEWS-OS 4.01C
  8600. sonynews:
  8601.     @echo Making C-Kermit $(CKVER) for SONY NEWS-OS 4.01C...
  8602.     $(MAKE) xermit "CFLAGS= -DBSD43 -DACUCNTRL -DTCPSOCKET -O"
  8603.  
  8604. #Run Lint on this mess for selected versions.
  8605. #These are pretty much obsolete since ANSI C / gcc.
  8606. lintsun:
  8607.     @echo 'Running Lint on C-Kermit $(CKVER) sources for SunOS version...'
  8608.     lint -x -DSUNOS4 -DDIRENT -DTCPSOCKET -DSAVEDUID \
  8609.     ck[cu]*.c > ckuker.lint.sun
  8610.  
  8611. lintbsd:
  8612.     @echo 'Running Lint on C-Kermit $(CKVER) sources for BSD 4.2 version..'
  8613.     lint -x -DBSD4 -DTCPSOCKET ck[cu]*.c > ckuker.lint.bsd42
  8614.  
  8615. lints5:
  8616.     @echo 'Running Lint on C-Kermit $(CKVER) sources for Sys V version...'
  8617.     lint -x -DATTSV ck[cu]*.c > ckuker.lint.s5
  8618.  
  8619. #Who remembers TECO?
  8620. love:
  8621.     @echo 'Not war?'
  8622.