2013-03-23 15:43:05 +01:00
|
|
|
all: svtplay-dl
|
|
|
|
|
2015-03-21 19:05:44 +01:00
|
|
|
.PHONY: test cover doctest pylint svtplay-dl \
|
|
|
|
release clean_releasedir $(RELEASE_DIR)
|
2013-04-21 10:48:20 +02:00
|
|
|
|
2015-03-21 19:05:44 +01:00
|
|
|
VERSION = 0.10
|
|
|
|
RELEASE = $(VERSION).$(shell date +%Y.%m.%d)
|
|
|
|
RELEASE_DIR = svtplay-dl-$(RELEASE)
|
2015-03-25 00:17:29 +01:00
|
|
|
LATEST_RELEASE = 0.10.2015.03.25
|
2013-03-23 15:43:05 +01:00
|
|
|
|
2013-05-27 20:32:51 +02:00
|
|
|
PREFIX ?= /usr/local
|
|
|
|
BINDIR = $(PREFIX)/bin
|
|
|
|
MANDIR = $(PREFIX)/share/man/man1
|
2013-05-27 20:28:08 +02:00
|
|
|
|
|
|
|
# Compress the manual if MAN_GZIP is set to y,
|
|
|
|
ifeq ($(MAN_GZIP),y)
|
|
|
|
MANFILE_EXT = .gz
|
|
|
|
endif
|
|
|
|
MANFILE = svtplay-dl.1$(MANFILE_EXT)
|
|
|
|
|
|
|
|
# As pod2man is a perl tool, we have to jump through some hoops
|
|
|
|
# to remove references to perl.. :-)
|
|
|
|
POD2MAN ?= pod2man --section 1 --utf8 -c "svtplay-dl manual" \
|
|
|
|
-r "svtplay-dl $(VERSION)"
|
|
|
|
|
2014-02-02 15:10:17 +01:00
|
|
|
PYTHON ?= /usr/bin/env python
|
2013-04-21 11:26:43 +02:00
|
|
|
export PYTHONPATH=lib
|
2013-03-23 15:43:05 +01:00
|
|
|
|
2014-03-19 23:16:00 +01:00
|
|
|
# If you don't have a python3 environment (e.g. mock for py3 and
|
|
|
|
# nosetests3), you can remove the -3 flag.
|
2014-09-07 15:27:26 +02:00
|
|
|
TEST_OPTS ?= -2 -3
|
2014-03-19 23:16:00 +01:00
|
|
|
|
2013-05-27 20:28:08 +02:00
|
|
|
install: svtplay-dl $(MANFILE)
|
2013-03-23 15:43:05 +01:00
|
|
|
install -d $(DESTDIR)$(BINDIR)
|
2013-05-27 20:28:08 +02:00
|
|
|
install -d $(DESTDIR)$(MANDIR)
|
2013-03-23 15:43:05 +01:00
|
|
|
install -m 755 svtplay-dl $(DESTDIR)$(BINDIR)
|
2015-02-01 16:09:57 +01:00
|
|
|
install -m 644 $(MANFILE) $(DESTDIR)$(MANDIR)
|
2013-03-23 15:43:05 +01:00
|
|
|
|
2013-04-21 14:08:41 +02:00
|
|
|
svtplay-dl: $(PYFILES)
|
|
|
|
$(MAKE) -C lib
|
2013-03-23 16:30:19 +01:00
|
|
|
mv lib/svtplay-dl .
|
2013-03-23 17:07:36 +01:00
|
|
|
|
2013-05-27 20:28:08 +02:00
|
|
|
svtplay-dl.1: svtplay-dl.pod
|
|
|
|
rm -f $@
|
|
|
|
$(POD2MAN) $< $@
|
|
|
|
|
|
|
|
svtplay-dl.1.gz: svtplay-dl.1
|
|
|
|
rm -f $@
|
|
|
|
gzip -9 svtplay-dl.1
|
|
|
|
|
2013-03-23 17:07:36 +01:00
|
|
|
test:
|
2014-03-19 23:16:00 +01:00
|
|
|
sh run-tests.sh $(TEST_OPTS)
|
2013-03-23 17:25:07 +01:00
|
|
|
|
2013-04-21 10:48:20 +02:00
|
|
|
cover:
|
|
|
|
sh run-tests.sh -C
|
|
|
|
|
2013-03-23 17:25:07 +01:00
|
|
|
pylint:
|
2014-12-26 02:11:19 +01:00
|
|
|
$(MAKE) -C lib pylint
|
2013-05-27 20:28:08 +02:00
|
|
|
|
2015-03-22 18:00:25 +01:00
|
|
|
doctest: svtplay-dl
|
|
|
|
sh scripts/diff_man_help.sh
|
|
|
|
|
2015-03-21 19:05:44 +01:00
|
|
|
$(RELEASE_DIR): clean_releasedir
|
|
|
|
mkdir svtplay-dl-$(RELEASE)
|
|
|
|
cd svtplay-dl-$(RELEASE) && git clone -b master ../ . && make svtplay-dl
|
|
|
|
|
|
|
|
clean_releasedir:
|
|
|
|
rm -rf $(RELEASE_DIR)
|
|
|
|
|
|
|
|
release: $(RELEASE_DIR) release-test
|
2015-03-24 23:54:03 +01:00
|
|
|
set -e; cd $(RELEASE_DIR) && \
|
2015-03-21 19:05:44 +01:00
|
|
|
sed -i -r -e 's/^(LATEST_RELEASE = ).*/\1$(RELEASE)/' Makefile;\
|
2015-03-24 23:54:03 +01:00
|
|
|
sed -i -r -e 's/^(__version__ = ).*/\1"$(RELEASE)"/' lib/svtplay_dl/__init__.py;\
|
2015-03-25 00:12:13 +01:00
|
|
|
make svtplay-dl; \
|
2015-03-24 23:54:03 +01:00
|
|
|
git add svtplay-dl Makefile lib/svtplay_dl/__init__.py; \
|
2015-03-21 19:05:44 +01:00
|
|
|
git commit -m "Prepare for release $(RELEASE)";
|
|
|
|
(cd $(RELEASE_DIR) && git format-patch --stdout HEAD^) | git am
|
|
|
|
|
|
|
|
git tag -m "New version $(RELEASE)" \
|
|
|
|
-m "$$(git log --oneline $(LATEST_RELEASE)..HEAD^)" \
|
|
|
|
$(RELEASE)
|
|
|
|
|
|
|
|
make clean_releasedir
|
|
|
|
|
|
|
|
release-test: $(RELEASE_DIR)
|
|
|
|
make -C $(RELEASE_DIR) test
|
|
|
|
make -C $(RELEASE_DIR) doctest
|
|
|
|
|
2013-05-27 20:28:08 +02:00
|
|
|
clean:
|
|
|
|
$(MAKE) -C lib clean
|
|
|
|
rm -f svtplay-dl
|
|
|
|
rm -f $(MANFILE)
|