662 Commits

Author SHA1 Message Date
calvin zheng
1c23dcf08a Fixing multiple blocking modern xcode issues
#jira UE-198617
#rb Josh.Adams

[CL 29089493 by calvin zheng in 5.3 branch]
2023-10-25 11:11:04 -04:00
Josh Adams
eb3569c187 - Fixed various blocking issues with making Mac/IOS builds that can be uploaded to AppStore in Xcode
* 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)
  * 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
  * 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)
  * Legacy Xcode mode is forced with Window's Remote Mac builds, so use the old legacy code when running under windows
  * Added a third party .cpp file to get copied to remote macs
  * Fix Tools -> Open Xcode not working with modern Xcode

#jira UE-197465

[CL 28723100 by Josh Adams in 5.3 branch]
2023-10-12 15:15:43 -04:00
Josh Adams
2dafa030de - Fix a problem with BundleResources not being copied in to Mac and IOS .app bundles (plugin author reported - this is a feature Epic has not used)
#rb calvin.zheng
#jira UE-195538

[CL 27974501 by Josh Adams in 5.3 branch]
2023-09-18 17:01:19 -04:00
adam kinge
d47667bc95 Fix tvOS missing LaunchScreen causing a crash on startup.
#jira UE-192454
#rnx
#rb josh.adams
#lockdown zack.neyland

[CL 27130414 by adam kinge in 5.3 branch]
2023-08-15 21:36:10 -04:00
Josh Adams
b94b0ba4ad - 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 27130143 by Josh Adams in 5.3 branch]
2023-08-15 21:28:55 -04:00
adam kinge
a8ea86e455 Fix missing launch image on iOS. Also fix AppIcon inverted logic for iOS.
#jira UE-192454
#rnx
#rb josh.adams
#lockdown zack.neyland

[CL 27122160 by adam kinge in 5.3 branch]
2023-08-15 17:42:28 -04:00
Josh Adams
257a615adb - 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 27111466 by Josh Adams in 5.3 branch]
2023-08-15 14:06:57 -04:00
Josh Adams
f94e553125 - 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 27107405 by Josh Adams in 5.3 branch]
2023-08-15 12:48:37 -04:00
axel riffard
3301210539 tvOS app icon fix for modern xcode
#jira UE-192009
#rb josh.adams

[CL 27107381 by axel riffard in 5.3 branch]
2023-08-15 12:47:37 -04:00
Jeff Fisher
b8de9fb881 UE-189611 ARImageDetection Fails to Launch on Android - Error: Unable to load plugin 'XRBase'
-The logic in NativeProjects.cs IsHybridContentOnlyProject which decides whether we need to build an executable for a project was always using the buildhost platform (usually win64) to decide which plugins were active.  This caused it to miss enabled code plugins that build for the actual target platform but not the host platform and potentially not do an executible build when one is required.
-Now we pass the TargetPlatforms for the current build into ConditionalMakeTempTargetForHybridProject so that we can test against them.  If any project in this list needs code built we will make a temp target.
#jira UE-189611 UE-192833
#review-27092992
#rb Josh.Adams

[CL 27101635 by Jeff Fisher in 5.3 branch]
2023-08-15 10:02:42 -04:00
adam kinge
11980dc023 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 27022417 by adam kinge in 5.3 branch]
2023-08-11 00:53:13 -04:00
Josh Adams
a48d7ea0fe - Fixed making .apps using a StagingDirectory override with code-based projects
#jira UE-189819, UE-189368
#rb trivial

[CL 26847789 by Josh Adams in 5.3 branch]
2023-08-04 11:24:50 -04:00
Josh Adams
37ad814262 - 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 26832183 by Josh Adams in 5.3 branch]
2023-08-03 18:51:52 -04:00
robert millar
5c6b64cc9d Allow bGatherThirdPartySource to be set from UBT xml config.
#rb joe.kirchoff

[CL 26761882 by robert millar in 5.3 branch]
2023-08-01 19:54:40 -04:00
Joe Kirchoff
d80ef641b0 Support for .natstepfilter
#rnx
#jira UE-190863
#jira UE-191341

#ushell-cherrypick of 26715542 by Joe.Kirchoff

[CL 26723572 by Joe Kirchoff in 5.3 branch]
2023-07-31 18:00:04 -04:00
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
christopher waters
95ea0ff61a Adding UnrealIntermediateEnvironment to allow different intermediate paths based on build settings.
This removes the old hack that renames the target based on nonunity being set while also adding a new intermediates folder for IWYU.

#jira UE-190274
#rb joe.kirchoff

[CL 26514773 by christopher waters in 5.3 branch]
2023-07-21 12:03:57 -04:00
joe kirchoff
10301fef85 UnrealBuildTool: Allow configuring toolchain and toolchain version to control what msvc version is used when clang is used to compile
#rb Tim.Smith

[CL 26449760 by joe kirchoff in 5.3 branch]
2023-07-18 18:08:05 -04:00
bryan sefcik
97a993d0d4 Moved the default VS include paths to the common file.
#jira

[CL 26449732 by bryan sefcik in 5.3 branch]
2023-07-18 18:06:50 -04:00
calvin zheng
3cbb71e895 - Yet another fix, this time for UnrealEditor standalone with clean build
#rb self

#ushell-cherrypick of 26159153 by Josh.Adams

[CL 26159286 by calvin zheng in 5.3 branch]
2023-06-21 15:39:06 -04:00
calvin zheng
4b612a259b - Fixed errors with plugin modules failing to find a project to put into (better fix then yesterday's for the AdditionalPluginDirectories)
#rb self
#[robomerge] 5.3

#ushell-cherrypick of 26156103 by Josh.Adams

[CL 26156426 by calvin zheng in 5.3 branch]
2023-06-21 14:26:53 -04:00
calvin zheng
fb7cad540f - Fix crash with UnrealEditor builds, caused by earlier fix for AdditionalPluginDirectories warning
#rb trivial

#ushell-cherrypick of 26140047 by Josh.Adams

[CL 26152798 by calvin zheng in 5.3 branch]
2023-06-21 12:30:58 -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