head     0.9;
access   ;
symbols  ;
locks    ; strict;
comment  @# @;


0.9
date     88.09.13.16.06.13;  author Makey;  state Stab;
branches ;
next     0.8;

0.8
date     88.04.22.22.00.02;  author Makey;  state Stab;
branches 0.8.1.1;
next     0.7;

0.7
date     88.01.28.15.48.25;  author Makey;  state Exp;
branches 0.7.1.1;
next     ;

0.7.1.1
date     88.01.28.18.11.49;  author Makey;  state Exp;
branches ;
next     0.7.1.2;

0.7.1.2
date     88.01.28.18.51.05;  author Makey;  state Exp;
branches ;
next     0.7.1.3;

0.7.1.3
date     88.01.28.19.07.15;  author Makey;  state Exp;
branches ;
next     0.7.1.4;

0.7.1.4
date     88.01.29.16.37.15;  author Makey;  state Exp;
branches ;
next     0.7.1.5;

0.7.1.5
date     88.02.01.17.06.44;  author Makey;  state Exp;
branches ;
next     0.7.1.6;

0.7.1.6
date     88.02.03.16.21.16;  author Makey;  state Exp;
branches ;
next     0.7.1.7;

0.7.1.7
date     88.03.16.12.15.28;  author Makey;  state Exp;
branches ;
next     0.7.1.8;

0.7.1.8
date     88.04.11.16.15.08;  author Makey;  state Exp;
branches ;
next     0.7.1.9;

0.7.1.9
date     88.04.14.20.30.48;  author Makey;  state Exp;
branches ;
next     0.7.1.10;

0.7.1.10
date     88.04.14.20.46.21;  author Makey;  state Exp;
branches ;
next     ;

0.8.1.1
date     88.06.10.13.46.56;  author Makey;  state Exp;
branches ;
next     0.8.1.2;

0.8.1.2
date     88.09.06.20.58.32;  author Makey;  state Exp;
branches ;
next     0.8.1.3;

0.8.1.3
date     88.09.07.19.01.59;  author Makey;  state Exp;
branches ;
next     ;


desc
@KSOS-32 Process Bootstrap makefile
@


0.9
log
@Changed as needed to implement all functionality.
With this version, KSOS-32 is complete enough to allow users to log in
and run programs.
@
text
@K32TLIB = /u/ksos/ksos32/lib/trusted

all: .sym/sPBBnksr .sym/uPBBnksr objects
	rm -f .sym/PBBnksr ; cp .sym/sPBBnksr .sym/PBBnksr
	make sPBB.out
	rm -f .sym/PBBnksr ; cp .sym/uPBBnksr .sym/PBBnksr
	make uPBB.out
	touch $@@

sPBB.out uPBB.out: PBB.ld.sh PBB.gfo
	@@sh -v PBB.ld.sh
	mv PBB.out $@@
	size $@@

PBB.gfo: PBB.gfs2
	as -o $@@ PBB.gfs2

PBB.gfs2: PBB.gfs $(K32TLIB)/fix.nksr.gfs.ed
	cp PBB.gfs $@@
	ed - $@@ < $(K32TLIB)/fix.nksr.gfs.ed

PBB.ld.sh PBB.gfs: objects $(K32TLIB)/.lnk/K32machine \
  $(K32TLIB)/.lnk/K32baseTypes $(K32TLIB)/.lnk/K32types \
  $(K32TLIB)/.lnk/K32except $(K32TLIB)/.lnk/KernelCalls \
  $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR $(K32TLIB)/.lnk/PBBinArg \
  $(K32TLIB)/.lnk/structIo $(K32TLIB)/.lnk/ACPipc $(K32TLIB)/.lnk/events \
  $(K32TLIB)/.lnk/PBBoutArg $(K32TLIB)/.lnk/PIV m2path
	m2l -c -S -E -L -N PBB\
	  | sed -e 's/^/ld /'\
		-e 's= \./= =g'\
		-e 's/ -lc//' > PBB.ld.sh
