view contrib/plan9/mkfile @ 18091:f7f8159caad3

ancestor: add lazy membership testing to lazyancestors This also makes the perfancestorset command use lazy membership testing. In a linear repository with over 400,000 commits, without this patch, hg perfancestorset takes 0.80 seconds no matter how far behind we're looking. With this patch, hg perfancestorset -- X takes: Rev X Time -1 0.00s -4000 0.01s -20000 0.04s -80000 0.17s -200000 0.43s -300000 0.69s 0 0.88s Thus, for revisions close to tip, we're up to several orders of magnitude faster. At 0 we're around 10% slower.
author Siddharth Agarwal <sid0@fb.com>
date Tue, 18 Dec 2012 12:47:20 -0800
parents f9262456fb01
children
line wrap: on
line source

APE=/sys/src/ape
<$APE/config

PYTHON=python
PYTHONBIN=/rc/bin
SH=ape/psh

PURE=--pure
ROOT=../..

# This is slightly underhanded; Plan 9 does not support GNU gettext nor
# does it support dynamically loaded extension modules. We work around
# this by calling build_py and build_scripts directly; this avoids
# additional platform hacks in setup.py.
build:VQ:
	@{
		cd $ROOT
		$SH -c '$PYTHON setup.py $PURE build_py build_scripts'
	}

clean:VQ:
	@{
		cd $ROOT
		$SH -c '$PYTHON setup.py $PURE clean --all'
	}

install:VQ:	build
	@{
		cd $ROOT
		$SH -c '$PYTHON setup.py $PURE install \
			--install-scripts $PYTHONBIN \
			--skip-build \
			--force'
	}
	mkdir -p /lib/mercurial/hgrc.d
	dircp hgrc.d /lib/mercurial/hgrc.d/
	cp 9diff /rc/bin/