|
|
1.1 root 1: #
2:
3: # Makefile for MiNT using the LCC
4:
5: #
6:
7: #for 16 bit integers ONLY
8:
9: MODEL = -w -b0 -r0 -bn -aw
10:
11: LIBS =
12:
13: DEFS = -DFASTTEXT -DZEROEXIT -DOWN_LIB
14:
15: SYMS = -Hmint.sym
16:
17: OPTS = -d1 -Oloop -v -cfs -cag
18:
19:
20:
21: # 30 - pointers do not point to same type of object
22:
23: # 86 - formal definitions conflict with type list
24:
25: # 100 - no prototype declared for function
26:
27: # 104 - conversion from pointer to const/volatile to pointer to non-const/volatile
28:
29: # 135 - assignment to shorter data type (precision may be lost)
30:
31: # 154 - no prototype declared for function pointer
32:
33: ERRORS = -j30e86e100e104e135i154e
34:
35:
36:
37: CC = lcc
38:
39: CFLAGS = $(OPTS) $(MODEL) $(DEFS) $(ERRORS) $(SYMS)
40:
41: ASFLAGS = -m3 -m8
42:
43: LDFLAGS = -t=
44:
45:
46:
47: #
48:
49: # directory where the .s files reside; do _not_ include the trailing slash
50:
51: #
52:
53:
54:
55: ASM=asm
56:
57:
58:
59: COBJS = main.o bios.o xbios.o console.o dos.o dosdir.o dosfile.o dosmem.o \
60:
61: dossig.o filesys.o mem.o proc.o signal.o timeout.o tty.o util.o \
62:
63: biosfs.o pipefs.o procfs.o tosfs.o debug.o rendez.o \
64:
65: unifs.o shmfs.o fasttext.o
66:
67:
68:
69: CSRCS = main.c bios.c xbios.c console.c dos.c dosdir.c dosfile.c dosmem.c \
70:
71: dossig.c filesys.c mem.c proc.c signal.c timeout.c tty.c util.c \
72:
73: biosfs.c pipefs.c procfs.c tosfs.c debug.c rendez.c \
74:
75: unifs.c shmfs.c fasttext.c
76:
77:
78:
79: SOBJS = context.o intr.o syscall.o quickzer.o quickmov.o
80:
81:
82:
83: OBJS = $(COBJS) $(SOBJS)
84:
85:
86:
87: mint.prg: $(OBJS)
88:
89: $(CC) $(CFLAGS) -o mint.prg $(LDFLAGS) $(OBJS) $(LIBS)
90:
91:
92:
93: $(SOBJS): proc.h
94:
95: $(COBJS): mint.sym
96:
97:
98:
99: main.o: version.h
100:
101:
102:
103: mint.sym: mint.h ctype.h assert.h atarierr.h basepage.h types.h \
104:
105: signal.h mem.h proc.h file.h
106:
107: $(CC) $(OPTS) $(MODEL) $(DEFS) $(ERRORS) -ph -o mint.sym mint.h
108:
109:
110:
111: #
112:
113: # assembler source files reside in their own directory, so that
114:
115: # different compilers are easily accounted for
116:
117: #
118:
119:
120:
121: context.o: $(ASM)\context.s
122:
123: $(AS) $(ASFLAGS) -ocontext.o $(ASM)\context.s
124:
125:
126:
127: intr.o: $(ASM)\intr.s
128:
129: $(AS) $(ASFLAGS) -ointr.o $(ASM)\intr.s
130:
131:
132:
133: syscall.o: $(ASM)\syscall.s
134:
135: $(AS) $(ASFLAGS) -osyscall.o $(ASM)\syscall.s
136:
137:
138:
139: quickzer.o: $(ASM)\quickzer.s
140:
141: $(AS) $(ASFLAGS) -oquickzer.o $(ASM)\quickzer.s
142:
143:
144:
145: quickmov.o: $(ASM)\quickmov.s
146:
147: $(AS) $(ASFLAGS) -oquickmov.o $(ASM)\quickmov.s
148:
149:
150:
151: #
152:
153: # For building proto.h using Lattice we use the compiler option to
154:
155: # generate them for external functions only. We also ask it to protect
156:
157: # the prototypes with __PROTO; we could then sed __PROTO references into
158:
159: # P_ ones (but don't at the moment).
160:
161: #
162:
163: proto.h: $(CSRCS)
164:
165: $(CC) -pep $(CFLAGS) $(CSRCS)
166:
167: cat $(CSRCS:.c=.i) >proto.h
168:
169: rm $(CSRCS:.c=.i)
170:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.