Commit Graph

53 Commits

Author SHA1 Message Date
Ankit Khare
8b076f2b39 use -Oz as default for HTML5 builds. Hopefully it will fix tool chain crashes on the buildbots, while we evaluate tool chain fixes put in mozilla dev branch.
#james.moran, #nick.atamas

[CL 2323388 by Ankit Khare in Main branch]
2014-10-08 18:58:16 -04:00
James Moran
a98bc44a5f Actually, really, enable ICU for HTML5.
Fix for missing/broken UMemory symbol in icu libs.

[CL 2318401 by James Moran in Main branch]
2014-10-03 06:29:14 -04:00
Ben Marsh
e2d5417d68 Remove RocketGame from UBT!
[CL 2312819 by Ben Marsh in Main branch]
2014-09-29 09:35:05 -04:00
James Moran
25259249ba Changed Emscripten setting read function to handle comments.
Also added more logging, changed autoSDK setup.bat to output helpful varibles into emscripten file.

#codereview Ankit.Khare

[CL 2308569 by James Moran in Main branch]
2014-09-24 13:56:28 -04:00
Ben Marsh
e2a2b088c0 Disable HTML5 in Rocket.
#codereview Ankit.Khare

[CL 2307290 by Ben Marsh in Main branch]
2014-09-23 15:40:21 -04:00
James Moran
417625cdd2 Fix for HTML5 packaging picking up the wrong version of python leading to path failures
[CL 2305633 by James Moran in Main branch]
2014-09-22 11:23:43 -04:00
James Moran
dc3d0e5710 Enable HTML5 1.22.00 SDK
[CL 2302212 by James Moran in Main branch]
2014-09-18 04:14:55 -04:00
Cody Haskell
55eb941909 Hey, we've never met before, but I have been told I'm build watcher today, so I was watching the build and saw this.
This was causing a warning on CIS. The warning was...

