2013-07-24 20:41:03 +00:00
|
|
|
PYTHON ?= /usr/bin/python
|
2010-12-08 13:16:13 +00:00
|
|
|
DESTDIR ?= /
|
2008-10-05 05:51:17 +00:00
|
|
|
|
2010-12-02 12:36:22 +00:00
|
|
|
PKGNAME = lorax
|
|
|
|
VERSION = $(shell awk '/Version:/ { print $$2 }' $(PKGNAME).spec)
|
|
|
|
RELEASE = $(shell awk '/Release:/ { print $$2 }' $(PKGNAME).spec | sed -e 's|%.*$$||g')
|
2013-02-28 19:53:34 +00:00
|
|
|
TAG = lorax-$(VERSION)-$(RELEASE)
|
2018-02-15 12:46:37 +00:00
|
|
|
PW_DIR ?= $(shell pwd)
|
|
|
|
USER_SITE_PACKAGES ?= $(shell sudo $(PYTHON) -m site --user-site)
|
2010-12-02 12:36:22 +00:00
|
|
|
|
|
|
|
|
|
|
|
default: all
|
2008-10-05 05:51:17 +00:00
|
|
|
|
2018-03-10 00:42:42 +00:00
|
|
|
src/composer/version.py: lorax.spec
|
|
|
|
echo "num = '$(VERSION)-$(RELEASE)'" > src/composer/version.py
|
|
|
|
|
2011-10-24 22:49:39 +00:00
|
|
|
src/pylorax/version.py: lorax.spec
|
|
|
|
echo "num = '$(VERSION)-$(RELEASE)'" > src/pylorax/version.py
|
|
|
|
|
2018-03-10 00:42:42 +00:00
|
|
|
all: src/pylorax/version.py src/composer/version.py
|
2008-10-05 05:51:17 +00:00
|
|
|
$(PYTHON) setup.py build
|
|
|
|
|
2010-12-02 12:36:22 +00:00
|
|
|
install: all
|
|
|
|
$(PYTHON) setup.py install --root=$(DESTDIR)
|
2013-07-26 22:01:14 +00:00
|
|
|
mkdir -p $(DESTDIR)/$(mandir)/man1
|
2017-11-16 20:14:19 +00:00
|
|
|
install -m 644 docs/man/lorax.1 $(DESTDIR)/$(mandir)/man1
|
|
|
|
install -m 644 docs/man/livemedia-creator.1 $(DESTDIR)/$(mandir)/man1
|
2008-10-05 05:51:17 +00:00
|
|
|
|
2017-10-04 19:11:10 +00:00
|
|
|
check:
|
|
|
|
@echo "*** Running pylint ***"
|
|
|
|
PYTHONPATH=$(PYTHONPATH):./src/ ./tests/pylint/runpylint.py
|
|
|
|
|
2018-02-12 14:56:24 +00:00
|
|
|
# /api/docs/ tests require we have the documentation already built
|
|
|
|
test: docs
|
2017-10-05 12:44:39 +00:00
|
|
|
@echo "*** Running tests ***"
|
2018-02-15 12:46:37 +00:00
|
|
|
sudo mkdir -p $(USER_SITE_PACKAGES)
|
|
|
|
sudo cp ./tests/usercustomize.py $(USER_SITE_PACKAGES)
|
|
|
|
sudo COVERAGE_PROCESS_START=$(PW_DIR)/.coveragerc PYTHONPATH=$(PYTHONPATH):./src/ \
|
2019-02-26 19:26:13 +00:00
|
|
|
$(PYTHON) -m nose -v ./src/pylorax/ ./tests/pylorax/
|
2018-02-15 12:46:37 +00:00
|
|
|
sudo rm -rf $(USER_SITE_PACKAGES)
|
2017-10-21 20:41:39 +00:00
|
|
|
|
2018-02-15 12:46:37 +00:00
|
|
|
coverage combine
|
2017-10-05 12:44:39 +00:00
|
|
|
coverage report -m
|
|
|
|
[ -f "/usr/bin/coveralls" ] && [ -n "$(COVERALLS_REPO_TOKEN)" ] && coveralls || echo
|
2018-09-19 12:00:25 +00:00
|
|
|
|
2017-10-05 12:44:39 +00:00
|
|
|
|
2014-05-08 18:43:00 +00:00
|
|
|
check:
|
|
|
|
@echo "*** Running pylint ***"
|
|
|
|
./tests/pylint/runpylint.sh
|
|
|
|
|
2008-10-05 05:51:17 +00:00
|
|
|
clean:
|
2011-10-24 22:49:39 +00:00
|
|
|
-rm -rf build src/pylorax/version.py
|
2018-03-10 00:42:42 +00:00
|
|
|
-rm -rf build src/composer/version.py
|
2010-10-12 16:23:29 +00:00
|
|
|
|
2010-12-02 12:36:22 +00:00
|
|
|
tag:
|
|
|
|
git tag -f $(TAG)
|
|
|
|
|
2017-11-16 20:14:19 +00:00
|
|
|
docs:
|
|
|
|
$(MAKE) -C docs apidoc html
|
|
|
|
|
2010-12-02 12:36:22 +00:00
|
|
|
archive: tag
|
|
|
|
@git archive --format=tar --prefix=$(PKGNAME)-$(VERSION)/ $(TAG) > $(PKGNAME)-$(VERSION).tar
|
2013-02-28 20:11:05 +00:00
|
|
|
@gzip $(PKGNAME)-$(VERSION).tar
|
|
|
|
@echo "The archive is in $(PKGNAME)-$(VERSION).tar.gz"
|
2010-10-19 15:35:50 +00:00
|
|
|
|
2010-12-02 12:36:22 +00:00
|
|
|
local:
|
2013-02-28 20:11:05 +00:00
|
|
|
@rm -rf $(PKGNAME)-$(VERSION).tar.gz
|
|
|
|
@rm -rf /var/tmp/$(PKGNAME)-$(VERSION)
|
|
|
|
@dir=$$PWD; cp -a $$dir /var/tmp/$(PKGNAME)-$(VERSION)
|
|
|
|
@rm -rf /var/tmp/$(PKGNAME)-$(VERSION)/.git
|
|
|
|
@dir=$$PWD; cd /var/tmp; tar --gzip -cSpf $$dir/$(PKGNAME)-$(VERSION).tar.gz $(PKGNAME)-$(VERSION)
|
|
|
|
@rm -rf /var/tmp/$(PKGNAME)-$(VERSION)
|
|
|
|
@echo "The archive is in $(PKGNAME)-$(VERSION).tar.gz"
|
2017-10-05 12:44:39 +00:00
|
|
|
|
2017-12-14 10:24:57 +00:00
|
|
|
test-in-docker:
|
|
|
|
sudo docker build -t welder/lorax-composer:latest -f Dockerfile.test .
|
|
|
|
|
2017-10-05 12:44:39 +00:00
|
|
|
ci: check test
|
2017-11-16 20:14:19 +00:00
|
|
|
|
|
|
|
.PHONY: all install check test clean tag docs archive local
|