Commit Graph

973 Commits

Author SHA1 Message Date
Kwangsub Shin
4d082d3a7a Copy libgnustl_shared.so only when it's updated.
[CL 2529726 by Kwangsub Shin in Main branch]
2015-04-29 00:06:26 -04:00
Wes Hunt
0255802490 Enable /Bt+ and /time+ in VC local builds when UEBuildWindows.bLogDetailedCompilerTimingInfo is true.
#codereview:mike.fricker

[CL 2528520 by Wes Hunt in Main branch]
2015-04-28 10:53:30 -04:00
Kwangsub Shin
c459b7f35d UEPLAT-368: Don't copy .so libs when only Java files are changed.
#android
#codereview Chris.Babcock, Josh.Adams

[CL 2528507 by Kwangsub Shin in Main branch]
2015-04-28 10:36:35 -04:00
Ben Marsh
78f6199447 Add a separate category for "installed" plugins, and hide categories if they're empty.
[CL 2527764 by Ben Marsh in Main branch]
2015-04-27 20:08:52 -04:00
Ben Marsh
18e26e7a2d Allow UBT to find a matching PluginInfo for a module, even if the target hasn't specified that it's using that plugin. Fixes issue where UFE was adding VisualStudioSourceCodeAccess as a dependent module directly, which was causing it to be output to the Binaries/Win64 folder rather than the plugin directory.
#codereview Peter.Sauerbrei

[CL 2527709 by Ben Marsh in Main branch]
2015-04-27 19:27:54 -04:00
Peter Sauerbrei
969bf4fa4f UE-14324 - fixed issue with projects outside of Engine directory when using new SSH version of building from windows
#ios

[CL 2527596 by Peter Sauerbrei in Main branch]
2015-04-27 18:04:50 -04:00
Peter Sauerbrei
e921bf8cf7 UE-11479 - fix for generating project files when project has a platform name in the directory structure
[CL 2527371 by Peter Sauerbrei in Main branch]
2015-04-27 16:00:30 -04:00
Ben Marsh
9e6f653803 Strip symbols from iOS and Mac libraries in Rocket builds.
[CL 2527243 by Ben Marsh in Main branch]
2015-04-27 14:20:54 -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
Robert Jones
f910140c48 UE-13654 - Package still contains data if "Package game data inside .apk?" option is once selected.
- Added logic to delete the OBB file if it already exists in the APK data directory

[CL 2526897 by Robert Jones in Main branch]
2015-04-27 10:02:42 -04:00
Jaroslaw Palczynski
bc990b83df UBT: Changed XSD validation messages to be actually errors.
[CL 2526865 by Jaroslaw Palczynski in Main branch]
2015-04-27 09:35:50 -04:00
Jaroslaw Palczynski
82494ca4a8 Fixed XSD IntelliSense in and added validation for UBT XML config files.
#codereview Robert.Manuszewski, Wes.Hunt

[CL 2526858 by Jaroslaw Palczynski in Main branch]
2015-04-27 09:29:59 -04:00
Wes Hunt
f453e6503e Handle Logging that should not have string.Format called on it. If the Arg count is zero, treat it is a raw string and simply use it.
[CL 2526291 by Wes Hunt in Main branch]
2015-04-26 19:34:56 -04:00
Wes Hunt
012e45b913 UBT Utils.cs (New logging system)
* Allows us to use built-in Trace providers (console, file, etc) directly and still use our custom formatting.
* Fat comments explaining why Trace.WriteXXX functions should not be used directly in our system.
* Fixes thread safety by using Trace.WriteXXX under the hood after formatting, which uses a global lock (except on Mono, where a bug appears to be preventing this. Simulating the call on that platform).
* No need for TraceEvent overloads, which saves us the extra parameter cruft.
* Removed non-varargs overloads of Log functions (technically a bit slower, but these are already small messages).
* No longer needed VerbosityFilter and ConsoleListener classes.
* Avoid calling GetSource() if we aren't outputting the source.
* Avoid formatting the string if it won't pass the verbosity level.
* Consolidated all of UAT and UBT options into this class, so they could fully share the implementation.

UBT BuildConfiguration.cs
* Added LogFilename (and --log=<file> arg) that enables logging to a file.
* Added static ctor guard that asserts if someone tries to read a config before we have loaded config files and parsed config-override commandlines. It's a poor man's hack, but better than nothing!

UBT UEBuildConfiguration.cs
* Same static ctor guard as above.

UBT UnrealBuildTools.cs (initialization refactoring)
* In general I tried to de-mystify some of the rationale behind our startup code via fat comments.
* Broke main into 3 stages:
1. "early code" that should not try to read a config value.
  * Very little code here. Mostly setting the current directory.
  * Does an early init of logging to ensure logging is around, but config values won't be ready.
2. "Init Configuration code" that loads config files and parses command lines that may override them.
  * I isolated two locations in startup that parsed long sets of switches and moved ones that trivially affected BuildConfiguration and UEBuildConfiguration in here. Those two locations seemed to have mostly copies of the same switches, indicating serious param parsing issues at some point in time.
  * This allows switches to override config files more easily than the patchwork of re-parsing that was currently used (particularly for -verbose).
  * I did a cursory examination of later code that indicated this double (actually, triple) parsing was no longer necessary with the refactors above. Any insight into why things may have ended up this way would be helpful.
