Commit Graph

50 Commits

Author SHA1 Message Date
Peter Sauerbrei
524b46bf96 fix for trying to generate an SSH key when the user name has not been set
UE-15518
#ios

[CL 2548983 by Peter Sauerbrei in Main branch]
2015-05-13 10:47:42 -04:00
Peter Sauerbrei
01e4a699c1 fix for trying to create an SSH key when the remote server name was unset
UE-15438
#ios

[CL 2547509 by Peter Sauerbrei in Main branch]
2015-05-12 13:38:35 -04:00
Peter Sauerbrei
3a756fc89a PR-1129 - RSyncUsername being overriden with empty string
UE-15307
#ios

[CL 2545730 by Peter Sauerbrei in Main branch]
2015-05-11 14:18:28 -04:00
Terence Burns
2bdc3f6eec Fix for Mac issue where it is using rsync when locally generating project files on the mac.
#CodeReview Peter.Sauerbrei

[CL 2537188 by Terence Burns in Main branch]
2015-05-05 07:23:05 -04:00
Terence Burns
674dc13d82 Adding deltacopy location to the configurable IOS runtime settings
Fixed some minor issues with the remote build settings UI
- Reordered properties slightly.
- Updated the Remote Server Name widget so it no longer has no size.
- Renamed some property display names to be a little clearer.

https://jira.ol.epicgames.net/browse/UE-14323

[CL 2531756 by Terence Burns in Main branch]
2015-04-30 08:18:31 -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
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
Ben Marsh
3a7e022d4c Generate build receipts from UBT, which keep a record of all the files written for a target and records any metadata needed to stage or deploy it.
[CL 2501101 by Ben Marsh in Main branch]
2015-04-03 10:25:57 -04:00
Peter Sauerbrei
55ef34904d SSH is now ready for use when building iOS from PC
UEPLAT-95
#ios

[CL 2480102 by Peter Sauerbrei in Main branch]
2015-03-16 10:01:04 -04:00
Peter Sauerbrei
2c858adcb7 content-only tool chain changes
#codereview josh.adams

[CL 2464457 by Peter Sauerbrei in Main branch]
2015-02-27 16:10:22 -05:00
unrealbot
f95696c214 Fix remote compiling using settings from BuildConfiguration.xml. Empty settings in BaseEngine.ini aren't ignored by UBT, and just overwrite valid settings in XML file.
#codereview terrence.burns

[CL 2417232 by unrealbot in Main branch]
2015-01-23 16:19:21 -05:00
Ben Marsh
b321e6f43b Bit of housekeeping before adding list of dependencies into UBT's manifest:
* Renamed FileManifest to BuildManifest and FileManifestItems to BuildProducts, to more accurately reflect what they are.
* Removed ref qualifier when passing BuildManifest around; it's already a reference type, and not meant to be assigned to.
* Removed UAT's redundant copy of BuildManifest, since it already references the UBT assembly.

[CL 2406323 by Ben Marsh in Main branch]
2015-01-14 15:46:41 -05:00
Mike Fricker
03c74808c2 UnrealBuildTool: Fixed crash with UBT Makefiles
- Fixed crash after trying to build a target different than the one you built last time when DependencyCache was missing

[CL 2400418 by Mike Fricker in Main branch]
2015-01-07 18:23:34 -05:00
Mike Fricker
47381d84ea UnrealBuildTool: Cleaning up UBT Makefile support in preparation for wide testing
- Collapsed and renamed some of the new UBT settings for fast build iteration
- New 'BuildConfiguration.bUseUBTMakefiles' that replaces the old experimental settings (defaults to off in this changelist.)
- Cleaned up some comments
- No effective changes

[CL 2400071 by Mike Fricker in Main branch]
2015-01-07 14:16:46 -05:00
Terence Burns
daedf0fb0e Second part of SSH changes - SSH can now be used for remote IOS builds.
- Added changes to IPP to allow SSH commands to run as opposed to RPC. This is configurable through the commandline.
- Remote Tool Chain fixes for SSH which were preventing downloads to work. Updated rsync command command
- Removed the ParseProjectSettings calls from some IOS tool chain functions as they were unnecessarily going back through the config cache.
- Added an SSH Command Helper to IPP
- UBT passes SSH details through to IPP on commandline.

[CL 2385579 by Terence Burns in Main branch]
2014-12-11 10:49:39 -05:00
Peter Sauerbrei
23d9d6d728 fix for clearing out the remote server name if the user ini doesn't have it
#ios
#codereview terence.burns

[CL 2380384 by Peter Sauerbrei in Main branch]
2014-12-08 10:30:44 -05:00
Terence Burns
1ab79480ed Misplaced ssh command in the remote tool chain.
[CL 2379990 by Terence Burns in Main branch]
2014-12-08 05:00:41 -05: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
Terence Burns
937f65be31 SSH and IOS remote builds
- Converted a few properties to be available in the editor.
- Part of UEPLAT-25

