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