Commit Graph

16 Commits

Author SHA1 Message Date
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
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
0a89383b5a Explicitly compile the rules assembly and pass it around as a parameter, rather than caching it as global state in RulesCompiler.
[CL 2674051 by Ben Marsh in Main branch]
2015-08-31 10:33:16 -04:00
Steve Robb
062ba9412f Makefiles enabled on Mac.
Explicit serialization functions used instead of reflection, to avoid deserialization problems on Mono.
Version number added to makefiles to allow versioning in future.
Makefiles still disabled if the host platform differs from the built platform, to continue to avoid any problems 'when building with RPCUtility'.

#codereview robert.manuszewski,michael.trepka

[CL 2643502 by Steve Robb in Main branch]
2015-08-04 11:20:50 -04:00
Steve Robb
dbd595a52f UEBuildTarget stores its .Target.cs filename.
UEBuildModule stores its .Module.cs filename.
UEBuildTarget stores a map of dictionaries from module names to .Target.cs files.
Timestamps of serialized .Target.cs and .Module.cs files compared against makefile and used for invalidation.

More sensible Dictionary logic in ConditionallyCompileAndLoadRulesAssembly.
InstantiateModule can no longer return a null.
UEBuildModule constructors no longer default.

#codereview robert.manuszewski

[CL 2543446 by Steve Robb in Main branch]
2015-05-08 15:19:00 -04:00
Ben Marsh
40f787df01 Allow targets to opt-in to using a shared build environment with other targets. Doing so allows intermediates and precompiled libraries (including plugins) to be used in the current build. Also move plugin output files and intermediates into the plugin directory.
[CL 2514398 by Ben Marsh in Main branch]
2015-04-16 11:55:56 -04:00
Ben Marsh
0de65e95bd Deprecate bBuildAdditionalConsoleApplication from LinkEnvironment, and move it to UEBuildBinaryConfiguration instead - it's not actually used by anything that does linking; it's a higher level behavior. The default is now false, which mirrors the only use case we had for it (and removes a hack for checking UEBuildConfiguration.bBuildEditor).
[CL 2499917 by Ben Marsh in Main branch]
2015-04-02 11:09:01 -04:00
Ben Marsh
bdc31fdec8 Create targets using the TargetDescriptor, rather than separating the fields out and passing them all to constructors individually. Makes it easier to extend, and is an awful lot easier to read. Also change the target's GameName field to TargetName, which is what everything seems to actually require.
[CL 2477318 by Ben Marsh in Main branch]
2015-03-12 15:35:46 -04:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Jaroslaw Palczynski
466d4ac231 Getting rid of auto-startup modules feature as it was causing confusion with loading time and it is not worth it to make it flexible as users expected it.
[CL 2373540 by Jaroslaw Palczynski in Main branch]
2014-12-02 04:37:53 -05:00
Jaroslaw Palczynski
3bacd1bbc5 Fix for AutoStartupModuleList, so it always builds UE4Game shared library in non-monolithic builds which is now required.
[CL 2345988 by Jaroslaw Palczynski in Main branch]
2014-10-31 05:16:43 -04:00
Josh Adams
ddea2d2fe0 - Changed UBT to allow for multiple OutputPaths in a given UE binary (this is needed by Android to output multiple .so files per UBT run, for armv7, x86, etc)
#codereview ben.marsh

[CL 2281777 by Josh Adams in Main branch]
2014-09-02 14:26:49 -04:00
Mike Fricker
a3ab85edcc UnrealBuildTool: Even faster build iteration with bUseExperimentalFastBuildIteration
- Shaved over *half a second* of the best case iterative build times with UnrealBuildTool
- When assembling a build from an existing UBTMakefile, we now load Target information from the makefile instead of from the C# assembly

[CL 2278065 by Mike Fricker in Main branch]
2014-08-29 15:46:20 -04:00
Robert Manuszewski
8498aae74f Hot-reload from IDE
#change UBT: Added support for hot-reload when UBT is called from IDE and the current target is curring
#change Added support for hot-reload from VS to the engine
#change Refactored hot-reload functionality to a separarte module
#change Added hot-reload analytics events

[CL 2255801 by Robert Manuszewski in Main branch]
2014-08-14 03:37:01 -04:00
Bob Tellez
ab8c090a38 UE4: Removed bCompileNetworkProfiler. USE_NETWORK_PROFILER is now true whenever STATS is also true. Also, removed some platform-specific code in NetworkProfiler.cpp
[CL 2082160 by Bob Tellez in Main branch]
2014-05-22 14:04:35 -04:00
Tim Sweeney
324683ce78 Engine source (Main branch up to CL 2026164) 2014-03-14 14:13:41 -04:00