#
# Makefile
#
# $Id: Makefile,v 1.13 2007/06/16 10:45:52 andy Exp $
#

PACKAGE	= kukushka-clock
VERSION	= 0.3.2

PREFIX		= /usr
SYSCFGDIR	= /etc
CFGDIR		= $(SYSCFGDIR)/sysconfdir
BINDIR		= $(PREFIX)/bin
DATADIR		= $(PREFIX)/share
PKGDATADIR	= $(DATADIR)/$(PACKAGE)
TEMP_DIR	= /var/run/$(PACKAGE)

BINFILE		= kukushka-clock
SOUNDS		=
SOUNDS_DIST	= sounds
SPEC		= $(PACKAGE).spec
CFGFILE 	= $(PACKAGE).cfg
DOCS		= LICENSE README
DISTFILES	= $(BINFILE) $(SOUNDS_DIST) $(SPEC) $(SPEC).in $(CFGFILE) $(DOCS)

$(SPEC): $(SPEC).in
	sed -e 's,@PACKAGE@,$(PACKAGE),; s,@VERSION@,$(VERSION),;' $< > $@

.PHONY: install uninstall dist clean tag rpm

install: $(SPEC)
	mkdir -p $(DESTDIR)$(BINDIR); \
	sed -e 's,@PKGDATADIR@,$(PKGDATADIR),; s,@CFGFILE@,$(CFGDIR)/$(PACKAGE),; s,@TMPDIR@,$(TEMP_DIR),;' \
	    $(BINFILE) > $(DESTDIR)$(BINDIR)/$(BINFILE); \
	chmod 755 $(DESTDIR)$(BINDIR)/$(BINFILE)
	mkdir -p $(DESTDIR)$(PKGDATADIR); \
	for s in $(SOUNDS); do \
	    install -m644 $$s $(DESTDIR)$(PKGDATADIR); \
	done; \
	cp -af $(SOUNDS_DIST) $(DESTDIR)$(PKGDATADIR)
	mkdir -p $(DESTDIR)$(CFGDIR); \
	install -m644 $(CFGFILE) $(DESTDIR)$(CFGDIR)/$(PACKAGE)
	mkdir -p $(DESTDIR)$(TEMP_DIR); \
	chmod 1777 $(DESTDIR)$(TEMP_DIR)

uninstall:
	rm -f $(DESTDIR)$(BINDIR)/$(BINFILE)
	rm -rf $(DESTDIR)$(TEMP_DIR)
	(cd $(DESTDIR)$(PKGDATADIR); rm -rf $(SOUNDS_DIST)) \
	for s in $(SOUNDS); do \
	    rm -f $(DESTDIR)$(PKGDATADIR)/$$s; \
	done
	rm -f $(DESTDIR)$(CFGDIR)/$(PACKAGE)

dist: $(DISTFILES)
	rm -rf $(PACKAGE)-$(VERSION); \
	mkdir -p $(PACKAGE)-$(VERSION); \
	for f in $(DISTFILES) Makefile; do \
	    cp -af $$f $(PACKAGE)-$(VERSION); \
	done; \
	find $(PACKAGE)-$(VERSION) -name CVS -type d | xargs rm -rf; \
	tar czf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION); \
	rm -rf $(PACKAGE)-$(VERSION)

clean:
	rm -f $(SPEC)
	rm -rf $(PACKAGE)-$(VERSION)
	rm -rf $(PACKAGE)-$(VERSION).tar.gz

tag:
	TAG=`echo $(PACKAGE)-$(VERSION) | sed -e 's,[-.],_,g'`; \
	cvs tag $$TAG

rpm: dist
	rpmbuild --define "_sourcedir $$PWD" -ba $(SPEC)
