Adds modules= and cmake= keyword arguments to getClangBuildFactory. Right now, the modules build requires a two-stage cmake-based bootstrap. To use this you'll need a modularized libc and libc++ in a place where the build will find them.
My modules buildbot is configured using this builder:
{'name' : "clang-x86_64-linux-selfhost-rel", 'slavenames' : ["localhost"], 'builddir' : "clang-x86_64-linux-selfhost-rel", 'factory' : ClangBuilder.getClangBuildFactory(triple='x86_64-pc-linux-gnu', useTwoStage=True, modules=True, clean=False, stage1_config='Release+Asserts', stage2_config='Release+Asserts', extra_configure_args=[ '-DCMAKE_C_COMPILER=/var/lib/buildbot/bin/clang', '-DCMAKE_CXX_COMPILER=/var/lib/buildbot/bin/clang++', '-DCMAKE_CXX_FLAGS=-stdlib=libc++', ], cmake='/var/lib/buildbot/bin/cmake')},
... and seems to work.
This flag seems unused apart from the assertion below. Should it instead conditionalize the use of modules down around line 355 as well as being used in this assertion?