3. "Post Init code" that is actually the meat of UBT.
  * I left this code largely untouched.
  * Removed 2 of 3 different command line logging statements.
  * Removed two redundant parses of config overrides (ParseBuildConfigurationFlags).
* Guarded all of main in a try/catch block to ensure no exceptions can leak from UBT without returning a valid error code. It ALMOST already did this, but only covered the part surrounded by the Mutex.
* There was a perplexing bit that redundantly called XmlConfigLoader.Reset<> (line 683) that I struggled to understand. It turns out UEBuildConfiguration was sensitive to the current directory being set before files were loaded, and the old code called XmlConfigLoader.Init() super early, which required it to be called again after the current directory was set (see UEBuldConfiguration.UEThirdPartySourceDirectory for the cause). After my changes, I verified as best I could that these calls are no longer needed and removed them.

XmlConfigLoader.cs
* Add support for Properties in XmlConfigLoader.

AutomationTool Program.cs
* Guard logging shutdown code in try/finally so it can't be missed.

AutomationTool Log.cs
* Uses new logging system from UBT
* Removed unnecessary classes (VerbosityFilter, AutomationConsoleTraceListener, and AutomationFileTraceListener)
* Console trace logic is handled by UBT code now, moved UTF8Output handling to InitLogging.
* A custom TraceListener for file logging was unnecessary.
  * Logic to handle creating the log file and retry loops was move into InitLogging, and the result passed to a regular TextFileTraceListener.
  * Logic to handle copying the log on shutdown was moved to a ShutdownLogging function.
#codereview:robert.manuszewski,michael.trepka,kellan.carr

[CL 2526245 by Wes Hunt in Main branch]
2015-04-26 18:19:28 -04:00
Wes Hunt
c23521596d Fix some log output to use Environment.Newline
[CL 2525141 by Wes Hunt in Main branch]
2015-04-24 18:35:08 -04:00
Justin Sargent
c82571b217 Changed the xcode scheme generation to respect binary locations for targets not under Engine.
Merging using UE4-To-UE4-LauncherDev

#codereview Michael.Trepka

[CL 2525098 by Justin Sargent in Main branch]
2015-04-24 18:12:09 -04:00
James Moran
1e09f3b5bd Add -Wshadow on HTML5. Fixed errors relating to it. UE-14250
Fixed some potential issues from incoming SDK release. Removed unnecessary js lib.

[CL 2524336 by James Moran in Main branch]
2015-04-24 10:49:50 -04:00
Ben Marsh
deeac5b6c9 Don't include the module name in the generated PCH; it's in the directory name already, and pushes filenames closer to MAX_PATH on Windows.
Pathalogical case in the ExtendingTheEditor sample was using a PCH name of: D:\\BuildFarm\\buildmachine_++depot+UE4\\Samples\\Sandbox\\ExtendingTheEditor\\Plugins\\DemoEditorExtensions\\Intermediate\\Build\\Win64\\ExtendingTheEditor\\Debug\\DemoEditorExtensionsRuntime\\PCH.DemoEditorExtensionsRuntime.DemoEditorExtensionsRuntimePrivatePCH.h.cpp

[CL 2523558 by Ben Marsh in Main branch]
2015-04-23 18:09:00 -04:00
Ben Marsh
9b5828ca1f Fix performance issue when showing progress for large number of items; console I/O becomes a bottleneck.
[CL 2523429 by Ben Marsh in Main branch]
2015-04-23 17:32:21 -04:00
Dmitry Rekman
1fb5df0a6f UBT: better explanation for signal exit codes.
- To reduce confusion regarding UHT failinng with "error code: 139"

#codereview Robert.Manuszewski, Michael.Trepka, Mark.Satterthwaite, Josh.Adams

[CL 2523338 by Dmitry Rekman in Main branch]
2015-04-23 16:58:43 -04:00
Dmitry Rekman
4bd4cab020 Fix UBT project (XboxOne files being included unconditionally).
#codereview Jeff.Campeau
#lockdown Zachary.EdgertonJones

[CL 2522223 by Dmitry Rekman in Main branch]
2015-04-22 22:29:58 -04:00
Jeff Campeau
69b60e16cb AppxManifest and Resource files for Xbox One generated on the fly.
Settings used to generate these made settable from the editor.

[CL 2521784 by Jeff Campeau in Main branch]
2015-04-22 17:05:11 -04:00
Marcus Wassmer
0ba5c5f2e1 Merge Morpheus 120hz and reprojection support.
Also fixes for NGS2A3D

[CL 2521711 by Marcus Wassmer in Main branch]
2015-04-22 16:41:54 -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
48353a95d3 Allow enabling of shadow variable warning on a per project basis via BuildSettings in Engine.ini
Enable shadow variable warnings by default
Disable shadow variable warnings for Fortnite, Orion, and Ocean

[CL 2521304 by Marc Audy in Main branch]
2015-04-22 13:17:27 -04:00