Commit Graph

152 Commits

Author SHA1 Message Date
brandon schaefer
eea6e4c553 Allow overriding of CanUseAdvancedLinkerFeatures
#jira UE-91610
#rb Arciel.Rekman

#ROBOMERGE-SOURCE: CL 12725322 in //UE4/Release-4.25/... via CL 12725325 via CL 12781721
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863)

[CL 12782533 by brandon schaefer in Main branch]
2020-04-14 13:39:47 -04:00
Ben Marsh
d6d7c939e5 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 12726184 by Ben Marsh in Main branch]
2020-04-10 11:30:32 -04:00
josh adams
90ff579ecc - UBT/C++ changes needed for new Restricted locations
- Does not have the changes for new .ini file locations
#rb ben.marsh

#ROBOMERGE-SOURCE: CL 12676628 via CL 12676630 via CL 12676633
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12676637 by josh adams in Main branch]
2020-04-08 15:07:46 -04:00
brandon schaefer
597249b740 Dont hard code c++14 in LinuxToolchain
#jira UE-91573
#rb Arciel.Rekman

#ROBOMERGE-SOURCE: CL 12633891 in //UE4/Release-4.25/... via CL 12633900 via CL 12633917
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12633936 by brandon schaefer in Main branch]
2020-04-06 16:46:17 -04:00
brandon schaefer
f36cfa8632 Only append sanatizer args for monolithic builds
#jira UE-91519
#rb Michael.Sartain

#ROBOMERGE-SOURCE: CL 12579869 in //UE4/Release-4.25/... via CL 12579901 via CL 12579935
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v675-12543919)

[CL 12579940 by brandon schaefer in Main branch]
2020-04-02 18:01:47 -04:00
michael sartain
43ef13a97b Fix UnrealBuildTool unused variable warnings
#jira none
#rb Ben.Marsh
[FYI] Andrew.Grant, Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 12224860 in //UE4/Release-4.25/... via CL 12224862
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v663-12210973)

[CL 12224868 by michael sartain in Main branch]
2020-03-16 19:04:42 -04:00
ben marsh
09ca12ccef Refactor UBT to use an interface (IActionGraphBuilder) to construct the action graph. Response files are also constructed through this interface, allowing them to be tracked as dependencies (will be added in subsequent change).
#rb none
#jira

#ROBOMERGE-SOURCE: CL 12038895 in //UE4/Release-4.25/... via CL 12038911
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v657-12064184)

[CL 12076066 by ben marsh in Main branch]
2020-03-09 13:20:14 -04:00
michael sartain
b36f085351 Add protected to bGdbIndexSection bool
#jira none
#rb Brandon.Schaefer, Arciel.Rekman

#ROBOMERGE-SOURCE: CL 11567407 in //UE4/Release-4.25/... via CL 11567420
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11585112 by michael sartain in Main branch]
2020-02-22 16:56:15 -05:00
michael sartain
42f5786312 Add bGdbIndexSection bool to LinuxToolChain
#rb Arciel.Rekman, Brandon.Schaefer
#jira none

#ROBOMERGE-SOURCE: CL 11566988 in //UE4/Release-4.25/... via CL 11566997
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11582230 by michael sartain in Main branch]
2020-02-21 20:08:57 -05:00
michael sartain
86c4588fa3 Linux: Build with -gdb-index with Clang v9 and above
On my machine, this cuts symbol loading time (breaking at main) from 45 seconds
to 17 seconds (with gdb v8.3.1).

#jira none
#rb Brandon.Schaefer
[FYI] Arciel.Rekman

#ROBOMERGE-SOURCE: CL 11551587 in //UE4/Release-4.25/... via CL 11551601
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11578203 by michael sartain in Main branch]
2020-02-21 15:05:26 -05:00
michael sartain
b328bf8861 Linux: Always use lld linker with clang v9 and above
#jira none
#rb Brandon.Schaefer
[FYI] Arciel.Rekman

#ROBOMERGE-SOURCE: CL 11551479 in //UE4/Release-4.25/... via CL 11551487
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11578201 by michael sartain in Main branch]
2020-02-21 15:05:23 -05:00
brandon schaefer
fe0c90663c Add linker flag for folding reducing binary output size
#rb Chris.Babcock
[FYI] Bart.Hawthorne


#ROBOMERGE-SOURCE: CL 11556950 via CL 11556967 via CL 11556979
#ROBOMERGE-BOT: (v654-11333218)

[CL 11556986 by brandon schaefer in Main branch]
2020-02-19 19:01:38 -05:00
michael sartain
d4ed4a224d Linux AArch64 libs for FreeType2 v2.10.0, ICU 64.1, and HarfBuzz 2.4.0
Includes BuildForLinuxAArch64.sh cross compilation scripts

Adds LinuxAArch64 back to installed engine builds (CL 11419001)

#jira UE-88745
#rb Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 11452535 in //UE4/Release-4.25/...
#ROBOMERGE-BOT: RELEASE (Release-4.25 -> Release-4.25Plus) (v654-11333218)

[CL 11452536 by michael sartain in 4.25-Plus branch]
2020-02-14 19:11:39 -05:00
brandon schaefer
3b45b4cc1b Move to new llvm clang 9.0.1 v16 toolchain
#jira UE-85219
#rb none
[FYI] Michael.Sartain

