home *** CD-ROM | disk | FTP | other *** search
- MkMake V1.45 -- A tool for generating makefile automatically.
-
- (c) Copyright Anders Hybertz, April 1992, Freely Distributable.
-
-
- INTRODUCTION
-
- Have you ever been looking at your current programming project,
- and thinking, it's about time to generate at makefile, to speed up
- the compiling time.
-
- Well, I have been there a couple of times, and then, in a bright
- moment, I thought, how about a program that does this work for you.
-
- At first, I was satisfied when it created a simple makefile, but
- soon I discovered, that much of the work in generating makefiles,
- could be done automatically.
-
- This version is the first public release. It works, but still there
- is a lot of work to be done, before it reaches the final release.
-
- This version is programmed with SAS-C in mind, but the next releases
- will add better support for other compilers, such as DICE-C,
- GNU-C. I also want to translate it to other platforms, like
- PC and UNIX-workstations like Sun and HP.
-
- At this state, you only have to change the makefile a little, before
- it fits your compiler.
-
- USAGE
- It's very simple to use MkMake, so I won't write a lot of text,
- telling about the program, bit by bit. This is only an explanation
- of the options.
-
- Usage: MkMake -{sdiqxtcyla} [Project name] > Makefile
-
- If there is no [Project name], the default is [a.out]
-
- Options:
-
- -s This option, uses environment variables instead of
- SASCOPTS. The program looks in ENV:cenv/ for the
- variables.
- This version support environment variables for:
-
- PRG = Project name
-
- ASM = Your assembler
- ASMOPTS = Your assembler options
- ASMDEFINES = Your assembler defines
-
- YACC = Your yacc compiler
- YACCOPTS = Your yacc compiler options
-
- LEX = Your lex compiler
- LEXOPTS = Your lex compiler options
-
- CC = Your c compiler
- LINKER = Your linker
- LCFLAGS = Your c compiler flags
- DEFINES = Your c compiler defines
- BLINKFLAGS = Your blinker flags
- LIBS = Libs to add your linker
- STARTUP = Your startup code
-
-
- If this flag is not activated, MkMake reads the
- SASCOPTS file.
-
- -d Just update file-dependencies. If you create a new
- file, the makefile scans the files again, to see
- what have changed. Just updates lines under #!ยค**
-
- -i Automatically generate prototype files, with help
- from MkProto. The prototypes is saved in
- <filename>.i
-
- -q Tell LMK to be quiet.
-
- -x Don't exit the makefile when fx. the compiler
- returns with an error.
-
- -y Find/compile yacc files, in current dir.
-
- -l Find/compile lex files, in current dir.
-
- -a Find/compile assembler files, in current dir.
-
- In this version, some of the options is not implemented yet, so they
- are not discribed.
-
- AUTHOR
- Name: Anders Hybertz
-
- Email: jeckyl@imada.ou.dk
- Phone: +46 66 10 10 36
- Snailmail: Aasumvej 95, 5240 Odense N0, Denmark
-
-
- DISTRIBUTION
-
- MkMake may be freely distributed, as long as no charge is made other
- than to cover time and copying costs. If you want to include MkMake
- as part of a commercial package, contact the author listed above.
-
-
- SUPPORT
-
- If you have any suggestions, bug reports or questions,
- please contact the author of MkMake at electronic mail
- addresses below:
-
- InterNet: jeckyl@imada.ou.dk
-
-
- HISTORY
-
- VERSION 1.40 -> 1.45
-
- Now MkMake parse the -P and all the -t options from SASCOPTS.
- -P is the Project Name wich is copied into PRG.
- -t is the startup code. I now support all 5 modes from SASCOPTS,
- even the special mode, where you can use your own startup code.
-
- I also made a new variabel wich is LIBPATH. Standard initialisation
- is LIB:.
-
- Rewritten the LINKER string. It now uses the WITH option, so
- BLINK can read as many files as you want. Before this was a big
- problem, because BLINK would hang, if you parsed to many files to
- it. The PRECOMPOBJ has been deleted. I don't use it anymore.
-
- Added a version-string, so you can get the version number of MkMake.
- Just type <version MkMake>.
-
- Added support for Workbench startup.
- At the moment I support 2 Tooltypes for MkMake.
-
- OPTIONS: enter the options like you did in CLI.
- EX: OPTIONS=-s , for sascopts exclude.
- EX: OPTIONS=-al, for asm & lex files.
-
- MAKEFILE: enter the name of your makefile, and
- MkMake dumps it's output to this file.
- EX: MAKEFILE=LMKFile
-
- When started from Workbench MkMake opens at little window
- in the top left corner. When it is finished, MkMake
- closes the window. I know that it's ugly, but if I
- removed it, you would never know, when it was finished.
- In the next release, I remove this window, and do
- some fancy stuff instead.
-
- Some minor things rewritten.
-
- No longer OS1.3 compatible. :-(
-
- Thanks to Lars in Bergen (Norway) for these suggestions.
-
-
-
- FUTURE ENHANCEMENTS
-
- * At this moment I don't want to do a lot of work on MkMake,
- because SAS institute, soon release version 6.0 of their
- C compiler. If is't as good as they say, nobody will use
- MkMake, but if they don't support the features of MkMake,
- I have some great ideas for improvement.
-
- * On of them, is an environment like HP's SoftBench.
-
- * At the time I am working on an option, which makes
- it possible to do parallel compiling. If the programs can
- be compiled under the same rules ex. '.c.o', I can't see
- why I can't compile then in parallel. So if you have
- a fast machine, lot of ram and a fast HD, I can reduce
- the compiling time.
-
-
-
-
-