contrib/debian/rules
author Siddharth Agarwal <sid0@fb.com>
Mon, 16 Nov 2015 11:27:27 -0800
changeset 26978 9b9d4bcc915e
parent 26731 0c42b6bb2329
child 34405 9ecc622ca23f
permissions -rw-r--r--
filectx: add isabsent method This will indicate whether this filectx represents a file that is *not* in a changectx. This will be used by merge and filemerge code to know about when a conflict is a change/delete conflict. While this is kind of hacky, it is the least bad of all the alternatives. Other options considered but rejected include: - isinstance(fctx, ...) -- not very Pythonic, doesn't support duck typing - fctx.size() is None -- the 'size()' call on workingfilectxes causes a disk stat - fctx.filenode() == nullid -- the semantics around filenode are incredibly confusing. In particular, for workingfilectxes, filenode() is always None no matter whether the file is present on disk or in either parent. Having different behavior for None versus nullid in the merge code is just asking for pain. Thanks to Pierre-Yves David for early review feedback here.

#!/usr/bin/make -f
# Uncomment this to turn on verbose mode.
# export DH_VERBOSE=1

CPUS=$(shell cat /proc/cpuinfo | grep -E ^processor | wc -l)

%:
	dh $@ --with python2

override_dh_auto_test:
	http_proxy='' dh_auto_test -- TESTFLAGS="-j$(CPUS)"

override_dh_python2:
	dh_python2
	find debian/mercurial/usr/share -type d -empty -delete

override_dh_install:
	python$(PYVERS) setup.py install --root $(CURDIR)/debian/mercurial --install-layout=deb
	# remove arch-independent python stuff
	find $(CURDIR)/debian/mercurial/usr/lib \
		! -name '*.so' ! -type d -delete , \
		-type d -empty -delete
	python$(PYVERS) setup.py install --root $(CURDIR)/debian/mercurial-common --install-layout=deb
	make install-doc PREFIX=$(CURDIR)/debian/mercurial-common/usr
	# remove arch-dependent python stuff
	find $(CURDIR)/debian/mercurial-common/usr/lib \
		-name '*.so' ! -type d -delete , \
		-type d -empty -delete
	cp contrib/hg-ssh $(CURDIR)/debian/mercurial-common/usr/bin
	mkdir -p $(CURDIR)/debian/mercurial-common/usr/share/mercurial
	cp contrib/hgk $(CURDIR)/debian/mercurial-common/usr/share/mercurial
	mkdir -p $(CURDIR)/debian/mercurial-common/etc/mercurial/hgrc.d/
	cp contrib/debian/*.rc $(CURDIR)/debian/mercurial-common/etc/mercurial/hgrc.d/
	mkdir -p $(CURDIR)/debian/mercurial-common/usr/share/bash-completion/completions
	cp contrib/bash_completion $(CURDIR)/debian/mercurial-common/usr/share/bash-completion/completions/hg
	rm $(CURDIR)/debian/mercurial-common/usr/bin/hg