]>
Commit | Line | Data |
---|---|---|
252b5132 RH |
1 | # This is an MPW makefile fragment. |
2 | ||
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. | |
7 | ||
8 | # Compiler to use for compiling. | |
9 | ||
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 | ||
14 | CC_MWC68K = MWC68K -d MPW -enum int -mpw_chars -sym on -w off -mc68020 -model far | |
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 | ||
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 | |
34 | ||
35 | # Note that GCC does *not* wire in a definition of "pascal", so that | |
36 | # it can be handled in another way if desired. | |
37 | ||
38 | CC_68K_GCC = gC -Dpascal= -DANSI_PROTOTYPES -DMPW | |
39 | ||
40 | CC_PPC_GCC = gC -Dpowerc=1 -Dpascal= -DANSI_PROTOTYPES -DMPW | |
41 | ||
42 | # Nothing for the default CFLAGS. | |
43 | ||
44 | CFLAGS = | |
45 | ||
46 | # Tool to use for making libraries/archives. | |
47 | ||
48 | AR_LIB = Lib | |
49 | ||
50 | AR_MWLINK68K = MWLink68K -xm library | |
51 | ||
52 | AR_PPCLINK = PPCLink -xm library | |
53 | ||
54 | AR_MWLINKPPC = MWLinkPPC -xm library | |
55 | ||
56 | AR_AR = ar | |
57 | ||
58 | AR_FLAGS = -o | |
59 | ||
60 | RANLIB_NULL = null-command | |
61 | ||
62 | RANLIB_RANLIB = ranlib | |
63 | ||
64 | # Compiler and/or linker to use for linking. | |
65 | ||
66 | CC_LD_LINK = Link -w -d -model far {CC_LD_TOOL_FLAGS} | |
67 | ||
68 | CC_LD_MWLINK68K = MWLink68K -w {CC_LD_TOOL_FLAGS} -sym on -model far | |
69 | ||
70 | CC_LD_PPCLINK = PPCLink -main __start -outputformat xcoff | |
71 | ||
72 | CC_LD_MWLINKPPC = MWLinkPPC -w {CC_LD_TOOL_FLAGS} -sym on | |
73 | ||
74 | CC_LD_GLD = gC | |
75 | ||
76 | # Extension for linker output. | |
77 | ||
78 | PROG_EXT_68K = | |
79 | ||
80 | PROG_EXT_XCOFF = .xcoff | |
81 | ||
82 | # Nothing for the default LDFLAGS. | |
83 | ||
84 | LDFLAGS = -w | |
85 | ||
86 | CC_LD_TOOL_FLAGS = -c 'MPS ' -t MPST | |
87 | ||
88 | # Libraries to link against. | |
89 | ||
90 | # It would appear that the math libraries are not | |
91 | # needed except to provide a definition for scalb, | |
92 | # which is called from ldexp, which is referenced | |
93 | # in the m68k opcodes library. | |
94 | ||
95 | EXTRALIBS_C = \Option-d | |
96 | "{CLibraries}"StdClib.o \Option-d | |
97 | "{CLibraries}"Math.o \Option-d | |
98 | "{CLibraries}"CSANELib.o \Option-d | |
99 | "{Libraries}"Stubs.o \Option-d | |
100 | "{Libraries}"Runtime.o \Option-d | |
101 | "{Libraries}"Interface.o \Option-d | |
102 | "{Libraries}"ToolLibs.o | |
103 | ||
104 | EXTRALIBS_MWC68K = \Option-d | |
105 | "{CLibraries}"StdClib.o \Option-d | |
106 | "{CLibraries}"Math.o \Option-d | |
107 | "{CLibraries}"CSANELib.o \Option-d | |
108 | "{Libraries}"Stubs.o \Option-d | |
109 | "{Libraries}"Runtime.o \Option-d | |
110 | "{Libraries}"Interface.o \Option-d | |
111 | "{Libraries}"ToolLibs.o \Option-d | |
112 | "{MW68KLibraries}MPW ANSI (4i) C.68K.Lib" | |
113 | ||
114 | EXTRALIBS_PPC_XCOFF = \Option-d | |
115 | "{PPCLibraries}"StdCRuntime.o \Option-d | |
116 | "{PPCLibraries}"InterfaceLib.xcoff \Option-d | |
117 | "{PPCLibraries}"MathLib.xcoff \Option-d | |
118 | "{PPCLibraries}"StdCLib.xcoff \Option-d | |
119 | "{PPCLibraries}"PPCToolLibs.o \Option-d | |
120 | "{PPCLibraries}"PPCCRuntime.o \Option-d | |
121 | "{GCCPPCLibraries}"libgcc.xcoff | |
122 | ||
123 | EXTRALIBS_PPC = \Option-d | |
124 | "{PPCLibraries}"StdCRuntime.o \Option-d | |
125 | "{SharedLibraries}"InterfaceLib \Option-d | |
126 | "{SharedLibraries}"MathLib \Option-d | |
127 | "{SharedLibraries}"StdCLib \Option-d | |
128 | "{PPCLibraries}"PPCToolLibs.o \Option-d | |
129 | "{PPCLibraries}"PPCCRuntime.o \Option-d | |
130 | "{GCCPPCLibraries}"libgcc.xcoff | |
131 | ||
132 | EXTRALIBS_MWCPPC = \Option-d | |
133 | "{MWPPCLibraries}"MWStdCRuntime.Lib \Option-d | |
134 | "{MWPPCLibraries}"InterfaceLib \Option-d | |
135 | "{MWPPCLibraries}"StdCLib \Option-d | |
136 | "{MWPPCLibraries}"MathLib \Option-d | |
137 | "{MWPPCLibraries}"PPCToolLibs.o | |
138 | ||
139 | # Tool to make PEF with, if needed. | |
140 | ||
141 | MAKEPEF_NULL = null-command | |
142 | ||
143 | MAKEPEF_PPC = MakePEF | |
144 | ||
145 | MAKEPEF_FLAGS = \Option-d | |
146 | -l InterfaceLib.xcoff=InterfaceLib \Option-d | |
147 | -l MathLib.xcoff=MathLib \Option-d | |
148 | -l StdCLib.xcoff=StdCLib | |
149 | ||
150 | MAKEPEF_TOOL_FLAGS = -ft MPST -fc 'MPS ' | |
151 | ||
152 | # Resource compiler to use. | |
153 | ||
154 | REZ_68K = Rez | |
155 | ||
156 | REZ_PPC = Rez -d WANT_CFRG | |
157 |