using System; namespace builder { public class Library { public Library() { PlatformExt = false; ProjectFile = null; IsExecutable = false; ReleaseBuild = "Release"; } public string Name; /* Name of binary */ public string LocalPath; /* Local path to library build scripts */ public string ReleaseBuild; /* Release build name */ public string Destination; /* Final relative path */ public bool PlatformExt; /* Extra platform extension */ public string ProjectFile; /* Project file, NULL for standard */ public bool IsExecutable; /* If this is an EXE instead of a DLL */ //string DebugBuild; /* Debug build name */ }; public abstract class Package { /** * Must return the root compression point. */ public abstract void GetCompressBases(ref string path, ref string folder); /** * Must return the base package output folder. */ public abstract string GetBaseFolder(); /** * Must return the list of folders to create. */ public abstract string [] GetFolders(); /** * Called when file to file copies must be performed */ public abstract void OnCopyFiles(ABuilder builder); /** * Called when dir to dir copies must be performed */ public abstract void OnCopyFolders(ABuilder builder); /** * Called to build libraries */ public abstract Library [] GetLibraries(); /** * Called to get package name */ public abstract string GetPackageName(); } }