コード例 #1
0
        public override void Run(Configuration config, CommandArguments args)
        {
            base.Run(config, args);

            var workDir   = Path.Combine(Directory.GetCurrentDirectory(), config.StagingDirectory, Configuration.WebTarget);
            var buildArgs = string.Join(" ", GetFilesToBuild(workDir));

            buildArgs += " -s EXPORTED_FUNCTIONS=[" + string.Join(",", config.Web.ExportedFuncs.Select(s => $"\"_{s}\"")) + "]" + " -s ASSERTIONS=2";
            Console.WriteLine($"Start Emscripten build with args: '{buildArgs}'");
            ProcessTools.RunProcessAndEnsureSuccess(this, "Emscripten Build", config.Web.EmccPath, buildArgs, workDir);

            var outputPath = Path.Combine(config.BuildsDirectory, Configuration.WebTarget);

            Console.WriteLine($"Copy build to '{outputPath}'");
            IOTools.CopyDirectory(workDir, outputPath);

            Console.WriteLine($"Strip sources from '{outputPath}'");
            var filesToStrip = new List <string>();

            filesToStrip.AddRange(Directory.GetFiles(outputPath, "*.cpp", SearchOption.AllDirectories));
            filesToStrip.AddRange(Directory.GetFiles(outputPath, "*.h", SearchOption.AllDirectories));
            foreach (var file in filesToStrip)
            {
                Console.WriteLine($"Stripping '{file}'");
                File.Delete(file);
            }
        }
コード例 #2
0
ファイル: BuildCommand.cs プロジェクト: KonH/TextEngine
        void CopyBuildResult(Configuration config, string target, string configurationName)
        {
            var buildDir  = Path.Combine(config.Windows.BuildDirectory, configurationName);
            var outputDir = Path.Combine(config.BuildsDirectory, target);

            IOTools.CopyDirectory(buildDir, outputDir);
        }
コード例 #3
0
ファイル: PrepareCommand.cs プロジェクト: KonH/TextEngine
        public void Run(Configuration config, CommandArguments args)
        {
            var target = args.GetTarget(this);

            IOTools.CopyDirectory(
                Path.Combine(config.FoundationDirectory, target),
                Path.Combine(config.StagingDirectory, target)
                );
        }
コード例 #4
0
ファイル: AppendCommand.cs プロジェクト: KonH/TextEngine
 void CommonCopyProjectDirectory(Configuration config, string target)
 {
     IOTools.CopyDirectory(config.ProjectDirectory, GetProjectTargetDirectory(config, target));
 }