Commit Graph

69 Commits

Author SHA1 Message Date
Ben Marsh
b2acdadf67 Remove unnecessary UEBuildTarget parameter being passed to build platforms.
[CL 2707256 by Ben Marsh in Main branch]
2015-09-27 13:10:21 -04:00
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
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
Jack Porter
33a51c03a7 UEMOB-32 - Support cooking various combinations of Android texture formats simultaneously
[CL 2698623 by Jack Porter in Main branch]
2015-09-21 01:23:29 -04:00
Peter Sauerbrei
e706287759 Speed up reading and accessing ini files from UAT/UBT
#uat
#ubt
#codereview ben.marsh, wes.hunt

[CL 2691637 by Peter Sauerbrei in Main branch]
2015-09-15 09:29:42 -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
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
Chris Babcock
9c6add976a Keep the last export of each path from .bash_profile instead of the first one if not set in ini
#jira UE-19619
#ue4
#android
#codereview Michael.Trepka,Mark.Satterthwaite

[CL 2645674 by Chris Babcock in Main branch]
2015-08-05 18:10:38 -04:00
Chris Babcock
28d1b83a10 Use gnu-libstdc++ 4.8 for NDK level 19, and allow 4.9 for higher NDK levels
Only use ld.gold for Clang 3.6 if unity build
#jira UE-10647
#ue4
#android

[CL 2644345 by Chris Babcock in Main branch]
2015-08-04 19:58:25 -04:00
Chris Babcock
b199ac3845 Better handling of multiple Android build targets (copies proper .so)
#ue4
#android
#codereview Josh.Adams

[CL 2620274 by Chris Babcock in Main branch]
2015-07-14 11:53:53 -04:00
Chris Babcock
b6df0fec88 Android x86_64 support - pr #914 (also adds support for ndk-r10e clang 3.6)
#ue-11650
#ue4
#android
#codereview Josh.Adams

[CL 2590354 by Chris Babcock in Main branch]
2015-06-17 12:56:56 -04:00
Chris Babcock
e8ddfeb57a Fixed issue with GearVR plugin compiling into unsupported Android platforms
#1198
#ue4
#android

[CL 2575872 by Chris Babcock in Main branch]
2015-06-03 14:13:29 -04:00
Robert Jones
9e07b9d8d8 UEPLAT-831 - AndroidManifest.xml update for ES3.1 targets
- Changed MakeAPK loop so that it can deal with multiple manifests
- Removed ability to make a Fat APK from same code as we don't/won't use it

[CL 2566503 by Robert Jones in Main branch]
2015-05-27 09:21:57 -04:00
Steve Robb
499def698b UBT cleanups:
* Removal of some null checks.
* Some arrays changed to Lists.
* Some lists changed to IEnumerables.
* Some loops changed to Linq actions.
* FilterOnlyModules and FilterGameModules renamed to GetFiltered* functions, which better represent what they do.
* Some indentation fixes.
* Some thrown exceptions moved around to more appropriate locations.

#codereview robert.manuszewski

[CL 2554771 by Steve Robb in Main branch]
2015-05-18 08:16:56 -04:00
Robert Jones
8bd7aa8949 UE-14803 - Android Java files constantly being rewritten triggering rebuilds
- corrected bug in code which was detecting if a re-write of the file was required or not to prevent this problem happening

[CL 2533437 by Robert Jones in Main branch]
2015-05-01 08:44:41 -04:00
Josh Adams
a98d6d5f5c - Changed Android ES31+AEP support from a TargetPlatform to a checkbox that works with any Android TP
- Moved HighQualityLightmap support check to IOSTargetPlatform so it can check project settings for Metal support
- Fixed some issues running on an x86_64 device
- Cleaned up some unused functions in TargetPlatform
#codereview niklas.smedberg

[CL 2478853 by Josh Adams in Main branch]
2015-03-13 14:05:13 -04:00
Josh Adams
064ba6920d - Added support for checking Android build settings to be non-default
- Refactored code to make it easier to check .ini settings for non-default build settings
#codereview peter.sauerbrei

[CL 2475920 by Josh Adams in Main branch]
2015-03-11 18:50:57 -04:00
Niklas Smedberg
ca14047362 Android ASTC for ES2
[CL 2475760 by Niklas Smedberg in Main branch]
2015-03-11 17:28:22 -04:00
Josh Adams
f11628863f - Fixing Mac env var settings in UBT to always read from .ini [UE-8542]
#codereview robert.jones

[CL 2424922 by Josh Adams in Main branch]
2015-01-29 20:43:52 -05:00
Ben Marsh
24edb4f290 [INTEGRATE] Change 2418497 by Robert.Jones@Pitbull-RJones on 2015/01/26 06:46:00
UE-8075 - Devices not updating post-SDK path change
	Fixed code so that it correctly references the device detection class.
	Added a 'force update' path so that upon successful SDK path updates the devices are rechecked right away instead of waiting up to 10 seconds.
	Cleared out old devices if the SDK path is empty/doesn't contain the adb executable

	Change to UEBuildAndroid so that empty SDK paths are no longer treated as valid paths on start up allowing things like SDKPath=("") to be overridden by env vars.

[CL 2419718 by Ben Marsh in Main branch]
2015-01-26 20:18:16 -05:00
Michael Trepka
f47e3c4568 Always build Android target platform and texture format modules on builders, even if the SDK is not installed
[CL 2416890 by Michael Trepka in Main branch]
2015-01-23 10:53:16 -05:00
Robert Jones
653f45a33a Adding Java_Home support to ini files for Android building.
[CL 2415356 by Robert Jones in Main branch]
2015-01-22 11:14:12 -05:00
Josh Adams
f7f1b0f944 - Moved SDK and NDK versions from BuildConfig.xml to ProjectSettings
- Fixed a logic error in iterative packaging dependency checking

[CL 2414384 by Josh Adams in Main branch]
2015-01-21 16:25:42 -05:00