# The preceding invocation of sed prepends the "ld" command, removes
# superfluous "./" pathname components, and prevents loading the C library.

objects: .lnk/PBBrend .lnk/PBBprof .lnk/PBBpih .lnk/PBBnksr .lnk/PBBmisc \
  .lnk/PBBload .lnk/PBBipc .lnk/PBBarg .lnk/PBB
	touch $@@

symbols: .sym/PBBrend .sym/PBBprof .sym/PBBpih .sym/PBBnksr .sym/PBBmisc \
  .sym/PBBload .sym/PBBipc .sym/PBBarg
	touch $@@

sources: PBBrend.mod PBBrend.def PBBprof.mod PBBprof.def PBBpih.mod \
  PBBpih.def PBBnksr.mod PBBnksr.def PBBmisc.mod PBBmisc.def PBBload.mod \
  PBBload.def PBBarg.mod PBBarg.def PBB.mod

.lnk/PBBrend: PBBrend.mod .sym/PBBrend $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/PBBinArg \
  .sym/PBBipc .sym/PBBmisc m2path
	M2C -E PBBrend.mod

.lnk/PBBprof: PBBprof.mod .sym/PBBprof $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBipc .sym/PBBmisc .sym/PBBarg \
  m2path
	M2C -E PBBprof.mod

.lnk/PBBpih: PBBpih.mod .sym/PBBpih $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/PIV $(K32TLIB)/.sym/strio \
  .sym/PBBipc .sym/PBBmisc m2path
	M2C -E PBBpih.mod

.lnk/PBBnksr: PBBnksr.mod .sym/PBBnksr
	run.m2c -T PBBnksr.mod

.lnk/PBBmisc: PBBmisc.mod .sym/PBBmisc $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  $(K32TLIB)/.sym/ACPipc $(K32TLIB)/.sym/events .sym/PBBipc m2path
	M2C -E PBBmisc.mod

.lnk/PBBload: PBBload.mod .sym/PBBload $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/PBBoutArg \
  .sym/PBBipc .sym/PBBmisc .sym/PBBarg .sym/PBBrend m2path
	M2C -E PBBload.mod

.lnk/PBBipc: PBBipc.mod .sym/PBBipc $(K32TLIB)/.sym/K32types m2path
	run.m2c -T -E PBBipc.mod

.lnk/PBBarg: PBBarg.mod .sym/PBBarg $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBipc \
  .sym/PBBmisc m2path
	M2C -E PBBarg.mod

.lnk/PBB: PBB.mod $(K32TLIB)/.sym/K32machine $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  $(K32TLIB)/.sym/PBBinArg $(K32TLIB)/.sym/structIo .sym/PBBipc .sym/PBBmisc \
  .sym/PBBarg .sym/PBBprof .sym/PBBload .sym/PBBpih m2path
	M2C -E PBB.mod

.sym/PBBrend: PBBrend.def $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types m2path
	run.m2c -T -E PBBrend.def

.sym/PBBprof: PBBprof.def $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/NKSR m2path
	run.m2c -T -E PBBprof.def

.sym/PBBpih: PBBpih.def
	run.m2c -T PBBpih.def

.sym/PBBnksr: .sym/sPBBnksr
	rm -f $@@
	cp .sym/sPBBnksr $@@

.sym/sPBBnksr .sym/uPBBnksr: PBBnksr.def
	rm -f .sym/PBBnksr
	M2C PBBnksr.def
	mv -f .sym/PBBnksr .sym/uPBBnksr
	M2C -DPBBNKSR PBBnksr.def
	mv -f .sym/PBBnksr .sym/sPBBnksr

.sym/PBBmisc: PBBmisc.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/NKSR \
  .sym/PBBipc m2path
	run.m2c -T -E PBBmisc.def

.sym/PBBload: PBBload.def $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/NKSR m2path
	run.m2c -T -E PBBload.def

.sym/PBBipc: PBBipc.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except m2path
	run.m2c -T -E PBBipc.def

.sym/PBBarg: PBBarg.def $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types m2path
	run.m2c -T -E PBBarg.def

