- Similarly if -archive and -archivedirectory ends with .xcarchive, then that is the name of the directory to archive to, instead of using Xcode's name
- Improved logging of xcarchive info
#rb zack.neyland
[CL 32836485 by josh adams in ue5-main branch]
- This needs .plist files to control the export/upload process, added some premade default ones in Engine/Build/Xcode
- Refactored some code for the Auth param stuff
#rb calvin.zheng
[CL 32817761 by josh adams in ue5-main branch]
* Set the no-encryption setting in the template Mac plist to make uploading to TestFlight/AppStore easier
* Fixed editor to not compile as universal when using -distribution, only the client should be universal
* Further improvements to stripping out nested .app's in a final .app (remove them from the staged directory helps)
* Changed how the Mac app name is displayed, since the .app name itself is shown in the Finder, unlike IOS where the CFBundleName is shown (the archived .app name in the .xcarchive is named by a project setting, falling back to the .uproject name if not set)
* Disabled the SignExecutables function on Modern because they attempt to sign the wrong .apps, and one is no longer (previously it was uselessly signing .apps, but now it throws an error due to changes for the third item in this list)
[CONSIDER5.3]
#rb calvin.zheng
#jira UE-197465
[CL 28619839 by josh adams in ue5-main branch]
* Missing ThinApp.sh
* Missing some quotes around a variable in GenerateUniversalDSYM.sh
* Correctly filter out the stub .app's and such when copying the Staged data directory into the .app
* Disabled the Mac's Sign To Run Locally option by default, as that causes Xcode's Validation/Upload to not have the team name embedded in it, causing a hassle while pushing up to AppStore/TestFlight
* Fixed the PRODUCT_NAME for BP projects
* Made CrashReportClient be a sandboxed app that inherits from parent
* Fix Hybrid apps to check all platforms before in the project generator, so that if a project needs a temp target for IOS (via a plugin)
* For hybrid projects, don't append Game to the end of the Game target names, as that is the default, and it makes for better named products
* Disabled the LoginFlow module from OnlineFramework plugin - this was causing issues with having CEF and EpicWebHelper embedded into a sandboxed .app, and LoginFlow isn't seemingly actually used by anything
#jira UE-196297,UE-196299,UE-196296,UE-196300,UE-196295
#rb adam.kinge
[CL 28463729 by josh adams in ue5-main branch]
- The in-process project generation was not able to get the .uproject location
- The making and using of the stub xcode projects were using UnrealGame target/scheme, not MyProjectGame (which Xcode makes since it can handle content-only uprojects)
- UnrealGame.app, when just compiling, has no uproject, so it now use the dummy codesigning I added for stub generation, so no projects settings are needed
#jira UE-192593
[CL 27035369 by josh adams in ue5-main branch]
- Added some logging to UseModernXcode so it is clear which mode is being used, and why
- Fixed stub creation in modern to use local dummy identity (no need for keychain unlocking), and moved files into Payload directory inside the stub
#jira UE-168571
#rb adam.kinge
[CL 26620618 by josh adams in ue5-main branch]
- Fixing the name of the .app when staging/deploying a BP IOS project with modern
- Uses a new AppleExports function to call MakeBinaryFilename, so we can use standardized name format for the BP .app
- Fixed which .app is archived for BP projects (it was archiving the UnrealGame.app, not the finalized MyProject.app)
- Programs now no longer use Game/Client entitlements, but can set bUseEntitlementsForPrograms to true in the .ini if really needed
- Added an Unrestricted.entitlements, an empty entitlements file
- Changed Programs to find the .ini for codesigning, without needing a .uproject
- Fixed path to strip to add a missing slash
- Pass -legacyxcode along to the legacy PostBuildSync step to make sure it uses legacy when overriding the .ini setting
- Added -legacyxcode commandline handler for legacy PostbuildSync
#jira UE-190517
#jira UE-189830
#rb various
[CL 26592756 by josh adams in ue5-main branch]
- Uses a new AppleExports function to call MakeBinaryFilename, so we can use standardized name format for the BP .app
#jira UE-189830
#rb calvin.zheng
[CL 26352457 by Josh Adams in ue5-main branch]
- Added a top-level .xcconfig file to Xcode workspace for use with UnrealGame/etc so it knows where to find staged data, and set the commandline automatically
- Stage the UECommandLine.txt file for modern builds because we no longer make the Bootstrap .app
- Added XcodeBuildMode enum/string so scripts can tell when the project is being built (so build time could act differently than stage time, etc)
- Making use of the enum and other env vars to skip steps when not needed
- Other fixes for project generation
- Added -modernxcode and -legacyxcode comandline options which will override the .ini setting (refactored all UseModern checks into one function)
- Support for programs that have a .uproject, and GPF with -game -project=<program.uproject>
- Added success return value to FinalizeAppWithModernXcode
- Added quotes to fix paths with spaces in GenerateProjectFiles.command
- Enabled parallel AddAdditionalNativeTargetInformation for gathering Frameworks from targts, now that parallel project generation has been enabled and most parallel issues are fixed
#preflight 646ce67c2e78be98411323d9
#rb zack.neyland
#preflight 646f8f2850786bb5ba8a98f0
[CL 25623979 by Josh Adams in ue5-main branch]
- When doing standard BuildCookRun, package will simply finalize the (likely already finalize) .app in Binaries/<platform>
- When using Distribution mode, packge will create a .xcarchive in the Xcode Library (as seen in Organizer) to be able to distribute in various modes
- Archiving will copy either the .app or .xcarchive made above to the archive directory (it will always copy the most recent .xcarchive, since we don't create the directory name, we can't know which archive to copy, so the most recent one wins - not an issue when using -package, because it always makes a new .xcarchive)
- A few code cleanup/refactors in related
#preflight 644ab91fb208f61af82d8f76
[CL 25220287 by Josh Adams in ue5-main branch]
- No longer try to grab the output from IOS with QuickLaunch as idevicedebug is killing the app too quickly
- The modern Staged directory can now be shared between Development/Shipping/etc, for grabbing any non-Framework .dylibs (like steam)
- Removed the extra --generate-entitlements-der option now that Xcode also always adds it
#preflight 6447d49a024bc608e64072f9
#rb adam.kinge
#preflight 6447d6643d1be392df890776
[CL 25179459 by Josh Adams in ue5-main branch]