Changeset 98a5740 in tol


Ignore:
Timestamp:
Jun 16, 2010, 12:55:21 PM (16 years ago)
Author:
Víctor de Buen <vdebuen@…>
Branches:
1941-docker-image-to-test, devel, master
Children:
7ccb257
Parents:
0d9c5b3
Message:

Refs #916
GetNameVersion renombrado como GetCurrentNameVersion
AddPackageInfo.Version y AddPackageInfo renomrados como Build.PackageInfo.Version y Build.PackageInfo
Se añaden los miembros

Text _.sourceRoot; Root directory of package's TOL code
Set _.packages;
Set of names of packages

Se añaden los métodos Build.All y Rebuild.One

git-svn-id: ​https://www.tol-project.org/svn/tolp/trunk@2257 be4846ae-f051-483a-831f-b64e7d08527f

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tol/stdlib/general/TolPackage/builder.tol

    r0d9c5b3 r98a5740  
    1414Text _.type;         //Private, Public
    1515Text _.description;  //Purpose of repository
     16Text _.sourceRoot;   //Root directory of package's TOL code
     17Set _.packages;      //Set of names of packages
    1618Text _.root;         //Local server-side installing directory
    1719
    1820//////////////////////////////////////////////////////////////////////////////
    1921Static @Builder Create(
    20   Text url,          //A unique address with remote or local protocol
    21   Text name,         //A unique name
    22   Text type,         //Private, Public
    23   Text description)  //Purpose of repository
     22  Text url,         
     23  Text name,         
     24  Text type,         
     25  Text description, 
     26  Text sourceRoot,
     27  Set packages)
    2428//////////////////////////////////////////////////////////////////////////////
    2529{
     30  Text root = TolPackage::Server::_.localRoot+name+"/";
     31  Real OSDirMake(root+"register/");
    2632  @Builder new = [[
    2733    Text _.url = url;
    … …  
    2935    Text _.type = type;
    3036    Text _.description = description;
    31     Text _.root = TolPackage::Server::_.localRoot+name+"/" ]];
    32   Real new::Initialize(void)
     37    Text _.sourceRoot = sourceRoot;
     38    Set _.packages = packages;
     39    Text _.root = root
     40  ]];
     41  Real new::Build(void);
     42  new
    3343};
    3444
    … …  
    5565  "//PURPOSE : internal use of Class TolPackage::Client::@Repository             \n"
    5666  "//                                                                            \n"
    57   "//       PLEASE, DON'T TOUCH THIS FILE NOR OTHER ONE IN THIS DIRECTORY!       \n"
     67  "//       PLEASE, DONŽT TOUCH THIS FILE NOR OTHER ONE IN THIS DIRECTORY!       \n"
    5868  "//                                                                            \n"
    5969  "//////////////////////////////////////////////////////////////////////////////\n"
    … …  
    8090
    8191//////////////////////////////////////////////////////////////////////////////
    82 Real AddPackageInfo.Version(NameBlock pkg, Real specificVersion)
     92Text Build.PackageInfo.Version(Text name, Real specificVersion)
    8393//////////////////////////////////////////////////////////////////////////////
    8494{
    85   Text name = Name(pkg);
    86   Text name.version = GetNameVersion(pkg);
     95  Set aux = IncludeText("NameBlock "+packageName+";");
     96  NameBlock pkg = aux[1];
     97  Text name.version = GetCurrentNameVersion(name,specificVersion);
    8798  Set dependencies = GetDeepDependencies(name);
    8899  Text index.csv =
    … …  
    98109  <<Now + ";"
    99110  <<dependencies+ "\n";
    100   Text AppendFile(_.root+"index.csv",  index.csv);
    101   //Text AppendFile(root+"index.wiki", index.wiki);
    102   //Text AppendFile(root+"index.html", index.html);
     111  Text WriteFile(_.root+"register/"+name,  index.csv);
     112  Real Ois.Store(aux,_.root+name.version+".oza");
     113  index.csv
     114};
     115
     116//////////////////////////////////////////////////////////////////////////////
     117Text Build.PackageInfo(Text name)
     118//////////////////////////////////////////////////////////////////////////////
     119{
     120  Text Build.PackageInfo.Version(name,True);
     121  Text Build.PackageInfo.Version(name,False);
    103122  True
    104123};
    105124
    106125//////////////////////////////////////////////////////////////////////////////
    107 Real AddPackage(NameBlock pkg)
     126Real Build.All(Real void)
    108127//////////////////////////////////////////////////////////////////////////////
    109128{
    110   Real AddPackageInfo.Version(pkg,True);
    111   Real AddPackageInfo.Version(pkg,False)
     129  Real new::Initialize(void);
     130  Set IncludeText(SetConcat(EvalSet(_.packages, Text(Text pkgName)
     131  {
     132    "Set Include(\""+_.sourceRoot+pkgName+"/"+pkgName+".tol\");"
     133  })));
     134  Set EvalSet(_.packages, Real(Text pkgName)
     135  {
     136    Text AppendFile(_.root+"index.csv",  Build.PackageInfo(pkgName));
     137  //Text AppendFile(_.root+"index.wiki", index.wiki);
     138  //Text AppendFile(_.root+"index.html", index.html);
     139    True
     140  });
     141  True
     142};
     143
     144//////////////////////////////////////////////////////////////////////////////
     145Real Rebuild.One(Text pkgName)
     146//////////////////////////////////////////////////////////////////////////////
     147{
     148  Real new::Initialize(void);
     149  Set IncludeText(
     150    "Set Include(\""+_.sourceRoot+pkgName+"/"+pkgName+".tol\");"
     151  );
     152  Text Build.PackageInfo(pkgName);
     153  Set pkgLst = Sort(GetDir(_.root+"register/")[2], Real(Text a, Text b)
     154  {
     155    Compare(b,a)
     156  });
     157  Set EvalSet(pkgLst, Real(Text pkgName)
     158  {
     159    Text AppendFile(_.root+"index.csv",ReadFile(_.root+"register/"+pkgName));
     160    True
     161  });
     162  True
    112163}
    113164
Note: See TracChangeset for help on using the changeset viewer.