62 lines
1.8 KiB
Plaintext
62 lines
1.8 KiB
Plaintext
Short: Port of GNU make with SAS/C (no ixemul.library required)
|
|
Author: GNU, Amiga port by Aaron "Optimizer" Digulla
|
|
Uploader: Aaron "Optimizer" Digulla (digulla@fh-konstanz.de)
|
|
Type: dev/c
|
|
|
|
This is a pure Amiga port of GNU make. It needs no extra libraries or
|
|
anything. It has the following features (in addition to any features of
|
|
GNU make):
|
|
|
|
- Runs Amiga-Commands with SystemTags() (Execute)
|
|
- Can run multi-line statements
|
|
- Allows to use Device-Names in targets:
|
|
|
|
c:make : make.o
|
|
|
|
is ok. To distinguish between device-names and target : or ::, MAKE
|
|
looks for spaces. If there are any around :, it's taken as a target
|
|
delimiter, if there are none, it's taken as the name of a device. Note
|
|
that "make:make.o" tries to create "make.o" on the device "make:".
|
|
- Replaces @@ by a newline in any command line:
|
|
|
|
if exists make @@\
|
|
delete make.bak quiet @@\
|
|
rename make make.bak @@\
|
|
endif @@\
|
|
$(CC) Link Make.o To make
|
|
|
|
works. Note that the @@ must stand alone (ie. "make@@\" is illegal).
|
|
Also be carefull that there is a space after the "\" (ie, at the
|
|
beginning of the next line).
|
|
- Can be made resident to save space and time
|
|
- Amiga specific wildcards can be used in $(wildcard ...)
|
|
|
|
BUGS:
|
|
- The line
|
|
|
|
dummy.h : src/*.c
|
|
|
|
tries to make dummy.h from "src/*.c" (ie. no wildcard-expansion takes
|
|
place). You have to use "$(wildcard src/*.c)" instead.
|
|
|
|
COMPILING FROM SCRATCH
|
|
----------------------
|
|
|
|
To recompile, you need SAS/C 6.51. make itself is not neccessary, there
|
|
is an smakefile.
|
|
|
|
1. Copy config.ami to config.h
|
|
2. If you use make to compie, copy Makefile.ami to Makefile and
|
|
glob/Makefile.ami to glob/Makefile. Copy make into the current
|
|
directory.
|
|
|
|
3. Run smake/make
|
|
|
|
INSTALLATION
|
|
|
|
Copy make somewhere in your search path (eg. sc:c or sc:bin).
|
|
If you plan to use recursive makes, install make resident:
|
|
|
|
Resident make Add
|
|
|