tqdm/Makefile

142 lines
3.2 KiB
Makefile
Raw Normal View History

# IMPORTANT: for compatibility with `python setup.py make [alias]`, ensure:
# 1. Every alias is preceded by @[+]make (eg: @make alias)
2015-11-07 23:11:02 +00:00
# 2. A maximum of one @make alias or command per line
#
# Sample makefile compatible with `python setup.py make`:
#```
#all:
# @make test
# @make install
#test:
# nosetest
#install:
# python setup.py install
#```
.PHONY:
alltests
2015-10-31 11:38:53 +00:00
all
flake8
2015-10-31 11:38:53 +00:00
test
testnose
testsetup
2015-10-31 11:38:53 +00:00
testcoverage
testperf
2015-11-26 10:23:08 +00:00
testtimer
2016-04-07 21:10:09 +00:00
distclean
coverclean
prebuildclean
clean
2015-10-31 11:38:53 +00:00
installdev
install
build
pypi
none
2016-06-04 12:58:44 +00:00
help:
@python setup.py make
2015-10-31 11:38:53 +00:00
alltests:
@+make testcoverage
@+make testperf
@+make flake8
@+make testsetup
all:
@+make alltests
@+make build
2015-06-15 09:02:33 +00:00
flake8:
@+flake8 --max-line-length=80 --exclude .asv,.tox -j 8 --count --statistics --exit-zero .
2015-06-15 09:02:33 +00:00
test:
tox --skip-missing-interpreters
testnose:
2015-11-26 10:23:08 +00:00
nosetests tqdm -d -v
2015-06-15 09:02:33 +00:00
testsetup:
python setup.py check --restructuredtext --strict
python setup.py make none
testcoverage:
2016-04-07 21:10:09 +00:00
@make coverclean
nosetests tqdm --with-coverage --cover-package=tqdm --cover-erase --cover-min-percentage=80 --ignore-files="tests_perf\.py" -d -v
2016-12-27 14:24:04 +00:00
testperf:
# do not use coverage (which is extremely slow)
nosetests tqdm/tests/tests_perf.py -d -v
2015-11-26 10:23:08 +00:00
testtimer:
nosetests tqdm --with-timer -d -v
2016-12-27 14:24:04 +00:00
# another performance test, to check evolution across commits
2016-10-31 01:53:14 +00:00
testasv:
2016-12-27 14:24:04 +00:00
# Test only the last 3 commits (quick test)
2016-10-31 01:53:14 +00:00
asv run -j 8 HEAD~3..HEAD
@make viewasv
testasvfull:
2016-12-27 14:24:04 +00:00
# Test all the commits since the beginning (full test)
2016-10-31 01:53:14 +00:00
asv run -j 8 v1.0.0..master
@make testasv
viewasv:
asv publish
asv preview
2018-10-21 17:50:18 +00:00
tqdm/tqdm.1: .tqdm.1.md
2017-07-03 23:25:22 +00:00
python -m tqdm --help | tail -n+5 | cat "$<" - |\
sed -r 's/^ (--.*)=<(.*)> : (.*)$$/\n\\\1=*\2*\n: \3./' |\
sed -r 's/ (-.*, --.*) /\n\1\n: /' |\
pandoc -o "$@" -s -t man
2016-04-07 21:10:09 +00:00
distclean:
@+make coverclean
@+make prebuildclean
@+make clean
prebuildclean:
@+python -c "import shutil; shutil.rmtree('build', True)"
@+python -c "import shutil; shutil.rmtree('dist', True)"
@+python -c "import shutil; shutil.rmtree('tqdm.egg-info', True)"
coverclean:
@+python -c "import os; os.remove('.coverage') if os.path.exists('.coverage') else None"
@+python -c "import shutil; shutil.rmtree('tqdm/__pycache__', True)"
@+python -c "import shutil; shutil.rmtree('tqdm/tests/__pycache__', True)"
2016-04-07 21:10:09 +00:00
clean:
2017-07-03 23:25:22 +00:00
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('*.py[co]')]"
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/*.py[co]')]"
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/tests/*.py[co]')]"
@+python -c "import os, glob; [os.remove(i) for i in glob.glob('tqdm/examples/*.py[co]')]"
toxclean:
@+python -c "import shutil; shutil.rmtree('.tox', True)"
2016-04-07 21:10:09 +00:00
installdev:
python setup.py develop --uninstall
python setup.py develop
2018-08-20 15:15:11 +00:00
submodules:
git clone git@github.com:tqdm/tqdm.wiki wiki
git clone git@github.com:tqdm/tqdm.github.io docs
git clone git@github.com:conda-forge/tqdm-feedstock feedstock
cd feedstock && git remote add autotick-bot git@github.com:regro-cf-autotick-bot/tqdm-feedstock
install:
python setup.py install
build:
2016-04-07 21:10:09 +00:00
@make prebuildclean
2018-10-20 21:38:47 +00:00
python setup.py sdist bdist_wheel
# python setup.py bdist_wininst
pypi:
twine upload dist/*
buildupload:
@make testsetup
@make build
@make pypi
none:
2015-10-31 11:38:53 +00:00
# used for unit testing