From 776ccc8b4686556364a153ee78c5efc5a29690a1 Mon Sep 17 00:00:00 2001 From: Norayr Chilingarian Date: Thu, 31 Oct 2013 22:51:42 +0400 Subject: [PATCH] vmake ported --- makefile | 9 +++++-- src/lib/v4/compatIn.Mod | 27 ++++++++++++++++++++ src/tools/{Make/Make.Mod => vmake/vmake.Mod} | 12 ++++++--- 3 files changed, 42 insertions(+), 6 deletions(-) create mode 100644 src/lib/v4/compatIn.Mod rename src/tools/{Make/Make.Mod => vmake/vmake.Mod} (93%) diff --git a/makefile b/makefile index be55fa03..4c1300f8 100644 --- a/makefile +++ b/makefile @@ -9,7 +9,7 @@ RELEASE = 1.0 INCLUDEPATH = -Isrc/lib/system/$(CCOMP)/$(TARCH) -SETPATH = CFLAGS=$(INCLUDEPATH) PATH=.:/bin:/usr/bin MODULES=.:src/lib:src/lib/v4:src/lib/system:src/lib/system/$(CCOMP):src/lib/system/$(CCOMP)/$(TARCH):src/lib/ulm:src/lib/ulm/$(CCOMP):src/lib/ulm/$(TARCH):src/lib/ooc2:src/lib/ooc2/$(CCOMP):src/lib/ooc:src/lib/ooc/$(CCOMP):src/lib/pow:src/lib/misc:src/lib/s3:src/voc:src/voc/$(CCOMP):src/voc/$(CCOMP)/$(TARCH):src/tools/ocat:src/tools/browser:src/tools/vocparam:src/tools/coco:src/test +SETPATH = CFLAGS=$(INCLUDEPATH) PATH=.:/bin:/usr/bin MODULES=.:src/lib:src/lib/v4:src/lib/system:src/lib/system/$(CCOMP):src/lib/system/$(CCOMP)/$(TARCH):src/lib/ulm:src/lib/ulm/$(CCOMP):src/lib/ulm/$(TARCH):src/lib/ooc2:src/lib/ooc2/$(CCOMP):src/lib/ooc:src/lib/ooc/$(CCOMP):src/lib/pow:src/lib/misc:src/lib/s3:src/voc:src/voc/$(CCOMP):src/voc/$(CCOMP)/$(TARCH):src/tools/ocat:src/tools/browser:src/tools/vocparam:src/tools/vmake:src/tools/coco:src/test VOC = voc VOCSTATIC0 = $(SETPATH) ./vocstatic.$(TOS).$(CCOMP).$(TARCH) @@ -87,6 +87,8 @@ stage4: $(VOCSTATIC0) -smPS voc.Mod $(VOCSTATIC0) -smPS BrowserCmd.Mod $(VOCSTATIC0) -smPS OCatCmd.Mod + $(VOCSTATIC0) -sPS compatIn.Mod + $(VOCSTATIC0) -smPS vmake.Mod #this is to build the compiler from C sources. #this is a way to create a bootstrap binary. @@ -107,7 +109,9 @@ stage5: $(CL) OCatCmd.c -o ocat \ SYSTEM.o Args.o Console.o Modules.o Unix.o oocOakStrings.o architecture.o version.o Kernel.o Files.o Reals.o CmdlnTexts.o - + + $(CC) compatIn.c + $(CL) vmake.c -o vmake SYSTEM.o Args.o compatIn.o CmdlnTexts.o Console.o Files.o Reals.o Modules.o Kernel.o Unix.o oocOakStrings.o version.o architecture.o # build all library files @@ -246,6 +250,7 @@ install: cp voc $(PREFIX)/bin/ cp showdef $(PREFIX)/bin/ cp ocat $(PREFIX)/bin/ + cp vmake $(PREFIX)/bin/ cp -a src $(PREFIX)/ test -d $(PREFIX)/lib/voc | mkdir -p $(PREFIX)/lib/voc diff --git a/src/lib/v4/compatIn.Mod b/src/lib/v4/compatIn.Mod new file mode 100644 index 00000000..b44a5034 --- /dev/null +++ b/src/lib/v4/compatIn.Mod @@ -0,0 +1,27 @@ +MODULE compatIn; +(* module created to compile Make utility from Trianus v4 system with less changes in original file ; -- noch *) +IMPORT Args; + +VAR Done* : BOOLEAN; + argnum : INTEGER; +PROCEDURE Open*; +BEGIN +argnum := 0; +Done := FALSE; +END Open; + +PROCEDURE Name*(VAR name : ARRAY OF CHAR); +BEGIN +INC(argnum); + +IF argnum < Args.argc THEN + Args.Get(argnum, name); + Done := TRUE +ELSE + Done := FALSE +END +END Name; + +BEGIN + Open(); +END compatIn. diff --git a/src/tools/Make/Make.Mod b/src/tools/vmake/vmake.Mod similarity index 93% rename from src/tools/Make/Make.Mod rename to src/tools/vmake/vmake.Mod index e6480a09..1bf30e27 100644 --- a/src/tools/Make/Make.Mod +++ b/src/tools/vmake/vmake.Mod @@ -8,9 +8,10 @@ Make.Order {filename} ~ modules are inspected and the modules are sorted accordingly. The sorted list of file names is written to the standard output. -----------------------------------------------------------------------*) +(* taken from trianus system source ; -- noch *) -MODULE Make; (*HM 94-06-22 / *) -IMPORT Texts, In, Out; +MODULE vmake; (*HM 94-06-22 / *) +IMPORT Texts := CmdlnTexts, In := compatIn, Out := Console; TYPE ModuleName = ARRAY 32 OF CHAR; @@ -90,7 +91,7 @@ BEGIN IF prev = NIL THEN list := m.next ELSE prev.next := m.next END ; imp := m.imports; WHILE imp # NIL DO DEC(imp.mod.ref); imp := imp.next END ; Print(list); - Out.String(m.name); Out.String("/s"); Out.Ln + Out.String(m.name); (*Out.String(" -s");*) Out.Ln END END Print; @@ -103,7 +104,10 @@ BEGIN Print(list) END Order; -END Make. +BEGIN +Order + +END vmake. Make.Order POPB.Mod