shithub: purgatorio

ref: a411870ee4640241e3c494367d922847da84f972
dir: purgatorio/utils/awk/mac.code

View raw version
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;
}