Hi,
I’m releasing our game on Windows / Linux and Mac. I want the executable to be undecorated, meaning without the suffix of platform and configuration:
PSUnrealClient.app instead of PSUnrealClient-Mac-Shipping.app
We always had issues with this, starting with 4.27, and all subsequent versions. The workaround I was using was to edit:
Engine/Source/Programs/AutomationTool/Mac/MacPlatform.Automation.cs
and force the name I wanted in this function
public override void ProcessArchivedProject(ProjectParams Params, DeploymentContext SC)
The workaround worked fine in all versions we used up to 5.1.1. Now we are upgrading to 5.4.3, and the workaround is not working anymore. So editing PSUnrealClient.Target.cs, and adding this line like we always did:
UndecoratedConfiguration = UnrealTargetConfiguration.Shipping; // Specifies the configuration whose binaries do not require a "-Platform-Configuration" suffix.
now causes the build process to fail with this error:
BUILD FAILED: AddBuildProductsFromManifest: /Users/luke/PSUnreal511/Binaries/Mac/PSUnrealClient.app/Contents/_CodeSignature/CodeResources was in manifest "/Volumes/DATA-2TB/5.4.3-release/Engine/Intermediate/Build/Manifest-4-PSUnrealClient-Mac-Shipping.xml" but could not be found.
I tried to edit Engine/Source/Programs/UnrealBuildTool/Platform/Mac/MacToolChain.cs and just comment out the line (which btw was not present in 5.1.1) about the _CodeSignature. It’s this line:
BuildProducts.Add(FileReference.Combine(BundleContentsDirectory!, "_CodeSignature", "CodeResources"), BuildProductType.RequiredResource);
This actually makes the process complete, but the result is non functional package, as it’s missing the .paks and other files. So that’s not a solution.
Does someone know a solution for this? As a workaround, is it possible to rename an .app after it has been built?