1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 17:38:00 +00:00

Substantial overhaul of Mac build system. We now have working PowerPC builds,

and optimisation (for size) enabled.

[originally from svn r2378]
This commit is contained in:
Ben Harris 2002-12-29 15:44:15 +00:00
parent 873b95deff
commit 9b45be7987
2 changed files with 35 additions and 16 deletions

View File

@ -1,4 +1,4 @@
$Id: README.mac,v 1.3 2002/12/13 00:50:53 ben Exp $
$Id: README.mac,v 1.4 2002/12/29 15:44:15 ben Exp $
Information about PuTTY for the Mac OS
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
@ -25,9 +25,11 @@ Compiling it:
Encoding Converter SDK into "Interfaces&Libraries:Libraries:Libraries".
The "mkputty.mpw" script does most of the work, but currently needs
you to run "Rez -append -o PuTTY mac_res.r" to get the
resources compiled in. The Makefile currently only generates a
Classic 68K application. Other architectures will come later.
you to run "Rez -append -o PuTTY.68k mac_res.r", and the same for
PuTTY.ppc to get the resources compiled in.
The current Makefile producess a Classic 68K build of PuTTY called
"PuTTY.68k" and a non-Carbon PowerPC build called "PuTTY.ppc".
Runtime requirements:

View File

@ -588,11 +588,14 @@ END
print $_;
print <<END;
# -w 53 disables "unused parameter" warnings
COptions = -i : -i :: -w 35
COptions_68K = {COptions} -proto strict -model far
COptions_PPC = {COptions}
ILinkOptions = -t 'APPL' -c 'pTTY' -br 68k -model far
# -w 35 disables "unused parameter" warnings
COptions = -i : -i :: -w 35 -w err -proto strict
COptions_68K = {COptions} -model far -opt space
COptions_PPC = {COptions} -opt size
LinkOptions = -c 'pTTY'
LinkOptions_68K = {LinkOptions} -br 68k -model far -compact
LinkOptions_PPC = {LinkOptions}
Libs_68K = "{CLibraries}StdCLib.far.o" \xb6
"{Libraries}MacRuntime.o" \xb6
@ -604,7 +607,7 @@ Libs_68K = "{CLibraries}StdCLib.far.o" \xb6
"{Libraries}OpenTptInet.o" \xb6
"{Libraries}UnicodeConverterLib.far.o"
Libs_PPC = "{SharedLibraries}InterfaceLib" \xb6
Libs_CFM = "{SharedLibraries}InterfaceLib" \xb6
"{SharedLibraries}StdCLib" \xb6
"{SharedLibraries}MathLib" \xb6
"{SharedLibraries}AppearanceLib" \xb6
@ -621,28 +624,42 @@ Libs_PPC = "{SharedLibraries}InterfaceLib" \xb6
-weaklib OTNativeClientLib \xb6
"{SharedLibraries}OpenTptInternetLib" \xb6
-weaklib OTInetClientLib \xb6
"{SharedLibraries}TextCommon" \xb6
-weaklib TextCommon \xb6
"{SharedLibraries}UnicodeConverter" \xb6
-weaklib UnicodeConverter
Libs_PPC = {Libs_CFM} \xb6
"{PPCLibraries}StdCRuntime.o" \xb6
"{PPCLibraries}PPCCRuntime.o" \xb6
"{PPCLibraries}CarbonAccessors.o" \xb6
"{PPCLibraries}OpenTransportAppPPC.o" \xb6
"{PPCLibraries}OpenTptInetPPC.o"
END
print &splitline("all \xc4 " . join(" ", &progrealnames("M")), undef, "\xb6");
print "\n\n";
foreach $p (&prognames("M")) {
($prog, $type) = split ",", $p;
$objstr = &objects($p, "X.c.o", undef, undef);
print &splitline($prog . " \xc4 " . $objstr, undef, "\xb6"), "\n";
print &splitline("\tILink -o {Targ} {ILinkOptions} " .
print &splitline("$prog \xc4 $prog.68k $prog.ppc", undef, "\xb6"), "\n\n";
$objstr = &objects($p, "X.68k.o", undef, undef);
print &splitline("$prog.68k \xc4 $objstr", undef, "\xb6"), "\n";
print &splitline("\tILink -o {Targ} {LinkOptions_68K} " .
$objstr . " {Libs_68K}", 69, "\xb6"), "\n\n";
$objstr = &objects($p, "X.ppc.o", undef, undef);
print &splitline("$prog.ppc \xc4 $objstr", undef, "\xb6"), "\n";
print &splitline("\tPPCLink -o {Targ} {LinkOptions_PPC} " .
$objstr . " {Libs_PPC}", 69, "\xb6"), "\n\n";
}
foreach $d (&deps("X.c.o", undef, "::", ":")) {
foreach $d (&deps("X.68k.o", undef, "::", ":")) {
print &splitline(sprintf("%s \xc4 %s", $d->{obj}, join " ", @{$d->{deps}}),
undef, "\xb6"), "\n";
print "\t{C} ", $d->{deps}->[0], " -o {Targ} {COptions_68K}\n\n";
}
foreach $d (&deps("X.c.x", undef, "::", ":")) {
foreach $d (&deps("X.ppc.o", undef, "::", ":")) {
print &splitline(sprintf("%s \xc4 %s", $d->{obj}, join " ", @{$d->{deps}}),
undef, "\xb6"), "\n";
# The odd stuff here seems to stop afpd getting confused.