Commit Graph

191 Commits

Author SHA1 Message Date
Joe Kirchoff
73a591b351 UnrealBuildTool: Remove old debugging code
#rnx
#rb trivial
#preflight skipped

[CL 20528493 by Joe Kirchoff in ue5-main branch]
2022-06-06 17:38:24 -04:00
Joe Kirchoff
5b51bfd2f8 UnrealBuildTool: Move sanitizer flags to ClangToolChain
#preflight 629e6c126e36d50d05221579

[CL 20528326 by Joe Kirchoff in ue5-main branch]
2022-06-06 17:28:34 -04:00
Joe Kirchoff
0e2b86ca20 UnrealBuildTool: Move clang debug and optimization args to virtual functions
#rb none
#rnx
#preflight 6297e004e809e387be25c7f9

[CL 20471856 by Joe Kirchoff in ue5-main branch]
2022-06-02 13:13:59 -04:00
Joe Kirchoff
78ca8a8fe1 UnrealBuildTool Remove need for ar+ranlib since Linux min clang version supports lld
#rb Brandon.Schaefer
#rnx
#preflight 6297cd32144bede4dd4192bf

[CL 20458509 by Joe Kirchoff in ue5-main branch]
2022-06-01 16:41:24 -04:00
Joe Kirchoff
63d5c71b0d UnrealBuildTool: Add BinarySuffix to BuildHostPlatform
#rnx
#rb trivial
#preflight 628ebe53e746de496100396b

[CL 20373816 by Joe Kirchoff in ue5-main branch]
2022-05-25 19:59:27 -04:00
Ben Marsh
cbb950c578 UBT: Use ILogger throughout UBT, rather than legacy EpicGames.Core.Log methods. All output going forwards should use structured logging rather than String.Format style logging.
#preflight 628e9dc6e746de4961f60032

[CL 20373777 by Ben Marsh in ue5-main branch]
2022-05-25 19:55:37 -04:00
Joe Kirchoff
c512a89ace Rename UnrealBuildTool.EngineSourceDirectory -> Unreal.EngineSourceDirectory
#rnx
#rb trivial
#preflight 628e9fdaf622d972b59ebe85

[CL 20372061 by Joe Kirchoff in ue5-main branch]
2022-05-25 17:54:39 -04:00
Josh Adams
56ebcb9323 - Changed ClangToolchain to use absolute paths for errors, so IDEs are better able to go to the file/line of the error
#rb joe.kirchoff
#jira none
#preflight 628e7f39731cfa46fcd165da

[CL 20370476 by Josh Adams in ue5-main branch]
2022-05-25 16:01:26 -04:00
Michael Sartain
1714d17ba8 Fix build break issue 174391
#fyi Brandon.Schaefer
#rb none
#jira none
#preflight none

[CL 20364748 by Michael Sartain in ue5-main branch]
2022-05-25 10:54:53 -04:00
marc audy
d49ee66cdc Fix up toolchain in light of clang tool chain options refactor
[CODEREVIEW] joe.kirchoff, Michael.Sartain
#rnx

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 20360377 in //UE5/Release-Engine-Staging/...
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20360695 by marc audy in ue5-main branch]
2022-05-25 02:13:46 -04:00
michael sartain
0140c2676c Add LTO type to Linux build information
#rnx
[FYI] Brandon.Schaefer
#preflight none

#ROBOMERGE-AUTHOR: michael.sartain
#ROBOMERGE-SOURCE: CL 20358864 via CL 20360263 via CL 20360323
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v948-20297126)

[CL 20360688 by michael sartain in ue5-main branch]
2022-05-25 02:13:19 -04:00
Joe Kirchoff
6c92065094 UnrealBuildTool: Merge various Clang ToolChainOptions enums
#rb none
#rnx
#preflight 62843567925bbe69df8dc8d4

[CL 20358298 by Joe Kirchoff in ue5-main branch]
2022-05-24 19:41:41 -04:00
Joe Kirchoff
2096e9af16 UnrealBuildTool: Move more common warning disables to ClangToolChain
#rnx
#rb none
#preflight 628bce97016e5daa1cc535ba
#preflight 628bd06469091e8bfe1303e7

[CL 20333841 by Joe Kirchoff in ue5-main branch]
2022-05-23 14:35:21 -04:00
Joe Kirchoff
1e55c7850b UnrealBuildTool: Move PGO optimize and shipping warning flags to ClangToolChain
#rnx
#rb none
#preflight 62858274614041edb7b07186

[CL 20271722 by Joe Kirchoff in ue5-main branch]
2022-05-18 19:52:23 -04:00
joe kirchoff
ae5f805c7b UnrealBuildTool: Merging common clang warnings to ClangToolChain base class. Moved all warnings to overridden functions out of GetCompileArguments_Global
Removed -Wsequence-point (Synonym for -Wunsequenced) from Linux as it is enabled by default
#rb none
#rnx
#preflight 62841106114e08fa2f3ebdfe

[CL 20251810 by joe kirchoff in ue5-main branch]
2022-05-17 17:37:13 -04:00
joe kirchoff
f201a3fdae [Backout] - CL20248654
#fyi Joe.Kirchoff
Original CL Desc
-----------------------------------------------------------------
UnrealBuildTool: Merging common clang warnings to ClangToolChain base class. Moved all warnings to overridden functions out of GetCompileArguments_Global

