Commit Graph

194 Commits

Author SHA1 Message Date
adam kinge
efb7b10e12 Fix tvOS missing LaunchScreen causing a crash on startup.
#jira UE-192454
#rnx
#rb josh.adams
#lockdown zack.neyland

[CL 27130552 by adam kinge in ue5-main branch]
2023-08-15 21:41:03 -04:00
josh adams
82ee4f70d5 - Removed the quotes around the signing identity for Xcode manual codesigning
- During staging, we now make the UBTGenerated/Info.Template.plist in the project folder instead of Engine folder, for BP projects
- Fixed an AppStoreConnect label in the Xcode project settings that would have confused anyone trying to set it up

#jira UE-193101, UE-193108, UE-193104
#rb Calvin.zheng

[CL 27130271 by josh adams in ue5-main branch]
2023-08-15 21:33:02 -04:00
adam kinge
602131ca91 Fix missing launch image on iOS. Also fix AppIcon inverted logic for iOS.
#jira UE-192454
#rnx
#rb josh.adams
#lockdown zack.neyland

[CL 27122840 by adam kinge in ue5-main branch]
2023-08-15 17:54:41 -04:00
josh adams
0d157fcd25 - Changed the logic for Programs to allow for Resources to exist in Engine/Source/Programs/Foo/Resources/Mac (which was an existing place to put Mac resources) instead of Engine/Programs/Foo/Build/Mac. WIll be used in an upcoming changelist for some icons and plist fixes for UnrealInsigits and UnrealMultiUserServer. This will also be helpful for licensees that have icons in the old location
- Allow extra .apps to be staged into the final .app (like CrashReportClient.app)

#jira UE-192894,UE-192906
#rb zack.neyland

[CL 27112834 by josh adams in ue5-main branch]
2023-08-15 14:32:01 -04:00
josh adams
13dcf051b1 - Fixed an issue with naming of schemes in stub xcodeprojects when packaging BP projects (the previous method of checking TargetRules name doesnt account for the rename of UnrealGame to MyProjectGame)
#jira UE-192890
#rb zack.neyland

[CL 27108911 by josh adams in ue5-main branch]
2023-08-15 13:16:03 -04:00
axel riffard
94ea3fdc49 tvOS app icon fix for modern xcode
#jira UE-192009
#rb josh.adams

[CL 27108352 by axel riffard in ue5-main branch]
2023-08-15 13:07:25 -04:00
adam kinge
06a3585301 Required Metal shader compiler changes to support iOS Simulator. Set to disabled by default via "bEnableSimulatorSupport" in IOSRuntimeSettings.
#jira UE-168571
#rnx
#rb carl.lloyd, jack.porter
#lockdown jack.porter

[CL 27022463 by adam kinge in ue5-main branch]
2023-08-11 01:01:38 -04:00
josh adams
fafd488a40 - Fixed making .apps using a StagingDirectory override with code-based projects
#jira UE-189819, UE-189368
#rb trivial

[CL 26848281 by josh adams in ue5-main branch]
2023-08-04 11:34:16 -04:00
josh adams
65fbd954e5 - Changed how .dylibs in the Contents/MacOS directory are copied into Mac .apps (done directly instead of needing to be staged first)
#jira UE-191538
#rb calvin.zheng

[CL 26832937 by josh adams in ue5-main branch]
2023-08-03 19:21:32 -04:00
Josh Adams
574dc31ccb - Very very early support for UE running as a SwiftUI app:
- .ini settings for using SwiftUI main function
  - this will eanble #defines, etc, to enable some embedded style functionality in UE, where SwiftUI will trigger when to create the engine/view/etc
  - assume fully immersive mode, which uses CompositorServices to get drawables from SwiftUI land
  - Added some code to FMetalViewport for using Composotir layer/drawable instead of CoreAnimation layer/drawable
  - If the .ini setting is false, then it will use the original VIsionOS support which works generally in the simulator

- Also removed -lc++ commandline which was causing "duplicate -lc++" warning when building in recent Xcode

#rb adam.kinge

[CL 26769312 by Josh Adams in ue5-main branch]
2023-08-02 09:09:16 -04:00
adam kinge
c45436c5e5 Temporarily disable ios simulator root due to Horde issue.
#jira UE-168571
#rnx

