JD2022-TU1/main/build/sharpmake/main.cs

97 lines
3.8 KiB
C#

using System.IO;
using JustDance.Engine;
using JustDance.Tools;
using JustDance.Tools.Helpers;
using Sharpmake;
[module: Sharpmake.Include("Engine/BaseCppProject.cs")]
[module: Sharpmake.Include("Engine/Extern.cs")]
[module: Sharpmake.Include("Engine/UAF.cs")]
[module: Sharpmake.Include("Engine/DTest.cs")]
[module: Sharpmake.Include("Engine/JD.cs")]
[module: Sharpmake.Include("Engine/Plugins.cs")]
[module: Sharpmake.Include("Engine/UnitTests.cs")]
[module: Sharpmake.Include("Engine/BuildProbe.cs")]
[module: Sharpmake.Include("Tools/Extern.cs")]
[module: Sharpmake.Include("Tools/TeaBox.cs")]
[module: Sharpmake.Include("Tools/Apps.cs")]
[module: Sharpmake.Include("Tools/Framework.cs")]
[module: Sharpmake.Include("Tools/ToolsSolution.cs")]
[module: Sharpmake.Include("Tools/PlumeSolution.cs")]
[module: Sharpmake.Include("Tools/LegacyTools.cs")]
[module: Sharpmake.Include("Tools/LegacyTools.libs.cs")]
[module: Sharpmake.Include("Tools/LegacyTools.common.cs")]
[module: Sharpmake.Include("Tools/ScoringTools.cs")]
[module: Sharpmake.Include("Tools/BaseProject.cs")]
[module: Sharpmake.Include("Tools/BaseSolution.cs")]
[module: Sharpmake.Include("Tools/CommandLineProject.cs")]
[module: Sharpmake.Include("Tools/UnitTests.cs")]
[module: Sharpmake.Include("Tools/UnitTestsReport.cs")]
[module: Sharpmake.Include("Tools/Modules.cs")]
[module: Sharpmake.Include("Tools/Services.cs")]
[module: Sharpmake.Include("Tools/Helpers/ProjectMerger.cs")]
[module: Sharpmake.Include("Tools/Helpers/CopyLocalOptimizer.cs")]
[module: Sharpmake.Include("Tools/Helpers/JetBrainsSettingsDeployer.cs")]
[module: Sharpmake.Include("Tools/Helpers/AssemblyInfoGenerator.cs")]
[module: Sharpmake.Reference("Tools/Helpers/Ubisoft.Core.dll")]
[module: Sharpmake.Reference("Tools/Helpers/Ubisoft.Perforce.dll")]
[module: Sharpmake.Reference("Tools/Helpers/Ubisoft.P4API.dll")]
[module: Sharpmake.Include("Globals.cs")]
[module: Sharpmake.Include("utilities.cs")]
[module: Sharpmake.Include("VillagerInfoGenerator.cs")]
[module: Sharpmake.Reference("Sharpmake.dll")]
[module: Sharpmake.Reference("Sharpmake.CommonPlatforms.dll")]
// [module: Sharpmake.Reference("Sharpmake.Durango.dll")]
// [module: Sharpmake.Reference("Sharpmake.Nx.dll")]
// [module: Sharpmake.Reference("Sharpmake.Orbis.dll")]
// [module: Sharpmake.Reference("Sharpmake.Ps3.dll")]
// [module: Sharpmake.Reference("Sharpmake.X360.dll")]
// [module: Sharpmake.Reference("Sharpmake.GGP.dll")]
// [module: Sharpmake.Reference("Sharpmake.Prospero.dll")]
// [module: Sharpmake.Reference("Sharpmake.GDK.dll")]
// [module: Sharpmake.Reference("Sharpmake.Scarlett.dll")]
[module: Sharpmake.Reference("Microsoft.CSharp.dll")]
namespace JustDance
{
public static class JDMain
{
[Main]
public static void SharpmakeMain(Arguments arguments)
{
Globals.ParseArguments();
CreateMissingDirectories();
AdditionalFileGenerator.GenerateAll();
arguments.Generate<EngineSolution>();
}
private static void CreateMissingDirectories()
{
var project = new JD_Core();
var outputDirectory = project.ResolveString(BaseProject.OutputPath);
var outputBinDirectory = Path.Combine(outputDirectory, "bin");
var outputTmpDirectory = Path.Combine(outputDirectory, "tmp");
var outputLibDirectory = Path.Combine(outputDirectory, "lib");
if (!Directory.Exists(outputDirectory))
Directory.CreateDirectory(outputDirectory);
if (!Directory.Exists(outputBinDirectory))
Directory.CreateDirectory(outputBinDirectory);
if (!Directory.Exists(outputTmpDirectory))
Directory.CreateDirectory(outputTmpDirectory);
if (!Directory.Exists(outputLibDirectory))
Directory.CreateDirectory(outputLibDirectory);
}
}
}