Commit Graph

319 Commits

Author SHA1 Message Date
galeone
431c09150e [UBT] Add support for Code coverage on Linux
#rb Brandon.Schaefer, Jerome.Delattre, Joe.Kirchoff

[CL 25794147 by galeone in ue5-main branch]
2023-06-05 12:03:25 -04:00
josh adams
f6381544e2 - Allow a project to override the Main SDK version for a platform (the platform's project Engine.ini would set
[OverrideSDK]
  SDKVersion=x.y.z
and AutoSDK, or anything using GetMainVersion(), would use that version string instead
- If multiple targets are built in one run of UBT/UAT, it will error out because there is no support to switch SDKs (and builds happen in parallel, etc)
- This is not a complete solution, because it can cause problems with shared tools like ShaderCompileWorker, when different projects are on different SDKs and they have one SCW to share
- Renamed GetMainVersion to GetMainVersionInternal(), and wrapped that in a new non-vitual GetMainVersion() that calls GetMainVersionInternal() (and handles the ini overrides)
#rb david.harvey,dave.barrett
#jira UE-185364
#preflight 647a12e7b0670733186c928e

[CL 25767233 by josh adams in ue5-main branch]
2023-06-02 13:42:59 -04:00
arciel rekman
7d6b86f71d Regularize support for LTO/ThinLTO for Linux.
- Issue a warning when ThinLTO flag is specified on the command line but has no effect.

#rb Brandon Schaefer
[REVIEW]
#preflight 647a06fcf40c6565433192ac

[CL 25762597 by arciel rekman in ue5-main branch]
2023-06-02 11:26:41 -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
brandon schaefer
900964e01b Add a Suffix when compiling with AutoRTFM compiler for Linux builds
#rb none
#preflight none
[FYI] Neil.Henning, Michael.Nicolella

[CL 25203430 by brandon schaefer in ue5-main branch]
2023-04-26 14:13:52 -04:00
yiliang siew
2eb3d3add2 Adds a new bEnableLibFuzzer option for desktop platforms.
#rb Joe.Kirchoff
[FYI] Brandon.Schaefer
#preflight 643f1cebb91c1307586cba5c

[CL 25099401 by yiliang siew in ue5-main branch]
2023-04-18 20:53:49 -04:00
danny couture
3782e2df04 Fix monolithic editor linux builds that are extremely large because debug symbols are not split properly
#rnx
#rb Brandon.Schaefer
#preflight 642abcf1da7f958370d8ad31

[CL 24891106 by danny couture in ue5-main branch]
2023-04-03 08:18:56 -04:00
bryan sefcik
78aa2dfd58 Did a pass through the code to make it thread safe.
#fyi joe.kirchoff
#preflight 6424da90e11ce5214fcbfde7

[CL 24849236 by bryan sefcik in ue5-main branch]
2023-03-29 21:12:39 -04:00
brandon schaefer
547593db87 Move to adding a TargetRules bool for using AutoRTFM Compiler
#rb Neil.Henning
[FYI] Michael.Nicolella
#preflight 6421fdc6973e609670b97622

[CL 24824162 by brandon schaefer in ue5-main branch]
2023-03-28 15:14:44 -04:00
james singer
38043bb2a0 Provide option to disable dump_syms where iteration speed is desirable. (-NoDumpSyms or set bDisableDumpSyms)
#jira UE-177205
#preflight 640a062228026468d9d37cf8
#review-24547341 @Brandon.Schaefer
#rb Brandon.Schaefer

[CL 24576891 by james singer in ue5-main branch]
2023-03-09 11:27:20 -05:00
Joe Kirchoff
ddcb912fe5 UnrealBuildTool: Remove CanUseParallelExecutor as it is no longer needed as the UAT ParallelExecutor has been removed and is obsolete.
#rnx
#rb trivial
#preflight 63fe749add78dd50f6247b02

[CL 24452546 by Joe Kirchoff in ue5-main branch]
2023-02-28 17:01:41 -05:00
bryan sefcik
897d3d015b Disabled pch chaining on Linux because it is crashing the compiler when compiling the CitySample.
#jira
[FYI] joe.kirchoff
#preflight 63e59ec7db0da0fdac5519b6

[CL 24114192 by bryan sefcik in ue5-main branch]
2023-02-09 22:38:41 -05:00
Joe Kirchoff
49941df8c8 UnrealBuildTool: Prevent multiple target leaking bundle dependencies on Mac
#rnx
#rb Josh.Adams
#preflight 63d1978cbe435f17b408210c
#preflight 63d1af24be435f17b40e38f4

[CL 23858824 by Joe Kirchoff in ue5-main branch]
2023-01-25 17:55:46 -05:00
Brandon Schaefer
6863e11254 Fix ASan crashing in getaddrinfo. Bug introduced in LLVM 15 compiler-rt
https://github.com/llvm/llvm-project/issues/59007

#jira UE-175022
#preflight none
#rb James.Singer, Robert.Seiver

[CL 23856128 by Brandon Schaefer in ue5-main branch]
2023-01-25 16:15:04 -05:00
Brandon Schaefer
2fd67649f5 Re-fix arch name change
#jira none
#rb none
#preflight none

[CL 23834394 by Brandon Schaefer in ue5-main branch]
2023-01-24 13:26:46 -05:00
Brandon Schaefer
1e616e242d Fix build failure from new arch changes
#jira none
#rb none
#preflight none

[CL 23834129 by Brandon Schaefer in ue5-main branch]
2023-01-24 13:18:17 -05:00
Brandon Schaefer
adaafd04a5 Fix missing ASan*.so when running non-monolithic
#jira none
#rb none
#preflight none
#fyi Robert.Seiver, James.Singer

[CL 23833926 by Brandon Schaefer in ue5-main branch]
2023-01-24 13:03:28 -05:00
josh adams
1610c3bee3 UnrealArch/UnrealArchitectures changes
- 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]
2023-01-24 09:30:28 -05:00
Brandon Schaefer
895c73720f Move to new 15.0.1 LLVM Linux Toolchain
#jira UE-174139
#rb none
#fyi Ryan.Hummer, Zack.Neyland, Robert.Seiver, James.Singer
#preflight 63cedc59b91ac945f53281b9

[CL 23821785 by Brandon Schaefer in ue5-main branch]
2023-01-23 16:32:46 -05:00
Brandon Schaefer
e40d105c99 Fix missing removal of function
#jira none
#rb none
#preflight none

[CL 23795661 by Brandon Schaefer in ue5-main branch]
2023-01-20 15:07:51 -05:00