Commit Graph

180 Commits

Author SHA1 Message Date
adam kinge
30712598ea Temporarily disable ios simulator root due to Horde issue.
#jira UE-168571
#rnx

[CL 26598675 by adam kinge in 5.3 branch]
2023-07-26 02:06:38 -04:00
adam kinge
504c5cb247 Additional UBT changes to support iOS Simulator:
- update Xcode build script to set correct arch when compiling within Xcode
 - set correct SDKRoot depending on sim vs device

#jira UE-168571

[CL 26597655 by adam kinge in 5.3 branch]
2023-07-26 00:59:42 -04:00
josh adams
275cb69b2f Brought changes over from UE5/Main
- 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 26592555 by josh adams in 5.3 branch]
2023-07-25 18:39:53 -04:00
calvin zheng
f99e44009b - Handle manual codesigning with Modern Xcode (using all new settings, does not use the "green check" provisions in IOS project settings)
- Added support for AppStoreConnect API for automatic code signing (with command line builds, packaging from editor, etc) that doesn't need everyone to be signed in to Xcode (still need to sign in if using Xcode IDE to build/run)
- Fixed Modern to always create the IOS plist in UBT ApplePostBuild step
- Updated a bunch of ini setting names to remove Modern, given Modern will be standard in the future
- Added some settings XcodeProject settings in the editor, and updated some tooltips/category names
- Moved some functions around to clean up
- Added some debug code to catch errors

#rb adam.kinge,calvin.zheng,zack.neyland

#ushell-cherrypick of 26133818 by Josh.Adams

[CL 26152365 by calvin zheng in 5.3 branch]
2023-06-21 12:07:08 -04:00
calvin zheng
db892aed9d - Moved the SingleTargetName property up to ProjectFileGenerator from Xcode generator, and use it to remove Targets from the list to be processed. This is useful because when modern Xcode creates a stub xcode project for a Program, it has no uproject to use with "-game -project", so the GPF code would process all .Target.cs files, which can lead to warnings about missing AdditionalPluginDirectories (build machines may not fully sync a stream, and processing every Target can cause unexpected problems)
#rb joe.kirchoff

#ushell-cherrypick of 26132088 by Josh.Adams

[CL 26152295 by calvin zheng in 5.3 branch]
2023-06-21 12:04:21 -04:00
josh adams
3aabbf9009 - Removed some debugging logs
#rb trivial

[CL 26101552 by josh adams in 5.3 branch]
2023-06-19 15:39:42 -04:00
adam kinge
5a219beeb3 Support iPad SplitView (dynamic resizing) and StageManager
#jira UE-168563
#rb jack.porter

[CL 26057533 by adam kinge in 5.3 branch]
2023-06-16 12:41:13 -04:00
josh adams
7f076f4ee0 - For temp single target projects, put the targetname into the workspace name, so that multiple program targets being compiled/finalized at once don't all write to the same workspace file
#rb none

[CL 26001703 by josh adams in ue5-main branch]
2023-06-14 21:32:57 -04:00
Rafa Lecina
9f1574f2ad Fix folder issues in Xcode for programs not under Engine folder
Also force being a bundled application for iOS and TVOS since they don't support not being bundled

#review @Josh.Adams
#jira UE-166445

[CL 25973014 by Rafa Lecina in ue5-main branch]
2023-06-14 03:54:47 -04:00
calvin zheng
7f1888d75b Partial fix for modern Xcode would build with no code change
Remove outdated xcworkspace files when GPF with new modernXcode settings

#rb Josh.Adams, Zack.Neyland

[CL 25933128 by calvin zheng in ue5-main branch]
2023-06-12 14:56:21 -04:00
josh adams
9483bd40f5 - Fixed ModernXcode when a program has a ExeBinariesSubFolder
#rb trivial

[CL 25893367 by josh adams in ue5-main branch]
2023-06-09 10:41:06 -04:00
josh adams
7da8c50033 - Fixed location of where EnsureXcodeProjectExists() looks for BP projects
- Fixed warning about SDKROOT[sdk=macosx] type warnings with legacy Xcode
#rb axel.riffard,tim.smith

