build: for the bootstrap phase of a deb/rpm build pure-py mercurial is enough
When bootstrapping a deb/rpm build, packagelib.sh starts performing a local
build for the sole purpose of parsing the output of "hg version".
Then it "hg archive"s the source code, and builds everything again.
For that initial step, we are perfectly good in using a pure python mercurial,
without compiling the c modules (base85, bdiff, zstdlib, ...).
On my personal system, this cuts down 22 seconds for a package build (the
bootstrapping build goes from ~30 to ~8 seconds).
--- a/contrib/packagelib.sh Fri Oct 13 12:40:05 2017 -0700
+++ b/contrib/packagelib.sh Fri Oct 13 22:42:17 2017 +0200
@@ -9,7 +9,7 @@
# node: the node|short hg was built from, or empty if built from a tag
gethgversion() {
make cleanbutpackages
- make local || make local PURE=--pure
+ make local PURE=--pure
HG="$PWD/hg"
"$HG" version > /dev/null || { echo 'abort: hg version failed!'; exit 1 ; }