Browse Source

* Added the option to use packages from external sources by setting the packagename to <url> and the DownloadURL

git-svn-id: trunk@32838 -
joost 9 years ago
parent
commit
fa67338e64

+ 6 - 4
packages/fppkg/src/pkgcommands.pp

@@ -319,7 +319,7 @@ begin
     begin
       // For local files we need the information inside the zip to get the
       // dependencies
-      if (PackageName=CmdLinePackageName) then
+      if (PackageName=CmdLinePackageName) or (PackageName=URLPackageName) then
         begin
           ExecuteAction(PackageName,'unzip');
           ExecuteAction(PackageName,'installdependencies');
@@ -347,7 +347,7 @@ begin
     begin
       // For local files we need the information inside the zip to get the
       // dependencies
-      if (PackageName=CmdLinePackageName) then
+      if (PackageName=CmdLinePackageName) or (PackageName=URLPackageName) then
         begin
           ExecuteAction(PackageName,'unzip');
           ExecuteAction(PackageName,'installdependencies');
@@ -436,7 +436,8 @@ begin
     begin
       ExecuteAction(PackageName,'build');
       ExecuteAction(PackageName,'fpmakeinstall');
-      if (PackageName=CmdLinePackageName) or (PackageName=CurrentDirPackageName) then
+      if (PackageName=CmdLinePackageName) or (PackageName=CurrentDirPackageName) or
+         (PackageName=URLPackageName) then
         begin
           // Load package name from manifest
           if not FileExists(ManifestFileName) then
@@ -496,7 +497,8 @@ begin
     Error(SErrNoPackageSpecified);
   ManifestPackages:=nil;
   // Load dependencies for local packages
-  if (PackageName=CmdLinePackageName) or (PackageName=CurrentDirPackageName) then
+  if (PackageName=CmdLinePackageName) or (PackageName=CurrentDirPackageName) or
+     (PackageName=URLPackageName) then
     begin
       ExecuteAction(PackageName,'fpmakemanifest');
       ManifestPackages:=TFPPackages.Create(TFPPackage);

+ 1 - 0
packages/fppkg/src/pkgglobals.pp

@@ -34,6 +34,7 @@ Type
 Const
   CmdLinePackageName='<cmdline>';
   CurrentDirPackageName='<currentdir>';
+  URLPackageName='<url>';
 
   // Dependencies for compiling the fpmkunit unit
   FPMKUnitDepDefaultCount=5;

+ 1 - 1
packages/fppkg/src/pkghandler.pp

@@ -137,7 +137,7 @@ begin
       else
         Result:=CurrentDir;
     end
-  else if APackage.Name=CmdLinePackageName then
+  else if (APackage.Name=CmdLinePackageName) or (APackage.Name=URLPackageName) then
     Result:=GlobalOptions.BuildDir+ChangeFileExt(ExtractFileName(APackage.LocalFileName),'')
   else if (APackage.RecompileBroken) and (APackage.SourcePath<>'') then
     Result:=APackage.SourcePath