kpk@gitpyr.UUCP (Kevin P. Kleinfelter) (08/31/86)
This document describes a simple version of "make" which is written in Modula-2, and works under MS-DOS on the IBM-PC. It compiles under Logitech's compiler. For lack of a better name, I shall refer to this version of make as "fakemake". To run fakemake, type make filename or make filename/n The "/n" option will not execute the "commands" and is primarily used to debug your makefiles. There are three files necessary to run fakemake: make.bat -- batch file to do the whole shebang make.lod -- compiled and linked modula program to figure dependencies makefile -- user created file stating dependencies The source supplied assumes that you have a directory called "\SYS", in which you store all of your "system" files. "make.lod" must be stored in this directory, or you will have to change the batch file. Fakemake creates a file "\SYS\$MAKE.BAT" and executes it. If you don't have a directory "\SYS", you may wish to change the code to use some other directory. The "makefile": Lines in the makefile have the following forms: file1 : file2 file3 ; action file1 : file2 file1 ; action The spaces are required. The first example states that file1 depends on file2 and file3. "action" will be taken. The second example states that file1 depends on file2. The third example adds "action" to the actions for file1. CAVEAT: The whole thing is a horrible kludge, but it seems to work. I have used it in developing a compiler, so it has been tested fairly well, but I make no guarantees. This program is placed in the public domain. Anyone may make unlimited noncommercial use of it. If anyone can figure out how to make Logitech's Modula-2 let one invoke a secondary command processor, please feel free to get rid of the batch nonsense.