C Runtime Library Startup Sources --------------------------------- The directory \startup and its subdirectories contain the files necessary for building the startup portion of the C runtime library. The \startup directory contains the startup source files, the include include files, the batch file and the make file used to build the startup object files. The subdirectories of \startup contain OS specific sources. The startup object files can be built by invoking startup.bat from within the \startup directory. This batch file assumes the following: (1) make.exe, link.exec, the C compiler, and the assembler must be in the execution path. MASM 5.0 and C 5.0 or later are required to build the startup sources. (2) doscalls.lib must be in the directory specified by the LIB environment variable. Startup will create four memory model specific subdirectories (i.e., S, M, C, and L) and place the appropriate object files there. Under each memory model subdirectory, startup creates two addition subdirectories OS2 and DOS where OS specific objects reside. The include files stdio.h and ctype.h are required for building the startup source file wild.c but are not included on the \startup directory because they exist on the directory containing the standard include files. A make variable called CINC controls where the makefile looks for these include files. STARTUP.BAT sets CINC to the current value of the INCLUDE environment variable. This variable should be set to the location of the C include files. CINC can also be set in the makefile if you wish to run the makefile separately. The message "" is generated when some of the assembly language source files are assembled. This message is expected and is totally benign. The startup batch file requires as arguments a list of capital letters describing the memory models you wish to build. For example, "startup S L" will build the small and large model startup objects. Startup will then link the objects with a sample C program called nulbody.c (consisting of a null main functions) to produce nulbody.exe. [Invoking startup.bat with no arguments will give usage information.] Note: startup sources written in assembly language have been edited with tabstops set to 8. Startup sources written in C have been edited with tabstops set to 4. The following files are contained in the \startup directory: Startup source files (OS independent): chkstk.asm chksum.asm crt0fp.asm setargv.asm wild.c Startup source files (OS specific): crt0.asm crt0dat.asm crt0msg.asm execmsg.asm nmsghdr.asm stdalloc.asm stdenvp.asm stdargv.asm Startup include files: brkctl.inc cmacros.inc msdos.inc register.h msdos.h version.inc File count files: _file.c file2.h Make and batch files: startup.bat: invokes make file to build objs and link to null program makefile: contains rules for building startup sources nulbody.c: null c program nulbody.lnk: link script for linking null program Documentation: readme.doc: information about \startup directory structure and contents --- End ---