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}') 
   4 .PHONY
: usage 
install uninstall 
   6         @echo 
"Library: ${LIBRARY_NAME}" 
   7         @echo 
"Version: ${LIBRARY_VERSION}\n" 
   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" 
  18         @echo 
"tag:           tag the repository with the current version" 
  27         @echo 
"Checking for trailing whitespace" 
  28         @
! grep 
-IUrn 
--color 
"[[:blank:]]$$" --exclude-dir
=sphinx 
--exclude-dir
=.tox 
--exclude-dir
=.git 
--exclude
=PKG-INFO
 
  29         @echo 
"Checking for DOS line-endings" 
  30         @
! grep 
-IUrn 
--color 
"
" --exclude-dir
=sphinx 
--exclude-dir
=.tox 
--exclude-dir
=.git 
--exclude
=Makefile
 
  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}'" 
  37         git tag 
-a 
"v${LIBRARY_VERSION}" -m 
"Version ${LIBRARY_VERSION}" 
  39 python-readme
: library
/README.rst
 
  41 python-license
: library
/LICENSE.txt
 
  43 library
/README.rst
: README.md library
/CHANGELOG.txt
 
  44         pandoc 
--from
=markdown 
--to
=rst 
-o library
/README.rst README.md
 
  45         echo 
"" >> library
/README.rst
 
  46         cat library
/CHANGELOG.txt 
>> library
/README.rst
 
  48 library
/LICENSE.txt
: LICENSE
 
  49         cp LICENSE library
/LICENSE.txt
 
  51 python-wheels
: python-readme python-license
 
  52         cd library
; python3 setup.py bdist_wheel
 
  53         cd library
; python setup.py bdist_wheel
 
  55 python-sdist
: python-readme python-license
 
  56         cd library
; python setup.py sdist
 
  61         -rm -r library
/*.egg-info
 
  63 python-dist
: python-clean python-wheels python-sdist
 
  66 python-testdeploy
: python-dist
 
  67         twine upload 
--repository-url https
://test.pypi.org
/legacy
/ library
/dist/* 
  69 python-deploy
: check python-dist
 
  70         twine upload library
/dist/*