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 25MAKEFILE = Makefile 26�MondoBuild� = {MAKEFILE} # Make blank to avoid rebuilds when makefile is modified 27 28ObjDir = : 29SrcDir = : 30HdrDir = : 31 32ToolDir = ::examples: 33 34Includes = -i {HdrDir} 35 36Sym-PPC = -sym off 37 38Defines = -d MACOS_CLASSIC 39 40PPCCOptions = {Includes} {Sym-PPC} -w 35 {Defines} 41 42FragName = libexpat 43 44 45### Source Files ### 46 47SrcFiles = � 48 "{SrcDir}xmlparse.c" � 49 "{SrcDir}xmlrole.c" � 50 "{SrcDir}xmltok.c" 51 52ToolSrcFiles = � 53 "{ToolDir}elements.c" � 54 "{ToolDir}outline.c" 55 56 57### Object Files ### 58 59ObjFiles-PPC = � 60 "{ObjDir}xmlparse.c.o" � 61 "{ObjDir}xmlrole.c.o" � 62 "{ObjDir}xmltok.c.o" 63 64ElementToolObjFile = "{ObjDir}elements.c.o" 65 66OutlineToolObjFile = "{ObjDir}outline.c.o" 67 68 69### Libraries ### 70 71StLibFiles-PPC = � 72 "{PPCLibraries}StdCRuntime.o" � 73 "{PPCLibraries}PPCCRuntime.o" � 74 "{PPCLibraries}PPCToolLibs.o" 75 76ShLibFiles-PPC = � 77 "{SharedLibraries}InterfaceLib" � 78 "{SharedLibraries}StdCLib" � 79 "{SharedLibraries}MathLib" 80 81LibFiles-PPC = � 82 {StLibFiles-PPC} � 83 {ShLibFiles-PPC} 84 85 86### Special Files ### 87 88ExportFile = "{ObjDir}{FragName}.exp" 89 90StLibFile = "{ObjDir}{FragName}.MrC.o" 91 92ShLibFile = "{ObjDir}{FragName}" 93 94StubFile = "{ObjDir}{FragName}.stub" 95 96ElementsTool = "{ToolDir}elements" 97 98OutlineTool = "{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 109All � Dynamic {ElementsTool} {OutlineTool} 110 111Static � {StLibFile} 112 113Dynamic � 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 186Clean � 187 Delete {ObjFiles-PPC} {ExportFile} {ElementToolObjFile} {OutlineToolObjFile} 188 189### Build this target to clean out all generated files. ### 190 191Clean-All � Clean 192 Delete {StLibFile} {ShLibFile} {StubFile} {ElementsTool} {OutlineTool} 193 194### Build this target to generate "include file" dependencies. ### 195 196Dependencies � $OutOfDate 197 MakeDepend � 198 -append {MAKEFILE} � 199 -ignore "{CIncludes}" � 200 -objdir "{ObjDir}" � 201 -objext .o � 202 {Defines} � 203 {Includes} � 204 {SrcFiles} 205 206 207