Removed -Wsequence-point (Synonym for -Wunsequenced) from Linux as it is enabled by default
#rb none
#rnx
#preflight 6283e6e04316db80d1a3d973

[CL 20249554 by joe kirchoff in ue5-main branch]
2022-05-17 15:35:45 -04:00
Joe Kirchoff
b5055e62ef UnrealBuildTool: Merging common clang warnings to ClangToolChain base class. Moved all warnings to overridden functions out of GetCompileArguments_Global
Removed -Wsequence-point (Synonym for -Wunsequenced) from Linux as it is enabled by default
#rb none
#rnx
#preflight 6283e6e04316db80d1a3d973

[CL 20248654 by Joe Kirchoff in ue5-main branch]
2022-05-17 15:00:59 -04:00
Joe Kirchoff
3ed8a895d6 UnrealBuildTool: Update clang toolchains (except Android) to fill a list of string arguments rather than returning a single string
#rb none
#rnx
#preflight 627ecada5a0a06a57ea881a1

[CL 20190395 by Joe Kirchoff in ue5-main branch]
2022-05-13 18:08:52 -04:00
Joe Kirchoff
3fd8f7fbde UnrealBuildTool: Add minimal GetCompileArguments_Global in ClangToolChain. Currently only sets -e, -pipe, header include paths, & preprocessor definitions
#rb trivial
#rnx
#preflight 627d9ec0a82f3adab8b85ab0

[CL 20182062 by Joe Kirchoff in ue5-main branch]
2022-05-13 11:34:49 -04:00
Joe Kirchoff
e45cc77314 UnrealBuildTool: Move include path and preprocessor definition arguments to ClangToolChain virtual functions
#rb trivial
#rnx
#preflight 627c3f3e1e74993343ba1846

[CL 20153646 by Joe Kirchoff in ue5-main branch]
2022-05-11 19:14:13 -04:00
Joe Kirchoff
880c5bfd6e UnrealBuildTool: Begin moving common functions from clang based toolchains to base ClangToolChain.
#rb brandon.schaefer
#rb chris.babcock
#preflight 627ad0017e5f24d1ede6d5d0
#preflight 627ada7a0a5817c9d91562c0
#rnx

* Move ClangVersion variables to base class and share function to check version. A separate change will add a virtual function for parsing the clang version for each toolchain as to not add complexity to this change.
* GetCppStandardCompileArgument: Used by all, no differences
* GetCompileArguments_CPP: Used by all. Switch & Apple are overridden
* GetCompileArguments_C: Used by all, no differences
* GetCompileArguments_MM: Used by Linux & Apple. Apple is overridden.
* GetCompileArguments_M: Used by Linux & Apple. Apple is overridden.
* GetCompileArguments_CPP: Used by all. Switch & Apple are overridden.
* GetRTTIFlag: Used by Linux & Apple, no differences.

[CL 20131754 by Joe Kirchoff in ue5-main branch]
2022-05-10 19:08:08 -04:00
Joe Kirchoff
f558da572e UnrealBuildTool: Move include paths and defines into GetCLArguments_Global for LinuxToolChain
#rb trivial
#rnx
#preflight 627a98f4c42338be6525283e

[CL 20125291 by Joe Kirchoff in ue5-main branch]
2022-05-10 13:13:49 -04:00
brandon schaefer
4b12cc89bd Update Linux and libcxx/libcxxabi to new 13.0.1 LLVM
#jira UE-136811, UE-126026
#preflight 626829f6853fdb6fddc18797

#ROBOMERGE-OWNER: brandon.schaefer
#ROBOMERGE-AUTHOR: brandon.schaefer
#ROBOMERGE-SOURCE: CL 20030619 in //UE5/Release-5.0/... via CL 20045582
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v943-19904690)

[CL 20047117 by brandon schaefer in ue5-main branch]
2022-05-04 15:37:44 -04:00
Joe Kirchoff
96772589c4 UnrealBuildTool: Compile PCH with -fpch-instantiate-templates for Linux if compiling with clang 11+
#rb jonathan.adamczewski
#preflight 626984b40d4ac78d717f075b

Initial testing has shown this PCH flag improves clang compile time by up to 20%

This flag is the default for clang-cl so it already applies to windows clang builds. Other clang based platforms will be supported as additional testing is done.

https://reviews.llvm.org/D69585

Linux UnrealEditor Development:
- Before Total CPU Time: 114072.34375 s
- Before UBT Run Time: 00:26:05
- After Total CPU Time: 86165.671875 s
- After UBT Run Time: 00:20:43
Total CPU Time improvement 24.46%
UBT Run Time improvement 20.58%

Linux UnrealGame Development:
- Before Total CPU Time: 23445.140625 s
- Before UBT Run Time: 00:09:13
- After Total CPU Time: 18492.71875 s
- After UBT Run Time:  00:07:52
Total CPU Time improvement 21.12%
UBT Run Time improvement 13.56%

[CL 19943838 by Joe Kirchoff in ue5-main branch]
2022-04-27 14:34:39 -04:00
Joe Kirchoff
c4a445ac71 UnrealBuildTool: Mac and Linux -fpch-validate-input-files-content
This flag validates pch inputs using content only when the mtime check fails, allowing the build to not fail if the content does not actually differ.

#rb jonathan.adamczewski
#rnx
#preflight 6268708c820fbeb9a434bc28

[CL 19931628 by Joe Kirchoff in ue5-main branch]
2022-04-26 19:10:29 -04:00