#
# Top-level Makefile for APRICONV
#
abs_srcdir=@api_srcdir@
abs_builddir=@api_builddir@
VPATH = @srcdir@

# bring in rules.mk for standard functionality
@INCLUDE_RULES@

SUBDIRS = lib ccs ces util
CLEAN_SUBDIRS = . lib ccs ces util

TARGET_LIB = libapriconv.la

DISTCLEAN_TARGETS = config.cache config.log config.status
EXTRACLEAN_TARGETS = configure libtool aclocal.m4

### install location
prefix=@prefix@
exec_prefix=@prefix@/bin
lib_prefix=@prefix@/lib
libdir=@iconv_libdir@

MKINSTALLDIRS=$(abs_srcdir)/build/mkdir.sh

install:
	if [ ! -d $(lib_prefix) ]; then \
	    $(MKINSTALLDIRS) $(DESTDIR)$(lib_prefix); \
	fi;
	(cd lib; $(LIBTOOL) --mode=install cp $(TARGET_LIB) $(DESTDIR)$(lib_prefix))
	if [ ! -d $(DESTDIR)$(libdir) ]; then \
	    $(MKINSTALLDIRS) $(DESTDIR)$(libdir); \
	fi; \
	(cd ccs; for i in *.la; do $(LIBTOOL) --mode=install cp $$i $(DESTDIR)$(libdir); done)
	(cd ces; for i in *.la; do $(LIBTOOL) --mode=install cp $$i $(DESTDIR)$(libdir); done)
	if [ ! -d $(DESTDIR)$(exec_prefix) ]; then \
	    $(MKINSTALLDIRS) $(DESTDIR)$(exec_prefix); \
	fi; \
	(cd util; $(LIBTOOL) --mode=install cp iconv $(DESTDIR)$(exec_prefix))

all:
	(cd lib;  $(MAKE))
	(cd ccs;  $(MAKE))
	(cd ces;  $(MAKE))
	(cd util; $(MAKE))

docs:
	mkdir ./docs
	perl $(abs_srcdir)/build/scandoc.pl -i./build/default.pl -p./docs/ ./lib/*.h

.PHONY: delete-lib
