execfile("../PyMakefile.settings")

LOGGERLIB = "-L.. -llogger"

LIBS = "%(LOGGERLIB) %(LINKLIBS)"

PYCFLAGS = "%(LIBCFLAGS) -I.. -I%(PYTHONROOT) -DHAVE_CONFIG_H -I%(PYINCLUDE)"

PYPROGRAMS = ["review-log", "annotate-session", "db-update", "logger-dbquery"]
INSTALLPROGRAMS = ["review-log.install", "annotate-session.install",
		   "db-update.install", "logger-dbquery.install"]

# Set up the sed commands for the scripts.

MAKE_CMD = 'sed -e "s!MAKEFILE_ROOTDIR!%(ROOTDIR)/python!" | \
	   sed -e "s!MAKEFILE_PYTHON!%(PYTHONCMD)!" | \
	   sed -e "s!MAKEFILE_DEFAULT_MIME_DB!%(DEFAULT_MIME_DB)!"'
INSTALL_CMD = 'sed -e "s!MAKEFILE_ROOTDIR!`%(LIBDIR)!" | \
	      sed -e "s!MAKEFILE_PYTHON!%(PYTHONCMD)!" | \
	      sed -e "s!MAKEFILE_DEFAULT_MIME_DB!%(DEFAULT_MIME_DB)!"'

PYSO = "loggermodule.so"

PYLIBS = ["review_log.py", "db_retrieve.py", "mimetypes.py", "annotate_session.py",
	  DEFAULT_MIME_DB, "start-arrow.bm", "mid-arrow.bm", "end-arrow.bm",
	  "zoom-in.bm", "zoom-out.bm", "db_query.py", "db_update.py"]

ALLSOURCE = PYLIBS + ["Makefile", "annotate-session.in", "db-update.in",
		      "logger-dbquery.in", "loggermodule.c",
		      "review-log.in", "mime_db"]

MFRule("all", PYPROGRAMS + [PYSO], [])

MFRule("*", ["%(BASE).in"],
       ["cat %(BASE).in | %(MAKE_CMD) > %(FILE)",
	"chmod +x %(FILE)"],
       PYPROGRAMS)

MFRule("*.install", ["%(BASE).in"],
       ["cat %(BASE).in | %(INSTALL_CMD) > %(BINDIR)/%(BASE)",
	"chmod +x %(BINDIR)/%(BASE)"],
       INSTALLPROGRAMS)

MFRule("loggermodule.so", ["../liblogger.%(LIBTYPE)", "loggermodule.c"],
       ["%(CC) %(CFLAGS) %(PYCFLAGS) -c -o loggermodule.o loggermodule.c",
	"%(LD) loggermodule.o %(FOOBAR) %(LIBS) -o loggermodule.so"])

MFRule("install", INSTALLPROGRAMS,
       ["cp %(PYLIBS) %(PYSO) %(LIBDIR)"])

MFRule("clean", [],
       ["/bin/rm -f %(PYPROGRAMS) %(PYSO) *.pyc *~ core *.o"])

MFRule("tar", [],
       ["mkdir -p ../%(TARDIR)/python",
	"cp %(ALLSOURCE) ../%(TARDIR)/python"])

