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