NAME = PyGtkScintilla
VERSION = 0.8.2

CC = gcc

PYTHON_PREFIX = $(shell python -c "import sys ; print '%s/lib/python%s' % (sys.exec_prefix,sys.version[:3])")
PYTHON_SITE = $(PYTHON_PREFIX)/site-packages
PYTHON_INCLUDE = $(shell python -c "import sys ; print '%s/include/python%s' % (sys.exec_prefix,sys.version[:3])")

LDFLAGS = -shared `gtk-config --libs` -lgtkscintilla
CFLAGS = `gtk-config --cflags` -I$(PYTHON_INCLUDE)

all: _gtkscintillamodule.so

_gtkscintillamodule.so: gtkscintillamodule.o
	rm -f _gtkscintillamodule.so
	$(CC) $(LDFLAGS) -o _gtkscintillamodule.so gtkscintillamodule.o

gtkscintillamodule.o: gtkscintillamodule.c gtkscintillamodule_defs.c gtkscintillamodule_impl.c
	$(CC) $(CFLAGS) -c gtkscintillamodule.c -o gtkscintillamodule.o

gtkscintillamodule_defs.c gtkscintillamodule_impl.c: gtkscintilla.defs
	python mkgtkscintilla.py gtkscintilla.defs

gtkscintilla.defs: scigen.py
	python scigen.py


install: all
	install -D --mode=755 _gtkscintillamodule.so $(DESTDIR)/$(PYTHON_SITE)/_gtkscintillamodule.so
	install -D --mode=644 gtkscintilla.py $(DESTDIR)/$(PYTHON_SITE)/gtkscintilla.py
	install -D --mode=644 GTKSCINTILLA.py $(DESTDIR)/$(PYTHON_SITE)/GTKSCINTILLA.py

uninstall:
	rm -f $(DESTDIR)/$(PYTHON_SITE)/_gtkscintillamodule.so
	rm -f $(DESTDIR)/$(PYTHON_SITE)/gtkscintilla.py
	rm -f $(DESTDIR)/$(PYTHON_SITE)/GTKSCINTILLA.py

clean: 
	rm -f *.o *.a *.so *~ *.pyc
	rm -f generate/*.pyc

realclean: clean
	rm -f gtkscintillamodule_defs.c gtkscintillamodule_impl.c gtkscintilla.defs

dist: clean
	if test -d "$(NAME)-$(VERSION)"; then rm -rf $(NAME)-$(VERSION); fi
	if test -f "$(NAME)-$(VERSION).tar.gz"; then rm -f $(NAME)-$(VERSION).tar.gz; fi
	mkdir $(NAME)-$(VERSION)
	cp -R generate $(NAME)-$(VERSION)
	cp gtkscintilla* $(NAME)-$(VERSION)
	cp GTKSCINTILLA.py $(NAME)-$(VERSION)
	cp mkgtkscintilla.py $(NAME)-$(VERSION)
	cp scigen.py $(NAME)-$(VERSION)
	cp Scintilla.iface $(NAME)-$(VERSION)
	cp pygtk.h $(NAME)-$(VERSION)
	cp Makefile $(NAME)-$(VERSION)
	cp README $(NAME)-$(VERSION)
	cp COPYING $(NAME)-$(VERSION)
	cp PyGtkScintilla.spec $(NAME)-$(VERSION)
	tar cvzf $(NAME)-$(VERSION).tar.gz $(NAME)-$(VERSION) --exclude CVS
	rm -rf $(NAME)-$(VERSION)
