# Makefile - makefile for xhotkeys
PACKAGE=xhotkeys

# Destination directoy
DESTDIR= 

# Define destination directories

BINDIR=$(DESTDIR)/usr/bin
SBINDIR=$(DESTDIR)/usr/sbin
MAN1DIR=$(DESTDIR)/usr/share/man/man1
SHAREDIR=$(DESTDIR)/usr/share/$(PACKAGE)
ICONSDIR=$(DESTDIR)/usr/share/icons/hicolor
PIXMAPSDIR=$(DESTDIR)/usr/share/pixmaps
LIBDIR=$(DESTDIR)/usr/lib/$(PACKAGE)
APPDIR=$(DESTDIR)/usr/share/applications
ETCDIR=$(DESTDIR)/etc

# Useful variables
DEBIANVERSION=$(shell cat debian/changelog | head -n1 | awk '{print $$2}' | sed "s/^.//;s/.$$//")
VERSION=$(shell echo $(DEBIANVERSION) | sed "s/-/./")
TARBALL=$(PACKAGE)-$(VERSION).tar.gz
ARCH=$(shell dpkg --print-architecture)
DEBPACKAGE=$(PACKAGE)_$(DEBIANVERSION)_$(ARCH).deb
FTPSERVER=ftp://savannah.gnu.org/incoming/savannah/$(PACKAGE)/

# ------------- don't edit anything below this line --------------

FILES=xhotkeys xhotkeys.glade README TODO Makefile xhotkeys.conf \
	debian/changelog xhotkeys.desktop xhotkeys.png 

ICONS=16x16 32x32 48x48 64x64 96x96 128x128
XPMICON=32x32

all: icons
	$(MAKE) -C web/$(PACKAGE) VERSION=$(VERSION) TARBALL=$(TARBALL) DEBPACKAGE=$(DEBPACKAGE)
	
icons:
	# XPM Icon for pixmaps directory
	mkdir -p icons
	convert xhotkeys.png -resize \!$(XPMICON) icons/xhotkeys.xpm
	
	# PNG Hicolor Icons
	for ICON in $(ICONS); do \
		mkdir -p icons/$$ICON ;\
		convert xhotkeys.png -resize \!$$ICON icons/$$ICON/xhotkeys.png ;\
	done

install: all
	# Create directories
	mkdir -p $(SHAREDIR)
	
	# Install files
	install -m 755 xhotkeys $(BINDIR)
	install -m 644 xhotkeys.glade $(SHAREDIR)
	install -m 644 xhotkeys.1 $(MAN1DIR)
	install -m 644 xhotkeys.desktop $(APPDIR) || true

	# Install configuration files
	if [ ! -e $(ETCDIR)/xhotkeys.conf ]; then \
		install -m 644 xhotkeys.conf $(ETCDIR) ;\
	fi
	install -m 644 xhotkeys.conf $(SHAREDIR)/xhotkeys.conf.example
	
	# Install icons
	for ICON in $(ICONS); do \
		mkdir -p $(ICONSDIR)/$$ICON/apps ;\
		install -m 644 icons/$$ICON/xhotkeys.png $(ICONSDIR)/$$ICON/apps ;\
	done
	install -m 644 icons/xhotkeys.xpm $(PIXMAPSDIR) ;\

dist: ../$(TARBALL) ../$(DEBPACKAGE)


../$(TARBALL): clean $(FILES)
	cp debian/changelog ChangeLog
	fakeroot debian/rules clean
	(cd ..; tar --exclude=CVS -czf $(TARBALL) $(PACKAGE))
	rm -f ../$(TARBALL).sig
	gpg -b --use-agent ../$(TARBALL) || true

../$(DEBPACKAGE): ../$(TARBALL)
	(cp ../$(TARBALL) /tmp; cd /tmp; tar xvzf $(TARBALL); cd $(PACKAGE); fakeroot dpkg-buildpackage)
	cp /tmp/$(DEBPACKAGE) ..
	rm -f ../$(DEBPACKAGE).sig
	gpg -b --use-agent ../$(DEBPACKAGE) || true
	
upload: dist
	(cd ..; wput $(TARBALL)* $(FTPSERVER))
	(cd ..; wput $(DEBPACKAGE)* $(FTPSERVER))
	(cd web/$(PACKAGE); make upload)

clean:
	rm -rf *.pyc icons 
	$(MAKE) -C web/$(PACKAGE) clean
