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


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

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

0.7
date     87.12.30.16.59.50;  author Perrine;  state Stab;
branches 0.7.1.1;
next     0.6;

0.6
date     87.12.18.19.50.21;  author Makey;  state Stab;
branches 0.6.1.1;
next     0.5;

0.5
date     87.11.30.20.14.20;  author Makey;  state Exp;
branches 0.5.1.1;
next     ;

0.5.1.1
date     87.11.30.20.32.37;  author Makey;  state Exp;
branches ;
next     0.5.1.2;

0.5.1.2
date     87.12.01.17.02.56;  author Makey;  state Exp;
branches ;
next     0.5.1.3;

0.5.1.3
date     87.12.14.15.48.24;  author Makey;  state Exp;
branches ;
next     0.5.1.4;

0.5.1.4
date     87.12.17.19.31.14;  author Makey;  state Exp;
branches ;
next     0.5.1.5;

0.5.1.5
date     87.12.18.16.47.56;  author Makey;  state Exp;
branches ;
next     ;

0.6.1.1
date     87.12.30.15.18.00;  author Perrine;  state Exp;
branches ;
next     ;

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

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

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

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

0.7.1.5
date     88.02.03.11.53.29;  author Perrine;  state Exp;
branches ;
next     0.7.1.6;

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

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

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

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

0.7.1.10
date     88.04.13.21.42.02;  author Makey;  state Exp;
branches ;
next     0.7.1.11;

0.7.1.11
date     88.04.21.18.49.27;  author Makey;  state Exp;
branches ;
next     ;

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

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

0.8.1.3
date     88.09.08.17.45.22;  author Makey;  state Exp;
branches ;
next     0.8.1.4;

0.8.1.4
date     88.09.13.15.39.56;  author Makey;  state Exp;
branches ;
next     ;


desc
@KSOS-32 Initial Process 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

init.out: init.ld.sh init.gfo
	@@sh -v init.ld.sh
	size $@@

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

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

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

objects: .lnk/initTerm .lnk/init .lnk/exercise .lnk/PBBld
	touch $@@

symbols: .sym/initTerm .sym/exercise .sym/PBBld
	touch $@@

sources: initTerm.mod initTerm.def init.mod exercise.mod exercise.def \
  PBBld.mod PBBld.def

.lnk/initTerm: initTerm.mod .sym/initTerm $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/initMisc m2path
	run.m2c -T -E initTerm.mod

.lnk/init: init.mod $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/initMisc \
  .sym/initTerm $(K32TLIB)/.sym/Nlib $(K32TLIB)/.sym/udmLib \
  $(K32TLIB)/.sym/structIo .sym/PBBld .sym/exercise m2path
	M2C -E init.mod

.lnk/exercise: exercise.mod .sym/exercise $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32conf \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/IOform \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/PIV $(K32TLIB)/.sym/strio \
  $(K32TLIB)/.sym/initMisc $(K32TLIB)/.sym/Nlib $(K32TLIB)/.sym/structIo \
  .sym/PBBld m2path
	M2C -E exercise.mod

.lnk/PBBld: PBBld.mod .sym/PBBld $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/IOform \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  $(K32TLIB)/.sym/PBBinArg $(K32TLIB)/.sym/initMisc m2path
	run.m2c -T -E PBBld.mod

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

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

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

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

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

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

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

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

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

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

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

install: init.out
	kwr /dev/ksos 5 init.out /initial
	touch $@@

m2makefile: sources m2path
	mkdir .Tmp
	ls *.def *.mod | sed -e 's=.*=mpp -DEXERCISE & > .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 init.gf[os] init.gfs2 init.ld.sh symbols objects install
@


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
@d19 1
a19 2
  $(K32TLIB)/.lnk/PBBinArg $(K32TLIB)/.lnk/K32conf \
  $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
