This change drastically cut down on the generated project folder size:
Before: 641 MB
After: 77.1 MB
#preflight 643994e80a5a4b944e6308a1
#fyi joe.kirchoff
[CL 25047199 by bryan sefcik 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]
Technically, it did work on the affected platforms, because we could modify a .cpp file and deploy this change, but UBT ran a full build script including compilation, linking and symbol generation, which is unnecessary because only compilation is needed. Thus, it increased the update time from 1-10 sec to 60 seconds (the time is dominated by the link time).
Fixed by adding a special Target to our projects that runs only compilation steps.
#preflight 6348626af622f6c4bbd93647
#rb Joe.Kirchoff,
#jira UE-165149
#rn fix Sony Live code edit (edit and continue) no longer triggers linking when applying code changes. This way iteration time is significantly reduced.
[CL 22534283 by Wojciech Krywult in ue5-main branch]
All platforms preflight 62f67851b66d5d9313f240b6
#rb Devin.Doucette
#preflight 62f67866bd746abb99c0be54
[CL 21362093 by chris constantinescu in ue5-main branch]
#fyi Joe.Kirchoff
#rnx
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: Ignore VCProjectFileSettings.MaxSharedIncludePaths for VS2022
#rnx
#rb none
#preflight 62b62e6fa072cea0b5989414
#preflight 62b9b58bba62f4498a3209c2
[CL 20830204 by Tim Smith in ue5-main branch]
- test-specific targets and modules are constructed by RulesAssembly which removes a lot of spaghetti code
- no more excluding the Tests folder by default which is guaranteed to mislead users #fyi Jon.Nabozny
- test compilation in Tests is controlled through WITH_LOW_LEVEL_TESTS
- preparation code for switching tests between Catch2 / TestAutomation Fmwk
Nightly LLT PF 6260431391376845adeb4c40
#rnx
#preflight 62602d50dd47b4ad2173c30b
[CL 19834665 by chris constantinescu in ue5-main branch]