datarootdir = @datarootdir@
srcdir=@srcdir@
VPATH=@srcdir@

prefix=@prefix@
exec_prefix=@exec_prefix@
bindir=@bindir@
mandir=@mandir@
INSTALLCMD=@INSTALL@
PACKAGE_NAME=@PACKAGE_NAME@
# Soft link test can be skipped on systems that don't support soft linking
NOSOFTLINKSTEST=

CC=@CC@
CFLAGS=@CFLAGS@ -I.
SWIG=swig
SWIG_LIB=../../Lib
EXEEXT=@EXEEXT@

# Use standard autoconf approach to transform executable name using --program-prefix and --program-suffix
transform = @program_transform_name@

LIBS= @LIBS@
OBJS= ccache.o mdfour.o hash.o execute.o util.o args.o stats.o \
	cleanup.o snprintf.o unify.o
HEADERS = ccache.h mdfour.h

all: $(PACKAGE_NAME)$(EXEEXT)

# Note that HTML documentation is actually generated and used from the main SWIG documentation Makefile
docs: $(PACKAGE_NAME).1 web/ccache-man.html

$(PACKAGE_NAME)$(EXEEXT): $(OBJS) $(HEADERS)
	$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)

$(PACKAGE_NAME).1: ccache.yo
	-yodl2man -o $(PACKAGE_NAME).1 ccache.yo

web/ccache-man.html: ccache.yo
	yodl2html -o web/ccache-man.html ccache.yo

install: $(PACKAGE_NAME)$(EXEEXT) $(PACKAGE_NAME).1
	@echo "Installing $(PACKAGE_NAME)"
	@echo "Installing $(DESTDIR)${bindir}/`echo $(PACKAGE_NAME) | sed '$(transform)'`$(EXEEXT)"
	${INSTALLCMD} -d $(DESTDIR)${bindir}
	${INSTALLCMD} -m 755 $(PACKAGE_NAME)$(EXEEXT) $(DESTDIR)${bindir}/`echo $(PACKAGE_NAME) | sed '$(transform)'`$(EXEEXT)
	@echo "Installing $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1"
	${INSTALLCMD} -d $(DESTDIR)${mandir}/man1
	${INSTALLCMD} -m 644 ${srcdir}/$(PACKAGE_NAME).1 $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1

uninstall: $(PACKAGE_NAME)$(EXEEXT) $(PACKAGE_NAME).1
	rm -f $(DESTDIR)${bindir}/`echo $(PACKAGE_NAME) | sed '$(transform)'`$(EXEEXT)
	rm -f $(DESTDIR)${mandir}/man1/`echo $(PACKAGE_NAME) | sed '$(transform)'`.1

clean:
	/bin/rm -f $(OBJS) *~ $(PACKAGE_NAME)$(EXEEXT)

check : test

test: test.sh
	SWIG_LIB='$(SWIG_LIB)' PATH=../..:$$PATH SWIG='$(SWIG)' CC='$(CC)' NOSOFTLINKSTEST='$(NOSOFTLINKSTEST)' ./test.sh

check: test

distclean: clean
	/bin/rm -f Makefile config.h config.sub config.log build-stamp config.status ccache_swig_config.h
	/bin/rm -rf autom4te.cache

maintainer-clean: distclean
	/bin/rm -f $(PACKAGE_NAME).1 web/ccache-man.html

	
# FIXME: To fix this, test.sh needs to be able to take ccache from the
# installed prefix, not from the source dir.
installcheck: 
	@echo "WARNING!  This is not really \"installcheck\" yet."
	$(MAKE) check
