-
Mike Hommey authored
Bug 1671424 - Move configure execution from client.mk to `mach configure`. r=firefox-build-system-reviewers,rstewart `mach configure` currently runs the equivalent to `make -f client.mk`. This is history, and essentially does the following: - Create `configure` and `js/src/configure` from `configure.in` and `js/src/configure.in` respectively. - Create the objdir. - Run `configure` from the objdir. The `configure` script is, nowadays, only really used as a means to set OLD_CONFIGURE (and also for people who want to run `configure`, literally, as in the `configure; make` workflow). `mach configure` actually doesn't need it. Neither does recursing into `js/src` require `js/src/configure`, since bug 1520340 (and now as of bug 1669633, we don't even recurse). Because configure.py can actually derive OLD_CONFIGURE on its own (except for `js/src/configure`, but `mach configure` doesn't run that), we don't really need `configure` for `mach configure`. So all in all, we're at a point in history where it's straightforward to just initiate configure.py from mach configure, so we just do that. And in the hypothetical case where the `mach configure` code is somehow running in python2, we get the mach virtualenv python3 and use it to execute `configure.py`. Differential Revision: https://phabricator.services.mozilla.com/D93741
Mike Hommey authoredBug 1671424 - Move configure execution from client.mk to `mach configure`. r=firefox-build-system-reviewers,rstewart `mach configure` currently runs the equivalent to `make -f client.mk`. This is history, and essentially does the following: - Create `configure` and `js/src/configure` from `configure.in` and `js/src/configure.in` respectively. - Create the objdir. - Run `configure` from the objdir. The `configure` script is, nowadays, only really used as a means to set OLD_CONFIGURE (and also for people who want to run `configure`, literally, as in the `configure; make` workflow). `mach configure` actually doesn't need it. Neither does recursing into `js/src` require `js/src/configure`, since bug 1520340 (and now as of bug 1669633, we don't even recurse). Because configure.py can actually derive OLD_CONFIGURE on its own (except for `js/src/configure`, but `mach configure` doesn't run that), we don't really need `configure` for `mach configure`. So all in all, we're at a point in history where it's straightforward to just initiate configure.py from mach configure, so we just do that. And in the hypothetical case where the `mach configure` code is somehow running in python2, we get the mach virtualenv python3 and use it to execute `configure.py`. Differential Revision: https://phabricator.services.mozilla.com/D93741