Commit | Line | Data |
---|---|---|
ab1eb580 PH |
1 | LIBRARY_VERSION=$(shell grep version library/setup.cfg | awk -F" = " '{print $$2}') |
2 | LIBRARY_NAME=$(shell grep name library/setup.cfg | awk -F" = " '{print $$2}') | |
651e1c20 PH |
3 | |
4 | .PHONY: usage install uninstall | |
5 | usage: | |
ab1eb580 PH |
6 | @echo "Library: ${LIBRARY_NAME}" |
7 | @echo "Version: ${LIBRARY_VERSION}\n" | |
651e1c20 PH |
8 | @echo "Usage: make <target>, where target is one of:\n" |
9 | @echo "install: install the library locally from source" | |
10 | @echo "uninstall: uninstall the local library" | |
11 | @echo "check: peform basic integrity checks on the codebase" | |
12 | @echo "python-readme: generate library/README.rst from README.md" | |
13 | @echo "python-wheels: build python .whl files for distribution" | |
14 | @echo "python-sdist: build python source distribution" | |
15 | @echo "python-clean: clean python build and dist directories" | |
16 | @echo "python-dist: build all python distribution files" | |
17 | @echo "python-testdeploy: build all and deploy to test PyPi" | |
ab1eb580 | 18 | @echo "tag: tag the repository with the current version" |
651e1c20 PH |
19 | |
20 | install: | |
21 | ./install.sh | |
22 | ||
23 | uninstall: | |
24 | ./uninstall.sh | |
25 | ||
26 | check: | |
27 | @echo "Checking for trailing whitespace" | |
ab1eb580 | 28 | @! grep -IUrn --color "[[:blank:]]$$" --exclude-dir=sphinx --exclude-dir=.tox --exclude-dir=.git --exclude=PKG-INFO |
651e1c20 | 29 | @echo "Checking for DOS line-endings" |
ab1eb580 | 30 | @! grep -IUrn --color "\r" --exclude-dir=sphinx --exclude-dir=.tox --exclude-dir=.git --exclude=Makefile |
651e1c20 PH |
31 | @echo "Checking library/CHANGELOG.txt" |
32 | @cat library/CHANGELOG.txt | grep ^${LIBRARY_VERSION} | |
33 | @echo "Checking library/${LIBRARY_NAME}/__init__.py" | |
34 | @cat library/${LIBRARY_NAME}/__init__.py | grep "^__version__ = '${LIBRARY_VERSION}'" | |
35 | ||
ab1eb580 PH |
36 | tag: |
37 | git tag -a "v${LIBRARY_VERSION}" -m "Version ${LIBRARY_VERSION}" | |
38 | ||
651e1c20 PH |
39 | python-readme: library/README.rst |
40 | ||
41 | python-license: library/LICENSE.txt | |
42 | ||
ab1eb580 | 43 | library/README.rst: README.md library/CHANGELOG.txt |
651e1c20 | 44 | pandoc --from=markdown --to=rst -o library/README.rst README.md |
ab1eb580 PH |
45 | echo "" >> library/README.rst |
46 | cat library/CHANGELOG.txt >> library/README.rst | |
651e1c20 PH |
47 | |
48 | library/LICENSE.txt: LICENSE | |
49 | cp LICENSE library/LICENSE.txt | |
50 | ||
51 | python-wheels: python-readme python-license | |
52 | cd library; python3 setup.py bdist_wheel | |
53 | cd library; python setup.py bdist_wheel | |
54 | ||
55 | python-sdist: python-readme python-license | |
56 | cd library; python setup.py sdist | |
57 | ||
58 | python-clean: | |
59 | -rm -r library/dist | |
60 | -rm -r library/build | |
61 | -rm -r library/*.egg-info | |
62 | ||
63 | python-dist: python-clean python-wheels python-sdist | |
64 | ls library/dist | |
65 | ||
66 | python-testdeploy: python-dist | |
67 | twine upload --repository-url https://test.pypi.org/legacy/ library/dist/* | |
68 | ||
69 | python-deploy: check python-dist | |
70 | twine upload library/dist/* |