Most of the mozilla modules are compatible to be built outside of the unified environment, but there are still plenty that are not. Since a normal build system, non unified, has it's benefits, better integration with static-analysis, integration with IDEs, like clangd etc, this patch adds the posibility to be able to build Firefox combining the non unified compatible modules with the ones are are not yet there. The footprint on the general build system that this patch adds it's minimal, it adds the possibility of configuring two things: -- each mozilla module, in `moz.build`, can be signaled if it's non unified compatible, as: ``` BUILDABLE_OUTSIDE_UNIFIED = True ``` -- adds a flag that trigger the hybrid build by adding to `mozconfig`: ``` ```
Bug 1725125 Comment 0 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Most of the mozilla modules are compatible to be built outside of the unified environment, but there are still plenty that are not. Since a normal build system, non unified, has it's benefits, better integration with static-analysis, integration with IDEs, like clangd etc, this patch adds the posibility to be able to build Firefox combining the non unified compatible modules with the ones are are not yet there. The footprint on the general build system that this patch adds it's minimal, it adds the possibility of configuring two things: -- each mozilla module, in `moz.build`, can be signaled if it's non unified compatible, as: ``` BUILDABLE_OUTSIDE_UNIFIED = True ``` -- adds a flag that trigger the hybrid build by adding to `mozconfig`: ``` ac_add_options --enable-hybrid-build ``` Second part of the patch adds a `try` tier 2 job `Bp-hybrid` that builds on every `mozilla-central` merger. Once this lands, `linux64-non-unified` and `macosx64-non-unified` are to be removed.
Most of the mozilla modules are compatible to be built outside of the unified environment, but there are still plenty that are not. Since a normal build system, non unified, has it's benefits, better integration with static-analysis, integration with IDEs, like clangd etc, this patch adds the posibility to be able to build Firefox combining the non unified compatible modules with the ones are are not yet there. The footprint on the general build system that this patch adds it's minimal, it adds the possibility of configuring two things: - each mozilla module, in `moz.build`, can be signaled if it's non unified compatible, as: ``` BUILDABLE_OUTSIDE_UNIFIED = True ``` - adds a flag that trigger the hybrid build by adding to `mozconfig`: ``` ac_add_options --enable-hybrid-build ``` Second part of the patch adds a `try` tier 2 job `Bp-hybrid` that builds on every `mozilla-central` merger. Once this lands, `linux64-non-unified` and `macosx64-non-unified` are to be removed.