forked from storj-archived/storj-python-sdk
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
98 lines (71 loc) · 2.49 KB
/
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
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
98
PY_VERSION := 3
WHEEL_DIR := $(HOME)/tmp/wheelhouse
PIP := env/bin/pip
PY := env/bin/python
PEP8 := env/bin/pep8
AUTOPEP8 := env/bin/autopep8
COVERAGE := env/bin/coverage
USE_WHEELS := 0
ifeq ($(USE_WHEELS), 0)
WHEEL_INSTALL_ARGS := # void
else
WHEEL_INSTALL_ARGS := --use-wheel --no-index --find-links=$(WHEEL_DIR)
endif
export VIRTUALENV_PATH=env/bin/
help:
@echo "COMMANDS:"
@echo " clean Remove all generated files."
@echo " setup Setup development environment."
@echo " shell Open ipython from the development environment."
@echo " test Run tests."
@echo " wheel Build package wheel & save in $(WHEEL_DIR)."
@echo " wheels Build dependency wheels & save in $(WHEEL_DIR)."
@echo ""
@echo "VARIABLES:"
@echo " PY_VERSION Version of python to use. Default: $(PY_VERSION)"
@echo " WHEEL_DIR Where you save wheels. Default: $(WHEEL_DIR)."
@echo " USE_WHEELS Install packages from wheel dir, off by default."
clean:
rm -rf env
rm -rf build
rm -rf dist
rm -rf __pycache__
rm -rf htmlcov
rm -rf *.egg
rm -rf *.egg-info
find | grep -i ".*\.pyc$$" | xargs -r -L1 rm
virtualenv: clean
virtualenv -p /usr/bin/python$(PY_VERSION) env
$(PIP) install wheel
fetch_wheel: virtualenv
$(PIP) wheel --find-links=$(WHEEL_DIR) --wheel-dir=$(WHEEL_DIR) $(PACKAGE)
wheels: virtualenv
$(PIP) wheel --find-links=$(WHEEL_DIR) --wheel-dir=$(WHEEL_DIR) -r requirements.txt
$(PIP) wheel --find-links=$(WHEEL_DIR) --wheel-dir=$(WHEEL_DIR) -r requirements-test.txt
$(PIP) wheel --find-links=$(WHEEL_DIR) --wheel-dir=$(WHEEL_DIR) -r requirements-extra-cli.txt
$(PIP) wheel --find-links=$(WHEEL_DIR) --wheel-dir=$(WHEEL_DIR) -r requirements-docs.txt
$(PIP) wheel --find-links=$(WHEEL_DIR) --wheel-dir=$(WHEEL_DIR) tox
wheel: setup
$(PY) setup.py bdist_wheel
mv dist/*.whl $(WHEEL_DIR)
setup: virtualenv
$(PIP) install $(WHEEL_INSTALL_ARGS) -r requirements.txt
$(PIP) install $(WHEEL_INSTALL_ARGS) -r requirements-test.txt
$(PIP) install $(WHEEL_INSTALL_ARGS) -r requirements-extra-cli.txt
$(PIP) install $(WHEEL_INSTALL_ARGS) -r requirements-docs.txt
$(PIP) install $(WHEEL_INSTALL_ARGS) tox
install: setup
$(PY) setup.py install
shell: install
env/bin/ipython
test: setup
# auto pep8 code
$(AUTOPEP8) --in-place --aggressive --aggressive --recursive examples
# ensure pep8
$(PEP8) examples
# test
env/bin/tox -- --ignore=tests/integration
view_readme: setup
env/bin/restview README.rst
# Break in case of bug!
# import pudb; pu.db