]>
Commit | Line | Data |
---|---|---|
b6597455 SS |
1 | # This is an MPW makefile fragment. |
2 | ||
340b14dc SS |
3 | # Since there are a multiplicity of Mac compilers and two different |
4 | # processors, this file is primarily a library of options for each | |
5 | # compiler. Somebody else (such as a configure or build script) will | |
6 | # make the actual choice. | |
b6597455 | 7 | |
340b14dc | 8 | # Compiler to use for compiling. |
266f6652 | 9 | |
340b14dc SS |
10 | CC_MPW_C = C -d MPW_C -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -mc68020 -model far -b -w |
11 | ||
12 | CC_SC = SC -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -mc68020 -model far -b -i '' -i : | |
13 | ||
ca234b7d | 14 | CC_MWC68K = MWC68K -d MPW -enum int -mpw_chars -sym on -w off -mc68020 -model far |
340b14dc SS |
15 | |
16 | CC_PPCC = PPCC -d powerc=1 -d pascal= -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -w | |
17 | ||
18 | CC_MRC = MrC -d powerc=1 -d pascal= -d ALMOST_STDC -d ANSI_PROTOTYPES -d MPW -i '' -i : -jm | |
19 | ||
20 | CC_SMrC = SMrC -d MPW | |
21 | ||
456c7017 SS |
22 | # "-mpw_chars" is necessary because GNU sources often mix signed and |
23 | # unsigned casually. | |
24 | # "-w off" is not a great idea, but CW7 is complaining about enum | |
25 | # assignments. | |
26 | # "-opt global,peep,l4,speed" is sometimes good, and sometimes bad. | |
27 | # We must use {CIncludes} so that MPW tools will work; {MWCIncludes} | |
28 | # defines stdout, islower, etc, in ways that are incompatible with MPW's | |
29 | # runtime. However, this cannot be done via -i "{CIncludes}", since | |
30 | # that does not affect how <>-type includes happen; instead, the variable | |
31 | # MWCIncludes must be set to point at {CIncludes}. | |
32 | ||
33 | CC_MWCPPC = MWCPPC -d MPW -enum int -mpw_chars -sym on -w off | |
340b14dc SS |
34 | |
35 | CC_68K_GCC = gC -Dpascal= -DANSI_PROTOTYPES -DMPW | |
36 | ||
37 | CC_PPC_GCC = gC -Dpowerc=1 -Dpascal= -DANSI_PROTOTYPES -DMPW | |
38 | ||
39 | # Nothing for the default CFLAGS. | |
40 | ||
41 | CFLAGS = | |
42 | ||
43 | # These two definitions must *not* have any trailing blanks. | |
44 | ||
45 | SEGFLAG_68K = -s | |
46 | ||
47 | SEGFLAG_PPC = -d dumdum_ | |
48 | ||
49 | # Tool to use for making libraries/archives. | |
50 | ||
51 | AR_LIB = Lib | |
52 | ||
ca234b7d | 53 | AR_MWLINK68K = MWLink68K -xm library |
340b14dc SS |
54 | |
55 | AR_PPCLINK = PPCLink -xm library | |
56 | ||
57 | AR_MWLINKPPC = MWLinkPPC -xm library | |
58 | ||
ca234b7d SS |
59 | AR_AR = ar |
60 | ||
340b14dc SS |
61 | AR_FLAGS = -o |
62 | ||
63 | RANLIB_NULL = null-command | |
64 | ||
65 | RANLIB_RANLIB = ranlib | |
66 | ||
67 | # Compiler and/or linker to use for linking. | |
68 | ||
69 | CC_LD_LINK = Link -w -d -model far {CC_LD_TOOL_FLAGS} | |
70 | ||
ca234b7d | 71 | CC_LD_MWLINK68K = MWLink68K -w {CC_LD_TOOL_FLAGS} -sym on -model far |
340b14dc SS |
72 | |
73 | CC_LD_PPCLINK = PPCLink -main __start -outputformat xcoff | |
74 | ||
456c7017 | 75 | CC_LD_MWLINKPPC = MWLinkPPC -w {CC_LD_TOOL_FLAGS} -sym on |
340b14dc SS |
76 | |
77 | CC_LD_GLD = gC | |
78 | ||
79 | # Extension for linker output. | |
80 | ||
81 | PROG_EXT_68K = | |
82 | ||
83 | PROG_EXT_XCOFF = .xcoff | |
84 | ||
85 | # Nothing for the default LDFLAGS. | |
86 | ||
87 | LDFLAGS = -w | |
88 | ||
89 | CC_LD_TOOL_FLAGS = -c 'MPS ' -t MPST | |
90 | ||
91 | # Libraries to link against. | |
b6597455 | 92 | |
e025097f SS |
93 | # It would appear that the math libraries are not |
94 | # needed except to provide a definition for scalb, | |
95 | # which is called from ldexp, which is referenced | |
96 | # in the m68k opcodes library. | |
97 | ||
340b14dc | 98 | EXTRALIBS_C = \Option-d |
b6597455 | 99 | "{CLibraries}"StdClib.o \Option-d |
e025097f SS |
100 | "{CLibraries}"Math.o \Option-d |
101 | "{CLibraries}"CSANELib.o \Option-d | |
b6597455 SS |
102 | "{Libraries}"Stubs.o \Option-d |
103 | "{Libraries}"Runtime.o \Option-d | |
104 | "{Libraries}"Interface.o \Option-d | |
e025097f | 105 | "{Libraries}"ToolLibs.o |
340b14dc | 106 | |
ca234b7d SS |
107 | EXTRALIBS_MWC68K = \Option-d |
108 | "{CLibraries}"StdClib.o \Option-d | |
109 | "{CLibraries}"Math.o \Option-d | |
110 | "{CLibraries}"CSANELib.o \Option-d | |
111 | "{Libraries}"Stubs.o \Option-d | |
112 | "{Libraries}"Runtime.o \Option-d | |
113 | "{Libraries}"Interface.o \Option-d | |
114 | "{Libraries}"ToolLibs.o \Option-d | |
115 | "{MW68KLibraries}MPW ANSI (4i) C.68K.Lib" | |
116 | ||
340b14dc | 117 | EXTRALIBS_PPC = \Option-d |
456c7017 | 118 | "{PPCLibraries}"StdCRuntime.o \Option-d |
340b14dc SS |
119 | "{PPCLibraries}"InterfaceLib.xcoff \Option-d |
120 | "{PPCLibraries}"MathLib.xcoff \Option-d | |
121 | "{PPCLibraries}"StdCLib.xcoff \Option-d | |
122 | "{PPCLibraries}"PPCToolLibs.o \Option-d | |
340b14dc SS |
123 | "{PPCLibraries}"PPCCRuntime.o |
124 | ||
125 | EXTRALIBS_MWCPPC = \Option-d | |
340b14dc | 126 | "{MWPPCLibraries}"MWStdCRuntime.Lib \Option-d |
456c7017 | 127 | "{MWPPCLibraries}"InterfaceLib \Option-d |
340b14dc | 128 | "{MWPPCLibraries}"StdCLib \Option-d |
456c7017 | 129 | "{MWPPCLibraries}"MathLib \Option-d |
340b14dc SS |
130 | "{MWPPCLibraries}"PPCToolLibs.o |
131 | ||
132 | # Tool to make PEF with, if needed. | |
133 | ||
134 | MAKEPEF_NULL = null-command | |
135 | ||
136 | MAKEPEF_PPC = MakePEF | |
137 | ||
138 | MAKEPEF_FLAGS = \Option-d | |
139 | -l InterfaceLib.xcoff=InterfaceLib \Option-d | |
140 | -l MathLib.xcoff=MathLib \Option-d | |
141 | -l StdCLib.xcoff=StdCLib | |
142 | ||
143 | MAKEPEF_TOOL_FLAGS = -ft MPST -fc 'MPS ' | |
144 | ||
145 | # Resource compiler to use. | |
146 | ||
147 | REZ_68K = Rez | |
148 | ||
149 | REZ_PPC = Rez -d WANT_CFRG | |
150 |