d27 1
a27 1
objects: .lnk/initTerm .lnk/init .lnk/hardPI .lnk/exercise .lnk/PBBld
d30 1
a30 1
symbols: .sym/initTerm .sym/hardPI .sym/exercise .sym/PBBld
d33 2
a34 2
sources: initTerm.mod initTerm.def init.mod hardPI.mod hardPI.def \
  exercise.mod exercise.def PBBld.mod PBBld.def
d46 1
a46 1
	M2C -E -DEXERCISE init.mod
a47 3
.lnk/hardPI: hardPI.mod .sym/hardPI
	run.m2c -T hardPI.mod

d51 3
a53 3
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/PseudoInterruptVectors \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/initMisc $(K32TLIB)/.sym/Nlib \
  $(K32TLIB)/.sym/structIo .sym/PBBld m2path
a65 3
.sym/hardPI: hardPI.def
	run.m2c -T hardPI.def

a80 6
hardPI.mod: RCS/hardPI.mod,v
	co -b -q $@@

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

d105 1
a105 2
	sed -e 's=:\.\.=:../..=g' m2path > .Tmp/m2path
	cd .Tmp ; m2make -E
@


0.8.1.1
log
@Changed the name of the PseudoInterruptVectors module to PIV.
@
text
@d19 2
a20 1
  $(K32TLIB)/.lnk/PBBinArg $(K32TLIB)/.lnk/K32conf $(K32TLIB)/.lnk/PIV m2path
d55 3
a57 3
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/PIV $(K32TLIB)/.sym/strio \
  $(K32TLIB)/.sym/initMisc $(K32TLIB)/.sym/Nlib $(K32TLIB)/.sym/structIo \
  .sym/PBBld m2path
@


0.8.1.2
log
@Turned off kernel call exercising.
@
text
@d46 1
a46 1
	M2C -E init.mod
@


0.8.1.3
log
@Removed references to the hardPI module, since it isn't used anywhere.
@
text
@d27 1
a27 1
objects: .lnk/initTerm .lnk/init .lnk/exercise .lnk/PBBld
d30 1
a30 1
symbols: .sym/initTerm .sym/exercise .sym/PBBld
d33 2
a34 2
sources: initTerm.mod initTerm.def init.mod exercise.mod exercise.def \
  PBBld.mod PBBld.def
d48 3
d69 3
d85 6
@


0.8.1.4
log
@Simplified the commands to build a m2makefile.
@
text
@d105 2
a106 1
	cd .Tmp ; ln -s ../m2path ; m2make -E
@


0.7
log
@Changed as needed to make the initial process (mostly) run on revision
0.7 of the KSOS-32 kernel.  Because the kernel does not yet support
segment operations nor process creation, we can't do things like load
the PBB.
Added things to the exercise module to exercise several terminals that
are attached via the DMF32.
@
text
@d1 1
a1 1
KIF = ../../kernel_interface/lib
d10 1
a10 1
init.gfs2: init.gfs fix.init.gfs.ed
d12 1
a12 1
	ed - $@@ < fix.init.gfs.ed
d14 7
a20 1
init.ld.sh init.gfs: objects m2path
d28 1
a28 4
objects: .lnk/udmLib .lnk/udmComm .lnk/timePI .lnk/structIo \
  .lnk/strio .lnk/sigPI .lnk/rw .lnk/ipcPI .lnk/iocPI .lnk/initTerm \
  .lnk/initMisc .lnk/init .lnk/hardPI .lnk/exercise .lnk/PBBld .lnk/Nucleus \
  .lnk/Nlib .lnk/NPI .lnk/NKSR
d31 1
a31 4
symbols: .sym/udmLib .sym/udmComm .sym/timePI .sym/structIo \
  .sym/strio .sym/sigPI .sym/rw .sym/ipcPI .sym/iocPI .sym/initTerm \
  .sym/initMisc .sym/hardPI .sym/exercise .sym/PBBld .sym/Nucleus .sym/Nlib \
  .sym/NPI .sym/NKSR
