fixed default build dir creation in the default prefix.

This commit is contained in:
Norayr Chilingarian 2022-01-22 04:09:25 +04:00
parent 96ea8bddc5
commit a52c3efa8e
3 changed files with 48 additions and 18 deletions

View file

@ -52,6 +52,41 @@ BEGIN
Strings.Append(vpkSettings.vpkConfDir, path); Strings.Append(vpkSettings.vpkConfDir, path);
END mkConfDirPath; END mkConfDirPath;
PROCEDURE mkBldDir*(VAR prefix: ARRAY OF CHAR): StringList.pstring;
VAR
builddir: StringList.pstring;
ln : INTEGER;
BEGIN
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 mkdefBldDir*(): StringList.pstring;
VAR
builddir: StringList.pstring;
ln: INTEGER;
home: ARRAY 128 OF CHAR;
BEGIN
getHome(home);
ln := 2 + Strings.Length(home) + Strings.Length(vpkSettings.vpkPkgDir) + Strings.Length(vpkSettings.vpkBldDir);
NEW(builddir, ln);
COPY(home, builddir^);
Strings.Append("/", builddir^);
Strings.Append(vpkSettings.vpkPkgDir, builddir^);
createIfNotThere(builddir^);
Strings.Append("/", builddir^);
Strings.Append(vpkSettings.vpkBldDir, builddir^);
createIfNotThere(builddir^);
RETURN builddir
END mkdefBldDir;
PROCEDURE mkdefPkgDirPath*(VAR name, path: ARRAY OF CHAR); PROCEDURE mkdefPkgDirPath*(VAR name, path: ARRAY OF CHAR);
VAR VAR
home: ARRAY 128 OF CHAR; home: ARRAY 128 OF CHAR;
@ -60,11 +95,11 @@ BEGIN
COPY(home, path); COPY(home, path);
Strings.Append("/", path); Strings.Append("/", path);
Strings.Append(vpkSettings.vpkPkgDir, path); Strings.Append(vpkSettings.vpkPkgDir, path);
Strings.Append("/", path);
createIfNotThere(path); createIfNotThere(path);
Strings.Append("/", path);
Strings.Append(vpkSettings.vpkDepDir, path); Strings.Append(vpkSettings.vpkDepDir, path);
Strings.Append("/", path);
createIfNotThere(path); createIfNotThere(path);
Strings.Append("/", path);
Strings.Append(name, path); Strings.Append(name, path);
createIfNotThere(path); createIfNotThere(path);
Strings.Append("/", path); Strings.Append("/", path);
@ -82,21 +117,6 @@ BEGIN
Strings.Append("/", path); Strings.Append("/", path);
END mkPkgDirPath; END mkPkgDirPath;
PROCEDURE mkBldDir*(VAR prefix: ARRAY OF CHAR): StringList.pstring;
VAR
builddir: StringList.pstring;
ln : INTEGER;
BEGIN
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; PROCEDURE mkCmd*(VAR p0, p1: ARRAY OF CHAR): StringList.pstring;
VAR VAR

View file

@ -195,7 +195,13 @@ BEGIN
opts.valOfOpt("-p", foptions, package); opts.valOfOpt("-p", foptions, package);
opts.valOfOpt("-P", foptions, prefix); opts.valOfOpt("-P", foptions, prefix);
IF prefix = "" THEN
Out.String(" will use the default prefix location"); Out.Ln;
END;
opts.valOfOpt("-t", foptions, pkgTree); opts.valOfOpt("-t", foptions, pkgTree);
IF pkgTree = "" THEN
Out.String(" will use the default package tree location"); Out.Ln;
END;
IF pkgTree # "" THEN vpkConf.setTreeDir(pkgTree) END; IF pkgTree # "" THEN vpkConf.setTreeDir(pkgTree) END;

View file

@ -71,7 +71,11 @@ VAR
builddir, cmd, srcPath: StringList.pstring; builddir, cmd, srcPath: StringList.pstring;
res: INTEGER; res: INTEGER;
BEGIN BEGIN
builddir := vpkEnv.mkBldDir(prefix); IF prefix # "" THEN
builddir := vpkEnv.mkBldDir(prefix)
ELSE
builddir := vpkEnv.mkdefBldDir();
END;
depTree := resolve(package); depTree := resolve(package);
IF a THEN ask END; IF a THEN ask END;
i := 0; i := 0;