mozbuild variable conversions part deux

mozbuild conversions are ongoing, the following is a status update around progress.

The following variables are now supported by mozbuild. Any content changes or addition to them should be made within directory specific files rather than editing


Some content for variables will persist while conversions are ongoing. As individual variables are converted and cleanup work is complete, expect changes to be made that will reject future use of converted variables within

Pending variable conversions


Pass-through variable conversions:

To expedite migrating content from makefile to mozbuild, per-variable passthrough conversions can be added in python/mozbuild/ without having to fully implement a subroutine to handle each variable and nuances.

The following approach has helped avoid taking an all-or-nothing approach for transitioning variables.

  • Add support for an individual variable within python/mozbuild.
  • Convert makefiles within several directories.
  • loop on: review, try, submit
  • Submit several smaller patches containing bundles of files.
  • post conversion makefile cleanup.
  • reject variable use within
  • deprecate if all logic and variables have been converted.

These operations can be done asynchronously and test/random failures will not imply backing out the entire set of changed files for isolated problems. In contrast some of the early conversion patches contained 800+ files and cycled through several iterations and wide area failures before finally landing.

If you would like to work on some of the passthrough conversions an example from the CSRCS= conversion can be found here:

Add support for new varibles + unit test within python/mozbuild.
Convert makefile content to mozbuild.

Ongoing status tracking for variable conversions can be found here:

A list of variables currently suppored by can be found in

This entry was posted in mozbuild. Bookmark the permalink.

One Response to mozbuild variable conversions part deux

  1. njn says:


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s