[CL 2379442 by Terence Burns in Main branch]
2014-12-07 13:01:11 -05:00
Peter Sauerbrei
7cf86529e2 addition of build settings to ini files
part of UEPLAT-114
#ue4

[CL 2374039 by Peter Sauerbrei in Main branch]
2014-12-02 14:58:59 -05:00
Peter Sauerbrei
78d6c9a635 addition of iOS min version and devices supported to iOS Project Settings
UE-3315, UEPLAT-183, UEPLAT-28
#ios

[CL 2340220 by Peter Sauerbrei in Main branch]
2014-10-24 15:31:48 -04:00
Bob Tellez
5f3cf61c7d UE4: Moved some Mac/IOS platform specific functions to the UEToolChain interface so branches without Mac code can still run UBT.
#codereview Michael.Trepka,Dmitry.Rekman

[CL 2283868 by Bob Tellez in Main branch]
2014-09-03 21:56:29 -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
Josh Adams
d67a3a64a5 - Initial "Fat" binary support for Android - multiple architectures at once, by compiling multiple .so's in one go of UBT (will be controlled by Project Settings, intentionally hidden for now)
- Added option to allow for splitting up into multiple .apks, or a single "fat" .apk (also not exposed yet in the project settings)
- A fat binary is just named <Project>.apk, no longer <Project>-armv7.apk
- x86 almost works, except missing libCurl and ICU
- x64 and arm64 will come next now that this framework is in place
#codereview chris.babcock

[CL 2272105 by Josh Adams in Main branch]
2014-08-26 09:56:29 -04:00
Mike Fricker
0031e06f21 Experimental UnrealBuildTool makefile support
UnrealBuildTool 'Makefiles' allow for very fast iterative builds.
    - New BuildConfiguration.xml setting added: "bUseExperimentalFastBuildIteration"   (disabled by default)
    - Turning this on causes Unreal Build Tool to emit 'UBT Makefiles' for targets when they're built the first time.
    - Subsequent builds will load these Makefiles and begin outdatedness checking and build invocation very quickly.
    - The caveat is that if source files are added or removed to the project, UBT will need to gather information about those in order for your build to complete successfully.
    - Currently, you must run the project file generator after adding/removing source files to tell UBT to re-gather this information.
    - Events that can invalidate the 'UBT Makefile':
           - Adding/removing .cpp files
           - Adding/removing .h files with UObjects
           - Adding new UObject types to a file that didn't previously have any
           - Changing global build settings (most settings in this file qualify.)
           - Changed code that affects how Unreal Header Tool works
    - You can force regeneration of the 'UBT Makefile' by passing the '-Gather' argument, or simply regenerating project files
    - New command-line parameters added:
           - "-Gather": Tells UBT to always perform the gather step (slower but will catch project structural changes)
           - "-NoGather": Disables the gather step, unless UBT detects that it must be done.  This is the default when bUseExperimentalFastBuildIteration is enabled
           - "-GatherOnly": Runs the gather step and saves a UBTMakefile, but doesn't build anything
           - "-Assemble": Tells UBT to also assemble build products.  This always defaults to enabled
           - "-NoAssemble": Tells UBT to skip the assemble step, whether we gathered build products or not
           - "-AssembleOnly": Tells UBT to only assemble build products and not to gather, unless UBT determines it must

Other changes:
- UBT now keeps track of which targets it was building in an intermediate file, to help it invalidate cached includes in subsequent runs when the targets are different
- C++ includes are now stored in a class separate from the C++ compile enviroment (for easier serialization)
- The method that UBT uses to find the CoreUObject module timestamp was rewritten
- Various '@todo ubtmake' comments added to tag possible remaining Makefile tasks
- The 'FileItem' class had some member variable comments and code cleaned up, while making it serializable
- Cleaned up the comments and member variables in the "Action" class, while making it serializable
- Some UBT classes are now "serializable".  This is because we need to store the data in UBTMakefiles.
- Removed support for Actions to tinker with Stdout and Stderror (was not used for anything)
- Moved PrecompileHeaderEnvironment class to the UEBuildModule.cs source file
- Plugin intermediate include directories are now selected on demand rather than cached early
- Toolchain code for gathering prerequisite headers is now shared in a single function (AddPrerequisiteSourceFile)
- Removed Action.StatusDetailedDescription, was not used for anything
- Removed UEBuildConfiguration.bExcludePlugins, was not used for anything
- Removed ECompilationResult.FailedDueToHeaderChange, was not used for anything

[CL 2254472 by Mike Fricker in Main branch]
2014-08-13 08:17:43 -04:00