1 | Short: Port of GNU make with SAS/C (no ixemul.library required)
|
---|
2 | Author: GNU, Amiga port by Aaron "Optimizer" Digulla
|
---|
3 | Uploader: Aaron "Optimizer" Digulla (digulla@fh-konstanz.de)
|
---|
4 | Type: dev/c
|
---|
5 |
|
---|
6 | This is a pure Amiga port of GNU make. It needs no extra libraries or
|
---|
7 | anything. It has the following features (in addition to any features of
|
---|
8 | GNU make):
|
---|
9 |
|
---|
10 | - Runs Amiga-Commands with SystemTags() (Execute)
|
---|
11 | - Can run multi-line statements
|
---|
12 | - Allows to use Device-Names in targets:
|
---|
13 |
|
---|
14 | c:make : make.o
|
---|
15 |
|
---|
16 | is ok. To distinguish between device-names and target : or ::, MAKE
|
---|
17 | looks for spaces. If there are any around :, it's taken as a target
|
---|
18 | delimiter, if there are none, it's taken as the name of a device. Note
|
---|
19 | that "make:make.o" tries to create "make.o" on the device "make:".
|
---|
20 | - Replaces @@ by a newline in any command line:
|
---|
21 |
|
---|
22 | if exists make @@\
|
---|
23 | delete make.bak quiet @@\
|
---|
24 | rename make make.bak @@\
|
---|
25 | endif @@\
|
---|
26 | $(CC) Link Make.o To make
|
---|
27 |
|
---|
28 | works. Note that the @@ must stand alone (ie. "make@@\" is illegal).
|
---|
29 | Also be carefull that there is a space after the "\" (ie, at the
|
---|
30 | beginning of the next line).
|
---|
31 | - Can be made resident to save space and time
|
---|
32 | - Amiga specific wildcards can be used in $(wildcard ...)
|
---|
33 |
|
---|
34 | BUGS:
|
---|
35 | - The line
|
---|
36 |
|
---|
37 | dummy.h : src/*.c
|
---|
38 |
|
---|
39 | tries to make dummy.h from "src/*.c" (ie. no wildcard-expansion takes
|
---|
40 | place). You have to use "$(wildcard src/*.c)" instead.
|
---|
41 |
|
---|
42 | COMPILING FROM SCRATCH
|
---|
43 | ----------------------
|
---|
44 |
|
---|
45 | To recompile, you need SAS/C 6.51. make itself is not neccessary, there
|
---|
46 | is an smakefile.
|
---|
47 |
|
---|
48 | 1. Copy config.ami to config.h
|
---|
49 | 2. If you use make to compie, copy Makefile.ami to Makefile and
|
---|
50 | glob/Makefile.ami to glob/Makefile. Copy make into the current
|
---|
51 | directory.
|
---|
52 |
|
---|
53 | 3. Run smake/make
|
---|
54 |
|
---|
55 | INSTALLATION
|
---|
56 |
|
---|
57 | Copy make somewhere in your search path (eg. sc:c or sc:bin).
|
---|
58 | If you plan to use recursive makes, install make resident:
|
---|
59 |
|
---|
60 | Resident make Add
|
---|
61 |
|
---|