[CL 25796956 by josh adams in ue5-main branch]
2023-06-05 13:25:48 -04:00
josh adams
3d31269cdf - Fixed a bug caused by the C# auto-cleanup of code. (foo != "") is not the same as (!string.IsNullOrEmpty(foo)) , it is (foo == null || foo.Length() > 0)
#rb trivial
#preflight skip

[CL 25734570 by josh adams in ue5-main branch]
2023-06-01 14:38:53 -04:00
joe kirchoff
acacd6a8de UnrealBuildTool: More automated code cleanup
* Use object type rather than var
* Remove double newlines
* Use pattern matching

#rnx
#preflight 647780095d23eca37d28a387

[CL 25706751 by joe kirchoff in ue5-main branch]
2023-05-31 13:37:21 -04:00
joe kirchoff
acf80ab609 [Backout] - CL25694851
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: More automated code cleanup

#rnx

[CL 25695155 by joe kirchoff in ue5-main branch]
2023-05-30 19:55:37 -04:00
joe kirchoff
7ed1a39679 UnrealBuildTool: More automated code cleanup
#rnx

[CL 25694864 by joe kirchoff in ue5-main branch]
2023-05-30 19:36:05 -04:00
joe kirchoff
c04da27b3b UnrealBuildTool: More automated code cleanup
#rnx
#preflight 64767efb4b1ead7c7f428c7a

[CL 25693857 by joe kirchoff in ue5-main branch]
2023-05-30 18:59:32 -04:00
joe kirchoff
36d266e932 UnrealBuildTool: Automated code cleanup
#rnx
#preflight 6476799e947ff6973c225619

[CL 25693241 by joe kirchoff in ue5-main branch]
2023-05-30 18:38:07 -04:00
joe kirchoff
57a8fe409c UnrealBuildTool: Use expression body for simple properties and accessors
#rnx
#preflight 64766abcfe6a3b258a04cb50

[CL 25691579 by joe kirchoff in ue5-main branch]
2023-05-30 18:01:50 -04:00
Josh Adams
b770627288 - FIxed the --delete mode in rsync to not delete extra files when staging in Modern xcode
#rb adam.kinge (tested)
#preflight 64711ae3c109725039db5692

[CL 25652919 by Josh Adams in ue5-main branch]
2023-05-26 17:18:47 -04:00
Josh Adams
b7d0fe4ab0 - Cleaning up MacExports/IOSExports/IOSDeploy/etc for shared functionality from Modern Xcode
#rb trivial
#preflight 6470ddb73c13defa05f64f51

[CL 25647200 by Josh Adams in ue5-main branch]
2023-05-26 12:51:21 -04:00
Josh Adams
017c7ef4c5 - Allow a project file generator to create temporary primary projects (.sln, .xcworkspace, etc) in the Intermediate/ProjectFIles directory where the rest of the projects are created (the generator would need to not hardcode relative paths from parimary to sub projects)
#rb joe.kirchoff
#preflight 646fb3d68174dda722e93c2c

[CL 25629330 by Josh Adams in ue5-main branch]
2023-05-25 17:18:29 -04:00
Josh Adams
a2263b2ce0 - Xcode support for Content Only projects
- 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]
2023-05-25 13:04:27 -04:00
Tim Smith
8ea4145e2c Fix issue with UBT where the UE_TARGET_NAME isn't the actual target name. This resulted in HotReload and Live Coding to no longer work when used with a non-unity build.
#rb joe.kirchoff
#rnx
#preflight 646e55766c2a2532b1f15a72

[CL 25609152 by Tim Smith in ue5-main branch]
2023-05-24 14:31:06 -04:00
joe kirchoff
a53dc3cf98 Prevent fatal error when generating projects if there's an error creating the TargetRules that can be ignored
#rnx
#rb trivial

[CL 25515660 by joe kirchoff in ue5-main branch]
2023-05-17 16:22:48 -04:00