public void ConfigureAll(Configuration conf, Target target)
        {
            conf.ProjectFileName  = "[project.Name]_[target.DevEnv]_[target.Platform]";
            conf.ProjectPath      = @"[project.SharpmakeCsPath]\projects";
            conf.IntermediatePath = @"[project.SharpmakeCsPath]\projects\intermediate\[project.Name]_[target.DevEnv]_[target.Platform]";

            conf.AddPrivateDependency <LibProject>(target, DependencySetting.DefaultWithoutBuildSteps);

            Configuration.BuildStepExecutable tool = new Configuration.BuildStepExecutable(@"[project.SharpmakeCsPath]\projects\output\win64\debug\tool.exe", "", "", "-Flag1 -Flag2 -DoStuff=256");
            conf.EventPreBuildExe.Add(tool);
        }
Esempio n. 2
0
        public override void ConfigureAll(Configuration conf, Target target)
        {
            base.ConfigureAll(conf, target);

            // Create an Executable build step that executes the build output.
            var execBuildStep = new Configuration.BuildStepExecutable(
                @"[conf.TargetPath]\[conf.TargetFileName].exe",
                @"",
                @"[conf.TargetPath]\postbuild_exec_sentinel.txt",
                @"");

            execBuildStep.FastBuildUseStdOutAsOutput = true;

            conf.EventCustomPostBuildExe.Add(execBuildStep);
        }
        public void ConfigureAll(Configuration conf, Target target)
        {
            conf.ProjectFileName  = "[project.Name]_[target.DevEnv]_[target.Platform]";
            conf.ProjectPath      = @"[project.SharpmakeCsPath]\projects";
            conf.IntermediatePath = @"[project.SharpmakeCsPath]\projects\intermediate\[project.Name]_[target.DevEnv]_[target.Platform]";

            conf.Output = Configuration.OutputType.Lib;
            conf.IncludePaths.Add(conf.Project.SourceRootPath);

            // Depend on our 'tool' to be build first
            conf.AddPrivateDependency <ToolProject>(target, DependencySetting.OnlyBuildOrder);

            Configuration.BuildStepExecutable tool = new Configuration.BuildStepExecutable(@"[project.SharpmakeCsPath]\projects\output\win64\debug\tool.exe", "", "", "-Flag1 -Flag2 -DoStuff=123");
            conf.EventPreBuildExe.Add(tool);
        }
Esempio n. 4
0
        public override void ConfigureAll(Configuration conf, Target target)
        {
            base.ConfigureAll(conf, target);

            string tempGeneratedPath   = @"[project.SharpmakeCsPath]\projects\generated";
            string generatedHeaderFile = Path.Combine(tempGeneratedPath, "header_generated_by_prebuild_step.h");

            // Create a PreBuild step that creates a header file that is required for compilation
            var preBuildStep = new Configuration.BuildStepExecutable(
                @"[project.SourceRootPath]\execute.bat",
                @"[project.SourceRootPath]\main.cpp",
                generatedHeaderFile,
                "echo #define PREBUILD_GENERATED_DEFINE() 0 > " + generatedHeaderFile);

            conf.EventCustomPrebuildExecute.Add("GenerateHeader", preBuildStep);

            conf.IncludePrivatePaths.Add(tempGeneratedPath);
        }
Esempio n. 5
0
        public override void ConfigureAll(Configuration conf, Target target)
        {
            base.ConfigureAll(conf, target);

            string generatedHeaderFilename         = "header_generated_by_prebuild_step.h";
            string relativeGeneratedHeaderFilePath = Path.Combine("generated", generatedHeaderFilename);
            string absoluteGeneratedHeaderPath     = Path.Combine("[conf.ProjectPath]", "generated");
            string absoluteGeneratedHeaderFilePath = Path.Combine(absoluteGeneratedHeaderPath, generatedHeaderFilename);

            // Create a PreBuild step that creates a header file that is required for compilation
            var preBuildStep = new Configuration.BuildStepExecutable(
                @"[project.SourceRootPath]\execute.bat",
                @"[project.SourceRootPath]\main.cpp",
                absoluteGeneratedHeaderFilePath,
                "echo #define PREBUILD_GENERATED_DEFINE() 0 > " + relativeGeneratedHeaderFilePath);

            conf.EventCustomPrebuildExecute.Add("GenerateHeader", preBuildStep);

            conf.IncludePrivatePaths.Add(absoluteGeneratedHeaderPath);
        }