[CL 26598828 by adam kinge in ue5-main branch]
2023-07-26 02:12:06 -04:00
adam kinge
e56126723a 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 26597711 by adam kinge in ue5-main branch]
2023-07-26 01:01:43 -04:00
Josh Adams
45eee4b07c - 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

[CL 26527971 by Josh Adams in ue5-main branch]
2023-07-21 18:02:08 -04:00
Josh Adams
5e92811c9e - Removed some hard references to VisionOS from XcodeProject.cs and UEBuildIOS.cs, since it's a Plaform Extension it may not exist
- Refactored some general IOS code to be more programmatic

[CL 26251171 by Josh Adams in ue5-main branch]
2023-06-26 21:37:57 -04:00
josh adams
82ea6a767a [Backout] - CL26223564
[FYI] keaton.stewart
Original CL Desc
-----------------------------------------------------------------
[Backout] - CL26221679 [Main CIS Issue] Errors in Incremental FortniteServer Linux and Incremental Compile Monolithics - Linux
[FYI] Josh.Adams
Original CL Desc
-----------------------------------------------------------------
- Very super early support for VisionOS (requires Xcode 15 beta2 or later).
- THIS IS NOT USABLE YET - WORK IN PROGRESS!
- It builds, links with IOS libs (warnings, not errors), can cook and it boots in Simulator, but is dying in MetalRHI
- UnrealTargetPlatform.VisionOS is currently defined in Engine code, it is not pulled out like would be correct for a full true platform extension
- Refactored a lot of Build.cs files to use UnrealPlatformGroup.IOS/Apple instead of individual platform checks, to make VisionOS integration simpler
#rb zack.neyland

[CL 26226852 by josh adams in ue5-main branch]
2023-06-24 17:52:48 -04:00
keaton stewart
1fd1a77412 [Backout] - CL26221679 [Main CIS Issue] Errors in Incremental FortniteServer Linux and Incremental Compile Monolithics - Linux
#fyi Josh.Adams
#jira FORT-626566 (edited)
Original CL Desc
-----------------------------------------------------------------
- Very super early support for VisionOS (requires Xcode 15 beta2 or later).
- THIS IS NOT USABLE YET - WORK IN PROGRESS!
- It builds, links with IOS libs (warnings, not errors), can cook and it boots in Simulator, but is dying in MetalRHI
- UnrealTargetPlatform.VisionOS is currently defined in Engine code, it is not pulled out like would be correct for a full true platform extension
- Refactored a lot of Build.cs files to use UnrealPlatformGroup.IOS/Apple instead of individual platform checks, to make VisionOS integration simpler
#rb zack.neyland

[CL 26223564 by keaton stewart in ue5-main branch]
2023-06-23 20:29:27 -04:00
Josh Adams
e25e1b3daf - Very super early support for VisionOS (requires Xcode 15 beta2 or later).
- THIS IS NOT USABLE YET - WORK IN PROGRESS!
- It builds, links with IOS libs (warnings, not errors), can cook and it boots in Simulator, but is dying in MetalRHI
- UnrealTargetPlatform.VisionOS is currently defined in Engine code, it is not pulled out like would be correct for a full true platform extension
- Refactored a lot of Build.cs files to use UnrealPlatformGroup.IOS/Apple instead of individual platform checks, to make VisionOS integration simpler
#rb zack.neyland

[CL 26221679 by Josh Adams in ue5-main branch]
2023-06-23 19:12:47 -04:00
Josh Adams
06ff93be0e - 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

[CL 26133818 by Josh Adams in ue5-main branch]
2023-06-20 16:40:51 -04:00
Josh Adams
17fdc6481d - 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

[CL 26132088 by Josh Adams in ue5-main branch]
2023-06-20 15:59:57 -04:00
Josh Adams
597767d837 - Removed some debugging logs
#rb trivial

[CL 26101457 by Josh Adams in ue5-main branch]
2023-06-19 15:37:18 -04:00
adam kinge
d96542da67 Support iPad SplitView (dynamic resizing) and StageManager
#jira UE-168563
#rb jack.porter

[CL 26051114 by adam kinge in ue5-main branch]
2023-06-16 10:28:50 -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