sourcemod/tools/builder/Package.cs
David Anderson 150cb6ec1f added plugin compiling
--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%40858
2007-05-23 22:08:05 +00:00

81 lines
1.9 KiB
C#

using System;
namespace builder
{
public class Library
{
public Library()
{
PlatformExt = false;
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 class Plugin
{
public Plugin(string file)
{
Source = file;
}
public Plugin (string file, string folder)
{
Source = file;
Folder = folder;
}
public string Folder; /* Source folder relative to scripting (null for default) */
public string Source; /* Source file 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();
/**
* Called to get a plugin list
*/
public abstract Plugin [] GetPlugins();
}
}