freebsd-dev/contrib/one-true-awk/mac.code

66 lines
2.0 KiB
Plaintext
Raw Normal View History

This file contains a make shell script and a version
of the file missing95.c for the Mac, courtesy of
Dan Allen.
make shell script:
# MPW Shell script to build Awk using Apple's MRC compiler.
# 22 Jan 1999 - Created by Dan Allen.
# 25 Mar 1999 - Updated for newer Awk.
#
# Porting notes for the Mac:
#
# 1. main in main.c needs to have its prototype changed to:
#
# int main(int argc, char *argv[], char *environ[])
#
# 2. popen and pclose in missing95.c need to have as their body the
# older style
#
# return NULL;
#
# as parallel pipes are not supported by MPW.
#
# 3. To make your Mac more responsive while long awk scripts run,
# you may want to add some SpinCursor calls to support cooperative multitasking.
#
# All of these minor changes can be put under "#ifdef powerc" for portability's sake.
#
#
If {1} == "clean"
Delete -i awk maketab maketab.c.o ytab.c.o b.c.o main.c.o parse.c.o proctab.c proctab.c.o tran.c.o lib.c.o run.c.o lex.c.o missing95.c.o
Else
MRC ytab.c -w off -opt speed
MRC b.c -w off -opt speed
MRC main.c -w off -opt speed
MRC parse.c -w off -opt speed
MRC maketab.c -w off -opt speed
PPCLink -o maketab maketab.c.o "{PPCLibraries}InterfaceLib" "{PPCLibraries}MathLib" "{PPCLibraries}StdCLib" "{PPCLibraries}StdCRuntime.o" "{PPCLibraries}PPCCRuntime.o" "{PPCLibraries}PPCToolLibs.o" -t MPST -c 'MPS '
maketab > proctab.c
MRC proctab.c -w off -opt speed
MRC tran.c -w off -opt speed
MRC lib.c -w off -opt speed
MRC run.c -w off -opt speed
MRC lex.c -w off -opt speed
MRC missing95.c -w off -opt speed
PPCLink -o awk ytab.c.o b.c.o main.c.o parse.c.o proctab.c.o tran.c.o lib.c.o run.c.o lex.c.o missing95.c.o "{PPCLibraries}InterfaceLib" "{PPCLibraries}MathLib" "{PPCLibraries}StdCLib" "{PPCLibraries}StdCRuntime.o" "{PPCLibraries}PPCCRuntime.o" "{PPCLibraries}PPCToolLibs.o" -d
SetFile awk -d . -m . -t MPST -c 'MPS '
End
missing95.c for the Mac:
/* popen and pclose are not available on the Mac. */
#include <stdio.h>
FILE *popen(char *s, char *m) {
return NULL;
}
int pclose(FILE *f) {
return NULL;
}