#ROBOMERGE-SOURCE: CL 11448348 in //UE4/Release-4.25/...
#ROBOMERGE-BOT: RELEASE (Release-4.25 -> Release-4.25Plus) (v654-11333218)

[CL 11448367 by brandon schaefer in 4.25-Plus branch]
2020-02-14 16:01:59 -05:00
Rolando Caloca
5b82f15def Copying //UE4/Dev-RenderPlat-Staging@11388153 to //UE4/Main
#rb none
#rnx

[CL 11388545 by Rolando Caloca in Main branch]
2020-02-12 13:27:19 -05:00
Brandon Schaefer
b16b8c8ac8 For non dll, assume our ../../.. structure for rpaths. Keep the new way to DSOs which will play a role when it comes to plugins etc.
#jira UE-87705
#rb none
#fyi Michael.Sartain

[CL 11359548 by Brandon Schaefer in Main branch]
2020-02-11 17:04:04 -05:00
brandon schaefer
77081a0b31 Append a suffix to the binary name before the extension when using llvm sanitizers to avoid overwriting binary/*.so names
#jira UE-88101
#rb none
[FYI] Michael.Sartain, Michael.Trepka


#ROBOMERGE-SOURCE: CL 11246101 via CL 11246102 via CL 11246103
#ROBOMERGE-BOT: (v647-11244347)

[CL 11254337 by brandon schaefer in Main branch]
2020-02-05 12:40:10 -05:00
brandon schaefer
aeff3dd4a1 Dont over optimize when using MSan the same way we do with ASan
#rb none
[FYI] Michael.Sartain


#ROBOMERGE-SOURCE: CL 11245851 via CL 11245858 via CL 11245866
#ROBOMERGE-BOT: (v0--1)

[CL 11245871 by brandon schaefer in Main branch]
2020-02-05 09:13:13 -05:00
brandon schaefer
24d21eb337 Fix XML in UEBuildLinux.cs
#rb none


#ROBOMERGE-SOURCE: CL 11122035 via CL 11122042 via CL 11122053
#ROBOMERGE-BOT: (v640-11091645)

[CL 11122062 by brandon schaefer in Main branch]
2020-01-27 16:57:24 -05:00
brandon schaefer
97e29642f5 When building monolithic statically link LLVM sanitizers
Enables support for LLVMs Memory Sanitizer (-EnableMSan)

#jira UE-87546
#rb none
[FYI] Michael.Sartain, Bob.Tellez


#ROBOMERGE-SOURCE: CL 11121567 via CL 11121591 via CL 11121594
#ROBOMERGE-BOT: (v640-11091645)

[CL 11121609 by brandon schaefer in Main branch]
2020-01-27 16:38:57 -05:00
Rolando Caloca
bbb9564388 Copying //UE4/Dev-RenderPlat-Staging@11110326 to //UE4/Main
#rb none
#rnx

[CL 11110369 by Rolando Caloca in Main branch]
2020-01-24 18:07:01 -05:00
Brandon Schaefer
75a2abda53 Add RPath workaround back, fix didnt completely handle all edge cases
#jira UE-86597
#rb none

[CL 10962294 by Brandon Schaefer in Main branch]
2020-01-13 16:21:05 -05:00
Ryan Durand
9ef3748747 Updating copyrights for Engine Programs.
#rnx
#rb none
#jira none

#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869242 in //Fortnite/Release-12.00/... via CL 10869536
#ROBOMERGE-BOT: FORTNITE (Main -> Dev-EngineMerge) (v613-10869866)

[CL 10870955 by Ryan Durand in Main branch]
2019-12-26 23:01:54 -05:00
michael lentine
f302c5d5fc Add cross platform ISPC support from Dev-Anim to accelerate Chaos computations.
#rb Ben.Marsh


#ROBOMERGE-OWNER: michael.lentine
#ROBOMERGE-AUTHOR: michael.lentine
#ROBOMERGE-SOURCE: CL 10727300 via CL 10727303 via CL 10727314 via CL 10727316
#ROBOMERGE-BOT: (v610-10636431)

[CL 10727317 by michael lentine in Main branch]
2019-12-13 23:35:01 -05:00
brandon schaefer
a007d0524d Rework how we generate our RPaths for Linux
Now works like this now:

Given a LibraryPath
/some/path/to/engine/root/Engine/Binaries/Linux

Split the LibraryPath to everything but the root path to the engine:
Engine/Binaries/Linux

Given the OuputFile.Location.Directory for the module being produced
/some/path/to/engine/root/Engine/Plugin/Foo/Binaries/Linux/

Make relative from the root engine dir against the OutputFile.Location.Directory to produce how many ../ are needed:
MakeRelative /some/path/to/engine/root  To -> /some/path/to/engine/root/Engine/Plugin/Foo/Binaries/Linux/ = ../../../../../

Now just combine ../../../../../ + Engine/Binaries/Linux as our new RPath. So now at runtime we can use this relative path to figure out where the *.so we depend on in that dir exists

#jira UE-85654
#rb none
[FYI] Arciel.Rekman, Michael.Sartain


#ROBOMERGE-SOURCE: CL 10644146 via CL 10644154
#ROBOMERGE-BOT: (v609-10634694)

[CL 10644157 by brandon schaefer in Main branch]
2019-12-10 17:48:07 -05:00