d34 2
a35 6
sources: udmLib.mod udmLib.def udmComm.mod udmComm.def timePI.mod timePI.def \
  structIo.mod structIo.def strio.mod strio.def sigPI.mod sigPI.def rw.mod \
  rw.def ipcPI.mod ipcPI.def iocPI.mod iocPI.def initTerm.mod initTerm.def \
  initMisc.mod initMisc.def init.mod hardPI.mod hardPI.def exercise.mod \
  exercise.def PBBld.mod PBBld.def Nucleus.mod Nucleus.def Nlib.mod Nlib.def \
  NPI.mod NPI.def NKSR.mod NKSR.def
d37 3
a39 43
.lnk/udmLib: udmLib.mod .sym/udmLib $(KIF)/.sym/K32machine \
  $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types $(KIF)/.sym/K32except \
  $(KIF)/.sym/KernelCalls $(KIF)/.sym/userFdt .sym/NKSR .sym/initMisc \
  .sym/strio .sym/Nlib .sym/NPI .sym/udmComm m2path M2C
	M2C -E udmLib.mod

.lnk/udmComm: udmComm.mod .sym/udmComm $(KIF)/.sym/K32machine \
  $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types $(KIF)/.sym/K32except \
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/strio .sym/Nlib .sym/NPI \
  .sym/udmLib m2path M2C
	M2C -E -DIface udmComm.mod

.lnk/timePI: timePI.mod .sym/timePI $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types $(KIF)/.sym/PseudoInterruptVectors .sym/Nucleus m2path
	run.m2c -T -E timePI.mod

.lnk/structIo: structIo.mod .sym/structIo $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types .sym/NKSR .sym/initMisc .sym/strio m2path
	run.m2c -T -E structIo.mod

.lnk/strio: strio.mod .sym/strio $(KIF)/.sym/K32baseTypes .sym/rw m2path
	run.m2c -T -E strio.mod

.lnk/sigPI: sigPI.mod .sym/sigPI $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types $(KIF)/.sym/PseudoInterruptVectors .sym/Nucleus m2path
	run.m2c -T -E sigPI.mod

.lnk/rw: rw.mod .sym/rw $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls m2path
	run.m2c -T -E rw.mod

.lnk/ipcPI: ipcPI.mod .sym/ipcPI $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types $(KIF)/.sym/K32except $(KIF)/.sym/K32callp \
  $(KIF)/.sym/KernelCalls $(KIF)/.sym/PseudoInterruptVectors .sym/Nucleus \
   m2path
	run.m2c -T -E ipcPI.mod

.lnk/iocPI: iocPI.mod .sym/iocPI $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types $(KIF)/.sym/PseudoInterruptVectors .sym/Nucleus m2path
	run.m2c -T -E iocPI.mod

.lnk/initTerm: initTerm.mod .sym/initTerm $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls .sym/initMisc m2path
d42 6
a47 4
.lnk/initMisc: initMisc.mod .sym/initMisc $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls .sym/NKSR .sym/strio m2path \
  M2C
	M2C -E -Dipc_on initMisc.mod
a48 6
.lnk/init: init.mod $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls .sym/NKSR .sym/initMisc \
  .sym/initTerm .sym/strio .sym/Nlib .sym/udmLib .sym/structIo .sym/PBBld \
  .sym/exercise m2path
	run.m2c -T -E init.mod

d52 7
a58 5
.lnk/exercise: exercise.mod .sym/exercise $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32conf $(KIF)/.sym/K32types $(KIF)/.sym/K32except \
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/initMisc .sym/strio \
  .sym/Nlib .sym/structIo .sym/PBBld m2path
	run.m2c -T -E exercise.mod
d60 5
a64 4
.lnk/PBBld: PBBld.mod .sym/PBBld $(KIF)/.sym/K32machine \
  $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types $(KIF)/.sym/K32except \
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/NKSR .sym/initMisc \
  .sym/strio m2path
a66 45
.lnk/Nucleus: Nucleus.mod .sym/Nucleus $(KIF)/.sym/K32machine m2path
	run.m2c -T -E Nucleus.mod

