-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
47 lines (33 loc) · 970 Bytes
/
Makefile
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
# vim:ts=4:sw=4:noet
PYPI_REPO ?= testpypi
VERSION ?= $(shell echo "0.5.dev$$(date -u +'%j%H%M' | sed -e 's/^0//')")
SEDI = sed -i'' -E -e
VENV = $(shell realpath .venv)
VERSIONQ = '$(VERSION)'
.PHONY: clean dist push pypi-upload release setver
define usage
clean
dist
push
pypi-upload PYPI_REPO=...
release VERSION=...
setver VERSION=...
endef
help:
@$(info $(usage))
@exit 1
clean: prep
rm -fr dist/*
dist:
python -m build
prep:
@which pip | grep -q '^$(VENV)/bin/pip' || (echo 'Please execute:\n\n source $(VENV)/bin/activate\n'; exit 1)
push:
@for r in $(shell git remote); do git push $$r; done
pypi-upload: prep
twine upload --sign --identity 6AE2A84723D56D985B340BC08E5FA4709F69E911 --repository $(PYPI_REPO) dist/*
release: setver
$(SEDI) "s/(RELEASE=).*/\1$(VERSIONQ)/" scripts/install
setver:
$(SEDI) "s/(^VERSION =).*/\1 $(VERSIONQ)/" postqf/__init__.py
$(SEDI) "s/(^version =).*/\1 $(VERSION)/" setup.cfg