I finally managed to enable unified builds on b2g.  The tl;dr is that they
give you faster builds (hopefully around twice as fast) for Gecko the next
time that you update gaia and gonk-misc to master.

The slightly longer version is that the build system will group C++ source
files defined in UNIFIED_SOURCES variables in moz.build files together in
16 file buckets and pass them to the compiler in one go in order to
eliminate the repetitive work that the compiler needs to do in order to
parse and analyze the stuff that you #include in your code.  The
unfortunate side effect is that this changes the translation unit boundary,
which means for example variables in one file may fail to build if they
have the same name as those in other files in the same directory, or that
if you end up relying on an #include in one file to give you the definition
of a name in another file, the periodic non-unified builds on TBPL (called
Bn) will burn.

I hope you find this useful.  Please let me know if you have any questions.

Cheers,
--
Ehsan
<http://ehsanakhgari.org/>
_______________________________________________
dev-b2g mailing list
dev-b2g@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-b2g

Reply via email to