contrib/packaging/debian/rules
author Matt Harbison <matt_harbison@yahoo.com>
Tue, 22 May 2018 23:22:15 -0400
changeset 38160 c974320d20b9
parent 38009 e51c91c14a07
child 43310 7574ccd87200
permissions -rwxr-xr-x
terse: pconvert() entries added to the temporary terse dict for Windows Recent additional testing revealed this problem on Windows: --- tests/test-status.t.err +++ tests/test-status.t.err @@ -109,7 +109,7 @@ tweaking defaults works $ hg status --cwd a --config ui.tweakdefaults=yes - ? . + ? ../a/ ? ../b/ ? ../in_root $ HGPLAIN=1 hg status --cwd a --config ui.tweakdefaults=yes @@ -120,7 +120,7 @@ ? b/in_b (glob) ? in_root $ HGPLAINEXCEPT=tweakdefaults hg status --cwd a --config ui.tweakdefaults=yes - ? . + ? ..\a\ ? ../b/ ? ../in_root (glob) AFAICT, the status list (input and output here) is always in '/' format. The '\' printed output on Windows is because each file is run through repo.pathto() -> dirstate.pathto() -> util.pathto(). (And that function states that the argument uses '/' separators.) I fixed a similar issue in 362096cfdb1f, and given the apparent need for these strings to be in '/' format, I wonder if cmdutil.dirnode() should be rewritten to avoid os.path.join(). But it looks like all entries added to the temporary terse dict should use '/' now, and cmdutil.tersedir() looks like the only user.

#!/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
	# chg
	make -C contrib/chg \
		DESTDIR="$(CURDIR)"/debian/mercurial \
		PREFIX=/usr \
		clean install
	# 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/packaging/debian/*.rc "$(CURDIR)"/debian/mercurial-common/etc/mercurial/hgrc.d/
	# completions
	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
	mkdir -p "$(CURDIR)"/debian/mercurial-common/usr/share/zsh/vendor-completions
	cp contrib/zsh_completion "$(CURDIR)"/debian/mercurial-common/usr/share/zsh/vendor-completions/_hg
	rm "$(CURDIR)"/debian/mercurial-common/usr/bin/hg