HTML5/HTML5ToolChain.cs(313,11): warning CS0219: The variable `BaseSDKPath' is assigned but its value is never used

It is a one line fix, and even though I am 99.999% this won't cause any problems, I don't have a great way to compile this, so I'm code reviewing you. :-)

#codereview Ankit.Khare

[CL 2298187 by Cody Haskell in Main branch]
2014-09-15 11:01:03 -04:00
Ankit Khare
4e9a5cb6ba Rocket: Enable HTML5 for rocket builds on Win64.
#codereview ben.marsh

[CL 2295409 by Ankit Khare in Main branch]
2014-09-12 15:56:47 -04:00
Ankit Khare
2adf98093f Get ready for sdk upgrade. Remove linked in demangling code - newer sdks have this built in.
#HTML5

[CL 2295151 by Ankit Khare in Main branch]
2014-09-12 11:36:37 -04:00
Ori Cohen
167a797ef8 Add runtime physx cooking
[CL 2291345 by Ori Cohen in Main branch]
2014-09-09 16:30:29 -04:00
Ankit Khare
b22fe4c256 #HTML5
Fix #define conflicts in html5 for reals.

[CL 2257995 by Ankit Khare in Main branch]
2014-08-15 10:27:27 -04:00
Ankit Khare
5045fc5b5d #HTML5
CIS fix. Need to fix up physX first before this can go in.

[CL 2257548 by Ankit Khare in Main branch]
2014-08-15 01:00:23 -04:00
Ankit Khare
bbae8dd0fb #UE4 Fix root cause of why blacklisted plugins were being loaded on HTML5, revert CL 2255415.
[CL 2256912 by Ankit Khare in Main branch]
2014-08-14 18:10:04 -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
Peter Sauerbrei
e00047357e another fix for the target platforms being added when they shouldn't
#ue4

[CL 2242506 by Peter Sauerbrei in Main branch]
2014-08-04 10:54:27 -04:00
Peter Sauerbrei
6e5fc9eb43 fix for Win64 editor not building for Rocket because HTML5 targetplatform is being added when it shouldn't
#ue4
#html5

[CL 2242451 by Peter Sauerbrei in Main branch]
2014-08-04 10:39:11 -04:00
Peter Sauerbrei
62a39f3774 accidentally left some code in I meant to remove
#ue4
#html5

[CL 2242439 by Peter Sauerbrei in Main branch]
2014-08-04 10:24:04 -04:00
Peter Sauerbrei
dee247b733 remove HTML5 target platform dll from being built as part of the mac and linux editor builds for rocket
TTP342631
#ue4
#html5

[CL 2242372 by Peter Sauerbrei in Main branch]
2014-08-04 09:48:56 -04:00
Ankit Khare
ba44f71314 #UE4 #HTML5
#TTP 342902 CRITICAL: Regression: HTML5: Code templates fails to launch
    #TTP 342884 CRITICAL: Regression: HTML5: UFE: Fails to cook then gets a mac crash

        -fix up html template ( argument ordering )
        -don't use pak when packaging for html5
        -properly quote pathname with spaces on mac.
        -fix linking of plugins on first run of ubt.
   #codereview peter.sauerbrei

[CL 2241888 by Ankit Khare in Main branch]
2014-08-04 08:08:56 -04:00
Mike Fricker
80f6dc9362 UnrealBuildTool: Experimental fast C++ include dependency scanning
- Adds experimental super-fast C++ outdated file checking
- This feature is turned off for now as we continue to test and improve it
      - You can try it out by enabling "bUseExperimentalFastDependencyScan" option in your BuildConfiguration.xml
- Here is the basic idea:
     - We no longer exhaustively scan all includes and build up a big graph every invocation
     - Instead, source files whose build products are missing have their includes scanned asynchronously while being compiled
     - The flat list of dependent includes for every outdated C++ is saved into a new cache file ("FlatCPPIncludes.bin")
     - On the next run, we quickly load that up and "just know" which files to check timestamps on to determine what is out of date
- Lots of "@todo fastubt" comments were added to UnrealBuildTool for potential performance optimizations and further improvements on this feature.

UnrealBuildTool: Determination of which modules have UObjects is now faster
- We now cache which modules have UObjects and load those for the next session

UnrealBuildTool: Module "shared" precompiled header determination is now much faster
- We no longer scan all C++ includes for a module to figure out which "shared" PCH to use
- Instead, we use the module dependencies specified in the module's *.Build.cs file
- For example, if your module depends on "Engine" and "UnrealEd", we choose "UnrealEd"'s shared PCH

Other UBT optimizations:
- Reduced calls to string formatting functions when setting up API definitions for all modules
- Added new performance diagnostics when bPrintPerformanceInfo is enabled in BuildConfiguration.xml
- We no longer check for "external" headers when scanning includes (this code didn't work at all)
- Optimized CleanDirectorySeparators() utility function to avoid string copies

Fixed UnrealBuildTool not saving DependencyCache under a platform-named folder

[CL 2238266 by Mike Fricker in Main branch]
2014-07-31 09:34:11 -04:00
Daniel Lamb
ec66bcf4e6 Fix for pythonpath missing python exe name. TTP 342757.
#codereview Peter.Sauerbrie

[CL 2237605 by Daniel Lamb in Main branch]
2014-07-30 17:55:43 -04:00
Daniel Lamb
55fe953aa7 Fixed problem with python path having spaces in it if installed to program files.
#codereview Peter.Sauerbrei

[CL 2237428 by Daniel Lamb in Main branch]
2014-07-30 15:46:41 -04:00
Ankit Khare
7dcc3e1c64 #UBT
#TTP 342328 (HTML5: Packaging Blueprint projects fails)

   -  A compiler generated file was missing from the manifest, fixed
   -  clean up -  instead of calling static functions, call virtual function on tool chain, move platform specific code to derived tool chains.

#codereview peter.sauerbrei

[CL 2236049 by Ankit Khare in Main branch]
2014-07-29 13:38:03 -04:00
Marcus Wassmer
64eec3f77a Force all builders into a clean state for autosdks
[CL 2232443 by Marcus Wassmer in Main branch]
2014-07-25 21:56:32 -04:00