]>
Commit | Line | Data |
---|---|---|
ea838f99 SS |
1 | # Makefile fragment for GAS. |
2 | ||
3 | s = "{srcdir}" | |
4 | ||
5 | o = : | |
6 | ||
ea838f99 SS |
7 | CROSS = -d CROSS_COMPILE |
8 | ||
a23e2b7c | 9 | ALL_CFLAGS = {CFLAGS} {CROSS} {TDEFINES} -i "{topsrcdir}"include: -i "{topsrcdir}"bfd:,"{srcdir}",::libiberty:,::bfd:,::extra-include,"{srcroot}"include:mpw: |
ea838f99 SS |
10 | # debug options: -mbg on -sym on |
11 | ||
0f8cb88d | 12 | "{o}" \Option-f : "{s}" |
ea838f99 SS |
13 | |
14 | # Default rule that puts each file into separate segment. | |
15 | ||
0f8cb88d | 16 | .c.o \Option-f .c |
b06fe940 | 17 | {CC} {DepDir}{Default}.c {ALL_CFLAGS} -s gas_{Default} -o {TargDir}{Default}.c.o |
ea838f99 | 18 | |
edd9075c SS |
19 | prefix = usr:local: |
20 | ||
21 | bindir = {prefix}bin: | |
22 | ||
0f8cb88d SS |
23 | OBJECTS = \Option-d |
24 | "{o}"app.c.o \Option-d | |
921e047b | 25 | "{o}"as.c.o \Option-d |
0f8cb88d SS |
26 | "{o}"atof-generic.c.o \Option-d |
27 | "{o}"bignum-copy.c.o \Option-d | |
28 | "{o}"cond.c.o \Option-d | |
29 | "{o}"expr.c.o \Option-d | |
30 | "{o}"flonum-konst.c.o \Option-d | |
31 | "{o}"flonum-copy.c.o \Option-d | |
32 | "{o}"flonum-mult.c.o \Option-d | |
33 | "{o}"frags.c.o \Option-d | |
34 | "{o}"hash.c.o \Option-d | |
0f8cb88d SS |
35 | "{o}"input-file.c.o \Option-d |
36 | "{o}"input-scrub.c.o \Option-d | |
37 | "{o}"listing.c.o \Option-d | |
38 | "{o}"messages.c.o \Option-d | |
39 | "{o}"output-file.c.o \Option-d | |
40 | "{o}"read.c.o \Option-d | |
41 | "{o}"stabs.c.o \Option-d | |
42 | "{o}"subsegs.c.o \Option-d | |
43 | "{o}"symbols.c.o \Option-d | |
44 | "{o}"write.c.o \Option-d | |
f64fd87f SS |
45 | "{o}"ecoff.c.o |
46 | ||
ea838f99 | 47 | |
9e4eebc2 SS |
48 | TARG_OBJECTS = "{o}"obj-format.c.o "{o}"targ-cpu.c.o "{o}"atof-targ.c.o |
49 | ||
50 | # If you put config.h in INCLUDES, then MPW's stupid make will always | |
51 | # want to rebuild everything. Better to do in two stages. | |
52 | ||
ea838f99 | 53 | INCLUDES = |
9e4eebc2 | 54 | # "{o}"config.h |
ea838f99 SS |
55 | # host.h |
56 | #"{s}".h | |
57 | ||
9e4eebc2 SS |
58 | CLIBS = ::libiberty:libiberty.o ::bfd:libbfd.o ::opcodes:libopcodes.o |
59 | ||
a23e2b7c | 60 | all \Option-f "{o}"config.h as.new |
ea838f99 | 61 | |
f64fd87f SS |
62 | as.new \Option-f\Option-f {OBJECTS} {TARG_OBJECTS} {CLIBS} "{o}"Version.r |
63 | Rez -rd -o as.new "{o}"Version.r -append | |
9e4eebc2 SS |
64 | Link {LDFLAGS} -o as.new {OBJECTS} {TARG_OBJECTS} {CLIBS} {EXTRALIBS} |
65 | ||
9e4eebc2 SS |
66 | "{o}"config.h \Option-f "{o}"config-stamp |
67 | ||
4c8b1e07 | 68 | "{o}"config-stamp \Option-f Makefile |
9e4eebc2 | 69 | Delete -i -y "{o}"config.new "{o}"config-stamp |
baf6f149 SS |
70 | Echo '#ifndef GAS_VERSION' > "{o}"config.new |
71 | Echo '#define GAS_VERSION "{VERSION}"' >> "{o}"config.new | |
72 | Echo '#define TARGET_CPU "{target_cpu}"' >> "{o}"config.new | |
73 | Echo '#define TARGET_ALIAS "{target_alias}"' >> "{o}"config.new | |
74 | Echo '#define TARGET_CANONICAL "{target_canonical}"' >> "{o}"config.new | |
4c8b1e07 SS |
75 | Echo '#define bzero(a,b) memset(a,0,b)' >> "{o}"config.new |
76 | Echo '#define bcopy(a,b,c) memcpy(b,a,c)' >> "{o}"config.new | |
77 | Echo '#define bcmp(a,b,c) memcmp(a,b,c)' >> "{o}"config.new | |
78 | Echo '#define M_ANSI 1' >> "{o}"config.new | |
79 | Echo '#include <stdlib.h>' >> "{o}"config.new | |
80 | Echo '#include <string.h>' >> "{o}"config.new | |
81 | Echo '#include <memory.h>' >> "{o}"config.new | |
a23e2b7c | 82 | Echo '#include <spin.h>' >> "{o}"config.new |
4c8b1e07 SS |
83 | Echo 'char *strdup();' >> "{o}"config.new |
84 | Echo '#ifdef MPW_C' >> "{o}"config.new | |
85 | Echo '#undef __PTR_TO_INT' >> "{o}"config.new | |
86 | Echo '#define __PTR_TO_INT(P) ((int)(P))' >> "{o}"config.new | |
87 | Echo '#undef __INT_TO_PTR' >> "{o}"config.new | |
88 | Echo '#define __INT_TO_PTR(P) ((char *)(P))' >> "{o}"config.new | |
89 | Echo '#endif' >> "{o}"config.new | |
90 | Echo '#define sys_nerr _sys_nerr' >> "{o}"config.new | |
91 | Echo '#define sys_errlist _sys_errlist' >> "{o}"config.new | |
92 | Echo '#ifdef __STDIO__' >> "{o}"config.new | |
93 | Echo 'FILE *mpw_fopen();' >> "{o}"config.new | |
94 | Echo '#endif' >> "{o}"config.new | |
95 | Echo '#define fopen mpw_fopen' >> "{o}"config.new | |
96 | Echo '#define fseek mpw_fseek' >> "{o}"config.new | |
97 | Echo '#define abort mpw_abort' >> "{o}"config.new | |
98 | Echo '#define TRUE_FALSE_ALREADY_DEFINED' >> "{o}"config.new | |
4c8b1e07 SS |
99 | Echo '#define CR_EOL' >> "{o}"config.new |
100 | Echo '#define ABORT_ON_ERROR' >> "{o}"config.new | |
101 | Echo '#define LOSING_COMPILER' >> "{o}"config.new | |
102 | Echo '#define HOST_SPECIAL_INIT(argc,argv) mpw_special_init ((argv)[0]);' >> "{o}"config.new | |
103 | Echo '#define WANT_FOPEN_BIN' >> "{o}"config.new | |
104 | Echo '#define HAVE_ERRNO_H' >> "{o}"config.new | |
a23e2b7c | 105 | Echo '#define HAVE_STDARG_H' >> "{o}"config.new |
d21041b3 SS |
106 | Echo '#define ' {HACK_O_RAMA} >> "{o}"config.new |
107 | Echo '#define OBJ_COFF_OMIT_TIMESTAMP' >> "{o}"config.new | |
f64fd87f | 108 | Echo '#endif /* GAS_VERSION */' >> "{o}"config.new |
9e4eebc2 | 109 | MoveIfChange "{o}"config.new "{o}"config.h |
921e047b | 110 | Echo ' ' >"{o}"config-stamp |
ea838f99 | 111 | |
d21041b3 | 112 | |
f64fd87f SS |
113 | "{o}"Version.r \Option-f "{o}"version-stamp |
114 | ||
115 | "{o}"version-stamp \Option-f Makefile | |
116 | Delete -i -y "{o}"version.new "{o}"version-stamp | |
117 | Set major 0 | |
118 | Set minor 0 | |
119 | Set release 0 | |
120 | Echo '/* Version resources. */' > "{o}"version.new | |
121 | Echo '#include "SysTypes.r"' >> "{o}"version.new | |
122 | Echo '' >> "{o}"version.new | |
123 | Echo "resource 'vers' (1) " `open-brace` >> "{o}"version.new | |
124 | Echo " {major}," >> "{o}"version.new | |
125 | Echo " {minor}," >> "{o}"version.new | |
126 | Echo " {release}," >> "{o}"version.new | |
127 | Echo ' 0,' >> "{o}"version.new | |
128 | Echo ' verUs,' >> "{o}"version.new | |
129 | Echo ' "{VERSION}",' >> "{o}"version.new | |
130 | Echo ' "{VERSION} (c) 1986-95 FSF, Inc. "' >> "{o}"version.new | |
131 | Echo '};' >> "{o}"version.new | |
132 | Echo '' >> "{o}"version.new | |
133 | Echo "resource 'vers' (2, purgeable) " `open-brace` >> "{o}"version.new | |
134 | Echo " {major}," >> "{o}"version.new | |
135 | Echo " {minor}," >> "{o}"version.new | |
136 | Echo " {release}," >> "{o}"version.new | |
137 | Echo ' 0,' >> "{o}"version.new | |
138 | Echo ' verUs,' >> "{o}"version.new | |
139 | Echo ' "{VERSION}",' >> "{o}"version.new | |
140 | Echo ' "GNU AS for MPW"' >> "{o}"version.new | |
141 | Echo '};' >> "{o}"version.new | |
142 | MoveIfChange "{o}"version.new "{o}"Version.r | |
143 | Echo ' ' > "{o}"version-stamp | |
144 | ||
0f8cb88d | 145 | "{o}"app.c.o \Option-f "{s}"app.c {INCLUDES} |
921e047b | 146 | "{o}"as.c.o \Option-f "{s}"as.c {INCLUDES} |
0f8cb88d | 147 | "{o}"atof-generic.c.o \Option-f "{s}"atof-generic.c {INCLUDES} |
9e4eebc2 | 148 | "{o}"bignum-copy.c.o \Option-f "{s}"bignum-copy.c {INCLUDES} |
0f8cb88d SS |
149 | "{o}"cond.c.o \Option-f "{s}"cond.c {INCLUDES} |
150 | "{o}"expr.c.o \Option-f "{s}"expr.c {INCLUDES} | |
151 | "{o}"flonum-konst.c.o \Option-f "{s}"flonum-konst.c {INCLUDES} | |
152 | "{o}"flonum-copy.c.o \Option-f "{s}"flonum-copy.c {INCLUDES} | |
153 | "{o}"flonum-mult.c.o \Option-f "{s}"flonum-mult.c {INCLUDES} | |
154 | "{o}"frags.c.o \Option-f "{s}"frags.c {INCLUDES} | |
155 | "{o}"hash.c.o \Option-f "{s}"hash.c {INCLUDES} | |
0f8cb88d SS |
156 | "{o}"input-file.c.o \Option-f "{s}"input-file.c {INCLUDES} |
157 | "{o}"input-scrub.c.o \Option-f "{s}"input-scrub.c {INCLUDES} | |
158 | "{o}"listing.c.o \Option-f "{s}"listing.c {INCLUDES} | |
159 | "{o}"messages.c.o \Option-f "{s}"messages.c {INCLUDES} | |
160 | "{o}"output-file.c.o \Option-f "{s}"output-file.c {INCLUDES} | |
161 | "{o}"read.c.o \Option-f "{s}"read.c {INCLUDES} | |
162 | "{o}"subsegs.c.o \Option-f "{s}"subsegs.c {INCLUDES} | |
163 | "{o}"symbols.c.o \Option-f "{s}"symbols.c {INCLUDES} | |
164 | "{o}"write.c.o \Option-f "{s}"write.c {INCLUDES} | |
165 | "{o}"ecoff.c.o \Option-f "{s}"ecoff.c {INCLUDES} | |
edd9075c | 166 | |
9e4eebc2 SS |
167 | "{o}"targ-cpu.c.o \Option-f "{o}"targ-cpu.c {INCLUDES} |
168 | "{o}"obj-format.c.o \Option-f "{o}"obj-format.c {INCLUDES} | |
169 | "{o}"atof-targ.c.o \Option-f "{o}"atof-targ.c {INCLUDES} | |
170 | ||
921e047b SS |
171 | install \Option-f all install-only |
172 | ||
173 | install-only \Option-f | |
edd9075c SS |
174 | If "`Exists "{prefix}"`" == "" |
175 | Echo "{prefix}" does not exist, cannot install anything | |
176 | Exit 1 | |
177 | End If | |
178 | If "`Exists "{bindir}"`" == "" | |
179 | NewFolder "{bindir}" | |
180 | End If | |
181 | Duplicate -y :as.new "{bindir}"as |