PBBrend.mod: RCS/PBBrend.mod,v
	co -b -q $@@

PBBrend.def: RCS/PBBrend.def,v
	co -b -q $@@

PBBprof.mod: RCS/PBBprof.mod,v
	co -b -q $@@

PBBprof.def: RCS/PBBprof.def,v
	co -b -q $@@

PBBpih.mod: RCS/PBBpih.mod,v
	co -b -q $@@

PBBpih.def: RCS/PBBpih.def,v
	co -b -q $@@

PBBnksr.mod: RCS/PBBnksr.mod,v
	co -b -q $@@

PBBnksr.def: RCS/PBBnksr.def,v
	co -b -q $@@

PBBmisc.mod: RCS/PBBmisc.mod,v
	co -b -q $@@

PBBmisc.def: RCS/PBBmisc.def,v
	co -b -q $@@

PBBload.mod: RCS/PBBload.mod,v
	co -b -q $@@

PBBload.def: RCS/PBBload.def,v
	co -b -q $@@

PBBipc.mod: RCS/PBBipc.mod,v
	co -b -q $@@

PBBipc.def: RCS/PBBipc.def,v
	co -b -q $@@

PBBarg.mod: RCS/PBBarg.mod,v
	co -b -q $@@

PBBarg.def: RCS/PBBarg.def,v
	co -b -q $@@

PBB.mod: RCS/PBB.mod,v
	co -b -q $@@

m2path: RCS/m2path,v
	co -b -q $@@

install: all
	kwr /dev/ksos 5 sPBB.out /sys/sysbin/sPBB
	kwr /dev/ksos 5 uPBB.out /sys/sysbin/uPBB
	touch $@@

m2makefile: sources
	mkdir .Tmp
	ls *.def *.mod | sed -e 's=.*=mpp -DDEBUG & > .Tmp/&=' | sh
	ls -f .Tmp | sed '/^\.*$$/d' > .TmpDir
	ls .Tmp | diff - .TmpDir
	cd .Tmp ; ln -s ../m2path ; m2make -E
	-mv $@@ $@@~
	mv .Tmp/makefile $@@
	rm -r .Tmp .TmpDir

clean:
	rm -f all PBB.gf[os] PBB.gfs2 PBB.ld.sh objects symbols install\
		m2makefile
@


0.8
log
@Changed as needed to be able to create and delete processes as desired,
and to support the Process Bootstrap program in loading new programs.
This version satisfies Milestone 14 -- demonstrate partial KSOS-32
Kernel (convert PBB and integrate Kfork, KreleaseProcess, Kinvoke,
Kspawn, and Kboot kernel calls) -- of the KSOS migration to the VAX.
@
text
@d26 3
a28 3
  $(K32TLIB)/.lnk/events $(K32TLIB)/.lnk/PBBoutArg \
  $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
	m2l -c -S -E -L -X -N PBB\
d36 1
a36 1
  .lnk/PBBload .lnk/PBBarg .lnk/PBB
d40 1
a40 1
  .sym/PBBload .sym/PBBarg
d51 1
a51 1
  .sym/PBBmisc m2path
d57 2
a58 1
  $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBmisc .sym/PBBarg m2path
d62 2
a63 2
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/PseudoInterruptVectors \
  $(K32TLIB)/.sym/strio .sym/PBBmisc m2path
d72 1
a72 1
  $(K32TLIB)/.sym/events m2path
d79 1
a79 1
  .sym/PBBmisc .sym/PBBarg .sym/PBBrend m2path
d82 3
d88 2
a89 2
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBmisc \
  m2path
d95 2
a96 2
  $(K32TLIB)/.sym/PBBinArg .sym/PBBmisc .sym/PBBarg .sym/PBBprof \
  .sym/PBBload .sym/PBBpih m2path
d122 1
a122 1
  m2path
d129 4
d171 6
@


0.8.1.1
log
@Added knowledge of the new PBBipc module.
Updated dependencies.
@
text
@d26 2
a27 1
  $(K32TLIB)/.lnk/events $(K32TLIB)/.lnk/PBBoutArg $(K32TLIB)/.lnk/PIV m2path