.lnk/Nlib: Nlib.mod .sym/Nlib $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls m2path M2C
	M2C -E -Dtime_conv Nlib.mod

.lnk/NPI: NPI.mod .sym/NPI $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except .sym/initMisc .sym/strio .sym/iocPI .sym/ipcPI \
  .sym/sigPI .sym/timePI .sym/Nucleus m2path M2C
	M2C -E -Dipc_on NPI.mod

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

.sym/udmLib: udmLib.def $(KIF)/.sym/K32machine $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types $(KIF)/.sym/K32except $(KIF)/.sym/IOform m2path M2C
	M2C -E udmLib.def

.sym/udmComm: udmComm.def $(KIF)/.sym/K32machine $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types $(KIF)/.sym/K32except .sym/udmLib m2path
	run.m2c -T -E udmComm.def

.sym/timePI: timePI.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path
	run.m2c -T -E timePI.def

.sym/structIo: structIo.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  .sym/NKSR m2path
	run.m2c -T -E structIo.def

.sym/strio: strio.def $(KIF)/.sym/K32baseTypes m2path
	run.m2c -T -E strio.def

.sym/sigPI: sigPI.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path
	run.m2c -T -E sigPI.def

.sym/rw: rw.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path
	run.m2c -T -E rw.def

.sym/ipcPI: ipcPI.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path
	run.m2c -T -E ipcPI.def

.sym/iocPI: iocPI.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path
	run.m2c -T -E iocPI.def

a69 4
.sym/initMisc: initMisc.def $(KIF)/.sym/K32types $(KIF)/.sym/K32except \
  .sym/NKSR m2path M2C
	M2C -E -Dipc_on initMisc.def

d73 1
a73 2
.sym/exercise: exercise.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  m2path
d76 1
a76 2
.sym/PBBld: PBBld.def $(KIF)/.sym/K32machine $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32types m2path
a78 66
.sym/Nucleus: Nucleus.def $(KIF)/.sym/K32machine m2path
	run.m2c -T -E Nucleus.def

.sym/Nlib: Nlib.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path M2C
	M2C -E -Dtime_conv Nlib.def

.sym/NPI: NPI.def $(KIF)/.sym/K32types m2path M2C
	M2C -E -Dipc_on NPI.def

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

a84 6
initMisc.mod: RCS/initMisc.mod,v
	co -b -q $@@

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

a105 27
Nucleus.mod: RCS/Nucleus.mod,v
	co -b -q $@@

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

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

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

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

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

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

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

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

a108 3
fix.init.gfs.ed: RCS/fix.init.gfs.ed,v
	co -b -q $@@

d110 2
a111 1
	csh -cf "~ksos/tools/install init.out /initial"
d115 1
a115 1
	ls *.def *.mod | sed -e 's=.*=~ksos/tools/mpp -Dioc_on -Dipc_on -Dsig_on -Dtime_on -Dtime_conv -DIface & > .Tmp/&=' | csh -f
d125 1
a125 1
	rm -f init.gf[os] init.gfs2 init.ld.sh symbols objects
@


0.7.1.1
log
@Changed to assume that M2C and mpp are in the user's path.
Changed initial process installation to use the kwr program.
@
text
@d1 1
a1 1
KIF = /u/ksos/ksos32/lib
d44 1
a44 1
  .sym/strio .sym/Nlib .sym/NPI .sym/udmComm m2path
d50 1
a50 1
  .sym/udmLib m2path
d87 2
a88 1
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls .sym/NKSR .sym/strio m2path
d116 1
a116 1
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls m2path
d121 1
a121 1
  .sym/sigPI .sym/timePI .sym/Nucleus m2path
d128 1
a128 1
  $(KIF)/.sym/K32types $(KIF)/.sym/K32except $(KIF)/.sym/IOform m2path
d161 1
a161 1
  .sym/NKSR m2path
