vmake ported

This commit is contained in:
Norayr Chilingarian 2013-10-31 22:51:42 +04:00
parent 2aeddb9975
commit 776ccc8b46
3 changed files with 42 additions and 6 deletions

View file

@ -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

27
src/lib/v4/compatIn.Mod Normal file
View file

@ -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.

View file

@ -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