Commit Graph

136 Commits

Author SHA1 Message Date
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
Ben Marsh
5a0150033b Remove calls to UEToolChain.GetPlatformToolChain(). iOS and Mac deployment for remote tool chains is now done through UEToolChain.PostBuildSync() rather than UEBuildDeploy.PrepTargetForDeploy().
#codereview Peter.Sauerbrei

[CL 2704192 by Ben Marsh in Main branch]
2015-09-24 08:08:38 -04:00
Mark Satterthwaite
8dedbc3a9c Merging MetalRHI & MetalShaderFormat changes from ZebraBranch, plus the code to enable or disable Mac support.
[CL 2697221 by Mark Satterthwaite in Main branch]
2015-09-18 12:45:20 -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
b3dddeb541 Cache the name of the API define for each module and the relative path to its base directory, to avoid calculating them each time.
[CL 2683585 by Ben Marsh in Main branch]
2015-09-08 15:50:24 -04:00
Peter Sauerbrei
781c32e3b3 UE-18280 - fix for not being able to build Mac from PC using SSH
#ubt

[CL 2683245 by Peter Sauerbrei in Main branch]
2015-09-08 12:52:17 -04:00
Ben Marsh
09aa8b2f62 Reduce time taken to generate receipts by using the target's view of the required modules, rather than recursively finding them from all the binaries. Also use the FileReferences for build products to optimize the way we escape build product paths.
[CL 2681758 by Ben Marsh in Main branch]
2015-09-05 18:10: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
Ben Marsh
3d6c0e0a81 Convert target receipts to JSON, so they can be read early at startup like version manifests, and unify the way that target receipts and version manifests are loaded and saved.
[CL 2669100 by Ben Marsh in Main branch]
2015-08-26 08:25:10 -04:00
Mark Satterthwaite
373dc75466 At least on El Capitan debug symbols can't always be found when using the .dsym file extension only the .dSYM extension will work.
[CL 2662696 by Mark Satterthwaite in Main branch]
2015-08-20 10:52:43 -04:00
Michael Trepka
57fa13a625 Fixed Mac editor icon name in UBT manifest
[CL 2658249 by Michael Trepka in Main branch]
2015-08-17 15:32:59 -04:00
Michael Trepka
64fe9c9075 Fixed Mac icon name in UBT manifest
[CL 2658094 by Michael Trepka in Main branch]
2015-08-17 13:58:58 -04:00
Mark Satterthwaite
bedb3575b1 Merging trivial engine fixes from ZebraBranch.
- Uses 10.11 El Capitan secure HTTP exceptions for now.
- Adds icons with correct name in the receipt.
- Fix some pipe functions.
#codereview michael.trepka

[CL 2657982 by Mark Satterthwaite in Main branch]
2015-08-17 12:29:19 -04:00
Ben Marsh
dd08437233 Rename BuildReceipt to TargetReceipt, to clarify its purpose.
[CL 2629145 by Ben Marsh in Main branch]
2015-07-22 13:10:12 -04:00
Ben Marsh
a5f534451b Remove the ENGINE_VERSION define from Version.h and ObjectVersion.cpp; it's superceded by GEngineVersion. EngineVersion.cpp now defines the constants GEngineVersionChangelist and GCompatibleWithEngineVersionChangelist, which are used to construct GEngineVersion and GCompatibleWithEngineVersion. Modifying those constants allows updating the engine version separately to the defines used for resource files (allowing UGS to update the version number without triggering all files to be relinked).
[CL 2625344 by Ben Marsh in Main branch]
2015-07-18 16:57:53 -04:00
Mark Satterthwaite
153136a986 Re-enable generating .dSYMs on Mac by default for [UEPLAT-308] in development & shipping builds now that the .dSYMs are flat and shouldn't case MAX_PATH errors.
[CL 2609252 by Mark Satterthwaite in Main branch]
2015-07-02 12:16:16 -04:00
Ben Marsh
e3bf999806 Fix parsing of MODULE_API_VERSION on Mac. Now takes ENGINE_IS_LICENSEE_VERSION into account, and handles tabs at the start of the line correctly.
#codereview Michael.Trepka

[CL 2604117 by Ben Marsh in Main branch]
2015-06-29 12:07:55 -04:00
Michael Trepka
2f81f7325a Removed the workaround for the PCH problem that was solved in second Xcode 7 beta
#codereview Josh.Adams

[CL 2597749 by Michael Trepka in Main branch]
2015-06-23 16:02:08 -04:00
Wes Fudala
1ccc1a29b4 Mac build scripts now properly handle renamed launcher.
[CL 2595372 by Wes Fudala in Main branch]
2015-06-22 10:26:14 -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
Josh Adams
9fc4e0dbc8 - Fixed stripping commandline [JIRA UE-17021]
[CL 2587376 by Josh Adams in Main branch]
2015-06-15 11:06:51 -04:00