#!/usr/bin/make -f
# Local installation place
DEST=target
SVN_REPO=$(shell svn info | grep -E '^URL: ' | cut -f2 -d' ' | sed -e 's%/trunk%%')
VERSION=$(shell perl -le "print `grep VERSION lib/Gtk2/Ex/Entry/Pango.pm`")
PACKAGE=Gtk2-Ex-Entry-Pango
.PHONY: info
info:
@echo "SVN ${SVN_REPO}"
@echo "VERSION ${VERSION}"
@echo "PACKAGE ${PACKAGE}"
.PHONY: install
install:
rm -rf ${DEST} || true
mkdir -p ${DEST}
perl Makefile.PL INSTALLDIRS=vendor && make && sudo make install PREFIX=target
.PHONY: dist
dist: ${PACKAGE}-${VERSION}.tar.gz
${PACKAGE}-${VERSION}.tar.gz:
perl Makefile.PL && make && make dist
.PHONY: distcheck
distcheck: dist
make distcheck
.PHONY: test
test:
perl Makefile.PL && make && make test
.PHONY: tag
tag:
sh -c 'if svn ls "${SVN_REPO}/tags/${VERSION}" > /dev/null 2>&1 ; then echo "SVN TAG ${VERSION} exists already"; exit 1; else exit 0 ; fi';
svn cp -m "Tag for version ${VERSION}" ${SVN_REPO}/trunk ${SVN_REPO}/tags/${VERSION}
.PHONY: upload
upload: dist
cpan-upload -verbose -mailto "${EMAIL}" -user potyl "${PACKAGE}-${VERSION}.tar.gz"
.PHONY: release
release: clean dist distcheck tag upload
@echo "Release ${PACKAGE} ${VERSION} done."
.PHONY: clean
clean:
- [ -f make ] && make clean > /dev/null 2>&1 || true
-rm -f Makefile.old 2> /dev/null || true
-rm -rf ${PACKAGE}-*/ 2> /dev/null || true
-rm ${PACKAGE}-*.tar.gz 2> /dev/null || true
-rm -f pm_to_blib 2> /dev/null || true
-rm -rf blib 2> /dev/null || true