d36 1
a36 1
  .lnk/PBBload .lnk/PBBipc .lnk/PBBarg .lnk/PBB
d40 1
a40 1
  .sym/PBBload .sym/PBBipc .sym/PBBarg
d51 1
a51 1
  .sym/PBBipc .sym/PBBmisc m2path
d57 1
a57 2
  $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBipc .sym/PBBmisc .sym/PBBarg \
  m2path
d61 2
a62 2
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/PIV $(K32TLIB)/.sym/strio \
  .sym/PBBipc .sym/PBBmisc m2path
d71 1
a71 1
  $(K32TLIB)/.sym/events .sym/PBBipc m2path
d78 1
a78 1
  .sym/PBBipc .sym/PBBmisc .sym/PBBarg .sym/PBBrend m2path
a80 3
.lnk/PBBipc: PBBipc.mod .sym/PBBipc $(K32TLIB)/.sym/K32types m2path
	run.m2c -T -E PBBipc.mod

d84 2
a85 2
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBipc \
  .sym/PBBmisc m2path
d91 1
a91 1
  $(K32TLIB)/.sym/PBBinArg .sym/PBBipc .sym/PBBmisc .sym/PBBarg .sym/PBBprof \
d118 1
a118 1
  .sym/PBBipc m2path
a124 4
.sym/PBBipc: PBBipc.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except m2path
	run.m2c -T -E PBBipc.def

a162 6
	co -b -q $@@

PBBipc.mod: RCS/PBBipc.mod,v
	co -b -q $@@

PBBipc.def: RCS/PBBipc.def,v
@


0.8.1.2
log
@Updated dependencies.
Deleted superfluous -X flag from the m2l command.
@
text
@d26 2
a27 3
  $(K32TLIB)/.lnk/ACPipc $(K32TLIB)/.lnk/events $(K32TLIB)/.lnk/PBBoutArg \
  $(K32TLIB)/.lnk/PIV m2path
	m2l -c -S -E -L -N PBB\
d71 1
a71 1
  $(K32TLIB)/.sym/ACPipc $(K32TLIB)/.sym/events .sym/PBBipc m2path
@


0.8.1.3
log
@Updated dependencies.
@
text
@d26 2
a27 2
  $(K32TLIB)/.lnk/structIo $(K32TLIB)/.lnk/ACPipc $(K32TLIB)/.lnk/events \
  $(K32TLIB)/.lnk/PBBoutArg $(K32TLIB)/.lnk/PIV m2path
d95 2
a96 2
  $(K32TLIB)/.sym/PBBinArg $(K32TLIB)/.sym/structIo .sym/PBBipc .sym/PBBmisc \
  .sym/PBBarg .sym/PBBprof .sym/PBBload .sym/PBBpih m2path
@


0.7
log
@Initial version.
@
text
@d3 21
a23 1
PBB.out: .lnk/PBB $(K32TLIB)/.lnk/K32baseTypes $(K32TLIB)/.lnk/K32types \
d25 2
a26 3
  $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR .lnk/PBBcommon .lnk/PBBmisc \
  .lnk/events .lnk/PBBarg $(K32TLIB)/.lnk/K32machine .lnk/PBBnksr \
  .lnk/PBBprof $(K32TLIB)/.lnk/NKSR .lnk/PBBload .lnk/PBBrend .lnk/PBBpih \
d28 6
a33 1
	m2l -E PBB
d35 2
a36 2
objects: .lnk/events .lnk/PBBrend .lnk/PBBprof .lnk/PBBpih .lnk/PBBnksr \
  .lnk/PBBmisc .lnk/PBBload .lnk/PBBcommon .lnk/PBBarg .lnk/PBB
d39 2
a40 2
symbols: .sym/events .sym/PBBrend .sym/PBBprof .sym/PBBpih .sym/PBBnksr \
  .sym/PBBmisc .sym/PBBload .sym/PBBcommon .sym/PBBarg
