mirror of
https://github.com/vishapoberon/vipak.git
synced 2026-04-06 04:52:26 +00:00
vipack builds!
This commit is contained in:
parent
ee31eb68fb
commit
6f532c7390
3 changed files with 39 additions and 19 deletions
|
|
@ -81,15 +81,34 @@ BEGIN
|
||||||
Strings.Append("/", path);
|
Strings.Append("/", path);
|
||||||
END mkPkgDirPath;
|
END mkPkgDirPath;
|
||||||
|
|
||||||
PROCEDURE mkBldDirPath*(VAR prefix, builddir: ARRAY OF CHAR);
|
PROCEDURE mkBldDir*(VAR prefix: ARRAY OF CHAR): StringList.pstring;
|
||||||
|
VAR
|
||||||
|
builddir: StringList.pstring;
|
||||||
|
ln : INTEGER;
|
||||||
BEGIN
|
BEGIN
|
||||||
COPY(prefix, builddir);
|
ln := 3 + Strings.Length(prefix) + Strings.Length(vpkSettings.vpkBldDir);
|
||||||
createIfNotThere(builddir);
|
NEW(builddir, ln);
|
||||||
Strings.Append("/", builddir);
|
COPY(prefix, builddir^);
|
||||||
Strings.Append(vpkSettings.vpkBldDir, builddir);
|
createIfNotThere(builddir^);
|
||||||
createIfNotThere(builddir);
|
Strings.Append("/", builddir^);
|
||||||
Strings.Append("/", builddir);
|
Strings.Append(vpkSettings.vpkBldDir, builddir^);
|
||||||
END mkBldDirPath;
|
createIfNotThere(builddir^);
|
||||||
|
Strings.Append("/", builddir^);
|
||||||
|
RETURN builddir
|
||||||
|
END mkBldDir;
|
||||||
|
|
||||||
|
PROCEDURE mkCmd*(VAR p0, p1: ARRAY OF CHAR): StringList.pstring;
|
||||||
|
VAR
|
||||||
|
cmd: StringList.pstring;
|
||||||
|
ln: INTEGER;
|
||||||
|
BEGIN
|
||||||
|
ln := 2 + Strings.Length(p0) + Strings.Length(p1);
|
||||||
|
NEW(cmd, ln);
|
||||||
|
COPY(p0, cmd^);
|
||||||
|
Strings.Append(" ", cmd^);
|
||||||
|
Strings.Append(p1, cmd^);
|
||||||
|
RETURN cmd
|
||||||
|
END mkCmd;
|
||||||
|
|
||||||
PROCEDURE setConfFileName;
|
PROCEDURE setConfFileName;
|
||||||
VAR
|
VAR
|
||||||
|
|
|
||||||
|
|
@ -58,11 +58,10 @@ VAR
|
||||||
keys, values: StringList.TStringList;
|
keys, values: StringList.TStringList;
|
||||||
k, v: StringList.pstring;
|
k, v: StringList.pstring;
|
||||||
b: BOOLEAN;
|
b: BOOLEAN;
|
||||||
builddir: ARRAY 512 OF CHAR;
|
builddir, cmd, srcPath: StringList.pstring;
|
||||||
cmd, srcPath: StringList.pstring;
|
res: INTEGER;
|
||||||
chdirRes: INTEGER;
|
|
||||||
BEGIN
|
BEGIN
|
||||||
vpkEnv.mkBldDirPath(prefix, builddir);
|
builddir := vpkEnv.mkBldDir(prefix);
|
||||||
b := FALSE;
|
b := FALSE;
|
||||||
depTree := resolve(package);
|
depTree := resolve(package);
|
||||||
i := 0;
|
i := 0;
|
||||||
|
|
@ -76,19 +75,20 @@ BEGIN
|
||||||
REPEAT
|
REPEAT
|
||||||
k := keys.GetString(keys, j);
|
k := keys.GetString(keys, j);
|
||||||
v := values.GetString(values, j);
|
v := values.GetString(values, j);
|
||||||
Out.Int(j, 0); Out.String(": "); Out.String(k^); Out.Ln;
|
res := Platform.Chdir(builddir^);
|
||||||
Out.Int(j, 0); Out.String(": "); Out.String(v^); Out.Ln;
|
IF res # 0 THEN
|
||||||
chdirRes := Platform.Chdir(builddir);
|
Out.String("failed to change directory to "); Out.String(builddir^); Out.Ln; Out.String("this should never happen."); Out.Ln; HALT(66);
|
||||||
IF chdirRes # 0 THEN
|
|
||||||
Out.String("failed to change directory to "); Out.String(builddir); Out.Ln; Out.String("this should never happen."); Out.Ln; HALT(66);
|
|
||||||
END;
|
END;
|
||||||
srcPath := vpkEnv.getSrcRelPath(dep.name^, v^);
|
srcPath := vpkEnv.getSrcRelPath(dep.name^, v^);
|
||||||
Out.String(srcPath^); Out.Ln;
|
Out.String(srcPath^); Out.Ln;
|
||||||
|
cmd := vpkEnv.mkCmd(k^, srcPath^);
|
||||||
|
Out.String(cmd^);
|
||||||
|
res := Platform.System(cmd^);
|
||||||
|
IF res # 0 THEN Out.String("failed to run build command"); Out.Ln END;
|
||||||
INC(j)
|
INC(j)
|
||||||
UNTIL j = keys.Count - 1;
|
UNTIL j = keys.Count - 1;
|
||||||
ELSE
|
ELSE
|
||||||
Out.String("no build info found for the package: "); Out.String(dep.name^); Out.Ln;
|
Out.String("no build info found for the package: "); Out.String(dep.name^); Out.Ln;
|
||||||
HALT(67);
|
|
||||||
END;
|
END;
|
||||||
INC(i);
|
INC(i);
|
||||||
UNTIL i = depTree.Count;
|
UNTIL i = depTree.Count;
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,8 @@ CONST
|
||||||
rmtTypGemiVal* = "gemini";
|
rmtTypGemiVal* = "gemini";
|
||||||
rmtTreeKey* = "path";
|
rmtTreeKey* = "path";
|
||||||
bldType* = "Build";
|
bldType* = "Build";
|
||||||
defTreeVal* = "https://github.com/vishaps/vipackTree";
|
(*defTreeVal* = "https://github.com/vishaps/vipackTree";*)
|
||||||
|
defTreeVal* = "git@github.com:vishaps/vipackTree";
|
||||||
confTreeVal* = defTreeVal;
|
confTreeVal* = defTreeVal;
|
||||||
defTypVal* = rmtTypGitVal;
|
defTypVal* = rmtTypGitVal;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue