- Refactored Android to match with Mac way of setting default
#rb chris.babcock,zack.neyland
#preflight 63d2f355be1970f882bccca6
[CL 23876026 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]
Fix bug where quick launching with cotf from a debug editor failed to launch the cook server due to a missing or old development editor executable.
Since the default executable is the the console -cmd.exe one, implement ShellExecute to open a separate shell for the server output, also fixes duplicated stdout lines in that window.
Improve BuildCookRun log messages for booting and shutting down server and client.
#jira UE-173897, UEENGQA-80955
#rb carlmagnus.nordin
#preflight 63ca9499c503023ab986b09c
[CL 23788926 by PJ Kack in ue5-main branch]
[FYI] Bob.Tellez
Original CL Desc
-----------------------------------------------------------------
#UE Pak performance. Save IoStore response files in the Engine saved folder instead of the Logs folder so they are not considered logs for build systems that look for and process logs.
[CL 23671673 by bob tellez in ue5-main branch]
Running ParseParamValue with a preset project path adds extra quotes to the output and breaks the IsPathRooted check
#rb eric.knapik, tim.kennedy
#preflight skip
[CL 23631773 by gary yuan in ue5-main branch]
- Added a Reopen command to P4Utils.cs
- Refactored Edit and Reopen (that take file list) into a BatchCommand function to split up huge file lists across multiple commands to respect a max commandline length
- Increased max comandline length from 1024 to the ProcessStartInfo max of 32699
#rb ryan.hummer,matt.peters
#preflight 63b59866d067708b9bfe3953
[CL 23575766 by Josh Adams in ue5-main branch]
- Added UAT params to pass architecture by target type (-editorarchitecture, -clientarchitecture, -serverarchitecture, -programarchitecture). Keeping -specifiedarchitecture for compat, and it will set all the other 4 if they are not specified
- Changed ProjectGenerator to find Program .uproject files (logic was looking for .Target files under the .uproject's directory, which is not the case for Programs)
- Added two params to GetProjectArchitectures:
- bGetAllSupported - used to get all supported architectures, not just the ones currently being built for (needed for XcodeProject to know what architectures to allow in the dropdown)
- bIsDistributionMode - used to get architectures to compile when making distribution builds (probably want to compile all architectures for distro's)
- Removed the MacExports.TargetsAlowedForAppleSilicon, updated XcodeProject code to use the new GetProjectArchitectures()
#rb david.harvey
#jira none
#preflight 63909f217e0feab0b7bd8241
[CL 23428114 by Josh Adams in ue5-main branch]
- Added a default implementation of GetCookPlatform, which allows BuildCookRun to run without needing any platform-specific automation DLLs (cook and staging can happen, but running/packaging would still need the platform automation dlls)
#rb graeme.thornton
#preflight 637d2ed8f514e1ded91d417b
[CL 23244387 by josh adams in ue5-main branch]
will deprecate `PRAGMA_DISABLE_OPTIMIZATION `in a following changelist after converting code to use `UE_DISABLE_OPTIMIZATION_SHIP`
added `UE_CHECK_DISABLE_OPTIMIZATION` to check for
`UE_DISABLE_OPTIMIZATION` being left in by accident
will enable `UE_CHECK_DISABLE_OPTIMIZATION` in a following changelist
#preflight 6372b159953c19d43537b088
[CL 23126725 by joe pribele in ue5-main branch]
#review-23101439 @Brandon.Schaefer, @Zack.Neyland
#jira UE-139484
#preflight 636e8ebc5368a3230aace90b
[CL 23108107 by robert seiver in ue5-main branch]