diff --git a/GNUmakefile b/GNUmakefile index a780713..cb7b417 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -1,52 +1,58 @@ VOC = /opt/voc/bin/voc mkfile_path := $(abspath $(lastword $(MAKEFILE_LIST))) mkfile_dir_path := $(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) -build_dir_path := $(mkfile_dir_path)/build +ifndef BUILD +BUILD="build" +endif +build_dir_path := $(mkfile_dir_path)/$(BUILD) current_dir := $(notdir $(patsubst %/,%,$(dir $(mkfile_path)))) BLD := $(mkfile_dir_path)/build -DPS := $(mkfile_dir_path)/dps +DPD = deps +ifndef DPS +DPS := $(mkfile_dir_path)/$(DPD) +endif +all: get_deps build_deps buildThis -all: get_deps build_deps vipack -#Internet lists opts skprJson skprLogger time get_deps: - mkdir -p $(DPS) - if [ -d $(DPS)/lists ]; then cd $(DPS)/lists; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/lists; cd -; fi - if [ -d $(DPS)/Internet ]; then cd $(DPS)/Internet; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/Internet; cd -; fi - if [ -d $(DPS)/time ]; then cd $(DPS)/time; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/time; cd -; fi - if [ -d $(DPS)/opts ]; then cd $(DPS)/opts; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/opts; cd -; fi - if [ -d $(DPS)/skprLogger ]; then cd $(DPS)/skprLogger; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/skprLogger; cd -; fi - if [ -d $(DPS)/skprJson ]; then cd $(DPS)/skprJson; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/skprJson; cd -; fi + mkdir -p $(DPS) + if [ -d $(DPS)/lists ]; then cd $(DPS)/lists; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/lists; cd -; fi + if [ -d $(DPS)/Internet ]; then cd $(DPS)/Internet; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/Internet; cd -; fi + if [ -d $(DPS)/opts ]; then cd $(DPS)/opts; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/opts; cd -; fi + if [ -d $(DPS)/skprLogger ]; then cd $(DPS)/skprLogger; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/skprLogger; cd -; fi + if [ -d $(DPS)/skprJson ]; then cd $(DPS)/skprJson; git pull; cd -; else cd $(DPS); git clone https://github.com/norayr/skprJson; cd -; fi build_deps: - mkdir -p $(BLD) - cd $(CURDIR)/$(BUILD) - make -f $(DPS)/lists/GNUmakefile BUILD=$(BLD) - make -f $(DPS)/Internet/GNUmakefile BUILD=$(BLD) - make -f $(DPS)/time/GNUmakefile BUILD=$(BLD) - make -f $(DPS)/opts/GNUmakefile BUILD=$(BLD) - make -f $(DPS)/skprLogger/GNUmakefile BUILD=$(BLD) - make -f $(DPS)/skprJson/GNUmakefile BUILD=$(BLD) + mkdir -p $(BUILD) + cd $(BUILD) + make -f $(DPS)/lists/GNUmakefile BUILD=$(BUILD) + make -f $(DPS)/Internet/GNUmakefile BUILD=$(BUILD) + make -f $(DPS)/opts/GNUmakefile BUILD=$(BUILD) + make -f $(DPS)/skprLogger/GNUmakefile BUILD=$(BUILD) + make -f $(DPS)/skprJson/GNUmakefile BUILD=$(BUILD) -vipack: - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkSettings.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/unix/vpkLinuxFiles.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/unix/vpkTime.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkLogger.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkHttp.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/unix/vpkEnv.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/unix/vpkGit.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkCharacterStack.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkJsonParser.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkConf.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkStorage.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkSyncer.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkdepTree.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkDot.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkResolver.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkJsonDepRetriever.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vpkInstaller.Mod - cd $(BLD) && $(VOC) $(mkfile_dir_path)/src/vipack.Mod -m +buildThis: + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vkpSettings.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/unix/vpkLinuxFiles.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/unix/vpkTime.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkLogger.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkHttp.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/unix/vpkEnv.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/unix/vpkGit.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkCharacterStack.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkJsonParser.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkConf.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkStorage.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkSyncer.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkdepTree.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkDot.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkResolver.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkJsonDepRetriever.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vpkInstaller.Mod + cd $(BUILD) && $(VOC) -s $(mkfile_dir_path)/src/vipack.Mod +tests: + #cd $(BUILD) && $(VOC) $(mkfile_dir_path)/test/testList.Mod -m + #build/testList clean: - if [ -d "$(BLD)" ]; then rm -rf $(BLD); fi + if [ -d "$(BUILD)" ]; then rm -rf $(BLD); fi diff --git a/Makefile b/Makefile index 81f2ea4..b7c0a88 100644 --- a/Makefile +++ b/Makefile @@ -3,12 +3,13 @@ CFLAGS = # The following order is important, do not alphabetise -DEPS = norayr/lists \ - norayr/Internet \ - norayr/opts \ - norayr/time \ - norayr/skprLogger \ - norayr/skprJson +DEPS = norayr/strutils \ + norayr/lists \ + norayr/Internet \ + norayr/opts \ + norayr/time \ + norayr/skprLogger \ + norayr/skprJson GITHUB = https://github.com/ @@ -33,7 +34,7 @@ all: ${DEPS} ${ROOTDIR}/../src/unix/vpkTime.Mod \ ${ROOTDIR}/../src/vpkLogger.Mod \ ${ROOTDIR}/../src/vpkHttp.Mod \ - ${ROOTDIR}/../src/unix/vpkEnv.Mod \ + ${ROOTDIR}/../src/unix/vpkEnv.Mod \ ${ROOTDIR}/../src/unix/vpkGit.Mod \ ${ROOTDIR}/../src/vpkCharacterStack.Mod \ ${ROOTDIR}/../src/vpkJsonParser.Mod \ diff --git a/src/unix/vpkEnv.Mod b/src/unix/vpkEnv.Mod index 26cb05a..afb871a 100644 --- a/src/unix/vpkEnv.Mod +++ b/src/unix/vpkEnv.Mod @@ -1,5 +1,5 @@ MODULE vpkEnv; -IMPORT Files, Platform, Strings, Out, vpkSettings, vpkFiles, lDefs; +IMPORT Files, Platform, Strings, Out, vpkSettings, vpkFiles, strTypes; VAR conf, confDir : ARRAY 256 OF CHAR; @@ -28,9 +28,9 @@ BEGIN END createIfNotThere; -PROCEDURE getSrcRelPath*(VAR depName, path0: ARRAY OF CHAR): lDefs.pstring; +PROCEDURE getSrcRelPath*(VAR depName, path0: ARRAY OF CHAR): strTypes.pstring; VAR - p: lDefs.pstring; + p: strTypes.pstring; len: INTEGER; BEGIN len := 9 + Strings.Length(depName) + Strings.Length(path0); @@ -52,9 +52,9 @@ BEGIN Strings.Append(vpkSettings.vpkConfDir, path); END mkConfDirPath; -PROCEDURE mkBldDir*(VAR prefix: ARRAY OF CHAR): lDefs.pstring; +PROCEDURE mkBldDir*(VAR prefix: ARRAY OF CHAR): strTypes.pstring; VAR - builddir: lDefs.pstring; + builddir: strTypes.pstring; ln : INTEGER; BEGIN ln := 3 + Strings.Length(prefix) + Strings.Length(vpkSettings.vpkBldDir); @@ -68,9 +68,9 @@ BEGIN RETURN builddir END mkBldDir; -PROCEDURE mkdefBldDir*(): lDefs.pstring; +PROCEDURE mkdefBldDir*(): strTypes.pstring; VAR - builddir: lDefs.pstring; + builddir: strTypes.pstring; ln: INTEGER; home: ARRAY 128 OF CHAR; BEGIN @@ -118,9 +118,9 @@ BEGIN END mkPkgDirPath; -PROCEDURE mkCmd*(VAR p0, p1: ARRAY OF CHAR): lDefs.pstring; +PROCEDURE mkCmd*(VAR p0, p1: ARRAY OF CHAR): strTypes.pstring; VAR - cmd: lDefs.pstring; + cmd: strTypes.pstring; ln: INTEGER; BEGIN ln := 2 + Strings.Length(p0) + Strings.Length(p1); diff --git a/src/unix/vpkGit.Mod b/src/unix/vpkGit.Mod index ffca554..7fec876 100644 --- a/src/unix/vpkGit.Mod +++ b/src/unix/vpkGit.Mod @@ -1,5 +1,5 @@ MODULE vpkGit; -IMPORT Out, Strings, Platform, vpkEnv, strutils; +IMPORT Out, Strings, Platform, vpkEnv; PROCEDURE pull*(VAR url : ARRAY OF CHAR; VAR dst : ARRAY OF CHAR; VAR branch: ARRAY OF CHAR); VAR i : INTEGER; diff --git a/src/vpkCharacterStack.Mod b/src/vpkCharacterStack.Mod index 86219fd..42f5710 100644 --- a/src/vpkCharacterStack.Mod +++ b/src/vpkCharacterStack.Mod @@ -1,19 +1,19 @@ MODULE vpkCharacterStack; -IMPORT lDefs, List, Out; +IMPORT strTypes, List, Out; TYPE - TObject* = lDefs.TObject; + TObject* = List.TObject; Node* = POINTER TO NodeDesc; NodeDesc* = List.NodeDesc; TChar* = POINTER TO TCharDesc; - TCharDesc = RECORD (lDefs.TObjectDesc) + TCharDesc = RECORD (List.TObjectDesc) char* : CHAR END; - string = lDefs.string; + string = strTypes.string; CharacterStackType* = POINTER TO CharacterStackTypeDesc; diff --git a/src/vpkJsonDepRetriever.Mod b/src/vpkJsonDepRetriever.Mod index 2b8fecc..fa543b0 100644 --- a/src/vpkJsonDepRetriever.Mod +++ b/src/vpkJsonDepRetriever.Mod @@ -1,9 +1,9 @@ MODULE vpkJsonDepRetriever; -IMPORT Out, StringList, strutils, vpkJsonParser, vpkStorage, vpkSettings, vpkdepTree; +IMPORT Out, StringList, strUtils, vpkJsonParser, vpkStorage, vpkSettings, vpkdepTree; PROCEDURE getBuildInfo*(VAR d: vpkdepTree.Tdep; VAR k, v: StringList.TStringList): BOOLEAN; VAR - p: strutils.pstring; + p: strUtils.pstring; jsonRecord, build : vpkJsonParser.JsonTypePointer; keys, values: StringList.TStringList; b: BOOLEAN; @@ -31,14 +31,14 @@ END getBuildInfo; PROCEDURE getURIandType*(VAR d: vpkdepTree.Tdep; VAR URI: ARRAY OF CHAR; VAR type: ARRAY OF CHAR; VAR branch: ARRAY OF CHAR); VAR jsonRecord, remote: vpkJsonParser.JsonTypePointer; - p: strutils.pstring; + p: strUtils.pstring; k, v: StringList.pstring; keys, values: StringList.TStringList; i: LONGINT; BEGIN - strutils.zeroStr(URI); - strutils.zeroStr(type); - strutils.zeroStr(branch); + strUtils.zeroStr(URI); + strUtils.zeroStr(type); + strUtils.zeroStr(branch); p := NIL; vpkStorage.json2pstring(d.name^, p); IF p # NIL THEN @@ -72,7 +72,7 @@ END getURIandType; PROCEDURE getDeps*(VAR d: vpkdepTree.Tdep; VAR depstrlist: StringList.TStringList): LONGINT; VAR jsonRecord, dependencies: vpkJsonParser.JsonTypePointer; - p: strutils.pstring; + p: strUtils.pstring; b: BOOLEAN; pkgName : ARRAY 32 OF CHAR; BEGIN diff --git a/src/vpkJsonParser.Mod b/src/vpkJsonParser.Mod index 517c480..ac18898 100644 --- a/src/vpkJsonParser.Mod +++ b/src/vpkJsonParser.Mod @@ -1,5 +1,5 @@ MODULE vpkJsonParser; -IMPORT vpkLogger, vpkCharacterStack, Strings, strutils, vpkSettings, StringList; +IMPORT vpkLogger, vpkCharacterStack, Strings, strUtils, vpkSettings, StringList; CONST ArrayMaxNumber = 30; ArrayMaxNumberChar = 2000; @@ -68,7 +68,7 @@ PROCEDURE GetTerminal *(self: JsonTypePointer; key: ARRAY OF CHAR; VAR returnVal VAR i: LONGINT; noneTerminal: JsonTypePointer; - strings: strutils.pstrings; + strings: strUtils.pstrings; parent, children: ARRAY ArrayMaxNumber OF CHAR; BEGIN @@ -76,7 +76,7 @@ BEGIN IF Strings.Match(key, self.TerminalKeys[i]) THEN COPY(self.TerminalValues[i], returnValue); RETURN TRUE END; END; - strings := strutils.tokenize(key, '.'); + strings := strUtils.tokenize(key, '.'); IF LEN(strings^) < 1 THEN RETURN FALSE END; diff --git a/src/vpkStorage.Mod b/src/vpkStorage.Mod index 29c0006..f7abb87 100644 --- a/src/vpkStorage.Mod +++ b/src/vpkStorage.Mod @@ -1,13 +1,13 @@ MODULE vpkStorage; IMPORT Files, Out, Strings, -strutils, vpkLogger, vpkEnv, vpkFiles; +strUtils, vpkLogger, vpkEnv, vpkFiles; PROCEDURE WriteString(VAR r : Files.Rider; str : ARRAY OF CHAR); BEGIN Files.WriteBytes(r, str, Strings.Length(str)); END WriteString; -PROCEDURE fileToString*(VAR fileName: ARRAY OF CHAR; VAR returnString: strutils.pstring); +PROCEDURE fileToString*(VAR fileName: ARRAY OF CHAR; VAR returnString: strUtils.pstring); VAR f: Files.File; r: Files.Rider; @@ -59,7 +59,7 @@ BEGIN RETURN TRUE; END stringToFile; -PROCEDURE json2pstring*(VAR json: ARRAY OF CHAR; VAR pstr: strutils.pstring); +PROCEDURE json2pstring*(VAR json: ARRAY OF CHAR; VAR pstr: strUtils.pstring); VAR fi: vpkFiles.fileInfo; BEGIN diff --git a/src/vpkdepTree.Mod b/src/vpkdepTree.Mod index 4ca4467..c67e79a 100644 --- a/src/vpkdepTree.Mod +++ b/src/vpkdepTree.Mod @@ -1,9 +1,9 @@ MODULE vpkdepTree; -IMPORT Out, Strings, strutils, StringList; +IMPORT Out, Strings, strUtils, StringList; TYPE - pstring = strutils.pstring; - pstrings = strutils.pstrings; + pstring = strUtils.pstring; + pstrings = strUtils.pstrings; Tdep* = POINTER TO TdepDesc; Tdeps* = POINTER TO ARRAY OF Tdep;