- Added an example SwiftUI view shown on VisionOS, using UIHostingViewController (must be created in Swift, not Obj-C)
- Refactored AppleToolChainSettings and children so AppleToolChain can have a single Swift compile function, and still target the proper toolchain (more cleaning up and pulling into AppleToolChain should now be possible)
#rb joe.kirchoff
[CL 26346396 by Josh Adams in ue5-main branch]
* Use object type rather than var
* Remove double newlines
* Use pattern matching
#rnx
#preflight 647780095d23eca37d28a387
[CL 25706751 by joe kirchoff in ue5-main branch]
* Add MinimumCpuArchitectureX64 enum, valid values are None, AVX, AVX2, & AVX512. Default value is None
* Obsolete boolean bUseAVX in favor of MinCpuArchX64
* Add MinCpuArchX64 setting to TargetRules
* Add Optional MinCpuArchX64 to ModuleRules, will override any target setting if not null
* Only pass this /arch for x64 platforms
* Can be controlled on the command line with -MinCpuArchX64=
#jira UE-181851
#rb Bryan.Sefcik
#preflight 6425fc7f91589478cdc7867c
[CL 24861220 by Joe Kirchoff in ue5-main branch]
- Disabled it with IOS stub project gneeration that doesn't need the data (it can be slow)
#rb joe.kirchoff
#preflight 641a0b24ec01de1664e1bd7d
[CL 24738624 by Josh Adams in ue5-main branch]
- Enabled for Xcode, added support but left disabled for VisualStudio
- For Games and Samples with multiple projects, a solution folder now contains them
#rb joe.kirchoff
#preflight 63efb20061378b7ea02bc32d
[CL 24285567 by Josh Adams in ue5-main branch]
- Creates the UnrealArchitectures class, which wraps a list of UnrealArch objects
- UnrealArch is a single architecture, expandable enum-like struct
- There is no more concept of "no/default architecture", there is always a valid active architecture when building
- Most uses of "string Architecture" are replaced with one of the two above, depending if multiple architectures are supported or not
- UnrealArch has some platform-extensions for platform-specific naming (like Linux adds in LinuxName that turns, for instance, Arm64 -> aarch64-unknown-linux-gnueabi, which is used in folder names, etc)
- UnrealArch has bIsX64 which can be used determine intel instruction set (as opposed to arm)
- TargetRules class has an "Architecture" accessor that will return a single architecture if the active architectures is a single architecture, or throw an exception if multiple. This is useful in a majority of the cases where a paltform can only have a single architecture active in TargetRules (microsoft platforms, for instance, will create separate targets when compiling multiple architectures at once)
- Added UnrealArchitectureConfig class, which contains all the architecture information for a platform (what architectures are supported, what ones are currently active for given project, etc)
#preflight 63c81fb5b065224750a1759e
#rb mike.fricker,roman.dzieciol,joe.kirchoff,dmytro.vovk,brandon.schaefer [various parts]
#p4v-preflight-copy 23562471
[CL 23829977 by josh adams in ue5-main branch]
VS Code project file generator argument to skip compile commands json files.
VS Code project file generator adds VS Code extension id as configuration provider to configurations.
Add optional implementable funcion for toolchains to return the path to default C++ compiler.
Add rootdirectory= argument to provide root directory if UBT is published to a different directory than standard.
#jira none
#preflight 635c08e6052cb0bae6a5371a
[CL 22831178 by Robert Millar in ue5-main branch]
[FYI] Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealHeaderTool: BuildSetting.V3 (currently disabled) which disallows adding module parent directory to include path list
#rnx
#rb bryan.sefcik
#preflight 634df3105f008d633fd571d2
[CL 22795918 by joe kirchoff in ue5-main branch]