| author | David Anderson <dvander@alliedmods.net> |
| Thu Jun 07 18:50:52 2007 +0000 (2007-06-07) | |
| changeset 916 | 39ae94ad60ce |
| parent 852 | 9a7a93363979 |
| child 1329 | 8a8789881ec3 |
| permissions | -rw-r--r-- |
| dvander@388 | 1 |
using System; |
| dvander@388 | 2 |
|
| dvander@388 | 3 |
namespace builder |
| dvander@388 | 4 |
{ |
| dvander@388 | 5 |
public class Library |
| dvander@388 | 6 |
{ |
| dvander@388 | 7 |
public Library() |
| dvander@388 | 8 |
{ |
| dvander@388 | 9 |
PlatformExt = false; |
| dvander@388 | 10 |
IsExecutable = false; |
| dvander@388 | 11 |
ReleaseBuild = "Release"; |
| dvander@388 | 12 |
} |
| dvander@388 | 13 |
public string Name; /* Name of binary */ |
| dvander@388 | 14 |
public string LocalPath; /* Local path to library build scripts */ |
| dvander@388 | 15 |
public string ReleaseBuild; /* Release build name */ |
| dvander@388 | 16 |
public string Destination; /* Final relative path */ |
| dvander@388 | 17 |
public bool PlatformExt; /* Extra platform extension */ |
| dvander@388 | 18 |
public string ProjectFile; /* Project file, NULL for standard */ |
| dvander@388 | 19 |
public bool IsExecutable; /* If this is an EXE instead of a DLL */ |
| dvander@388 | 20 |
//string DebugBuild; /* Debug build name */ |
| dvander@388 | 21 |
}; |
| dvander@388 | 22 |
|
| dvander@852 | 23 |
public class Plugin |
| dvander@852 | 24 |
{ |
| dvander@852 | 25 |
public Plugin(string file) |
| dvander@852 | 26 |
{ |
| dvander@852 | 27 |
Source = file; |
| dvander@852 | 28 |
} |
| dvander@852 | 29 |
public Plugin (string file, string folder) |
| dvander@852 | 30 |
{ |
| dvander@852 | 31 |
Source = file; |
| dvander@852 | 32 |
Folder = folder; |
| dvander@852 | 33 |
} |
| dvander@852 | 34 |
public string Folder; /* Source folder relative to scripting (null for default) */ |
| dvander@852 | 35 |
public string Source; /* Source file name */ |
| dvander@852 | 36 |
}; |
| dvander@852 | 37 |
|
| dvander@388 | 38 |
public abstract class Package |
| dvander@388 | 39 |
{ |
| dvander@388 | 40 |
/** |
| dvander@403 | 41 |
* Must return the root compression point. |
| dvander@403 | 42 |
*/ |
| dvander@403 | 43 |
public abstract void GetCompressBases(ref string path, ref string folder); |
| dvander@403 | 44 |
|
| dvander@403 | 45 |
/** |
| dvander@403 | 46 |
* Must return the base package output folder. |
| dvander@388 | 47 |
*/ |
| dvander@388 | 48 |
public abstract string GetBaseFolder(); |
| dvander@388 | 49 |
|
| dvander@388 | 50 |
/** |
| dvander@388 | 51 |
* Must return the list of folders to create. |
| dvander@388 | 52 |
*/ |
| dvander@388 | 53 |
public abstract string [] GetFolders(); |
| dvander@388 | 54 |
|
| dvander@388 | 55 |
/** |
| dvander@388 | 56 |
* Called when file to file copies must be performed |
| dvander@388 | 57 |
*/ |
| dvander@403 | 58 |
public abstract void OnCopyFiles(ABuilder builder); |
| dvander@388 | 59 |
|
| dvander@388 | 60 |
/** |
| dvander@388 | 61 |
* Called when dir to dir copies must be performed |
| dvander@388 | 62 |
*/ |
| dvander@388 | 63 |
public abstract void OnCopyFolders(ABuilder builder); |
| dvander@388 | 64 |
|
| dvander@388 | 65 |
/** |
| dvander@388 | 66 |
* Called to build libraries |
| dvander@388 | 67 |
*/ |
| dvander@388 | 68 |
public abstract Library [] GetLibraries(); |
| dvander@403 | 69 |
|
| dvander@403 | 70 |
/** |
| dvander@403 | 71 |
* Called to get package name |
| dvander@403 | 72 |
*/ |
| dvander@403 | 73 |
public abstract string GetPackageName(); |
| dvander@852 | 74 |
|
| dvander@852 | 75 |
/** |
| dvander@852 | 76 |
* Called to get a plugin list |
| dvander@852 | 77 |
*/ |
| dvander@852 | 78 |
public abstract Plugin [] GetPlugins(); |
| dvander@388 | 79 |
} |
| dvander@388 | 80 |
} |