Ben Marsh
1cc0be0a06
Separate all the project specific settings for a platform into a separate class (derived from UEBuildPlatformContext), and remove the last few references to the global .uproject file path. Checks for SupportsWindowsXP() are now done inside the toolchain.
...
#codereview Peter.Sauerbrei
[CL 2711835 by Ben Marsh in Main branch]
2015-09-30 16:40:04 -04:00
Ben Marsh
69546a4c63
Disable the compiler toolchain log message when we're generating project files on Linux; we're not actually compiling anything (just creating a large number of targets), so it's not helpful.
...
#codereview Dmitry.Rekman
[CL 2709255 by Ben Marsh in Main branch]
2015-09-29 08:57:36 -04:00
Ben Marsh
1adc540d76
Instance UEBuildPlatform for each supported platform so we don't have to keep passing an UnrealTargetPlatform back into it, and separate the SDK logic for each group of platforms into a separate class (UEBuildPlatformSDK). Add a new factory class (UEBuildPlatformFactory) for creating them and binding them together.
...
[CL 2709253 by Ben Marsh in Main branch]
2015-09-29 08:56:10 -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
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
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
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
Dmitry Rekman
93e0abe8d4
Move LinuxNativeDialogs to a more appropriate location.
...
- Build script corrected.
- Unfortunately, yet another hardcoded rpath.
#codereview Ben.Marsh
[CL 2519366 by Dmitry Rekman in Main branch]
2015-04-21 11:51:45 -04:00
Dmitry Rekman
7191e4f9bd
Linux: gcc-like compiler output when not cross-compiling.
...
- Cross-compiling is unaffected (warnings/etc are clickable in MSVC), but this makes errors/warnings clickable in IDEs that expect gcc-like format.
[CL 2505572 by Dmitry Rekman in Main branch]
2015-04-08 14:51:57 -04:00
Dmitry Rekman
9408a83973
Linux: exempt some warnings from -Werror.
...
- After discussion with Core/Platform teams, it was determined that these warnings [would] affect build failure rate too much.
- We do not want to suppress them altogether though and they are going to be fixed as time and resources permit.
#codereview Josh.Adams, Michael.Trepka, Chris.Babcock, Marcus.Wassmer, Ankit.Khare
[CL 2488268 by Dmitry Rekman in Main branch]
2015-03-23 16:01:17 -04:00
Dmitry Rekman
0767242767
Switch UBT to use clang 3.6.0 Linux cross-toolchain.
...
- -Wno-inconsistent-missing-override suppressed, pending discussion with the Core team.
#codereview Steve.Robb, Robert.Manuszewski, Josh.Adams
[CL 2487976 by Dmitry Rekman in Main branch]
2015-03-23 13:07:46 -04:00
Ben Marsh
9c39abe349
Remove symbol stripping for Rocket from UBT. Will strip inside build process instead.
...
[CL 2486710 by Ben Marsh in Main branch]
2015-03-20 16:23:30 -04:00
Dmitry Rekman
c313b56549
Linux: do not inhibit optimizations in Development and higher configurations.
...
- bCreateDebugInfo is pretty much true all the time.
[CL 2473973 by Dmitry Rekman in Main branch]
2015-03-10 13:00:25 -04:00