|
|
|
# Makefile to help automate tasks
|
|
|
|
WD := $(shell pwd)
|
|
|
|
PY := .venv/bin/python
|
|
|
|
PIP := .venv/bin/pip
|
|
|
|
PEP8 := .venv/bin/pep8
|
|
|
|
NOSE := .venv/bin/nosetests
|
|
|
|
TWINE := twine
|
|
|
|
|
|
|
|
# ###########
|
|
|
|
# Tests rule!
|
|
|
|
# ###########
|
|
|
|
.PHONY: test
|
|
|
|
test: venv develop $(NOSE)
|
|
|
|
$(NOSE) --with-id -s tests
|
|
|
|
|
|
|
|
$(NOSE): setup
|
|
|
|
|
|
|
|
# #######
|
|
|
|
# INSTALL
|
|
|
|
# #######
|
|
|
|
.PHONY: all
|
|
|
|
all: setup develop
|
|
|
|
|
|
|
|
venv: .venv/bin/python
|
|
|
|
|
|
|
|
setup: venv
|
|
|
|
$(PIP) install -r requirements-dev.txt
|
|
|
|
|
|
|
|
.venv/bin/python:
|
|
|
|
test -d .venv || which python3 && python3 -m venv .venv || virtualenv .venv
|
|
|
|
|
|
|
|
.PHONY: clean
|
|
|
|
clean:
|
|
|
|
rm -rf .venv
|
|
|
|
|
|
|
|
develop: .venv/lib/python*/site-packages/readability-lxml.egg-link
|
|
|
|
|
|
|
|
.venv/lib/python*/site-packages/readability-lxml.egg-link:
|
|
|
|
$(PY) setup.py develop
|
|
|
|
|
|
|
|
|
|
|
|
# ###########
|
|
|
|
# Development
|
|
|
|
# ###########
|
|
|
|
.PHONY: clean_all
|
|
|
|
clean_all: clean_venv
|
|
|
|
|
|
|
|
# ###########
|
|
|
|
# Deploy
|
|
|
|
# ###########
|
|
|
|
.PHONY: dist
|
|
|
|
dist:
|
|
|
|
$(PY) setup.py sdist bdist_wheel
|
|
|
|
$(TWINE) check dist/*
|
|
|
|
|
|
|
|
.PHONY: upload
|
|
|
|
upload:
|
|
|
|
$(TWINE) upload dist/*
|
|
|
|
|
|
|
|
.PHONY: version_update
|
|
|
|
version_update:
|
|
|
|
$(EDITOR) setup.py
|