d43 3
a45 2
.lnk/events: events.mod .sym/events m2path
	run.m2c -T -E events.mod
d47 5
a51 4
.lnk/PBBrend: PBBrend.mod .sym/PBBrend $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  .sym/PBBcommon .sym/PBBmisc m2path
d57 1
a57 1
  .sym/PBBcommon .sym/PBBnksr .sym/PBBmisc .sym/PBBarg m2path
d71 1
a71 1
  .sym/events m2path
d77 2
a78 2
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR .sym/PBBmisc .sym/PBBarg \
  .sym/PBBrend m2path
a80 4
.lnk/PBBcommon: PBBcommon.mod .sym/PBBcommon $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/NKSR m2path
	run.m2c -T -E PBBcommon.mod

d84 2
a85 1
  $(K32TLIB)/.sym/strio .sym/PBBcommon .sym/PBBnksr .sym/PBBmisc m2path
d88 5
a92 4
.lnk/PBB: PBB.mod $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR .sym/PBBcommon .sym/PBBmisc \
  .sym/PBBarg .sym/PBBprof .sym/PBBload .sym/PBBpih m2path
d95 2
a96 6
.sym/events: events.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/NKSR m2path
	run.m2c -T -E events.def

.sym/PBBrend: PBBrend.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types m2path
d105 6
a110 1
.sym/PBBnksr: PBBnksr.def
d112 3
d121 2
a122 1
.sym/PBBload: PBBload.def $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/NKSR m2path
a124 4
.sym/PBBcommon: PBBcommon.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/NKSR m2path
	run.m2c -T -E PBBcommon.def

d128 67
@


0.7.1.1
log
@Added targets to check out all of the source files.
@
text
@a102 60

events.mod: RCS/events.mod,v
	co -b -q $@@

events.def: RCS/events.def,v
	co -b -q $@@

PBBrend.mod: RCS/PBBrend.mod,v
	co -b -q $@@

PBBrend.def: RCS/PBBrend.def,v
	co -b -q $@@

PBBprof.mod: RCS/PBBprof.mod,v
	co -b -q $@@

PBBprof.def: RCS/PBBprof.def,v
	co -b -q $@@

PBBpih.mod: RCS/PBBpih.mod,v
	co -b -q $@@

PBBpih.def: RCS/PBBpih.def,v
	co -b -q $@@

PBBnksr.mod: RCS/PBBnksr.mod,v
	co -b -q $@@

PBBnksr.def: RCS/PBBnksr.def,v
	co -b -q $@@

PBBmisc.mod: RCS/PBBmisc.mod,v
	co -b -q $@@

PBBmisc.def: RCS/PBBmisc.def,v
	co -b -q $@@

PBBload.mod: RCS/PBBload.mod,v
	co -b -q $@@

PBBload.def: RCS/PBBload.def,v
	co -b -q $@@

PBBcommon.mod: RCS/PBBcommon.mod,v
	co -b -q $@@

PBBcommon.def: RCS/PBBcommon.def,v
	co -b -q $@@

PBBarg.mod: RCS/PBBarg.mod,v
	co -b -q $@@

PBBarg.def: RCS/PBBarg.def,v
	co -b -q $@@

PBB.mod: RCS/PBB.mod,v
	co -b -q $@@

m2path: RCS/m2path,v
	co -b -q $@@
@


0.7.1.2
log
@Added a m2makefile target.
@
text
@a162 10

m2makefile:
	mkdir .Tmp
	ls *.def *.mod | sed -e 's=.*=mpp -DDEBUG & > .Tmp/&=' | sh
	ls -f .Tmp | sed '/^\.*$$/d' > .TmpDir
	ls .Tmp | diff - .TmpDir
	cd .Tmp ; ln -s ../m2path ; m2make -E
	-mv $@@ $@@~
	mv .Tmp/makefile $@@
	rm -r .Tmp .TmpDir
@


0.7.1.3
log
@Updated dependencies.
@
text
@d3 1
a3 1
PBB.out: objects $(K32TLIB)/.lnk/K32baseTypes $(K32TLIB)/.lnk/K32types \
d5 3
a7 1
  $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR $(K32TLIB)/.lnk/K32machine \
