2 # Targets: All, Dynamic, Static (and Clean, Clean-All)
3 # Created: Tuesday, July 02, 2002
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
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.
18 # or Buildprogram Dynamic
19 # or Buildprogram Static
21 # Note: You first have to rename this file to "Makefile", or the Buildprogram
22 # commando will not recognize it.
26 ¥MondoBuild¥ = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified
34 Includes = -i {HdrDir}
38 Defines = -d MACOS_CLASSIC
40 PPCCOptions = {Includes} {Sym-PPC} -w 35 {Defines}
48 "{SrcDir}xmlparse.c" ¶
53 "{ToolDir}elements.c" ¶
60 "{ObjDir}xmlparse.c.o" ¶
61 "{ObjDir}xmlrole.c.o" ¶
64 ElementToolObjFile = "{ObjDir}elements.c.o"
66 OutlineToolObjFile = "{ObjDir}outline.c.o"
72 "{PPCLibraries}StdCRuntime.o" ¶
73 "{PPCLibraries}PPCCRuntime.o" ¶
74 "{PPCLibraries}PPCToolLibs.o"
77 "{SharedLibraries}InterfaceLib" ¶
78 "{SharedLibraries}StdCLib" ¶
79 "{SharedLibraries}MathLib"
88 ExportFile = "{ObjDir}{FragName}.exp"
90 StLibFile = "{ObjDir}{FragName}.MrC.o"
92 ShLibFile = "{ObjDir}{FragName}"
94 StubFile = "{ObjDir}{FragName}.stub"
96 ElementsTool = "{ToolDir}elements"
98 OutlineTool = "{ToolDir}outline"
101 ### Default Rules ###
103 .c.o Ä .c {¥MondoBuild¥}
104 {PPCC} {depDir}{default}.c -o {targDir}{default}.c.o {PPCCOptions}
109 All Ä Dynamic {ElementsTool} {OutlineTool}
113 Dynamic Ä Static {ShLibFile} {StubFile}
115 {StLibFile} ÄÄ {ObjFiles-PPC} {StLibFiles-PPC} {¥MondoBuild¥}
126 {ShLibFile} ÄÄ {StLibFile} {ShLibFiles-PPC} {ExportFile} {¥MondoBuild¥}
132 -@export {ExportFile} ¶
133 -fragname {FragName} ¶
139 {StubFile} ÄÄ {ShLibFile} {¥MondoBuild¥}
140 shlb2stub -o {Targ} {ShLibFile}
142 {ElementsTool} ÄÄ {ElementToolObjFile} {StubFile} {LibFiles-PPC} {¥MondoBuild¥}
145 {ElementToolObjFile} ¶
153 {OutlineTool} ÄÄ {OutlineToolObjFile} {StubFile} {LibFiles-PPC} {¥MondoBuild¥}
156 {OutlineToolObjFile} ¶
165 ### Special Rules ###
167 {ExportFile} ÄÄ "{HdrDir}expat.h" {¥MondoBuild¥}
169 -e "/¥('XMLPARSEAPI('Å') ')Ç0,1È'XML_'([A-Za-z0-9_]+)¨1'('/ Print 'XML_' ¨1" ¶
170 "{HdrDir}expat.h" > {Targ}
173 ### Required Dependencies ###
175 "{ObjDir}xmlparse.c.o" Ä "{SrcDir}xmlparse.c"
176 "{ObjDir}xmlrole.c.o" Ä "{SrcDir}xmlrole.c"
177 "{ObjDir}xmltok.c.o" Ä "{SrcDir}xmltok.c"
179 "{ObjDir}elements.c.o" Ä "{ToolDir}elements.c"
180 "{ObjDir}outline.c.o" Ä "{ToolDir}outline.c"
183 ### Optional Dependencies ###
184 ### Build this target to clean out generated intermediate files. ###
187 Delete {ObjFiles-PPC} {ExportFile} {ElementToolObjFile} {OutlineToolObjFile}
189 ### Build this target to clean out all generated files. ###
192 Delete {StLibFile} {ShLibFile} {StubFile} {ElementsTool} {OutlineTool}
194 ### Build this target to generate "include file" dependencies. ###
196 Dependencies Ä $OutOfDate
199 -ignore "{CIncludes}" ¶