mirror of
https://github.com/vishapoberon/vipak.git
synced 2026-04-05 20:42: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);
|
||||
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
|
||||
COPY(prefix, builddir);
|
||||
createIfNotThere(builddir);
|
||||
Strings.Append("/", builddir);
|
||||
Strings.Append(vpkSettings.vpkBldDir, builddir);
|
||||
createIfNotThere(builddir);
|
||||
Strings.Append("/", builddir);
|
||||
END mkBldDirPath;
|
||||
ln := 3 + Strings.Length(prefix) + Strings.Length(vpkSettings.vpkBldDir);
|
||||
NEW(builddir, ln);
|
||||
COPY(prefix, builddir^);
|
||||
createIfNotThere(builddir^);
|
||||
Strings.Append("/", builddir^);
|
||||
Strings.Append(vpkSettings.vpkBldDir, builddir^);
|
||||
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;
|
||||
VAR
|
||||
|
|
|
|||
|
|
@ -58,11 +58,10 @@ VAR
|
|||
keys, values: StringList.TStringList;
|
||||
k, v: StringList.pstring;
|
||||
b: BOOLEAN;
|
||||
builddir: ARRAY 512 OF CHAR;
|
||||
cmd, srcPath: StringList.pstring;
|
||||
chdirRes: INTEGER;
|
||||
builddir, cmd, srcPath: StringList.pstring;
|
||||
res: INTEGER;
|
||||
BEGIN
|
||||
vpkEnv.mkBldDirPath(prefix, builddir);
|
||||
builddir := vpkEnv.mkBldDir(prefix);
|
||||
b := FALSE;
|
||||
depTree := resolve(package);
|
||||
i := 0;
|
||||
|
|
@ -76,19 +75,20 @@ BEGIN
|
|||
REPEAT
|
||||
k := keys.GetString(keys, j);
|
||||
v := values.GetString(values, j);
|
||||
Out.Int(j, 0); Out.String(": "); Out.String(k^); Out.Ln;
|
||||
Out.Int(j, 0); Out.String(": "); Out.String(v^); Out.Ln;
|
||||
chdirRes := Platform.Chdir(builddir);
|
||||
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);
|
||||
res := Platform.Chdir(builddir^);
|
||||
IF res # 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;
|
||||
srcPath := vpkEnv.getSrcRelPath(dep.name^, v^);
|
||||
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)
|
||||
UNTIL j = keys.Count - 1;
|
||||
ELSE
|
||||
Out.String("no build info found for the package: "); Out.String(dep.name^); Out.Ln;
|
||||
HALT(67);
|
||||
END;
|
||||
INC(i);
|
||||
UNTIL i = depTree.Count;
|
||||
|
|
|
|||
|
|
@ -18,7 +18,8 @@ CONST
|
|||
rmtTypGemiVal* = "gemini";
|
||||
rmtTreeKey* = "path";
|
||||
bldType* = "Build";
|
||||
defTreeVal* = "https://github.com/vishaps/vipackTree";
|
||||
(*defTreeVal* = "https://github.com/vishaps/vipackTree";*)
|
||||
defTreeVal* = "git@github.com:vishaps/vipackTree";
|
||||
confTreeVal* = defTreeVal;
|
||||
defTypVal* = rmtTypGitVal;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue