view Makefile @ 6630:f2b8e94d7afb

evolve: let pytype ignore system cbor module The better way to deal with this issue is to install cbor on CI images and let pytype check it as well (since it's quite small), but let's just ignore it for now and maybe consider other options later.
author Anton Shestakov <av6@dwimlabs.net>
date Mon, 01 Jan 2024 18:04:25 -0300
parents a80ed2e4745b
children
line wrap: on
line source

PYTHON ?= python3
VERSION = $(shell $(PYTHON) setup.py --version)
TESTFLAGS ?= $(shell echo $$HGTESTFLAGS)
HGTESTS = $(HGROOT)/tests

.PHONY: help
help:
	@echo 'Commonly used make targets:'
	@echo '  deb-prepare        - prepare the build of a debian package'
	@echo '  install-home       - install with setup.py install --home=$$HOME ($(HOME))'
	@echo '  tests              - run all tests in the automatic test suite'

.PHONY: all
all: help

.PHONY: deb-prepare
deb-prepare:
	$(PYTHON) setup.py sdist --dist-dir ..
	mv -f ../hg-evolve-$(VERSION).tar.gz ../mercurial-evolve_$(VERSION).orig.tar.gz
	tar xf ../mercurial-evolve_$(VERSION).orig.tar.gz
	rm -rf ../mercurial-evolve_$(VERSION).orig
	mv hg-evolve-$(VERSION) ../mercurial-evolve_$(VERSION).orig
	cp -r debian/ ../mercurial-evolve_$(VERSION).orig/
	@cd ../mercurial-evolve_$(VERSION).orig && echo 'debian build directory ready at' `pwd`

.PHONY: install-home
install-home:
	$(PYTHON) setup.py install --home="$(HOME)" --prefix="" --force --old-and-unmanageable --single-version-externally-managed

.PHONY: doc
doc:
	$(MAKE) -C docs

.PHONY: _check_hgroot
_check_hgroot:
ifeq ($(HGROOT),)
	$(error HGROOT is not set to the root of the hg source tree)
endif

.PHONY: tests
tests: _check_hgroot
	cd tests && $(PYTHON) $(HGTESTS)/run-tests.py $(TESTFLAGS)

test-%: _check_hgroot
	cd tests && $(PYTHON) $(HGTESTS)/run-tests.py $(TESTFLAGS) $@