7a8d164b25
--HG-- extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%40409
121 lines
2.5 KiB
C#
121 lines
2.5 KiB
C#
using System;
|
|
using System.IO;
|
|
using System.Text;
|
|
|
|
namespace builder
|
|
{
|
|
public enum BasePlatform
|
|
{
|
|
Platform_Windows,
|
|
Platform_Linux
|
|
};
|
|
|
|
public class Config
|
|
{
|
|
public string SourceBase;
|
|
public string OutputBase;
|
|
public string BuilderPath;
|
|
public string CompressOptions;
|
|
public string SVNVersion;
|
|
public string ProductVersion;
|
|
public string Compressor;
|
|
public builder.BasePlatform Platform;
|
|
|
|
public Config()
|
|
{
|
|
if ((int)System.Environment.OSVersion.Platform == 128)
|
|
{
|
|
Platform = BasePlatform.Platform_Linux;
|
|
}
|
|
else
|
|
{
|
|
Platform = BasePlatform.Platform_Windows;
|
|
}
|
|
}
|
|
|
|
public static string PathFormat(string format, params string [] args)
|
|
{
|
|
string temp = string.Format(format, args);
|
|
return temp.Replace(Path.AltDirectorySeparatorChar, Path.DirectorySeparatorChar);
|
|
}
|
|
|
|
public bool ReadFromFile(string file)
|
|
{
|
|
bool read = true;
|
|
StreamReader sr = null;
|
|
try
|
|
{
|
|
sr = new StreamReader(file);
|
|
|
|
string line;
|
|
string delim = "\t \n\r\v";
|
|
string split = "=";
|
|
|
|
while ( (line = sr.ReadLine()) != null )
|
|
{
|
|
line = line.Trim(delim.ToCharArray());
|
|
if (line.Length < 1 || line[0] == ';')
|
|
{
|
|
continue;
|
|
}
|
|
string [] s = line.Split(split.ToCharArray());
|
|
string key, val = "";
|
|
if (s.GetLength(0) >= 1)
|
|
{
|
|
key = s[0];
|
|
if (s.GetLength(0) >= 2)
|
|
{
|
|
for (int i=1; i<s.GetLength(0); i++)
|
|
{
|
|
val += s[i];
|
|
}
|
|
}
|
|
key = key.Trim(delim.ToCharArray());
|
|
val = val.Trim(delim.ToCharArray());
|
|
if (key.CompareTo("SourceBase") == 0)
|
|
{
|
|
SourceBase = val;
|
|
}
|
|
else if (key.CompareTo("OutputBase") == 0)
|
|
{
|
|
OutputBase = val;
|
|
}
|
|
else if (key.CompareTo("BuilderPath") == 0)
|
|
{
|
|
BuilderPath = val;
|
|
}
|
|
else if (key.CompareTo("CompressOptions") == 0)
|
|
{
|
|
CompressOptions = val;
|
|
}
|
|
else if (key.CompareTo("SVNVersion") == 0)
|
|
{
|
|
SVNVersion = val;
|
|
}
|
|
else if (key.CompareTo("ProductVersion") == 0)
|
|
{
|
|
ProductVersion = val;
|
|
}
|
|
else if (key.CompareTo("Compressor") == 0)
|
|
{
|
|
Compressor = val;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
catch (System.Exception e)
|
|
{
|
|
Console.WriteLine("Unable to read {0:s}: {1:s}", file, e.Message);
|
|
read = false;
|
|
}
|
|
|
|
if (sr != null)
|
|
{
|
|
sr.Close();
|
|
}
|
|
|
|
return read;
|
|
}
|
|
}
|
|
}
|