hghave: add a check for the `xz` compression utility
This isn't install by default on Mac, which causes a test failure. The logic
for avoiding the command is a little goofy, but nested `#if` isn't supported,
and it still seems worth running the hg command to see if anything explodes.
With this, the py3 tests run (almost) cleanly on 10.14.6:
# Ran 835 tests, 58 skipped, 1 failed.
Alas, the mac-packaging test is skipped because it's slow. The failure here is
in test-releasenotes-merging.t, complaining about not being able to import the
`fuzzywuzzy` module. I have it installed on py3 (thus the test isn't skipped),
but not on py2. So there must be some unintended cross pollination here when
running `hg` commands.
Differential Revision: https://phab.mercurial-scm.org/D7374
#require test-repo slow debhelper debdeps
$ . "$TESTDIR/helpers-testrepo.sh"
$ testrepohgenv
Ensure debuild doesn't run the testsuite, as that could get silly.
$ DEB_BUILD_OPTIONS=nocheck
$ export DEB_BUILD_OPTIONS
$ OUTPUTDIR=`pwd`
$ export OUTPUTDIR
$ cd "$TESTDIR"/..
$ make deb > $OUTPUTDIR/build.log 2>&1
$ cd $OUTPUTDIR
$ ls *.deb | grep -v 'dbg'
mercurial_*.deb (glob)
should have .so and .py
$ dpkg --contents mercurial_*.deb | egrep '(localrepo|parsers)'
* ./usr/lib/python3/dist-packages/mercurial/cext/parsers*.so (glob)
* ./usr/lib/python3/dist-packages/mercurial/localrepo.py (glob)
* ./usr/lib/python3/dist-packages/mercurial/pure/parsers.py (glob)
should have zsh completions
$ dpkg --contents mercurial_*.deb | egrep 'zsh.*[^/]$'
* ./usr/share/zsh/vendor-completions/_hg (glob)
should have chg
$ dpkg --contents mercurial_*.deb | egrep 'chg$'
* ./usr/bin/chg (glob)
chg should come with a man page
$ dpkg --contents mercurial_*.deb | egrep 'man.*chg'
* ./usr/share/man/man1/chg.1.gz (glob)