# $Id: Makefile,v 1.5 2002/06/23 20:28:31 richdawe Exp $
#
# Makefile for libpakke's util library
# Copyright (C) 2002 by Richard Dawe
#

TOP = ../..
include ../Makefile.tst

.PHONY:	clean distclean maintainer-distclean

CFLAGS  += -g -Wall -I$(TOP)/src -I$(TOP)/include
LDFLAGS += -g -L$(TOP)/lib

OBJS = url.o
DEPS = $(OBJS:.o=.d)

LIBS    = -lpakke -lz
LIBDEPS = $(TOP)/lib/libpakke.a

TARGETS     = find specpath url
TARGETS_EXE = $(patsubst %,%.exe,$(TARGETS))

default:	all

all:	$(TARGETS)
	@echo ===============
	@$(FINDRMFILES)
	@$(FINDMKFILES)
	@./find --quiet $(FINDFILE) $(FINDDIR) $(FINDEXPECTED)
	@$(FINDRMFILES)
	@echo PASSED: find
	@./specpath --quiet
	@echo PASSED: specpath
	@./url --quiet
	@echo PASSED: url
	@echo ===============

# Test definitions for the find test
FINDDIR=finddir
FINDSUBDIR=v2/alphas
FINDFILE=findfile
FINDEXPECTED=$(FINDDIR)/$(FINDSUBDIR)/$(FINDFILE)

FINDRMFILES=rm -rf $(FINDDIR)

FINDMKFILES=mkdir -p $(FINDDIR); \
	mkdir -p $(FINDDIR)/$(FINDSUBDIR); \
	touch $(FINDEXPECTED)

find:	find.o $(LIBDEPS)
	$(CC) $(LDFLAGS) -o $@ $< $(LIBS)

specpath:	specpath.o $(LIBDEPS)
	$(CC) $(LDFLAGS) -o $@ $< $(LIBS)

url:	url.o $(LIBDEPS)
	$(CC) $(LDFLAGS) -o $@ $< $(LIBS)

%.o:	%.c
	$(CC) $(CFLAGS) -c $<

%.d:	%.c
	@echo Generating dependencies for $<
	@$(CC) $(CFLAGS) -MM $< > $@

clean:
	-rm -f $(OBJS) $(DEPS)
	-$(FINDRMFILES)

distclean:	clean
	-rm -f $(TARGETS) $(TARGETS_EXE)

maintainer-distclean:	distclean

dep:	$(DEPS)

-include $(DEPS)
