File: Makefile

package info (click to toggle)
pillow 3.4.2-1~bpo8%2B1
  • links: PTS
  • area: main
  • in suites: jessie-backports
  • size: 19,840 kB
  • sloc: python: 25,296; ansic: 24,455; makefile: 400; sh: 109
file content (97 lines) | stat: -rw-r--r-- 2,804 bytes parent folder | download
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# https://www.gnu.org/software/make/manual/html_node/Phony-Targets.html
.PHONY: clean coverage doc docserve help inplace install install-req release-test sdist test upload upload-test
.DEFAULT_GOAL := release-test

clean:
	python setup.py clean
	rm PIL/*.so || true
	rm -r build || true
	find . -name __pycache__ | xargs rm -r || true

BRANCHES=`git branch -a | grep -v HEAD | grep -v master | grep remote`
co:
	-for i in $(BRANCHES) ; do \
        git checkout -t $$i ; \
    done

coverage:
	coverage erase
	coverage run --parallel-mode --include=PIL/* selftest.py
	nosetests --with-cov --cov='PIL/' --cov-report=html Tests/test_*.py
# Doesn't combine properly before report, writing report instead of displaying invalid report.
	rm -r htmlcov || true
	coverage combine
	coverage report

doc:
	$(MAKE) -C docs html

doccheck:
	$(MAKE) -C docs html
# Don't make our tests rely on the links in the docs being up every single build.
# We don't control them.  But do check, and update them to the target of their redirects.
	$(MAKE) -C docs linkcheck || true

docserve:
	cd docs/_build/html && python -mSimpleHTTPServer 2> /dev/null&

help:
	@echo "Welcome to Pillow development. Please use \`make <target>\` where <target> is one of"
	@echo "  clean          remove build products"
	@echo "  coverage       run coverage test (in progress)"
	@echo "  doc            make html docs"
	@echo "  docserve       run an http server on the docs directory"
	@echo "  html           to make standalone HTML files"
	@echo "  inplace        make inplace extension"
	@echo "  install        make and install"
	@echo "  install-req    install documentation and test dependencies"
	@echo "  install-venv   install in virtualenv"
	@echo "  release-test   run code and package tests before release"
	@echo "  test           run tests on installed pillow"
	@echo "  upload         build and upload sdists to PyPI"
	@echo "  upload-test    build and upload sdists to test.pythonpackages.com"

inplace: clean
	python setup.py build_ext --inplace

install:
	python setup.py install
	python selftest.py --installed

install-req:
	pip install -r requirements.txt

install-venv:
	virtualenv .
	bin/pip install -r requirements.txt

release-test:
	$(MAKE) install-req
	python setup.py develop
	python selftest.py
	nosetests Tests/test_*.py
	python setup.py install
	python test-installed.py
	check-manifest
	pyroma .
	viewdoc

sdist:
	python setup.py sdist --format=gztar,zip

test:
	python test-installed.py

# https://docs.python.org/2/distutils/packageindex.html#the-pypirc-file
upload-test:
#       [test]
#       username:
#       password:
#       repository = http://test.pythonpackages.com
	python setup.py sdist --format=gztar,zip upload -r test

upload:
	python setup.py sdist --format=gztar,zip upload

readme:
	viewdoc