зеркало из https://github.com/mozilla/gecko-dev.git
e28f6db31f
If mozbuild parsing fails due to a missing file (eg: a file not existing in UNIFIED_SOURCES), then no Makefiles are written out, but config.status exists. This would cause mozbuild to think that configure doesn't need to run, and rely on make to perform the backend-out-of-date check in rebuild-backend.mk. Unfortunately since no Makefiles were written, the make command fails immediately and no attempt is made to re-create the backend. Note that this is only a problem if the first mozbuild parsing from a clobber build fails, otherwise there is typically a top-level Makefile from a previous build to call into (at which point make can determine it is out-of-date, and re-invoke itself). The fix is to have the RecursiveMake backend re-use the same logic that was introduced into mozbuild for alternate backends, and remove rebuild-backend.mk. This way, mozbuild can always determine if the backend needs to be regenerated, even if the initial parsing failed. Test code was also relying on rebuild-backend.mk to generate the TestBackend, but moving backend_out_of_date() into MozbuildObject allows this code to be shared. Differential Revision: https://phabricator.services.mozilla.com/D26262 --HG-- rename : build/gen_test_backend.py => python/mozbuild/mozbuild/gen_test_backend.py extra : moz-landing-system : lando |
||
---|---|---|
.. | ||
docs | ||
manifestparser | ||
mozcrash | ||
mozdebug | ||
mozdevice | ||
mozfile | ||
mozhttpd | ||
mozinfo | ||
mozinstall | ||
mozleak | ||
mozlog | ||
moznetwork | ||
mozprocess | ||
mozprofile | ||
mozproxy | ||
mozrunner | ||
mozscreenshot | ||
mozsystemmonitor | ||
moztest | ||
mozversion | ||
rust | ||
README.md | ||
moz.build | ||
packages.txt | ||
setup_development.py | ||
versioninfo.py |
README.md
Mozbase
Mozbase is a set of easy-to-use Python packages forming a supplemental standard library for Mozilla. It provides consistency and reduces redundancy in automation and other system-level software. All of Mozilla's test harnesses use mozbase to some degree, including Talos, mochitest, and reftest.
Learn more about mozbase at the project page.
Read detailed docs online, or build them locally by running "make html" in the docs directory.