tools/builder/Main.cs
author David Anderson <dvander@alliedmods.net>
Mon Jul 07 06:33:42 2008 +0000 (2008-07-07)
branchrefac-jit
changeset 2176 525f85d9af37
parent 2168 c24a6fa957db
child 2256 de422b59bdfc
permissions -rw-r--r--
fixed some build issues. deprecated ISourceMod::GetScriptingVM
dvander@2168
     1
using System;
dvander@2168
     2
using System.IO;
dvander@2168
     3
using System.Diagnostics;
dvander@2168
     4
dvander@2168
     5
namespace builder
dvander@2168
     6
{
dvander@2168
     7
	class Program
dvander@2168
     8
	{
dvander@2168
     9
		static void Main(string[] args)
dvander@2168
    10
		{
dvander@2168
    11
			if (args.GetLength(0) < 1)
dvander@2168
    12
			{
dvander@2168
    13
				System.Console.WriteLine("Usage: <config file>");
dvander@2168
    14
				return;
dvander@2168
    15
			}
dvander@2168
    16
dvander@2168
    17
			Config cfg = new Config();
dvander@2168
    18
			if (!cfg.ReadFromFile(args[0]))
dvander@2168
    19
			{
dvander@2168
    20
				return;
dvander@2168
    21
			}
dvander@2168
    22
dvander@2168
    23
			/* :TODO: Add path validation */
dvander@2168
    24
dvander@2168
    25
			ABuilder bld = null;
dvander@2168
    26
			
dvander@2168
    27
			if (cfg.Platform == BasePlatform.Platform_Linux)
dvander@2168
    28
			{
dvander@2168
    29
				bld = new LinuxBuilder(cfg);
dvander@2168
    30
			} 
dvander@2168
    31
			else if (cfg.Platform == BasePlatform.Platform_Windows)
dvander@2168
    32
			{
dvander@2168
    33
				bld = new Win32Builder(cfg);
dvander@2168
    34
				if (cfg.pdb_log_file != null && File.Exists(cfg.pdb_log_file))
dvander@2168
    35
				{
dvander@2168
    36
					File.Delete(cfg.pdb_log_file);
dvander@2168
    37
				}
dvander@2168
    38
			}
dvander@2168
    39
dvander@2168
    40
			try
dvander@2168
    41
			{
dvander@2168
    42
				bld.BuildPackage(new PkgCore());
dvander@2168
    43
			} 
dvander@2168
    44
			catch (System.Exception e) 
dvander@2168
    45
			{
dvander@2168
    46
				Console.WriteLine("Build failed: " + e.Message);
dvander@2168
    47
			}
dvander@2168
    48
		}
dvander@2168
    49
	}
dvander@2168
    50
}