d178 1
a178 1
.sym/Nlib: Nlib.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types m2path
d181 1
a181 1
.sym/NPI: NPI.def $(KIF)/.sym/K32types m2path
d298 3
d308 1
a308 1
	kwr /dev/ksos 5 init.out /initial
d312 1
a312 1
	ls *.def *.mod | sed -e 's=.*=mpp -Dioc_on -Dipc_on -Dsig_on -Dtime_on -Dtime_conv -DIface & > .Tmp/&=' | sh
@


0.7.1.2
log
@Moved the location of the kernel interface library.
Changed the "install" target to touch itself.
Updated the "clean" target stuff.
@
text
@d1 1
a1 1
KIF = /u/ksos/ksos32/lib/trusted
a304 1
	touch $@@
d318 1
a318 1
	rm -f init.gf[os] init.gfs2 init.ld.sh symbols objects install
@


0.7.1.3
log
@Changed to use the NKSR, rw, and strio modules from the KSOS-32 trusted
library rather than use local copies.
@
text
@d23 3
a25 2
  .lnk/sigPI .lnk/ipcPI .lnk/iocPI .lnk/initTerm .lnk/initMisc .lnk/init \
  .lnk/hardPI .lnk/exercise .lnk/PBBld .lnk/Nucleus .lnk/Nlib .lnk/NPI
d29 3
a31 2
  .sym/sigPI .sym/ipcPI .sym/iocPI .sym/initTerm .sym/initMisc .sym/hardPI \
  .sym/exercise .sym/PBBld .sym/Nucleus .sym/Nlib .sym/NPI
d35 5
a39 4
  structIo.mod structIo.def sigPI.mod sigPI.def ipcPI.mod ipcPI.def \
  iocPI.mod iocPI.def initTerm.mod initTerm.def initMisc.mod initMisc.def \
  init.mod hardPI.mod hardPI.def exercise.mod exercise.def PBBld.mod \
  PBBld.def Nucleus.mod Nucleus.def Nlib.mod Nlib.def NPI.mod NPI.def
d43 2
a44 2
  $(KIF)/.sym/KernelCalls $(KIF)/.sym/userFdt $(KIF)/.sym/NKSR .sym/initMisc \
  $(KIF)/.sym/strio .sym/Nlib .sym/NPI .sym/udmComm m2path
d49 2
a50 2
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls $(KIF)/.sym/strio .sym/Nlib \
  .sym/NPI .sym/udmLib m2path
d58 1
a58 1
  $(KIF)/.sym/K32types $(KIF)/.sym/NKSR .sym/initMisc $(KIF)/.sym/strio m2path
d61 3
d68 4
d87 1
a87 2
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls $(KIF)/.sym/NKSR \
  $(KIF)/.sym/strio m2path
d91 3
a93 3
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls $(KIF)/.sym/NKSR \
  .sym/initMisc .sym/initTerm $(KIF)/.sym/strio .sym/Nlib .sym/udmLib \
  .sym/structIo .sym/PBBld .sym/exercise m2path
d101 1
a101 1
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/initMisc $(KIF)/.sym/strio \
d107 2
a108 2
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls $(KIF)/.sym/NKSR .sym/initMisc \
  $(KIF)/.sym/strio m2path
d119 2
a120 2
  $(KIF)/.sym/K32except .sym/initMisc $(KIF)/.sym/strio .sym/iocPI \
  .sym/ipcPI .sym/sigPI .sym/timePI .sym/Nucleus m2path
d123 3
d138 1
a138 1
  $(KIF)/.sym/NKSR m2path
d141 3
d147 3
d160 1
a160 1
  $(KIF)/.sym/NKSR m2path
d183 3
d210 6
d222 6
d289 6
@


0.7.1.4
log
@Updated dependencies.
@
text
@d98 2
a99 2
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls $(KIF)/.sym/strio \
  $(KIF)/.sym/NKSR $(KIF)/.sym/PBBcommon .sym/initMisc m2path
@


0.7.1.5
log
@Updated dependencies.
@
text
@d90 3
a92 4
.lnk/exercise: exercise.mod .sym/exercise $(KIF)/.sym/K32machine \
  $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32conf $(KIF)/.sym/K32types \
  $(KIF)/.sym/K32except $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls \
  $(KIF)/.sym/PseudoInterruptVectors $(KIF)/.sym/strio .sym/initMisc \
@


0.7.1.6
log
@Reordered one of the dependency lists.
@
text
@d82 2
a83 2
  $(KIF)/.sym/K32except $(KIF)/.sym/KernelCalls $(KIF)/.sym/strio \
  $(KIF)/.sym/NKSR .sym/initMisc .sym/initTerm .sym/Nlib .sym/udmLib \
@


0.7.1.7
log
@Moved the fix.init.gfs.ed file to the KSOS-32 trusted library and
renamed it fix.nksr.gfs.ed.
@
text
@d10 1
a10 1
init.gfs2: init.gfs $(KIF)/fix.nksr.gfs.ed
d12 1
a12 1
	ed - $@@ < $(KIF)/fix.nksr.gfs.ed
d260 3
@


0.7.1.8
log
@Moved a whole bunch of modules into the KSOS-32 trusted library.
@
text
@d1 1
a1 1
K32TLIB = /u/ksos/ksos32/lib/trusted
d10 1
a10 1
init.gfs2: init.gfs $(K32TLIB)/fix.nksr.gfs.ed
d12 1
a12 1
	ed - $@@ < $(K32TLIB)/fix.nksr.gfs.ed
d14 1
a14 7
init.ld.sh init.gfs: objects $(K32TLIB)/.lnk/K32baseTypes \
  $(K32TLIB)/.lnk/K32types $(K32TLIB)/.lnk/K32except \
  $(K32TLIB)/.lnk/KernelCalls $(K32TLIB)/.lnk/strio $(K32TLIB)/.lnk/NKSR \
  $(K32TLIB)/.lnk/initMisc $(K32TLIB)/.lnk/Nlib $(K32TLIB)/.lnk/udmLib \
  $(K32TLIB)/.lnk/structIo $(K32TLIB)/.lnk/K32machine $(K32TLIB)/.lnk/IOform \
  $(K32TLIB)/.lnk/PBBcommon $(K32TLIB)/.lnk/K32conf \
  $(K32TLIB)/.lnk/PseudoInterruptVectors m2path
d22 3
a24 1
objects: .lnk/initTerm .lnk/init .lnk/hardPI .lnk/exercise .lnk/PBBld
d27 3
a29 1
symbols: .sym/initTerm .sym/hardPI .sym/exercise .sym/PBBld
d32 5
a36 2
sources: initTerm.mod initTerm.def init.mod hardPI.mod hardPI.def \
  exercise.mod exercise.def PBBld.mod PBBld.def
d38 36
a73 3
.lnk/initTerm: initTerm.mod .sym/initTerm $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/initMisc m2path
d76 9
a84 5
.lnk/init: init.mod $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/KernelCalls \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR $(K32TLIB)/.sym/initMisc \
  .sym/initTerm $(K32TLIB)/.sym/Nlib $(K32TLIB)/.sym/udmLib \
  $(K32TLIB)/.sym/structIo .sym/PBBld .sym/exercise m2path
d90 5
a94 6
.lnk/exercise: exercise.mod .sym/exercise $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32conf \
  $(K32TLIB)/.sym/K32types $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/IOform \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/PseudoInterruptVectors \
  $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/initMisc $(K32TLIB)/.sym/Nlib \
  $(K32TLIB)/.sym/structIo .sym/PBBld m2path
d97 4
a100 5
.lnk/PBBld: PBBld.mod .sym/PBBld $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types \
  $(K32TLIB)/.sym/K32except $(K32TLIB)/.sym/IOform \
  $(K32TLIB)/.sym/KernelCalls $(K32TLIB)/.sym/strio $(K32TLIB)/.sym/NKSR \
  $(K32TLIB)/.sym/PBBcommon $(K32TLIB)/.sym/initMisc m2path
d103 36
d142 4
d149 2
a150 2
.sym/exercise: exercise.def $(K32TLIB)/.sym/K32baseTypes \
  $(K32TLIB)/.sym/K32types m2path
d153 2
a154 2
.sym/PBBld: PBBld.def $(K32TLIB)/.sym/K32machine \
  $(K32TLIB)/.sym/K32baseTypes $(K32TLIB)/.sym/K32types m2path
d157 51
d214 6
d241 18
d268 1
a268 1
	ls *.def *.mod | sed -e 's=.*=mpp & > .Tmp/&=' | sh
@


0.7.1.9
log
@Updated dependencies.
@
text
@d77 2
a78 1
.sym/PBBld: PBBld.def $(K32TLIB)/.sym/K32types m2path
@


0.7.1.10
log
@Changed the name of the PBBcommon module to PBBinArg.
@
text
@d19 1
a19 1
  $(K32TLIB)/.lnk/PBBinArg $(K32TLIB)/.lnk/K32conf \
d64 1
a64 1
  $(K32TLIB)/.sym/PBBinArg $(K32TLIB)/.sym/initMisc m2path
@


0.7.1.11
log
@Changed to use M2C for init.mod and exercise.mod.
Changed to #define EXERCISE for init.mod.
Updated dependencies.
@
text
@d47 1
a47 1
	M2C -E -DEXERCISE init.mod
d58 1
a58 1
	M2C -E exercise.mod
d73 2
a74 1
.sym/exercise: exercise.def $(K32TLIB)/.sym/K32types m2path
d116 1
a116 1
	ls *.def *.mod | sed -e 's=.*=mpp -DEXERCISE & > .Tmp/&=' | sh
@


0.6
log
@Changed as needed to make the initial process (mostly) run on
revision 0.6 of the KSOS-32 kernel.  Because the kernel does not yet
support segment operations nor process creation, we can't do things
like load the PBB.
Added the exercise module, which contains procedures that exercise
sundry kernel calls.
@
text
@d167 2
a168 1
.sym/exercise: exercise.def $(KIF)/.sym/K32types m2path
@


0.6.1.1
log
@Updated dependencies.
@
text
@d167 1
a167 2
.sym/exercise: exercise.def $(KIF)/.sym/K32baseTypes $(KIF)/.sym/K32types \
  m2path
@


0.5
log
@Initial version.
@
text
@d1 1
a1 1
KIF = /u/ksos/ksos32/kernel_interface/lib
d24 2
a25 2
  .lnk/initMisc .lnk/init .lnk/hardPI .lnk/PBBld .lnk/Nucleus .lnk/Nlib \
  .lnk/NPI .lnk/NKSR
d30 2
a31 2
  .sym/initMisc .sym/hardPI .sym/PBBld .sym/Nucleus .sym/Nlib .sym/NPI \
  .sym/NKSR
d37 3
a39 3
  initMisc.mod initMisc.def init.mod hardPI.mod hardPI.def PBBld.mod \
  PBBld.def Nucleus.mod Nucleus.def Nlib.mod Nlib.def NPI.mod NPI.def \
  NKSR.mod NKSR.def
d43 2
a44 2
  $(KIF)/.sym/KernelCalls .sym/NKSR .sym/initMisc .sym/strio .sym/Nlib \
  .sym/NPI .sym/udmComm m2path M2C
d49 1
a49 1
  $(KIF)/.sym/KernelCalls .sym/initMisc .sym/strio .sym/Nlib .sym/NPI \
d94 1
a94 1
  m2path
d100 6
d108 2
a109 1
  $(KIF)/.sym/KernelCalls .sym/NKSR .sym/initMisc .sym/strio m2path
d128 1
a128 1
  $(KIF)/.sym/K32types $(KIF)/.sym/K32except m2path M2C
d167 3
d261 6
d307 12
a318 1
	csh -c ~ksos/tools/install init.out /initial
@


