60 Commits

Author SHA1 Message Date
josh adams
45ca3b54a8 - Fixed the issue with Mac builds doing full builds every time
#rb josh.adams

[CL 34049980 by josh adams in ue5-main branch]
2024-05-31 18:52:00 -04:00
calvin zheng
a7d4533ccf Add Xcode indexing capability to iOS workspaces
#rb Josh.Adams

[CL 33216389 by calvin zheng in ue5-main branch]
2024-04-24 18:38:33 -04:00
joe kirchoff
89805bc149 UnrealBuildTool: Resolve IDE0008, IDE0049
#rnx

[CL 32687030 by joe kirchoff in ue5-main branch]
2024-04-02 20:29:22 -04:00
calvin zheng
aefa44f4ba Move source files from editor projects to game projects
#jira UE-200317
#rb Josh.Adams

[CL 29874395 by calvin zheng in ue5-main branch]
2023-11-21 15:36:07 -05:00
josh adams
f905f670fb - 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 27975320 by josh adams in ue5-main branch]
2023-09-18 17:12:52 -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
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
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
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
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
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
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
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
Josh Adams
cf110e2444 - Fixed codesigning of Content only projects
#jira UE-182870
#rb calvin.zheng
#preflight 643499034c3ccbbdf190f66b

[CL 24986156 by Josh Adams in ue5-main branch]
2023-04-10 19:24:00 -04:00
Josh Adams
1e6ed89565 - Frameworks working on Mac with Modern Xcode just like IOS frameworks
- Update frameworks with a Framework mode to differentiate between linking with it and copying to .app (in case of a static lib framework, or load-only dylib
- Updated CEF3 to work as a normal framework (if we have a universal framework binary, it would be simpler, because LoadInMain() would work without any paths)
#rb roman.dzieciol
#preflight 643484117536ac6b78ae7ce3

[CL 24985043 by Josh Adams in ue5-main branch]
2023-04-10 18:08:40 -04:00