# ******************************************************************* # Makefile pour le progiciel SIMOD # /home/matawin/stochas/simod/mcs # # ENVIRONNEMENT : SOLARIS (Modula-2) # # fichier ecrit par Luc De Bellefeuille, Benoit Martin # cette version : 1 Mars 1995 # ******************************************************************* s = /home/matawin/stochas/simod/mcs mcslib = /home/matawin/stochas/mcslib t = /home/matawin/stochas/mylib/mcs/tcode options = -cfg:c linker_options = -cfg:c -lnam:/usr/ucb/ld -llib:$(mcslib)/heure.o:-lc debug = -dbg optim = r = O = $(options) $(optim) D = $(debug) L = $(linker_options) MYLIB = -l:$(mcslib)/libmylib.a SIMOD = -l:$(mcslib)/libsimod.a LIBS = -l:$(mcslib)/libsimod.a -l:$(mcslib)/libmylib.a libmylib.a = $(mcslib)/libmylib.a libsimod.a = $(mcslib)/libsimod.a event.lnk = $s/event.lnk sim.lnk = $s/sim.lnk cont.lnk = $s/cont.lnk rand.lnk = $s/rand.lnk rand1.lnk = $s/rand1.lnk procs.lnk = $s/procs.lnk stat.lnk = $s/stat.lnk genep.lnk = $s/genep.lnk list.lnk = $s/list.lnk res.lnk = $s/res.lnk bin.lnk = $s/bin.lnk cond.lnk = $s/cond.lnk masla.lnk = $s/masla.lnk event.sym = $s/event.sym sim.sym = $s/sim.sym cont.sym = $s/cont.sym rand.sym = $s/rand.sym rand1.sym = $s/rand1.sym procs.sym = $s/procs.sym stat.sym = $s/stat.sym genep.sym = $s/genep.sym list.sym = $s/list.sym res.sym = $s/res.sym bin.sym = $s/bin.sym cond.sym = $s/cond.sym masla.sym = $s/masla.sym event.def = $s/event.def sim.def = $s/sim.def cont.def = $s/cont.def rand.def = $s/rand.def rand1.def = $s/rand1.def procs.def = $s/procs.def stat.def = $s/stat.def genep.def = $s/genep.def list.def = $s/list.def res.def = $s/res.def bin.def = $s/bin.def cond.def = $s/cond.def masla.def = $s/masla.def modules = $(event.lnk) $(sim.lnk) $(cont.lnk) $(rand.lnk) $(rand1.lnk) \ $(procs.lnk) $(stat.lnk) $(genep.lnk) $(list.lnk) \ $(res.lnk) $(bin.lnk) $(cond.lnk) $(masla.lnk) all: $(modules) message1 simod_library message2 $r # ******************************************************************* # MODULES # ******************************************************************* event: $(event.lnk) $r event.lnk: $(event.lnk) $r event.sym: $(event.sym) $r event.def: $(event.def) $r $(event.lnk): $s/event.mod $(event.sym) $(sim.sym) $(libmylib.a) mc $s/event.mod $O -a:$s $(MYLIB) $(event.sym): $(event.def) mc $(event.def) $O -a:$s $(event.def): $s/EVENT.tex $t $s/EVENT.tex $@ sim: $(sim.lnk) $r sim.lnk: $(sim.lnk) $r sim.sym: $(sim.sym) $r sim.def: $(sim.def) $r $(sim.lnk): $s/sim.mod $(sim.sym) $(event.sym) mc $s/sim.mod $O -a:$s $(sim.sym): $(sim.def) mc $(sim.def) $O -a:$s $(sim.def): $s/SIM.tex $t $s/SIM.tex $@ cont: $(cont.lnk) $r cont.lnk: $(cont.lnk) $r cont.sym: $(cont.sym) $r cont.def: $(cont.def) $r $(cont.lnk): $s/cont.mod $(cont.sym) $(event.sym) $(sim.sym) $(libmylib.a) mc $s/cont.mod $O -a:$s $(MYLIB) $(cont.sym): $(cont.def) $(event.sym) mc $(cont.def) $O -a:$s $(cont.def): $s/CONT.tex $t $s/CONT.tex $@ rand: $(rand.lnk) $r rand.lnk: $(rand.lnk) $r rand.sym: $(rand.sym) $r rand.def: $(rand.def) $r $(rand.lnk): $s/rand.mod $(rand.sym) mc $s/rand.mod $O -a:$s $(rand.sym): $(rand.def) mc $(rand.def) $O -a:$s $(rand.def): $s/RAND.tex $t $s/RAND.tex $@ rand1: $(rand1.lnk) $r rand1.lnk: $(rand1.lnk) $r rand1.sym: $(rand1.sym) $r rand1.def: $(rand1.def) $r $(rand1.lnk): $s/rand1.mod $(rand1.sym) $(libmylib.a) mc $s/rand1.mod $O -a:$s $(MYLIB) $(rand1.sym): $(rand1.def) $(rand.sym) mc $(rand1.def) $O -a:$s $(rand1.def): $s/RAND1.tex $t $s/RAND1.tex $@ procs: $(procs.lnk) $r procs.lnk: $(procs.lnk) $r procs.sym: $(procs.sym) $r procs.def: $(procs.def) $r $(procs.lnk): $s/procs.mod $(procs.sym) $(event.sym) $(sim.sym) $(libmylib.a) mc $s/procs.mod $O -a:$s $(MYLIB) $(procs.sym): $(procs.def) $(event.sym) mc $(procs.def) $O -a:$s $(procs.def): $s/PROCS.tex $t $s/PROCS.tex $@ stat: $(stat.lnk) $r stat.lnk: $(stat.lnk) $r stat.sym: $(stat.sym) $r stat.def: $(stat.def) $r $(stat.lnk): $s/stat.mod $(stat.sym) $(sim.sym) $(rand1.sym) \ $(libmylib.a) mc $s/stat.mod $O -a:$s $(MYLIB) $(stat.sym): $(stat.def) mc $(stat.def) $O -a:$s $(stat.def): $s/STAT.tex $t $s/STAT.tex $@ genep: $(genep.lnk) $r genep.lnk: $(genep.lnk) $r genep.sym: $(genep.sym) $r genep.def: $(genep.def) $r $(genep.lnk): $s/genep.mod $(genep.sym) $(event.sym) $(sim.sym) $(rand.sym) \ $(rand1.sym) $(procs.sym) $(stat.sym) \ $(libmylib.a) mc $s/genep.mod $O -a:$s $(MYLIB) $(genep.sym): $(genep.def) $(event.sym) $(rand.sym) $(procs.sym) \ $(stat.sym) mc $(genep.def) $O -a:$s $(genep.def): $s/GENEP.tex $t $s/GENEP.tex $@ list: $(list.lnk) $r list.lnk: $(list.lnk) $r list.sym: $(list.sym) $r list.def: $(list.def) $r $(list.lnk): $s/list.mod $(list.sym) $(sim.sym) $(stat.sym) $(libmylib.a) mc $s/list.mod $O -a:$s $(MYLIB) $(list.sym): $(list.def) $(stat.sym) mc $(list.def) $O -a:$s $(list.def): $s/LIST.tex $t $s/LIST.tex $@ res: $(res.lnk) $r res.lnk: $(res.lnk) $r res.sym: $(res.sym) $r res.def: $(res.def) $r $(res.lnk): $s/res.mod $(res.sym) $(event.sym) $(sim.sym) $(procs.sym) \ $(stat.sym) $(list.sym) \ $(libmylib.a) mc $s/res.mod $O -a:$s $(MYLIB) $(res.sym): $(res.def) $(procs.sym) $(stat.sym) $(list.sym) mc $(res.def) $O -a:$s $(res.def): $s/RES.tex $t $s/RES.tex $@ bin: $(bin.lnk) $r bin.lnk: $(bin.lnk) $r bin.sym: $(bin.sym) $r bin.def: $(bin.def) $r $(bin.lnk): $s/bin.mod $(bin.sym) $(sim.sym) $(procs.sym) $(list.sym) \ $(libmylib.a) mc $s/bin.mod $O -a:$s $(MYLIB) $(bin.sym): $(bin.def) $(procs.sym) $(list.sym) mc $(bin.def) $O -a:$s $(bin.def): $s/BIN.tex $t $s/BIN.tex $@ cond: $(cond.lnk) $r cond.lnk: $(cond.lnk) $r cond.sym: $(cond.sym) $r cond.def: $(cond.def) $r $(cond.lnk): $s/cond.mod $(cond.sym) $(event.sym) $(sim.sym) \ $(procs.sym) $(list.sym) \ $(libmylib.a) mc $s/cond.mod $O -a:$s $(MYLIB) $(cond.sym): $(cond.def) $(procs.sym) $(list.sym) mc $(cond.def) $O -a:$s $(cond.def): $s/COND.tex $t $s/COND.tex $@ masla: $(masla.lnk) $r masla.lnk: $(masla.lnk) $r masla.sym: $(masla.sym) $r masla.def: $(masla.def) $r $(masla.lnk): $s/masla.mod $(masla.sym) $(event.sym) $(sim.sym) \ $(procs.sym) $(list.sym) \ $(libmylib.a) mc $s/masla.mod $O -a:$s $(MYLIB) $(masla.sym): $(masla.def) $(procs.sym) $(list.sym) mc $(masla.def) $O -a:$s $(masla.def): $s/MASLA.tex $t $s/MASLA.tex $@ # ******************************************************************* # messages # ******************************************************************* message1: @ echo @ echo "Tous les modules de simod sont a jour." @ echo @ echo @ echo "Verification de la librairie libsimod.a ..." @ echo message2: @ echo @ echo "Pour compiler les exemples, faire:" @ echo @ echo " make " @ echo @ echo "ou encore " @ echo @ echo " make all_exemples" @ echo # ******************************************************************* # SIMOD_LIBRARY # ******************************************************************* simod_library: $(libsimod.a) @ echo @ echo "La librairie est a jour." @ echo @ echo "Pour l'utiliser, il faut fournir a la commande" @ echo "de compilation les options:" @ echo @ echo " $(LIBS)" @ echo $(libsimod.a): $(event.sym) $(event.lnk) $(sim.sym) $(sim.lnk) \ $(cont.sym) $(cont.lnk) $(rand.sym) \ $(rand.lnk) $(rand1.sym) $(rand1.lnk) \ $(procs.sym) $(procs.lnk) $(stat.sym) $(stat.lnk) \ $(genep.sym) $(genep.lnk) $(list.sym) \ $(list.lnk) $(res.sym) $(res.lnk) \ $(bin.sym) $(bin.lnk) $(cond.sym) $(cond.lnk) \ $(masla.sym) $(masla.lnk) @ echo "La librairie n'est pas a jour ou n'existe pas." @ echo "Generation de la nouvelle librairie ..." @ echo @ rm -f $@ @ mar -c:$@ $(event.sym) $(event.lnk) \ $(sim.sym) $(sim.lnk) $(cont.sym) $(cont.lnk) \ $(rand.sym) $(rand.lnk) $(rand1.sym) \ $(rand1.lnk) $(procs.sym) $(procs.lnk) \ $(stat.sym) $(stat.lnk) $(genep.sym) \ $(genep.lnk) $(list.sym) $(list.lnk) \ $(res.sym) $(res.lnk) $(bin.sym) $(bin.lnk) \ $(cond.sym) $(cond.lnk) $(masla.sym) \ $(masla.lnk) @ echo @ echo "TERMINE !" @ echo @ echo "Contenu de la librairie:" @ echo "========================" @ mar -s:$@ @ echo # ******************************************************************* # EXEMPLES # ******************************************************************* all_exemples: $s/queue $s/queue1 $s/queue2 $s/atelier $s/tempsparta \ $s/visites $s/proiepred $s/lingots $s/lingots2 \ $s/groupmac.lnk $s/commande.lnk $s/experien $s/systeme queue: $s/queue $r queue.lnk: $s/queue.lnk $r $s/queue: $s/queue.lnk ml $@ $L $(LIBS) $s/queue.lnk: $s/queue.mod $(libmylib.a) $(libsimod.a) mc $s/queue.mod $O $(LIBS) queue1: $s/queue1 $r queue1.lnk: $s/queue1.lnk $r $s/queue1: $s/queue1.lnk ml $@ $L $(LIBS) $s/queue1.lnk: $s/queue1.mod $(libmylib.a) $(libsimod.a) mc $s/queue1.mod $O $(LIBS) queue2: $s/queue2 $r queue2.lnk: $s/queue2.lnk $r $s/queue2: $s/queue2.lnk ml $@ $L $(LIBS) $s/queue2.lnk: $s/queue2.mod $(libmylib.a) $(libsimod.a) mc $s/queue2.mod $O $(LIBS) atelier: $s/atelier $r atelier.lnk: $s/atelier.lnk $r $s/atelier: $s/atelier.lnk ml $@ $L $(LIBS) $s/atelier.lnk: $s/atelier.mod $(libmylib.a) $(libsimod.a) mc $s/atelier.mod $O $(LIBS) tempsparta: $s/tempsparta $r tempsparta.lnk: $s/tempsparta.lnk $r $s/tempsparta: $s/tempsparta.lnk ml $@ $L $(LIBS) $s/tempsparta.lnk: $s/tempsparta.mod $(libmylib.a) $(libsimod.a) mc $s/tempsparta.mod $O $(LIBS) visites: $s/visites $r visites.lnk: $s/visites.lnk $r $s/visites: $s/visites.lnk ml $@ $L $(LIBS) $s/visites.lnk: $s/visites.mod $(libmylib.a) $(libsimod.a) mc $s/visites.mod $O $(LIBS) proiepred: $s/proiepred $r proiepred.lnk: $s/proiepred.lnk $r $s/proiepred: $s/proiepred.lnk ml $@ $L $(LIBS) $s/proiepred.lnk: $s/proiepred.mod $(libmylib.a) $(libsimod.a) mc $s/proiepred.mod $O $(LIBS) lingots: $s/lingots $r lingots.lnk: $s/lingots.lnk $r $s/lingots: $s/lingots.lnk ml $@ $L $(LIBS) $s/lingots.lnk: $s/lingots.mod $(libmylib.a) $(libsimod.a) mc $s/lingots.mod $O $(LIBS) lingots2: $s/lingots2 $r lingots2.lnk: $s/lingots2.lnk $r $s/lingots2: $s/lingots2.lnk ml $@ $L $(LIBS) $s/lingots2.lnk: $s/lingots2.mod $(libmylib.a) $(libsimod.a) mc $s/lingots2.mod $O $(LIBS) ## ROBOTS ## experien: $s/experien $r experien.lnk: $s/experien.lnk $r $s/experien: $s/experien.lnk $s/groupmac.lnk $s/commande.lnk \ $(libmylib.a) $(libsimod.a) ml $@ $L $(LIBS) -a:$s $s/experien.lnk: $s/experien.mod $s/groupmac.sym $s/commande.sym \ $(libmylib.a) $(libsimod.a) mc $s/experien.mod $O $(LIBS) -a:$s systeme: $s/systeme $r systeme.lnk: $s/systeme.lnk $r $s/systeme: $s/systeme.lnk $s/groupmac.lnk $s/commande.lnk \ $(libsimod.a) $(libmylib.a) ml $@ $L $(LIBS) -a:$s $s/systeme.lnk: $s/systeme.mod $s/groupmac.sym $s/commande.sym \ $(libsimod.a) mc $s/systeme.mod $O $(SIMOD) -a:$s commande.lnk: $s/commande.lnk $r $s/commande.lnk: $s/commande.mod $s/commande.sym \ $(libmylib.a) $(libsimod.a) mc $s/commande.mod $O $(LIBS) -a:$s $s/commande.sym: $s/commande.def $s/groupmac.sym mc $s/commande.def $O -a:$s $s/commande.def: $s/commandd.tex $t $s/commandd.tex $@ groupmac.lnk: $s/groupmac.lnk $r $s/groupmac.lnk: $s/groupmac.mod $s/groupmac.sym \ $(libmylib.a) $(libsimod.a) mc $s/groupmac.mod $O $(LIBS) -a:$s $s/groupmac.sym: $s/groupmac.def $(libsimod.a) mc $s/groupmac.def $O $(LIBS) $s/groupmac.def: $s/groupmd.tex $t $s/groupmd.tex $@ # ********** ********** **********FIN********** ********** **********