mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-16 08:10:43 -08:00
[bug]
[160053] build Mac MPS with new compiler+linker, and good options Build different varieties (variety.ci and variety.he) differently. Upgrade tools from MrC1.0 + PPCLink1.0 to MrC2.0.2d1 + PPCLink1.5. Drop InterfaceLib from link, because it provokes a PPCLink1.5 error (Error 3019 while reading file InterfaceLib; File is not an object file) and is apparently not needed. The release build (variety.he) is untested -- see .he.untested. Correct copyright. Improve build instructions. Old HE settings are still temporarily available as the pseudo-variety ZZ, for testing. Copied from Perforce Change: 19556 ServerID: perforce.ravenbrook.com GitHub-reference: https://github.com/Ravenbrook/mps/issues/160053
This commit is contained in:
parent
60044c2d1d
commit
f7c41cd024
1 changed files with 101 additions and 16 deletions
|
|
@ -1,38 +1,88 @@
|
|||
# impl.makefile.s7ppac: S7PPAC MPW MAKE FILE
|
||||
#
|
||||
# $HopeName: MMsrc!s7ppac:Makefile(trunk.9) $
|
||||
# $HopeName: MMsrc!s7ppac:Makefile(trunk.10) $
|
||||
#
|
||||
# Copyright (C) 1996, 1997 Harlequin Group, all rights reserved
|
||||
# Copyright (c) 1998 Harlequin Group plc. All rights reserved.
|
||||
#
|
||||
|
||||
# This only knows about making the mmsw libraries for MM/EP-core.
|
||||
#
|
||||
# To invoke:
|
||||
#
|
||||
# directory {...}s7ppac
|
||||
# BuildProgram -d Variety mmsw
|
||||
#
|
||||
# (this builds mmsw_HE.o and mmsw_CI.o)
|
||||
#
|
||||
# to clean everything else away:
|
||||
#
|
||||
# directory {...}s7ppac
|
||||
# BuildProgram -d Variety clean
|
||||
#
|
||||
# Notes:
|
||||
#
|
||||
# .dep.accum: If several single-f rules all produce the same product
|
||||
# (left-hand-side of the f), they act together: at most one may have a
|
||||
# body, the others only add additional dependencies.
|
||||
#
|
||||
# .he.untested: The variety.he build hasn't been tested; see
|
||||
# .obsolete.zz below.
|
||||
|
||||
COptions = -d CONFIG_VAR_{Variety} -d CONFIG_PROD_EPCORE ¶
|
||||
-ansi strict -proto strict -typecheck strict -w error ¶
|
||||
-sym full ¶
|
||||
-i "{CIncludes96}"
|
||||
|
||||
# Options cribbed from SWbuild!macos:rules:rulemrc4.make(trunk.3)
|
||||
CC_OPT_CONTROL= -nomfmem -y "{TempFolder}"
|
||||
CC_OPT_SOURCE= -inclpath nosystem
|
||||
CC_OPT_OBJECT= -align power -char signed -enum int -fp_contract off -ldsize 128 -target ppc
|
||||
|
||||
CC_OPTT_AbsAPAD= -ansi strict -proto strict -typecheck strict
|
||||
# Plus "warnings are errors":
|
||||
CC_OPTT={CC_OPTT_AbsAPAD} -w error
|
||||
|
||||
CC_OPTR_Dbg= -opt off -sym on -tb on
|
||||
CC_OPTR_Qkb= -opt off -sym off -tb on
|
||||
CC_OPTR_Spd= -opt speed,nounroll -sym off -tb on
|
||||
CC_OPTR_= -opt speed,nounroll -sym off -w 35
|
||||
|
||||
SYS_CINCLUDES= -i {CIncludes96}
|
||||
|
||||
|
||||
BB_OPT_CONTROL= -nomf -linkfaster on
|
||||
BB_OPT_SOURCE=
|
||||
BB_OPT_OBJECT= -xm Library
|
||||
|
||||
BB_OPTR_Dbg= -sym on
|
||||
BB_OPTR_Qkb= -sym off
|
||||
BB_OPTR_Spd= -sym off
|
||||
BB_OPTR_= -sym off
|
||||
|
||||
|
||||
PRODDEFINES= -d CONFIG_VAR_{Variety} -d CONFIG_PROD_EPCORE
|
||||
|
||||
":" Ä "::"
|
||||
|
||||
OSffx = .c.{Variety}.o
|
||||
|
||||
{OSffx} Ä .c
|
||||
{MPWCommands96}MrC1.0 ¶
|
||||
-o {TargDir}{Default}{OSffx} ¶
|
||||
{COptions} ¶
|
||||
{DepDir}{Default}.c
|
||||
.c.CI.o Ä .c
|
||||
{MPWCommands96}MrC2.0.2d1 ¶
|
||||
-o {TargDir}{Default}.c.CI.o ¶
|
||||
{CC_OPTT} ¶
|
||||
{CC_OPTR_Dbg} ¶
|
||||
{CC_OPT_CONTROL} {CC_OPT_SOURCE} {CC_OPT_OBJECT} ¶
|
||||
{ENVDEFINES} {PRODDEFINES} ¶
|
||||
{SYS_CINCLUDES} ¶
|
||||
{DepDir}{Default}.c
|
||||
|
||||
mmsw_{Variety}.o Ä ¶
|
||||
.c.HE.o Ä .c
|
||||
{MPWCommands96}MrC2.0.2d1 ¶
|
||||
-o {TargDir}{Default}.c.HE.o ¶
|
||||
{CC_OPTT} ¶
|
||||
{CC_OPTR_} ¶
|
||||
{CC_OPT_CONTROL} {CC_OPT_SOURCE} {CC_OPT_OBJECT} ¶
|
||||
{ENVDEFINES} {PRODDEFINES} ¶
|
||||
{SYS_CINCLUDES} ¶
|
||||
{DepDir}{Default}.c
|
||||
|
||||
mmsw_{Variety}.o Ä ¶
|
||||
assert{OSffx} ¶
|
||||
ring{OSffx} ¶
|
||||
mpm{OSffx} ¶
|
||||
|
|
@ -61,10 +111,45 @@ mmsw_{Variety}.o
|
|||
seg{OSffx} ¶
|
||||
poolmrg{OSffx} ¶
|
||||
message{OSffx}
|
||||
{MPWCommands96}PPCLink ¶
|
||||
-o {Targ} ¶
|
||||
-xm l -sym on ¶
|
||||
{Deps} "{SharedLibraries96}InterfaceLib"
|
||||
|
||||
mmsw_CI.o Ä # .dep.accum
|
||||
{MPWCommands97}PPCLink1.5 ¶
|
||||
-o {Targ} ¶
|
||||
{BB_OPTR_Dbg} ¶
|
||||
{BB_OPT_CONTROL} {BB_OPT_SOURCE} {BB_OPT_OBJECT} ¶
|
||||
{Deps}
|
||||
|
||||
mmsw_HE.o Ä # .dep.accum
|
||||
{MPWCommands97}PPCLink1.5 ¶
|
||||
-o {Targ} ¶
|
||||
{BB_OPTR_} ¶
|
||||
{BB_OPT_CONTROL} {BB_OPT_SOURCE} {BB_OPT_OBJECT} ¶
|
||||
{Deps}
|
||||
|
||||
|
||||
## .obsolete.zz: In trunk.11 this makefile was changed radically, but
|
||||
## could not be tested because Mac Release ScriptWorks was broken.
|
||||
## When SW is mended, it might be nice to test and compare the new and
|
||||
## old builds of the MPS.
|
||||
## It is easy to make the old HE build: just use the following "ZZ"
|
||||
## pseudo-variety, which uses the old compiler, linker, and
|
||||
## command-line options to build the HE variety.
|
||||
## To build it: BuildProgram -d Variety=ZZ mmsw_ZZ.o
|
||||
## richardk 1998-05-28
|
||||
.c.ZZ.o Ä .c
|
||||
{MPWCommands96}MrC1.0 ¶
|
||||
-o {TargDir}{Default}.c.ZZ.o ¶
|
||||
-d CONFIG_VAR_HE -d CONFIG_PROD_EPCORE ¶
|
||||
-ansi strict -proto strict -typecheck strict -w error ¶
|
||||
-sym full ¶
|
||||
-i "{CIncludes96}" ¶
|
||||
{DepDir}{Default}.c
|
||||
mmsw_ZZ.o Ä # .dep.accum
|
||||
{MPWCommands96}PPCLink ¶
|
||||
-o {Targ} ¶
|
||||
-xm l -sym on ¶
|
||||
{Deps} "{SharedLibraries96}InterfaceLib"
|
||||
|
||||
|
||||
cleanall Ä
|
||||
Delete Å.o
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue