OS/2 C-Kermit 5A(189)                                                 July 1993


		  INSTRUCTIONS FOR BUILDING FROM SOURCE CODE

OS/2 C-Kermit can be built using Microsoft C 6.0, IBM C Set/2, or GNU CC.
One makefile supports all three: ckoker.mak.

Command                    Development Environment

nmake -f ckoker.mak msc    Microsoft C 6.00.  Builds a 16-bit version.
nmake -f ckoker.mak mscd   Microsoft C 6.00, with debugging info included.

In the MSC link step, you might get a message about LLIBCEP.LIB not found.
At the LINK prompt, simply type: LLIBCE.

nmake -f ckoker.mak ibmc   IBM C Set/2, 32-bit, static linking
nmake -f ckoker.mak ibmcd  IBM C Set/2, 32-bit, static linking, debug info.

IBM C/C++ doesn't come with a MAKE program, but you can use Microsoft NMAKE
or DMAKE, etc.

nmake -f ckoker.mak gcc    EMX 0.8e + GNU CC 2.2.2, 32-bit, dynamic linking
nmake -f ckoker.mak gccd   Same, debugging info included.

Note the -G2 switch in the CFLAGS string.  This builds the program optimized
for the 80286 processor.  When building a 32-bit version with IBM C or GCC,
you can change this to G3 for the 386, to G4 for the 486, and G5 for the
Pentium.  Reportedly, G4 makes the program run noticably faster on the 486 and
above (by optimizing instruction sequences for pipelining) without seriously
affecting its performance on the 386.  The affect of G4 on the 286 is not
known.  However, G4 makes the program about 30K bigger so we normally build
the distribution version without it so it'll fit on the 720K diskette.

GNU EMX/GCC does not come with a MAKE program, but Microsoft or IBM NMAKE
can be used, or also the public-domain DMAKE (available from OS/2 archive
sites like ftp-os2.nmsu.edu), or GNU make.  C-Kermit programs built with GNU
CC can only be run on OS/2 systems that have the dynamic libraries from the
OS/2 developers kit on disk.

As of version 5A(189), OS/2 C-Kermit supports TCP/IP connections if you have
TCP/IP installed on your OS/2 system.  Linking is still static except for the
TCP/IP library, which is linked dynamically to (a) keep the size of the
program down, and (b) to allow the program to take advantage of updated
versions of TCP/IP without needing to be rebuilt (IBM issues CSD's about once
a month).

To build C-Kermit with TCP/IP support (for which you need the IBM TCP/IP
libraries and header files, and probably also IBM C Set/2), edit CKOKER.MAK to
include -DTCPSOCKET and -DTCPIBM in the "DEFINES =" section, and just below
it, "LIBS = " should indicate TCPIPDLL.LIB. 

With DEFINES and LIBS set up for a TCP/IP build, an additional file is
produced, called CKOTCP.DLL.  On systems that have TCP/IP installed, this file
can be discarded.  On systems that do NOT have IBM TCP/IP installed, this file
must be renamed to TCPIPDLL.DLL and copied into the C:\OS2\DLL directory.
(NOTE: There is a new INSTALL.CMD script that takes care of all this
automatically for the end user.)

A 16-bit version can be produced using the MSC entry with the DEFINES and LIBS
set up for TCP/IP as just described, if you have Microsoft C 6.00 *and* the
IBM TCP/IP libraries and include files on your disk.

  If the IBM-supplied TCPIP\INCLUDE\NETLIB.H file contains the following
  line:

  #define SIGALRM 0

  You must remove it before building the 16-bit version with MSC.

The optional SYSLEVEL.CKO files, CKOSYSL.CK1 (16-bit) and CKOSYSL.CK2 (32-bit),
must be created by hand using the OS/2 EDTSYSLV.EXE program.

See the comments in the CKOKER.MAK and CKOKER.BWR files for further
instructions.

(End of CKOMAK.HLP)
