# Main makefile

srcdir      = @srcdir@
top_builddir  = .
prefix      = @prefix@
exec_prefix = @exec_prefix@
libdir      = @libdir@
includedir  = @includedir@
mandir      = @mandir@
bindir	    = @bindir@
SHELL       = /bin/sh
RM          = rm -fr
INSTALL	    = @INSTALL@
LIBTOOL	    = @LIBTOOL@
@SET_MAKE@

#SUBDIRS     = imap nntp pop3 smtp tools imf mbox mh maildir mime generic
#SUBLIBS	    = imap/libmailimap.la nntp/libnewsnntp.la pop3/libmailpop3.la \
#	      smtp/libmailsmtp.la tools/libtools.la imf/libmailimf.la \
#              mbox/libmailmbox.la mh/libmailmh.la mime/libmailmime.la \
#	      maildir/libmaildir.la generic/libmaildriver.la

SUBDIRS     = src

#TARGET      = libetpan.la
#VERSINFO    = @API_VERSION@
#CC          = @CC@
#LDFLAGS     = @LIBS@ @SSLLIBS@ @LDFLAGS@ @DBLIB@
CPP	     = @CPP@

all: config-files prepare all-recursive

distclean: clean distclean-recursive
	$(RM) config.h config.cache config.log config.status \
		Makefile Rules *~ gmon.out *.bak core libtool \
		libetpan-config src/main/libetpan_version.h \
		libetpan-config.h

maintainer-clean: distclean
	$(RM) configure config.h.in aclocal.m4 config.guess config.sub ltmain.sh autom4te.cache

realclean: maintainer-clean

all-recursive install-recursive clean-recursive \
	distclean-recursive prepare-recursive:
	@set fnord $(MAKEFLAGS); amf=$$2; \
        list='$(SUBDIRS)'; for subdir in $$list; do \
         target=`echo $@ | sed s/-recursive//`; \
         echo "Making $$target in $$subdir"; \
         (cd $$subdir && $(MAKE) $$target) \
          || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
        done && test -z "$$fail"

install: all install-dirs install-recursive
	$(INSTALL) -m 755 libetpan-config $(DESTDIR)$(bindir)
	$(INSTALL) -m 644 libetpan-config.h $(DESTDIR)$(includedir)/libetpan
	$(INSTALL) -m 644 src/main/libetpan.h $(DESTDIR)$(includedir)

install-dirs:
	$(INSTALL) -d -m 755 $(DESTDIR)$(includedir)
	$(INSTALL) -d -m 755 $(DESTDIR)$(includedir)/libetpan
	$(INSTALL) -d -m 755 $(DESTDIR)$(bindir)

#realclean: maintainer-clean

clean: clean-recursive
	$(RM) $(TARGET) .libs $(top_builddir)/include libetpan-config.h

test:

#$(TARGET): config-files $(SUBLIBS)
#	$(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(SUBLIBS) \
#	  -rpath $(libdir) -version-info $(VERSINFO)

#$(SUBLIBS): all-recursive

libetpan-config.h: $(srcdir)/libetpan-config.h.in
	cp $(srcdir)/libetpan-config.h.in libetpan-config-in.h
	$(CPP) -I$(srcdir) libetpan-config-in.h | sed -e '/^#/d;/^[ \t]*$$/d;s/^@/#/' > libetpan-config.h
	$(RM) -f libetpan-config-in.h

prepare: prepare-recursive libetpan-config.h
	mkdir -p ${top_builddir}/include/libetpan
	cp -f libetpan-config.h $(top_builddir)/include/libetpan

# config files
config-files: ${srcdir}/configure ${srcdir}/config.h.in Makefile config.status Rules ${srcdir}/src/Makefile

${srcdir}/configure: configure.in
	cd ${srcdir} && aclocal && autoconf

${srcdir}/config.h.in: configure.in 
	rm -f ${srcdir}/config.h.in && cd ${srcdir} && autoheader

Makefile: Makefile.in config.status
	cd ${top_builddir} && CONFIG_FILES=Makefile CONFIG_HEADERS= ./config.status

${srcdir}/src/Makefile : ${srcdir}/src/Makefile.in config.status
	cd ${top_builddir} && CONFIG_FILES=src/Makefile CONFIG_HEADERS= ./config.status

#${srcdir}/src/low-level/Makefile : ${srcdir}/src/low-level/Makefile.in config.status
#	cd ${top_builddir} && CONFIG_FILES=src/low-level/Makefile CONFIG_HEADERS= ./config.status

Rules: Rules.in config.status
	cd ${top_builddir} && CONFIG_FILES=Rules CONFIG_HEADERS= ./config.status

config.status: configure
	./config.status --recheck