d19 2
a20 2
.lnk/events: events.mod .sym/events
	run.m2c -T events.mod
@


0.7.1.4
log
@Changed to build separate System and User PBB executables.
Added an install target.
@
text
@d3 5
a7 7
all: .sym/sPBBnksr .sym/uPBBnksr
	rm -f .sym/PBBnksr ; cp .sym/sPBBnksr .sym/PBBnksr
	make sPBB.out
	rm -f .sym/PBBnksr ; cp .sym/uPBBnksr .sym/PBBnksr
	make uPBB.out
	rm -f .sym/PBBnksr
	touch $@@
a8 7
sPBB.out uPBB.out: objects $(K32TLIB)/.lnk/K32baseTypes \
  $(K32TLIB)/.lnk/K32types $(K32TLIB)/.lnk/K32except \
  $(K32TLIB)/.lnk/KernelCalls $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR \
  $(K32TLIB)/.lnk/K32machine $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
	m2l -N -E PBB
	mv PBB.out $@@

d83 1
a83 2
.sym/sPBBnksr .sym/uPBBnksr: PBBnksr.def
	rm -f .sym/PBBnksr
a84 3
	mv -f .sym/PBBnksr .sym/uPBBnksr
	M2C -DPBBNKSR PBBnksr.def
	mv -f .sym/PBBnksr .sym/sPBBnksr
a160 5

install: all
	kwr /dev/ksos 5 sPBB.out /sys/sysbin/sPBB
	kwr /dev/ksos 5 uPBB.out /sys/sysbin/uPBB
	touch $@@
@


0.7.1.5
log
@Moved the PBBcommon module to the KSOS-32 trusted library.
@
text
@d3 1
a3 1
all: .sym/sPBBnksr .sym/uPBBnksr objects
d8 1
d14 1
a14 2
  $(K32TLIB)/.lnk/PBBcommon $(K32TLIB)/.lnk/K32machine \
  $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
d19 1
a19 1
  .lnk/PBBmisc .lnk/PBBload .lnk/PBBarg .lnk/PBB
d23 1
a23 1
  .sym/PBBmisc .sym/PBBload .sym/PBBarg
d32 1
a32 1
  $(K32TLIB)/.sym/PBBcommon .sym/PBBmisc m2path
d38 1
a38 1
  $(K32TLIB)/.sym/PBBcommon .sym/PBBnksr .sym/PBBmisc .sym/PBBarg m2path
d62 4
d69 1
a69 2
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/PBBcommon .sym/PBBnksr .sym/PBBmisc \
  m2path
d74 2
a75 2
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/PBBcommon \
  .sym/PBBmisc .sym/PBBarg .sym/PBBprof .sym/PBBload .sym/PBBpih m2path
a91 4
.sym/PBBnksr: .sym/sPBBnksr
	rm -f $@@
	cp .sym/sPBBnksr $@@

d107 4
d155 6
@


0.7.1.6
log
@Changed to edit the .gfs file using the ed script in the trusted library.
@
text
@d10 1
a10 13
sPBB.out uPBB.out: PBB.ld.sh PBB.gfo
	@@sh -v PBB.ld.sh
	mv PBB.out $@@
	size $@@

PBB.gfo: PBB.gfs2
	as -o $@@ PBB.gfs2

PBB.gfs2: PBB.gfs $(K32TLIB)/fix.nksr.gfs.ed
	cp PBB.gfs $@@
	ed - $@@ < $(K32TLIB)/fix.nksr.gfs.ed

PBB.ld.sh PBB.gfs: objects $(K32TLIB)/.lnk/K32baseTypes \
d15 2
a16 6
	m2l -c -S -E -L -X -N PBB\
	  | sed -e 's/^/ld /'\
		-e 's= \./= =g'\
		-e 's/ -lc//' > PBB.ld.sh
# The preceding invocation of sed prepends the "ld" command, removes
# superfluous "./" pathname components, and prevents loading the C library.
@


