Commit Graph

99 Commits

Author SHA1 Message Date
Ben Marsh
b2acdadf67 Remove unnecessary UEBuildTarget parameter being passed to build platforms.
[CL 2707256 by Ben Marsh in Main branch]
2015-09-27 13:10:21 -04:00
Ben Marsh
0aa484bda0 Toolchains are now instanced to allow storing project and target specific configuration details. Required for UBT to support multiple targets. Removed IUEToolChain, which wasn't being used directly.
[CL 2707252 by Ben Marsh in Main branch]
2015-09-27 13:05:49 -04:00
Ben Marsh
385dcb4a3d Instance deployment handlers, rather than having a single shared instance. Required to support multiple build targets in UBT. Creation is through a method on the UEBuildPlatform.
[CL 2706031 by Ben Marsh in Main branch]
2015-09-25 08:37:49 -04:00
Ben Marsh
2802f43c08 Convert everything in UBT to use standard C# XML comments, so IntelliSense can display useful information in tooltips.
[CL 2704759 by Ben Marsh in Main branch]
2015-09-24 13:47:13 -04:00
Ben Marsh
df83418aeb Auto-format UBT for consistent spacing. All default Visual Studio settings, but tabs instead of spaces.
[CL 2704665 by Ben Marsh in Main branch]
2015-09-24 12:37:21 -04:00
Dmitry Rekman
41f110f4f2 UBT: Remove unused compiler arguments in Linux builds.
- Also fix a shell script for incremental rebuilds.

[CL 2692663 by Dmitry Rekman in Main branch]
2015-09-15 19:02:34 -04:00
Ben Marsh
511af0caa7 Only add shader format and target platform modules as dependencies of the TargetPlatform module. Adding them for every single module in a target has a huge effect on the number of modules we need to resolve (UEBuildTarget.FindOrCreateModuleByName() was being called 200,000 times when generating project files, thanks to SCW and UFE triggering these code paths).
#codereview Peter.Sauerbrei

[CL 2684709 by Ben Marsh in Main branch]
2015-09-09 11:03:25 -04:00
Ben Marsh
9610023ca5 Use FileReference and DirectoryReference classes instead of strings for paths. Massively reduces the amount of paranoid calls to GetFullPath(), CleanDirectorySeparators() et al., and improves performance for really common UBT operations like making relative paths or checking if files are under a directory. Strong typing ensures that intention of parameters is explicit.
[CL 2678429 by Ben Marsh in Main branch]
2015-09-03 08:47:24 -04:00
Ben Marsh
42c53cf179 Change IUEBuildPlatform.ModifyNewlyLoadedModule to IUEBuildPlatform.ModifyModuleRules(). Only modifying the rules object rather than the implementation itself makes it easier to optimize caching module references.
[CL 2672146 by Ben Marsh in Main branch]
2015-08-28 07:27:26 -04:00
Dmitry Rekman
3874b31cff Linux: do not compile ICU for server targets.
- Saves memory/code size, and servers shouldn't need that (by default at least).

(Merging CL 2665433 to main)

[CL 2669117 by Dmitry Rekman in Main branch]
2015-08-26 08:49:08 -04:00
Dmitry Rekman
3d4c157110 Revert the previous change and disable XGE again.
- Modular builds (editor, UT server) seem to be broken by this since FixDeps step probably is not listing its prerequisites correctly.

#codereview Ben.Marsh

[CL 2644331 by Dmitry Rekman in Main branch]
2015-08-04 19:39:07 -04:00
Dmitry Rekman
85c1194619 Enabling XGE for Linux in hopes that the crashes are gone.
#codereview Ben.Marsh

[CL 2643908 by Dmitry Rekman in Main branch]
2015-08-04 15:22:37 -04:00
Dmitry Rekman
cc2bb0b833 UBT: switch to a clang 3.6.0 Linux cross-toolchain (again).
[CL 2592250 by Dmitry Rekman in Main branch]
2015-06-18 13:43:54 -04:00
Josh Adams
01c4d45e38 - Renamed Desktop target platform to AllDesktop to reduce conflicts with Desktop directories [UEPLAT-894]
#codereview peter.sauerbrei,ben.marsh

[CL 2588676 by Josh Adams in Main branch]
2015-06-16 11:09:27 -04:00
Peter Sauerbrei
882f79f039 Changes to reduce log spew in stdout for UAT and GUBP
UEB-156
#uat
#codereview ben.marsh, robert.manuszewski

[CL 2588630 by Peter Sauerbrei in Main branch]
2015-06-16 10:42:46 -04:00
Ben Marsh
e0a010415b Treat shadow variable warnings as errors in non-unity builds.
[CL 2582001 by Ben Marsh in Main branch]
2015-06-09 18:14:52 -04:00
nakosung
6366f1bdef PR #1135: Support enabling exceptions in a Linux build.
- Contributed by nakosung.

[CL 2563680 by Dmitry Rekman in Main branch]
2015-05-22 19:57:14 -04:00
Ben Marsh
16473b93ed Turn shadow variable warnings back into warnings; they are breaking too many builds.
#codereview Marc.Audy

[CL 2561102 by Ben Marsh in Main branch]
2015-05-21 13:59:00 -04:00
Dmitry Rekman
c22c949712 Linux: fix line numbers and source file info missing in callstacks.
- Forcing DWARF3 since libdwarf (from MIT-licensed elftoolchain) doesn't support DWARF4 (which clang 3.5+ defaults to). Can cause binary size regression.
- Extended TestPAL to test crashes/fatal logs.
- Rearranged switches so deoptimizing switches are only applied to debug builds (development still have meaningful info in debugger).

#coderview Bob.Tellez, Josh.Markiewicz

[CL 2559036 by Dmitry Rekman in Main branch]
2015-05-20 13:02:57 -04:00
Bob Tellez
1804e139d2 [AUTOMERGE]
#UE4 Re-enabling debugging symbols for development linux builds. These are needed to debug crashes in development executables.

--------
Integrated using branch Ue4-To-UE4-Fortnite-Simple (reversed) of change#2556071 by Bob.Tellez on 2015/05/18 18:43:00.

[CL 2558927 by Bob Tellez in Main branch]
2015-05-20 11:53:37 -04:00
Ben Marsh
6b1d263572 Make bEnableShadowVariableWarnings a per-module setting, so we don't break reuse of shared build intermediates.
#codereview Marc.Audy, Wes.Hunt

[CL 2547047 by Ben Marsh in Main branch]
2015-05-12 08:03:21 -04:00
Dmitry Rekman
b23f952872 Linux: only strip debug info and not symbols (UE-15001).
- The same change as in CL 2539603.

#codereview Chris.Babcock, Josh.Adams

[CL 2539623 by Dmitry Rekman in Main branch]
2015-05-06 14:31:44 -04:00
Ben Marsh
f1d8b60d57 Add symbol stripping at the IUEToolChain level. Implemented for Windows, Linux, Android arm7.
#codereview Dmitry.Rekman, Chris.Babcock

[CL 2527125 by Ben Marsh in Main branch]
2015-04-27 12:53:24 -04:00
Dmitry Rekman
cf13523ccd Linux: suppress '-W-inconsistent-missing-override' warning for 4.8
[CL 2521581 by Dmitry Rekman in Main branch]
2015-04-22 15:40:07 -04:00
Marc Audy
5eba946116 Allow -Wshadow to be enabled via build configuration
[CL 2520977 by Marc Audy in Main branch]
2015-04-22 09:58:49 -04:00