Commit Graph

92 Commits

Author SHA1 Message Date
Matthew Griffin
48b7792c97 Fixed crash that could occur if source folder of a plugin was removed
GetModuleFilename returns an empty string if module can't be found, checking for null meant that it went ahead and tried to load it regardless.

[CL 2627121 by Matthew Griffin in Main branch]
2015-07-21 04:34:09 -04:00
Peter Sauerbrei
fc35305c51 changes to allow two projects to have the same plugin name
UEB-258
#codereview ben.marsh

[CL 2611443 by Peter Sauerbrei in Main branch]
2015-07-06 15:22:45 -04:00
Steve Robb
7661666dcb Error when a module is both a dependency and dynamically loaded.
Fixes for lots of existing modules by removing all dynamically loaded duplicates (this is probably not the correct solution, but is the safest).

#codereview robert.manuszewski

[CL 2610845 by Steve Robb in Main branch]
2015-07-06 05:46:20 -04:00
Lee Clark
d8c6aca65d SN-DBS support for distributed compilation of Win64 builds
* Modules that use #import (DatabaseSupport & VisualStudioSourceCodeAccessor) are forced to be built locally due to SN-DBS limitation . These are very small modules so have a minimal impact on build time.

#codereview Mike.Fricker

[CL 2610243 by Lee Clark in Main branch]
2015-07-03 05:23:01 -04:00
Steve Robb
db5429d360 AVX support in UnrealBuildTool.
#codereview robert.manuszewski

[CL 2604153 by Steve Robb in Main branch]
2015-06-29 12:24:33 -04:00
Ben Marsh
1bd03cb57f Allow targets to specify whether they want to build all plugins (rather than just the ones they have enabled), and turn it on for the vanilla UE4Editor target. Content-only projects may want to enable plugins, but they have no target to build.
[CL 2591851 by Ben Marsh in Main branch]
2015-06-18 08:41:17 -04:00
Kellan Carr
0a4c040e5a build script, remove fortnite promotable - allow code project builds with no promotable attached to them
[CL 2581455 by Kellan Carr in Main branch]
2015-06-09 13:21:22 -04:00
Terence Burns
bea0a014c5 Windows XP games now run without a 'not a valid win32 application' error. BootstrapPackagedGame had lost it's xp support.
UE-14290

[CL 2550926 by Terence Burns in Main branch]
2015-05-14 12:40:00 -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
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
88b274d2ec Add UAT script to build a plugin for distribution. Includes UBT support for writing plugin descriptors, and compiling single plugins at a time.
[CL 2533688 by Ben Marsh in Main branch]
2015-05-01 10:58:14 -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
Ben Marsh
24f3997488 Remove the global plugins array. Targets can figure out which plugins to enable for themselves, and that list isn't cross-pollenated with other targets.
[CL 2520938 by Ben Marsh in Main branch]
2015-04-22 09:37:04 -04:00
Ben Marsh
920c062de3 Fix list of enabled plugins in programs that reference plugin modules directly. Previously relying on UBT permitting references to any known modules, even if they weren't supposed to be included in the target.
[CL 2520514 by Ben Marsh in Main branch]
2015-04-21 21:22:15 -04:00
Ben Marsh
3f5363055c Remove the IsPluginModule() function; use a more explicit check against files in the engine source directory instead.
[CL 2519158 by Ben Marsh in Main branch]
2015-04-21 09:45:07 -04:00
Justin Sargent
f5585eaed8 Added support for programs to specify their own Solution Directory.
#codereview Ben.Marsh
Merging using UE4-To-UE4-LauncherDev

[CL 2517984 by Justin Sargent in Main branch]
2015-04-20 14:30:37 -04:00
Ben Marsh
28fe22e11b Move GetGeneratedCodeDirectoryForModule into UEBuildTarget, so it can make use of shared logic with figuring out output paths.
[CL 2516280 by Ben Marsh in Main branch]
2015-04-17 15:21:14 -04:00
Ben Marsh
8d276987bf Allow bunching game editors together in a single build node, and use it to group all the templates together.
[CL 2515699 by Ben Marsh in Main branch]
2015-04-17 08:15:17 -04:00
Ben Marsh
94bb83879f Set bPromoteEditorOnly to true by default. None of our games actually require this, and it gums up the build farm trying to make so much stuff.
#codereview Kellan.Carr

[CL 2515698 by Ben Marsh in Main branch]
2015-04-17 08:13:57 -04:00
Kellan Carr
0cd49b2087 build script, fortnite promotable does not depend on monolithics
[CL 2514560 by Kellan Carr in Main branch]
2015-04-16 13:30:21 -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
30deffbad0 Add Serializable keyword to TargetInfo for UBT makefiles.
[CL 2510296 by Ben Marsh in Main branch]
2015-04-13 10:01:26 -04:00
Ben Marsh
9e28f96c03 Add an accurate "IsMonolithic" setting to TargetInfo, rather than just guessing from the target type.
#codereview Dmitry.Rekman

[CL 2509862 by Ben Marsh in Main branch]
2015-04-12 13:49:25 -04:00
Ben Marsh
fac4fb7069 Allow target rules to specify which build configuration doesn't have the -Platform-Configuration suffix appended to all binaries.
[CL 2509827 by Ben Marsh in Main branch]
2015-04-12 10:51:07 -04:00
Mikolaj Sieluzycki
3483da7d5a Stop UHT from emiting warnings on missing *_Validate and *_Implementation functions
Introduce versioning system to GENERATED_*BODY macros
Search for existing functions using case sensitive and whole word match.
Move checks for existing of *_Validate and *_Implementation functions to *generated.cpp to allow changing that code in hotfixes.
#codereview Robert.Manuszewski

[CL 2508131 by Mikolaj Sieluzycki in Main branch]
2015-04-10 06:02:22 -04:00