| 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 |  | 
|---|