liamkf / Unreal_FASTBuild

Allows UnrealEngine to be built with FASTBuild for VS2015/VS2017 and Windows 10.
MIT License
180 stars 71 forks source link

Add -wrapper flag to FASTBuild invocation. #9

Closed samhocevar closed 7 years ago

samhocevar commented 8 years ago

This flag causes FBuild.exe to be called using a wrapper executable. This will allow it to exit more cleanly when a build is stopped from within the Visual Studio IDE.

yass007 commented 7 years ago

Hi there!

Sorry for the delay :)

We originally had the commandline include the -wrapper argument however we decided to remove it since FBuild.exe would sometimes take a very long time to wait for the currently compiling files to finish before closing and writing up the fdb file. The idea is since we don't use the fdb for the dependency check (done by UnrealBuildTool) + we are likely to regenerate the bff everytime anyways (which causes the fdb to be discarded) it's not useful to cleanly close it, it was better to just kill the current fbuild instance and have a fast way to cancel the build!

Did you see anything specific problems with the current configuration ?

samhocevar commented 7 years ago

Yes; our main problem was stale cl.exe processes continuing to run when a build was aborted. On automated build machines, this sometimes caused the next build to fail because of files being opened by another process.

liamkf commented 7 years ago

I think having consistent builds wins over occasional slowness cancelling builds, so I put the -ide flag back in. :)