172
|
1 |
# File: Makefile.MPW
|
|
2 |
# Targets: All, Dynamic, Static (and Clean, Clean-All)
|
|
3 |
# Created: Tuesday, July 02, 2002
|
|
4 |
#
|
|
5 |
# MPW Makefile for building expat under the "classic" (i.e. pre-X) Mac OS
|
|
6 |
# Copyright © 2002 Daryle Walker
|
|
7 |
# Portions Copyright © 2002 Thomas Wegner
|
|
8 |
# See the COPYING file for distribution information
|
|
9 |
#
|
|
10 |
# Description:
|
|
11 |
# This Makefile lets you build static, dynamic (i.e. shared) and stub
|
|
12 |
# versions of the expat library as well as the elements.c and outline.c
|
|
13 |
# examples (built as tools for MPW). This is for PPC only; it should be
|
|
14 |
# no problem to build a 68K version of the expat library, though.
|
|
15 |
#
|
|
16 |
# Usage:
|
|
17 |
# Buildprogram All
|
|
18 |
# or Buildprogram Dynamic
|
|
19 |
# or Buildprogram Static
|
|
20 |
#
|
|
21 |
# Note: You first have to rename this file to "Makefile", or the Buildprogram
|
|
22 |
# commando will not recognize it.
|
|
23 |
#
|
|
24 |
|
|
25 |
MAKEFILE = Makefile
|
|
26 |
¥MondoBuild¥ = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
|
|
27 |
|
|
28 |
ObjDir = :
|
|
29 |
SrcDir = :
|
|
30 |
HdrDir = :
|
|
31 |
|
|
32 |
ToolDir = ::examples:
|
|
33 |
|
|
34 |
Includes = -i {HdrDir}
|
|
35 |
|
|
36 |
Sym-PPC = -sym off
|
|
37 |
|
|
38 |
Defines = -d MACOS_CLASSIC
|
|
39 |
|
|
40 |
PPCCOptions = {Includes} {Sym-PPC} -w 35 {Defines}
|
|
41 |
|
|
42 |
FragName = libexpat
|
|
43 |
|
|
44 |
|
|
45 |
### Source Files ###
|
|
46 |
|
|
47 |
SrcFiles = ¶
|
|
48 |
"{SrcDir}xmlparse.c" ¶
|
|
49 |
"{SrcDir}xmlrole.c" ¶
|
|
50 |
"{SrcDir}xmltok.c"
|
|
51 |
|
|
52 |
ToolSrcFiles = ¶
|
|
53 |
"{ToolDir}elements.c" ¶
|
|
54 |
"{ToolDir}outline.c"
|
|
55 |
|
|
56 |
|
|
57 |
### Object Files ###
|
|
58 |
|
|
59 |
ObjFiles-PPC = ¶
|
|
60 |
"{ObjDir}xmlparse.c.o" ¶
|
|
61 |
"{ObjDir}xmlrole.c.o" ¶
|
|
62 |
"{ObjDir}xmltok.c.o"
|
|
63 |
|
|
64 |
ElementToolObjFile = "{ObjDir}elements.c.o"
|
|
65 |
|
|
66 |
OutlineToolObjFile = "{ObjDir}outline.c.o"
|
|
67 |
|
|
68 |
|
|
69 |
### Libraries ###
|
|
70 |
|
|
71 |
StLibFiles-PPC = ¶
|
|
72 |
"{PPCLibraries}StdCRuntime.o" ¶
|
|
73 |
"{PPCLibraries}PPCCRuntime.o" ¶
|
|
74 |
"{PPCLibraries}PPCToolLibs.o"
|
|
75 |
|
|
76 |
ShLibFiles-PPC = ¶
|
|
77 |
"{SharedLibraries}InterfaceLib" ¶
|
|
78 |
"{SharedLibraries}StdCLib" ¶
|
|
79 |
"{SharedLibraries}MathLib"
|
|
80 |
|
|
81 |
LibFiles-PPC = ¶
|
|
82 |
{StLibFiles-PPC} ¶
|
|
83 |
{ShLibFiles-PPC}
|
|
84 |
|
|
85 |
|
|
86 |
### Special Files ###
|
|
87 |
|
|
88 |
ExportFile = "{ObjDir}{FragName}.exp"
|
|
89 |
|
|
90 |
StLibFile = "{ObjDir}{FragName}.MrC.o"
|
|
91 |
|
|
92 |
ShLibFile = "{ObjDir}{FragName}"
|
|
93 |
|
|
94 |
StubFile = "{ObjDir}{FragName}.stub"
|
|
95 |
|
|
96 |
ElementsTool = "{ToolDir}elements"
|
|
97 |
|
|
98 |
OutlineTool = "{ToolDir}outline"
|
|
99 |
|
|
100 |
|
|
101 |
### Default Rules ###
|
|
102 |
|
|
103 |
.c.o Ä .c {¥MondoBuild¥}
|
|
104 |
{PPCC} {depDir}{default}.c -o {targDir}{default}.c.o {PPCCOptions}
|
|
105 |
|
|
106 |
|
|
107 |
### Build Rules ###
|
|
108 |
|
|
109 |
All Ä Dynamic {ElementsTool} {OutlineTool}
|
|
110 |
|
|
111 |
Static Ä {StLibFile}
|
|
112 |
|
|
113 |
Dynamic Ä Static {ShLibFile} {StubFile}
|
|
114 |
|
|
115 |
{StLibFile} ÄÄ {ObjFiles-PPC} {StLibFiles-PPC} {¥MondoBuild¥}
|
|
116 |
PPCLink ¶
|
|
117 |
-o {Targ} ¶
|
|
118 |
{ObjFiles-PPC} ¶
|
|
119 |
{StLibFiles-PPC} ¶
|
|
120 |
{Sym-PPC} ¶
|
|
121 |
-mf -d ¶
|
|
122 |
-t 'XCOF' ¶
|
|
123 |
-c 'MPS ' ¶
|
|
124 |
-xm l
|
|
125 |
|
|
126 |
{ShLibFile} ÄÄ {StLibFile} {ShLibFiles-PPC} {ExportFile} {¥MondoBuild¥}
|
|
127 |
PPCLink ¶
|
|
128 |
-o {Targ} ¶
|
|
129 |
{StLibFile} ¶
|
|
130 |
{ShLibFiles-PPC} ¶
|
|
131 |
{Sym-PPC} ¶
|
|
132 |
-@export {ExportFile} ¶
|
|
133 |
-fragname {FragName} ¶
|
|
134 |
-mf -d ¶
|
|
135 |
-t 'shlb' ¶
|
|
136 |
-c '????' ¶
|
|
137 |
-xm s
|
|
138 |
|
|
139 |
{StubFile} ÄÄ {ShLibFile} {¥MondoBuild¥}
|
|
140 |
shlb2stub -o {Targ} {ShLibFile}
|
|
141 |
|
|
142 |
{ElementsTool} ÄÄ {ElementToolObjFile} {StubFile} {LibFiles-PPC} {¥MondoBuild¥}
|
|
143 |
PPCLink ¶
|
|
144 |
-o {Targ} ¶
|
|
145 |
{ElementToolObjFile} ¶
|
|
146 |
{StLibFile} ¶
|
|
147 |
{LibFiles-PPC} ¶
|
|
148 |
{Sym-PPC} ¶
|
|
149 |
-mf -d ¶
|
|
150 |
-t 'MPST' ¶
|
|
151 |
-c 'MPS '
|
|
152 |
|
|
153 |
{OutlineTool} ÄÄ {OutlineToolObjFile} {StubFile} {LibFiles-PPC} {¥MondoBuild¥}
|
|
154 |
PPCLink ¶
|
|
155 |
-o {Targ} ¶
|
|
156 |
{OutlineToolObjFile} ¶
|
|
157 |
{StLibFile} ¶
|
|
158 |
{LibFiles-PPC} ¶
|
|
159 |
{Sym-PPC} ¶
|
|
160 |
-mf -d ¶
|
|
161 |
-t 'MPST' ¶
|
|
162 |
-c 'MPS '
|
|
163 |
|
|
164 |
|
|
165 |
### Special Rules ###
|
|
166 |
|
|
167 |
{ExportFile} ÄÄ "{HdrDir}expat.h" {¥MondoBuild¥}
|
|
168 |
StreamEdit -d ¶
|
|
169 |
-e "/¥('XMLPARSEAPI('Å') ')Ç0,1È'XML_'([A-Za-z0-9_]+)¨1'('/ Print 'XML_' ¨1" ¶
|
|
170 |
"{HdrDir}expat.h" > {Targ}
|
|
171 |
|
|
172 |
|
|
173 |
### Required Dependencies ###
|
|
174 |
|
|
175 |
"{ObjDir}xmlparse.c.o" Ä "{SrcDir}xmlparse.c"
|
|
176 |
"{ObjDir}xmlrole.c.o" Ä "{SrcDir}xmlrole.c"
|
|
177 |
"{ObjDir}xmltok.c.o" Ä "{SrcDir}xmltok.c"
|
|
178 |
|
|
179 |
"{ObjDir}elements.c.o" Ä "{ToolDir}elements.c"
|
|
180 |
"{ObjDir}outline.c.o" Ä "{ToolDir}outline.c"
|
|
181 |
|
|
182 |
|
|
183 |
### Optional Dependencies ###
|
|
184 |
### Build this target to clean out generated intermediate files. ###
|
|
185 |
|
|
186 |
Clean Ä
|
|
187 |
Delete {ObjFiles-PPC} {ExportFile} {ElementToolObjFile} {OutlineToolObjFile}
|
|
188 |
|
|
189 |
### Build this target to clean out all generated files. ###
|
|
190 |
|
|
191 |
Clean-All Ä Clean
|
|
192 |
Delete {StLibFile} {ShLibFile} {StubFile} {ElementsTool} {OutlineTool}
|
|
193 |
|
|
194 |
### Build this target to generate "include file" dependencies. ###
|
|
195 |
|
|
196 |
Dependencies Ä $OutOfDate
|
|
197 |
MakeDepend ¶
|
|
198 |
-append {MAKEFILE} ¶
|
|
199 |
-ignore "{CIncludes}" ¶
|
|
200 |
-objdir "{ObjDir}" ¶
|
|
201 |
-objext .o ¶
|
|
202 |
{Defines} ¶
|
|
203 |
{Includes} ¶
|
|
204 |
{SrcFiles}
|
|
205 |
|
|
206 |
|