|
|
1.1 root 1: # @(#)/usr/src/cmd/make/make.mk 3.5
2:
3: # @(#)make.mk 3.1
4:
5: # Description file for the Make command
6: # To build the Columbus make just type "make -f make.mk"
7: # For systems without the getu() system call type "make -f make.mk GETU="
8: # For pwb use
9: # make -f make.mk GETU= RULES=pwbrules CFLAGS="-O -DPWB" LIBES=-lpw
10: # The rules.c file can be modified locally for people who still like
11: # things like fortran.
12: # If the markfile is not present the compilation can be turned of with
13: # "make -f make.mk MARKFILE="
14: # For people interested in finding out how the markfile is generated
15: # contact E. G. Bradford.
16:
17: TESTDIR = .
18: YACCRM = rm -f
19: IFLAG = -i
20: RC =
21: INS = /etc/install -o
22: INSDIR = /bin
23:
24: # There is an internal rule (rules.c) which can make
25: # and object file "markfile.o" from "markfile" if the
26: # "markfile" has a what(1) string in it.
27: # Disable the $(MARKFILE) macro if the internal: rule
28: # doesn't work on your system.
29: MARKFILE = markfile.o
30:
31: # Turn off the GETU variable if you system does not have the
32: # getu system call as documented in the CB unix manual.
33: GETU =
34:
35: # RULES is defined to be the Columbus rules. It can be defined to
36: # be the pwb rules by typing:
37: # make -f make.mk RULES=pwbrules
38: #
39: RULES = rules
40:
41: # For PWB systems the PWB define symbol must be in the CFLAGS macro.
42: # Thus for pwb systems:
43: # make -f make.mk CFLAGS="-O -DPWB" GETU= RULES=pwbrules LIBES=-lpw
44: # will make a version of "make" for PWB systems.
45:
46:
47: OBJECTS = \
48: main.o \
49: doname.o \
50: misc.o \
51: files.o \
52: $(RULES).o \
53: dosys.o \
54: gram.o \
55: dyndep.o \
56: prtmem.o \
57: $(MARKFILE)
58:
59: CFLAGS = -O $(GETU)
60:
61: all: make
62: @echo MAKE is up to date.
63:
64: make: $(OBJECTS)
65: $(CC) $(IFLAG) $(LDFLAGS) $(OBJECTS) $(LIBES)
66: mv a.out $(TESTDIR)/make
67: @size make
68:
69: gram.c: gram.y
70:
71: gram.o: gram.c
72:
73: $(OBJECTS): defs
74:
75:
76: v6:
77: make -f make.mk CC=occ LIBES="-lcb -li1 -l7 -lS"
78:
79: test:
80: make -f test.mk
81:
82: install: all
83: $(INS) -n $(INSDIR) $(TESTDIR)/make
84:
85: clean cleanup:
86: -rm -f *.o
87:
88: clobber: clean
89: -rm -f $(TESTDIR)/make
90: $(YACCRM) gram.c
91:
92: print:
93: list="defs main.c doname.c dosys.c files.c $(RULES).c misc.c dyndep.c prtmem.c gram.y make.mk test.mk test.mk?" \
94: pr -o1 -w120 -l66 $list
95:
96: RC:
97:
98: .DEFAULT:
99: $(GET) $(GFLAGS) -p s.$< > $<
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.