0.7.1.7
log
@Changed to reflect the moving of the events module to the trusted library.
@
text
@d25 2
a26 2
  $(K32TLIB)/.lnk/PBBcommon $(K32TLIB)/.lnk/events \
  $(K32TLIB)/.lnk/K32machine $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
d34 2
a35 2
objects: .lnk/PBBrend .lnk/PBBprof .lnk/PBBpih .lnk/PBBnksr .lnk/PBBmisc \
  .lnk/PBBload .lnk/PBBarg .lnk/PBB
d38 2
a39 2
symbols: .sym/PBBrend .sym/PBBprof .sym/PBBpih .sym/PBBnksr .sym/PBBmisc \
  .sym/PBBload .sym/PBBarg
d42 3
d68 1
a68 1
  $(K32TLIB)/.sym/events m2path
d91 4
d127 6
@


0.7.1.8
log
@Updated dependencies.
Added a "clean" target.
@
text
@d22 5
a26 5
PBB.ld.sh PBB.gfs: objects $(K32TLIB)/.lnk/K32machine \
  $(K32TLIB)/.lnk/K32baseTypes $(K32TLIB)/.lnk/K32types \
  $(K32TLIB)/.lnk/K32except $(K32TLIB)/.lnk/KernelCalls \
  $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR $(K32TLIB)/.lnk/PBBcommon \
  $(K32TLIB)/.lnk/events $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
d42 4
a45 5
.lnk/PBBrend: PBBrend.mod .sym/PBBrend $(K32TLIB)/.lnk/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/PBBcommon \
  .sym/PBBmisc m2path
d82 4
a85 5
.lnk/PBB: PBB.mod $(K32TLIB)/.lnk/K32machine $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  $(K32TLIB)/.sym/PBBcommon .sym/PBBmisc .sym/PBBarg .sym/PBBprof \
  .sym/PBBload .sym/PBBpih m2path
d88 2
a89 2
.sym/PBBrend: PBBrend.def $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types m2path
d114 1
a114 2
.sym/PBBload: PBBload.def $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/NKSR m2path
a182 3

clean:
	rm -f all objects symbols install m2makefile
@


0.7.1.9
log
@Changed the name of the PBBcommon module to PBBinArg.
Updated dependencies.
@
text
@d25 2
a26 3
  $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR $(K32TLIB)/.lnk/PBBinArg \
  $(K32TLIB)/.lnk/events $(K32TLIB)/.lnk/PBBoutArg \
  $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
d45 1
a45 1
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/PBBinArg \
d52 1
a52 1
  $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBmisc .sym/PBBarg m2path
d72 2
a73 2
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.lnk/PBBoutArg \
  .sym/PBBmisc .sym/PBBarg .sym/PBBrend m2path
d79 1
a79 1
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/PBBinArg .sym/PBBnksr .sym/PBBmisc \
d86 1
a86 1
  $(K32TLIB)/.sym/PBBinArg .sym/PBBmisc .sym/PBBarg .sym/PBBprof \
@


0.7.1.10
log
@Added a sources target.
Fixed some broken dependencies.
Made the "clean" command complete.
@
text
@d43 1
a43 5
sources: PBBrend.mod PBBrend.def PBBprof.mod PBBprof.def PBBpih.mod \
  PBBpih.def PBBnksr.mod PBBnksr.def PBBmisc.mod PBBmisc.def PBBload.mod \
  PBBload.def PBBarg.mod PBBarg.def PBB.mod

.lnk/PBBrend: PBBrend.mod .sym/PBBrend $(K32TLIB)/.sym/K32machine \
d73 1
a73 1
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/PBBoutArg \
d84 1
a84 1
.lnk/PBB: PBB.mod $(K32TLIB)/.sym/K32machine $(K32TLIB)/.sym/K32baseTypes \
d178 1
a178 1
m2makefile: sources
d189 1
a189 2
	rm -f all PBB.gf[os] PBB.gfs2 PBB.ld.sh objects symbols install\
		m2makefile
@
