summaryrefslogtreecommitdiff
path: root/Makefile
blob: 051e99ba082360243b779e5f20c685f86677d209 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
.PHONY: build sdist cover test clean-files clean-docs doc all  

all:
	$(info Possible targets:)
	$(info doc)
	$(info clean-docs)
	$(info clean-files)
	$(info clean)
	$(info test)
	$(info coverage)
	$(info build)
	$(info sdist)

doc:
	cd doc && make html

clean-docs:
	cd doc && make clean

clean-files:
	git clean -fx
	rm -rf build/ dist/

clean: clean-files clean-docs

test:
	pytest

coverage:
	pytest --cov smmap --cov-report xml

build:
	./setup.py build
	
sdist:
	./setup.py sdist

release: clean
	# Check if latest tag is the current head we're releasing
	echo "Latest tag = $$(git tag | sort -nr | head -n1)"
	echo "HEAD SHA       = $$(git rev-parse head)"
	echo "Latest tag SHA = $$(git tag | sort -nr | head -n1 | xargs git rev-parse)"
	@test "$$(git rev-parse head)" = "$$(git tag | sort -nr | head -n1 | xargs git rev-parse)"
	make force_release

force_release:: clean
	git push --tags
	python3 setup.py sdist bdist_wheel
	twine upload dist/*