boot3/Make/RISC.make

391 lines
15 KiB
Plaintext
Raw Normal View History

#
# File: RISC.make
#
# Contains: Makefile for the RISC ROM.
#
# Written by: Kurt Clark
#
# Copyright: <09> 1992-1994 by Apple Computer, Inc., all rights reserved.
#
# Change History (most recent first):
#
# <SM76> 1/31/94 GS Update Version for TNT D4c1 build.
# <SM75> 1/10/94 chp TNT D3C1 build. Simplify the build command for the <20>Clean<61>
# target: wildcard substitution is sloppy if there is no match and
# seems to result in :Obj:Interface: getting deleted.
# <SM74> 12/2/93 chp TNT D2C1 build.
# <SM73> 11/19/93 chp Add BuildResults Text directories to the Delete list in the
# <09>Clean<61> target.
# <SM72> 11/10/93 fau Added a 'hasGrandCentral' feature (TNT's Interrupt Controller)
# and revved the release to D1C1 for TNT's D1 release.
# <SM71> 11/9/93 KW PDM build flags are NO longer always true. PDM must include
# them on the build line
# <SM70> 11/3/93 RC Changed rev for fc1 build, make PDM flags true by default,
# turned off symbols
# <SM69> 10/20/93 BT #1118912; for some reason hasRISCV0ResMgrPatches is not in here.
# Add it.
# <SM68> 10/15/93 SAM Turning on forPDMProto by default.
# <SM67> 10/14/93 pdw Added a dependency on AppleTalk.ROM.rsrc.
# <SM66> 10/6/93 RC Bump rev up to B2E1
# <SM65> 9/30/93 IH Add hasDisplayMgrWindows feature to PDM. This allows the display
# manager in the gibbly without patching out the window manager on
# PDM. Having it in ROM and on Disk are okay. Make sure that the
# gibbly is built with hasDisplayMgr before turning it off in ROM
# or you will be making unimplemented trap calls from the window
# manager.
# <SM64> 9/28/93 SAM From mc900ftjesus.
# <MC10> 9/27/93 SAM Removed VMinROM cuz its not. Turned symbols off cuz its slowww.
# <MC9> 9/26/93 pdw Changed alignment to 8 which makes a little more sense than 16
# but not as much sense as 64 but since that doesn't work, 8 it
# is. Why not 4? I thought there might be a little better bus
# utilization if things were on 8 byte alignment.
# <SM63> 9/22/93 kc Turn on symbols.
# <SM62> 9/13/93 RC Bump Rev to A5E1
# <SM61> 9/2/93 SKH change hasSCSIDiskMode to hasSCSIDiskModeFeature
# <SM60> 8/23/93 RC bumping rev again
# <SM59> 8/23/93 RC bump Rev level to A4C1
# <SM58> 8/20/93 RC bumbed up rev level
# <SM57> 8/11/93 RC Rev Version Number
# <SM56> 8/9/93 JDR remove -w from StdCOpts so we can really get warning messages
# when asked for
# <SM55> 7/31/93 SAM Added -mf option to ROMLayout calls.
# <SM54> 7/21/93 RC Changed Power_PC_Native_Components to SupportNativeComponents
# <SM53> 7/21/93 SAM Been smokin' too much crack. Really, lose the -bigseg for the C
# compiler.
# <SM52> 7/21/93 SAM Removed the -bigSeg option from the C stdoptions
# <SM51> 7/20/93 SAM Set the CPU type to 020 for PDM. Enable full optization for the
# C compiler and set the I/O buffer block size to the max (for
# faster builds).
# <SM50> 7/18/93 RC Upping Rev Level to A3E3
# <SM49> 7/14/93 RC added hasAMIC feature flag and changed Rel level to A3E2
# <SM48> 7/7/93 RC turned on Native components Mgr support in RISC and turned of
# warnings in the C comiples, due to warnings in the
# ThingManager.c which I could not kill in the code
# <SM47> 6/30/93 RC Added cyclone vdigs back in
# <SM46> 6/29/93 RC Stipped out the cyclone MACEecfg resources which were doing
# nothing for PDM
# <SM45> 6/24/93 RC Bumped Rev to a2e1, took out cyclone vdigs from RISC build, took
# out non-PDM Ethernet.rsrc
# <SM44> 6/14/93 kc Add Maceecfg.rsrc to dependency.
# <SM43> 6/11/93 RC eliminated the use of all DSP tools to build any part of the
# Risc ROM
# <SM42> 5/30/93 SAM Moved ROM_EM to Tidbits.
# <SM41> 5/29/93 RC Release num change
# <SM40> 5/26/93 RC Bumped Rev to D9C1 and I also added the feature flags to turn on
# the international support, so that Double Byte TrueType would
# work.
# <SM39> 5/20/93 BT Update build to only include Figment under conditional compile
# flag "hasNewHeapMgr". This is included here as a standard build
# feature.
# <SM38> 5/10/93 SAM Bumping version to d7c4.
# <SM37> 5/9/93 RC new rom rev (d7c3)
# <SM36> 5/3/93 RC going to D7c1 build
# <SM35> 4/20/93 SAM Added a type and creator to the Rez line that builds
# RISCLayout.rsrc, just cuz.
# <SM34> 4/15/93 RC Rev version to D6C2 (didn't pass w/ C1)
# <SM33> 4/9/93 RC uping rev version to D6 C1
# <32> 4/8/93 IH Re-introduce Display Manager as RISC feature.
# <SM31> 4/8/93 RC Making PDM ROM build easier and Smurf build harder (I care a lot
# less about Smurf)
# <SM30> 4/7/93 RC Move hasCAppleTalkInROM to build command, so Smurf will build
# correctly
# <SM29> 4/2/93 BT Shouldn't have Display Manager as a feature until it works!
# Remove hasDisplayMgr from features.
# <SM28> 4/1/93 kc Fix last check in comment.
# <SM27> 4/1/93 kc Add {ResourceDir}RomResources.r to RomLayout.Rsrc dependency.
# <SM26> 4/1/93 kc Delete RomResources.rsrc from dependency list.
# <SM25> 4/1/93 kc Add dependency to RomLayout.Rsrc
# <SM24> 3/31/93 kc Add TextDir and StdCPOpts.
# <23> 3/31/93 IH Add hasDisplayMgr to Risc features.
# <SM22> 3/24/93 dwc Re-enable CAppleTalk to use patched AT58.
# <SM21> 3/24/93 dwc Disabled hasCAppleTalkInROM to avoid a conflict with ENET.
# <SM19> 3/22/93 RC D6E1 version timed
# <SM18> 3/19/93 CSS Remove Sadism.rsrc from the build as this stuff is junk.
# <SM17> 3/16/93 SAM Removed a <20>feature<72> that should never have been in the ROM.
# <SM16> 3/14/93 RC Upped rev to D5C2
# <SM15> 3/11/93 RC Ready for D5C1 Version of the Risc Rom
# <SM14> 3/10/93 RC One last fix to keep Sane happy to the end of the build (I added
# the SANE.rsrc which is expected by the ROMResource.r
# <SM13> 3/9/93 RC Sorry about undoing the last rev, but I was facked out by
# GoNative
# <SM12> 3/9/93 RC Took out InSaneNFPU resource
# <SM11> 3/8/93 RC Increament ROM Release version to D5E3
# <SM10> 3/8/93 PN Change Sane.rsrc to InSaneNFPU.rsrc
# <SM9> 3/8/93 RC Turned on C version of AppleTalk
# <SM8> 3/5/93 RC Uped the version of the ROM to D5E2
# <SM7> 3/4/93 RC Took out hasPSC from RISC build
# <SM6> 3/2/93 SAM Removed SerialIOP.rsrc.
# <SM5> 3/2/93 RC Changed Build Version to D5E1 (Development version 5,
# Engineering Build 1
# <SM4> 2/22/93 RC Took out hasLCDScreen feature
# <SM3> 2/22/93 RC Added I2c Resources
# <SM2> 2/22/93 CSS Correct spelling of Resource (from Resoruce).
# <SM13> 2/6/93 RC Cleaned up Features list a little
# <SM12> 2/4/93 RC Added PDMMaceDir define to make file
# <SM11> 2/4/93 dwc Add PDM ENET driver rsrc.
# <SM10> 2/2/93 GMR Added hasSwim3 feature.
# <SM9> 1/19/93 RC Getting ready to build D4 ROM and I want the Release number to
# reflect this. 10D3 -> 10D4
# <SM8> 1/10/93 RC Added Emulator Acceleration Resource
# <SM7> 12/29/92 HY Removed hasNewSoundMgr feature flag. Reverting back to 7.1 snd mgr.
# <SM6> 12/23/92 RC GoNativeResource added back in
# <SM5> 12/17/92 RC Made sure that the New ROM has the correct - ROMRelease=$10D3
# <SM4> 12/17/92 RB Added the variable subRelease and the features hasCPUIDRegister,
# hasHMC.
# <SM3> 12/12/92 RC Copied Craig's changes to the SuperMario make file to the RISC
# file so we will not need Runtime.o also
# <SM2> 12/11/92 kc Remove the post build beeps.
#
BuildDir = {Sources}BuildResults:RISC:
ImageDir = {BuildDir}Image:
RsrcDir = {BuildDir}Rsrc:
LibDir = {BuildDir}Lib:
ObjDir = {BuildDir}Obj:
TextDir = {BuildDir}Text:
IfObjDir = {ObjDir}Interface:
MakeDir = {Sources}Make:
ResourceDir = {Sources}Resources:
DeclDir = {Sources}DeclData:
ToolDir = {Sources}Tools:
ToolSrcDir = {Sources}Tools:ToolSource:
MiscDir = {Sources}Misc:
TidbitsDir = {Sources}Tidbits:
DriverDir = {Sources}Drivers:
AIncludes = {Sources}Interfaces:AIncludes:
CIncludes = {Sources}Interfaces:CIncludes:
PInterfaces = {Sources}Interfaces:PInterfaces:
RIncludes = {Sources}Interfaces:RIncludes:
IntAIncludes = {Sources}Internal:Asm:
IntCIncludes = {Sources}Internal:C:
IntPInterfaces = {Sources}Internal:Pascal:
IntRIncludes = {Sources}Internal:Rez:
Libraries = {Sources}Libs:Libraries:
CLibraries = {Sources}Libs:CLibraries:
PLibraries = {Sources}Libs:PLibraries:
MAOpts = -d TRUE=1 -d FALSE=0 -d Alignment=8 -d CPU=20 -d ROMRelease=$D4C1 -wb -d SubRelease=3 -blksize 62
MCOpts = -d TRUE=1 -d FALSE=0 -d Alignment=8 -d CPU=20 -d ROMRelease=$D4C1 -b3 -mbg full -mc68020 -blksize 62 -opt full
MPOpts = -mbg full -mc68020
RomBase = $40800000
Features = hasRISCV0ResMgrPatches <09>
hasDoubleByte <09>
hasAMIC <09>
SupportNativeComponents <09>
Script_Char_Extra <09>
hasPenFraction <09>
hasFullKerning <09>
hasGlyphState <09>
hasNewHeapMgr <09>
hasPDMMaceEnet <09>
hasAppleTalkInROM <09>
hasMixedMode <09>
nonSerializedIO <09>
hasSCSIDiskModeFeature <09>
hasSysSevenResources <09>
hasDataAccessPACK <09>
hasYMCA <09>
hasCPUIDRegister <09>
hasHMC <09>
has2MegROMOrMore <09>
hasVideoIn <09>
hasAsyncSCSI <09>
BadBlockSparingEnabled <09>
CubeE <09>
IopADB <09>
OssADB <09>
PwrMgrADB <09>
SystemSevenOrLater <09>
SystemSixOrLater <09>
ViaADB <09>
forADBKeyboards <09>
forAppleTalk20 <09>
forLocalizability <09>
has040MMU <09>
hasADBKeyLayouts <09>
hasASC <09>
hasAliasMgr <09>
hasApple2Fonts <09>
hasAppleEventMgr <09>
hasBalloonHelp <09>
hasBattery <09>
hasCommToolbox <09>
hasCQD <09>
hasDAFB <09>
hasDJMEMC <09>
hasDataAccessMgr <09>
hasDisplayMgr <09>
hasDisplayMgrWindows <09>
hasEDisk <09>
hasEclipseVIA2 <09>
hasEditionMgr <09>
hasEgret <09>
hasExtendedCharacterSet <09>
hasFMC <09>
hasGDU <09>
hasGlue <09>
hasGrandCentral <09>
hasIdle <09>
hasIopScc <09>
hasIopSwim <09>
hasJaws <09>
hasMDU <09>
hasMMU <09>
hasMSC <09>
hasMac2VIA2 <09>
hasNetBoot <09>
hasNiagra <09>
hasOrwell <09>
hasOss <09>
hasPratt <09>
hasProtectedPRAM <09>
hasSCSI96 <09>
hasSWIM2 <09>
hasSwim3 <09>
hasSlotMgr <09>
hasSonora <09>
hasSplineFonts <09>
hasVDAC <09>
hasVIAClock <09>
hasVISA2 <09>
hasVISADecoder <09>
hasWaimeaVIA2 <09>
isUniversal <09>
hasPwrControls <09>
hasPwrMgrClock <09>
hasRBV <09>
hasSplineFonts <09>
hasVIAClock <09>
hasWaimeaVIA2 <09>
NewBuildSystem <09>
isUniversal <09>
onHafMac <09>
onMac32 <09>
onNuMac <09>
ForROM
ResourceFiles = "{RsrcDir}ATBoot.RSRC" <09>
"{MiscDir}AppleTalk.ROM.rsrc" <09>
"{RsrcDir}AppleEventMgr.rsrc" <09>
"{RsrcDir}CQD.rsrc" <09>
"{RsrcDir}ColorPicker.rsrc" <09>
"{RsrcDir}CommToolbox.rsrc" <09>
"{RsrcDir}ControlMgr.rsrc" <09>
"{RsrcDir}DataAccessMgr.rsrc" <09>
"{RsrcDir}DictionaryMgr.rsrc" <09>
"{RsrcDir}DeclData" <09>
"{RsrcDir}EDisk.rsrc" <09>
"{RsrcDir}EditionMgr.rsrc" <09>
"{RsrcDir}Gibbly.rsrc" <09>
"{MiscDir}GoNativeResources" <09>
"{MiscDir}EmulatorAccelerations.rsrc" <09>
"{RsrcDir}HelpMgr.rsrc" <09>
"{RsrcDir}InSane.rsrc" <09>
"{RsrcDir}I2CC.rsrc" <09>
"{RsrcDir}I2CT.rsrc" <09>
"{RsrcDir}ListMgr.rsrc" <09>
"{RsrcDir}MainCode.Rsrc" <09>
"{RsrcDir}MenuMgr.rsrc" <09>
"{RsrcDir}MiscROMRsrcs.rsrc" <09>
"{RsrcDir}NetBoot.rsrc" <09>
"{RsrcDir}PDMENET.rsrc" <09>
"{RsrcDir}PPC.rsrc" <09>
"{RsrcDir}PictUtilities.rsrc" <09>
"{RsrcDir}ROMApple2Fonts.rsrc" <09>
"{RsrcDir}ROMFonts.rsrc" <09>
"{RsrcDir}RomLayout.Rsrc" <09>
"{RsrcDir}SCCIOP.rsrc" <09>
"{RsrcDir}SWIMIOP.rsrc" <09>
"{RsrcDir}InSaneNFPU.rsrc" <09>
"{RsrcDir}Sane.rsrc" <09>
"{RsrcDir}Serial.rsrc" <09>
"{RsrcDir}SerialDMA.rsrc" <09>
"{RsrcDir}Sony.rsrc" <09>
"{RsrcDir}SoundMgr.rsrc" <09>
"{RsrcDir}StandardFile.rsrc" <09>
"{RsrcDir}VDigC.rsrc" <09>
"{RsrcDir}VDigT.rsrc" <09>
"{MiscDir}VM.RSRC" <09>
"{RsrcDir}WindowMgr.rsrc" <09>
"{RsrcDir}kbd.rsrc"
RomMondo <09> FeatureSet "{ImageDir}RomMondo"
"{ImageDir}RomMondo" <09> {ResourceFiles}
RomLayout -mf "{RsrcDir}RomLayout.Rsrc" -o "{Targ}" -log "{ImageDir}RomInfo"
LinkRomImage <09> # target for partial builds
RomLayout -mf "{RsrcDir}RomLayout.Rsrc" -o "{ImageDir}RomMondo" -log "{ImageDir}RomInfo"
FeatureSet <09>
Set FeatureSet "`{MakeDir}FeatureList "{Features}" "{Overrides}" `" ; Export FeatureSet
Set Commands "{ToolDir},{Commands}"
Set ObjDir "{ObjDir}" ; Export ObjDir
Set RsrcDir "{RsrcDir}" ; Export RsrcDir
Set TextDir "{TextDir}" ; Export TextDir
Set MiscDir "{MiscDir}" ; Export MiscDir
Set TidbitsDir "{TidbitsDir}" ; Export TidbitsDir
Set ROMBuildTime "`Date -n`" ; Export ROMBuildTime
Set AIncludes "{AIncludes}"
Set CIncludes "{CIncludes}"
Set PInterfaces "{PInterfaces}"
Set RIncludes "{RIncludes}"
Set Libraries "{Libraries}"
Set CLibraries "{CLibraries}"
Set PLibraries "{PLibraries}"
Set StdAOpts "{MAOpts} {FeatureSet} -i {IntAIncludes} {AOpts} -i {ObjDir}"
Set StdCOpts "{MCOpts} {FeatureSet} -i {IntCIncludes} {COpts}"
Set StdCPOpts "{MCPOpts} {FeatureSet} -i {IntCIncludes} {COpts}"
Set StdPOpts "{MPOpts} {FeatureSet} {POpts} -i {IntPInterfaces} -r"
Set StdROpts "{FeatureSet} {ROpts} -i {IntRIncludes} -i {RIncludes}"
Set StdLOpts "{LOpts} -mf -t rsrc -c RSED -sg Main"
Set StdLibOpts "{LibOpts} -mf"
Set StdAlign "{Align} -ac 16 -ad 16"
Set StdVOpts "{VOpts}"
Set StdEquAOpts "`{MakeDir}CreateStdEquAOptions "{FeatureSet}"`" ; Export StdEquAOpts
"{RsrcDir}RomLayout.Rsrc" <09> "{MakeDir}RiscLayout.r" "{ResourceDir}RomResources.r" "{IntRIncludes}RomTypes.r"
Rez {StdROpts} "{MakeDir}RiscLayout.r" -i "{ResourceDir}" -o "{targ}" -d RomBase={RomBase} -c RSED -t rsrc
Clean <09>
Delete -i `Files -f -r -o -s "{BuildDir}"` <20> Dev:Null
# Following are essentially the default rules from the Make tool, modified to use
# {StdAOpts}, {StdCOpts}, and {StdPOpts} as they are defined in this file.
# These options are supersets of the default {AOpts}, {COpts}, and {POpts}.
.a.o <09> .a
{Asm} {StdAOpts} -o {Targ} {DepDir}{Default}.a
.c.o <09> .c
{C} {StdCOpts} -o {Targ} {DepDir}{Default}.c
.p.o <09> .p
{Pascal} {StdPOpts} -o {Targ} {DepDir}{Default}.p
.cp.o <09> .c
{CPlus} {StdCPOpts} -o {Targ} {DepDir}{Default}.cp
#include {ToolSrcDir}Tools.make
#include {MakeDir}MainCode.make
#include {DeclDir}DeclData.make
#include {DriverDir}Drivers.make
#include {ResourceDir}Resources.make