PYTHON ?= python2.2
INSTALL ?= install
RM ?= rm
MSGFMT ?= msgfmt
MSGMERGE ?= msgmerge
XGETTEXT ?= xgettext
FIND ?= find

#PREFIX = /usr/local
# autodetect GNOME prefix, change this if you want it elsewhere
PREFIX ?= `pkg-config libgnome-2.0 --variable=prefix || echo /usr/local`

# If you edited PYTHON above, edit this to the corresponding python lib dir
LIBDIR = $(PREFIX)/lib/python2.2/site-packages/straw
BINDIR = $(PREFIX)/bin
DATADIR = $(PREFIX)/share/straw
APPLICATIONSDIR = $(PREFIX)/share/applications
ICONDIR = $(PREFIX)/share/pixmaps
LOCALEDIR = $(PREFIX)/share/locale
# change this to just "/etc" if you're installing in /usr
SYSCONFDIR = $(PREFIX)/etc

POFILES := $(shell echo po/*.po)
MOFILES := $(POFILES:.po=.mo)
PYFILES := $(shell $(FIND) . -name "*.py" -print)

schema_DATA = data/straw.schemas 
# modify this if you're running your own build environment (garnome/jhbuild)
# change it to "xml://path/to/gnome_build_env/etc/gconf/gconf.xml.defaults"
GCONF_SCHEMA_CONFIG_SOURCE = xml::/etc/gconf/gconf.xml.defaults 
GCONF_SCHEMA_FILE_DIR = /etc/gconf/schemas/
GCONFTOOL = gconftool-2

SCHEMADIR = $(GCONF_SCHEMA_FILE_DIR)


install-schemas:
	GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(schema_DATA)

%.mo : %.po
	$(MSGFMT) -c -o $@ $<

all: translate install-schemas
	$(PYTHON) -c 'import compileall; compileall.compile_dir("src/lib")'

translate-pot:
	$(XGETTEXT) -k_ -kN_ $(PYFILES) glade/strings.c -o po/straw.pot

translate-merge:
	@pos='$(POFILES)'; \
	for po in $$pos; do \
		echo -n "Merging $$po "; \
		$(MSGMERGE) -U $$po po/straw.pot; \
	done

translate: translate-pot translate-merge $(MOFILES)

install: all 
	$(INSTALL) -m 755 -d $(BINDIR) $(LIBDIR) $(DATADIR) $(APPLICATIONSDIR) $(ICONDIR) $(LOCALEDIR) $(SCHEMADIR)
	$(INSTALL) -m 755 src/straw $(BINDIR)
	$(INSTALL) -m 644 glade/straw.glade $(DATADIR)
	$(INSTALL) -m 644 images/straw.png $(ICONDIR)
	$(INSTALL) -m 644 images/*.png $(DATADIR)
	$(INSTALL) -m 644 data/default_subscriptions.opml $(DATADIR)
	$(INSTALL) -m 644 src/lib/*.py[co] $(LIBDIR)
	$(INSTALL) -m 644 straw.desktop $(APPLICATIONSDIR)
	$(INSTALL) -m 644 data/straw.schemas $(SCHEMADIR)
	$(INSTALL) -m 644 images/straw.png $(ICONDIR)
	@mos='$(MOFILES)'; \
	cd po; \
	for mo in $$mos; do \
		mo=`basename $$mo`; \
		lang=`echo $$mo | sed -e 's/\.mo$$//'`; \
		$(INSTALL) -m 644 -D $$mo $(LOCALEDIR)/$$lang/LC_MESSAGES/straw.mo; \
	done

clean:
	$(RM) -f *~ src/*~ src/lib/*~ src/lib/*.pyc glade/*.bak po/*.mo po/*~