0.5.1.1
log
@Added the m2makefile target.
@
text
@a292 10
m2makefile: $(FILES)
	mkdir .Tmp
	ls *.def *.mod | sed -e 's=.*=~ksos/tools/mpp -Dioc_on -Dipc_on -Dsig_on -Dtime_on -Dtime_conv -DIface & > .Tmp/&=' | csh
	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.5.1.2
log
@Fixed the arguments to the csh command in the install target.
@
text
@d291 1
a291 1
	csh -c "~ksos/tools/install init.out /initial"
@


0.5.1.3
log
@Updated dependencies.
Changed the the kernel interface library from an absolute path to a
relative path.
Changed the dependencies for the "m2makefile" target to include m2path.
Changed the way the temporary m2path file is generated while building
a m2makefile to account for the extra level of directory nesting.
@
text
@d1 1
a1 1
KIF = ../../kernel_interface/lib
d43 2
a44 2
  $(KIF)/.sym/KernelCalls $(KIF)/.sym/userFdt .sym/NKSR .sym/initMisc \
  .sym/strio .sym/Nlib .sym/NPI .sym/udmComm m2path M2C
d49 2
a50 2
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/initMisc .sym/strio \
  .sym/Nlib .sym/NPI .sym/udmLib m2path M2C
d102 1
a102 2
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/NKSR .sym/initMisc \
  .sym/strio m2path
d121 1
a121 1
  $(KIF)/.sym/K32types $(KIF)/.sym/K32except $(KIF)/.sym/IOform m2path M2C
d293 1
a293 1
m2makefile: $(FILES) m2path
d298 1
a298 2
	sed -e 's=:\.\.=:../..=g' m2path > .Tmp/m2path
	cd .Tmp ; m2make -E
@


0.5.1.4
log
@Added the -f flag to csh invocations to speed things up.
@
text
@d292 1
a292 1
	csh -cf "~ksos/tools/install init.out /initial"
d296 1
a296 1
	ls *.def *.mod | sed -e 's=.*=~ksos/tools/mpp -Dioc_on -Dipc_on -Dsig_on -Dtime_on -Dtime_conv -DIface & > .Tmp/&=' | csh -f
@


0.5.1.5
log
@Updated dependencies.
Added knowledge of the exercise module.
Fixed the m2makefile dependencies.
@
text
@d24 2
a25 2
  .lnk/initMisc .lnk/init .lnk/hardPI .lnk/exercise .lnk/PBBld .lnk/Nucleus \
  .lnk/Nlib .lnk/NPI .lnk/NKSR
d30 2
a31 2
  .sym/initMisc .sym/hardPI .sym/exercise .sym/PBBld .sym/Nucleus .sym/Nlib \
  .sym/NPI .sym/NKSR
d37 3
a39 3
  initMisc.mod initMisc.def init.mod hardPI.mod hardPI.def exercise.mod \
  exercise.def PBBld.mod PBBld.def Nucleus.mod Nucleus.def Nlib.mod Nlib.def \
  NPI.mod NPI.def NKSR.mod NKSR.def
d49 2
a50 2
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/strio .sym/Nlib .sym/NPI \
  .sym/udmLib m2path M2C
d94 1
a94 1
  .sym/exercise m2path
a99 6
.lnk/exercise: exercise.mod .sym/exercise $(KIF)/.sym/K32baseTypes \
  $(KIF)/.sym/K32conf $(KIF)/.sym/K32types $(KIF)/.sym/K32except \
  $(KIF)/.sym/IOform $(KIF)/.sym/KernelCalls .sym/initMisc .sym/strio \
  .sym/Nlib .sym/structIo .sym/PBBld m2path
	run.m2c -T -E exercise.mod

a160 3
.sym/exercise: exercise.def $(KIF)/.sym/K32types m2path
	run.m2c -T -E exercise.def

a251 6
exercise.mod: RCS/exercise.mod,v
	co -b -q $@@

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

d294 1
a294 1
m2makefile: sources m2path
@
