NAME=0.11.2
VERSION="v$(NAME).tar.gz"
DIR_NAME=preupgrade-assistant-$(NAME)
URL=http://github.com/phracek/preupgrade-assistant/archive/$(VERSION)
RM=rm -rf
LOCAL=<full_path_GITHUB_Preupgrade_assistant_repository>

all: help

help:
	@echo "Usage: make <target>"
	@echo
	@echo "Available targets are:"
	@echo " help                    show this text"
	@echo " clean                   remove python bytecode and temp files"
	@echo " install                 install program on current system"
	@echo " log                     prepare changelog for spec file"
	@echo " source                  create source tarball"
	@echo " srpm                    create source rpm"
	@echo " rpm                     build latest version of preupgrade assistant package"
	@echo " lrpm                     build latest version of preupgrade assistant package based on GitHub Preupgrade-assistant repository"
	@echo " local                     create source tarball based on local GitHub preupgrade-assistant repository"
	#@echo " test                    run tests/run_tests.py"


clean-sdist-tarball:
	find -maxdepth 1 -type d -name 'preupgrade-assistant-*' -exec $(RM) {} +

clean: clean-sdist-tarball
	@python setup.py clean
	rm -f MANIFEST
	rm -rf *.src.rpm
	find . -\( -name "*.pyc" -o -name '*.pyo' -o -name "*~" -\) -delete


install:
	@python setup.py install


log:
	@(LC_ALL=C date +"* %a %b %e %Y `git config --get user.name` <`git config --get user.email`> - VERSION"; git log --pretty="format:- %s (%an)" | cat) | less

local:
	@tar --exclude-vcs -czf $(VERSION) -C $(LOCAL) .
	@tar -xzvf $(VERSION)

lsrpm: local
	@rpmbuild -bs ./*.spec --define "_sourcedir ." --define "_specdir ." --define "_srcrpmdir ."
	@echo "Local RPM is done"


source: clean
	@echo "Downloading tarball $(VERSION)"
	@curl -L -o $(VERSION) $(URL)
	@tar -xzvf $(VERSION)
	@cp -r $(DIR_NAME)/* .
	@rm -rf $(DIR_NAME)/
	@python setup.py sdist -d .


srpm: source
	@rpmbuild -bs ./*.spec --define "_sourcedir ." --define "_specdir ." --define "_srcrpmdir ."


rpm: srpm
	@rpmbuild --rebuild ./*.src.rpm --define "_rpmdir ."

test:
	@python tests/test_preup.py
