Add linux builds

This commit is contained in:
Hubert Mattusch 2023-09-19 21:41:39 +02:00
parent ebfeb14515
commit 610179c21d

View File

@ -56,13 +56,13 @@ public static class BuildingUtils
UploadSteam();
}
[MenuItem("Tools/Build/All Release")]
public static void BuildRelease()
{
if(!CanBuild())
return;
BuildWindowsRelease();
BuildLinuxRelease();
}
[MenuItem("Tools/Build/All Development")]
@ -89,6 +89,15 @@ public static class BuildingUtils
BuildWindows(true);
}
[MenuItem("Tools/Build/Platform/Linux/x64-Release")]
public static void BuildLinuxRelease()
{
if(!CanBuild())
return;
BuildLinux(true);
}
[MenuItem("Tools/Build/Platform/Android/GooglePlay")]
public static void BuildGooglePlay()
{
@ -109,7 +118,7 @@ public static class BuildingUtils
BuildPipeline.BuildPlayer(buildPlayerOptions);
}
private static void BuildWindows(bool release)
private static void BuildWindows(bool release, string[] additionalDefines = default)
{
var buildPlayerOptions = new BuildPlayerOptions { scenes = new string[EditorBuildSettings.scenes.Length] };
for (int i = 0; i < EditorBuildSettings.scenes.Length; i++)
@ -117,6 +126,8 @@ public static class BuildingUtils
buildPlayerOptions.scenes[i] = EditorBuildSettings.scenes[i].path;
}
buildPlayerOptions.extraScriptingDefines = additionalDefines;
buildPlayerOptions.target = BuildTarget.StandaloneWindows64;
buildPlayerOptions.options = release ? BuildOptions.None : BuildOptions.Development;
buildPlayerOptions.locationPathName = Application.dataPath +
@ -124,6 +135,23 @@ public static class BuildingUtils
BuildPipeline.BuildPlayer(buildPlayerOptions);
}
private static void BuildLinux(bool release, string[] additionalDefines = default)
{
var buildPlayerOptions = new BuildPlayerOptions { scenes = new string[EditorBuildSettings.scenes.Length] };
for (int i = 0; i < EditorBuildSettings.scenes.Length; i++)
{
buildPlayerOptions.scenes[i] = EditorBuildSettings.scenes[i].path;
}
buildPlayerOptions.extraScriptingDefines = additionalDefines;
buildPlayerOptions.target = BuildTarget.StandaloneLinux64;
buildPlayerOptions.options = release ? BuildOptions.None : BuildOptions.Development;
buildPlayerOptions.locationPathName = Application.dataPath +
$"/../../{Application.productName}-Steam/ContentBuilder/content/linux/{Application.productName}.x86_64";
BuildPipeline.BuildPlayer(buildPlayerOptions);
}
private static void IncreaseBuildNumber()
{
string[] versionParts = PlayerSettings.bundleVersion.Split('.');
@ -137,7 +165,7 @@ public static class BuildingUtils
private static void UploadSteam()
{
string command = $"cd {Application.dataPath}/../../{Application.productName}-Steam/ContentBuilder && run_build.bat";
string command = $"cd {Application.dataPath}/../../{Application.productName}-Steam/ContentBuilder && push_build.bat";
var processInfo = new ProcessStartInfo("cmd.exe", $"/c {command}")
{