예제 #1
0
        static int Main(string[] Args)
        {
            //FilesMetaDataGenerator.Generate(@"E:\Omid\New folder\SourceCode");

            Args = new string[] { "-Engine", "-X86", "-Debug" };

            if (Args.Length >= 3)
            {
                if (Enum.IsDefined(typeof(BuildSystem.TargetsToBuild), Args[0].Substring(1)))
                {
                    BuildSystem.TargetsToBuild toBuild = (BuildSystem.TargetsToBuild)Enum.Parse(typeof(BuildSystem.TargetsToBuild), Args[0].Substring(1));

                    if (Enum.IsDefined(typeof(BuildSystem.PlatformArchitectures), Args[1].Substring(1)))
                    {
                        BuildSystem.PlatformArchitectures architecture = (BuildSystem.PlatformArchitectures)Enum.Parse(typeof(BuildSystem.PlatformArchitectures), Args[1].Substring(1));

                        if (Enum.IsDefined(typeof(ProjectFileGenerator.BuildConfigurations), Args[2].Substring(1)))
                        {
                            ProjectFileGenerator.BuildConfigurations buildConfiguration = (ProjectFileGenerator.BuildConfigurations)Enum.Parse(typeof(ProjectFileGenerator.BuildConfigurations), Args[2].Substring(1));

                            BuildSystem builder = new BuildSystem(toBuild, architecture, buildConfiguration);
                            if (builder.Build())
                            {
                                return(0);
                            }

                            return(1);
                        }
                    }
                }
            }

            ConsoleHelper.WriteLineError("Parameters should be like -TargetToBuild -PlatformArchitecture -BuildConfiguration");
            return(1);
        }
예제 #2
0
        // naming for different configurations
        //clean and rebuild
        //find installed tool version

        static int Main(string[] Args)
        {
            EnvironmentHelper.Initialize();

            ArgumentParser arguments = ArgumentParser.Parse(Args);

            if (arguments.Contains("Action"))
            {
                BuildSystem.Actions action = arguments.Get <BuildSystem.Actions>("Action");

                if (action == BuildSystem.Actions.BuildProjectFile)
                {
                    if (EngineProjectFileCreator.Create())
                    {
                        return(0);
                    }
#if DEBUG
                    Console.Read();
#endif
                    return(1);
                }
                else if (arguments.Contains("Architecture"))
                {
                    BuildSystem.PlatformArchitectures architecture = arguments.Get <BuildSystem.PlatformArchitectures>("Architecture");

                    if (arguments.Contains("Configuration"))
                    {
                        ProjectBase.ProfileBase.BuildConfigurations buildConfiguration = arguments.Get <ProjectBase.ProfileBase.BuildConfigurations>("Configuration");

                        BuildSystem builder = new BuildSystem(action, architecture, buildConfiguration);

                        switch (action)
                        {
                        case BuildSystem.Actions.BuildEngine:
                            if (builder.Build())
                            {
                                return(0);
                            }
                            break;

                        case BuildSystem.Actions.RebuildEngine:
                            if (builder.Rebuild())
                            {
                                return(0);
                            }
                            break;

                        case BuildSystem.Actions.CleanEngine:
                            if (builder.Clean())
                            {
                                return(0);
                            }
                            break;
                        }

#if DEBUG
                        Console.Read();
#endif
                        return(1);
                    }
                }
            }

            ConsoleHelper.WriteError("Parameters should be like -Action {Param} -Architecture {Param} -Configuration {Param}");
#if DEBUG
            Console.Read();
#endif
            return(1);
        }