# $Id: Makefile,v 1.6 2001/09/30 13:55:03 pasky Exp $

LIBMOD_OBJS=socket.o addr.o select.o bufio.o

CC=gcc
CFLAGS=-g -Wall -Werror
LDFLAGS=-L.



all: libmod



libmod: libmod.a

libmod-clean:
	rm -f libmod.a $(LIBMOD_OBJS)

libmod.a: $(LIBMOD_OBJS)
	ar r $@ $(LIBMOD_OBJS)
	ranlib $@



test: libmod test-compile test-do
test-compile: test1 test2 test3
test-do: test1-do test2-do test3-do
test-clean: test1-clean test2-clean test3-clean


test1: test1.o libmod
	$(CC) $(CFLAGS) -o $@ $@.o $(LDFLAGS) -lmod

test2: test2.o libmod
	$(CC) $(CFLAGS) -o $@ $@.o $(LDFLAGS) -lmod

test3: test3.o libmod
	$(CC) $(CFLAGS) -o $@ $@.o $(LDFLAGS) -lmod

test1-do: test1
	ln -fs test1 _t1srv
	_t1srv >/dev/null &
	test1 >/dev/null
	killall -9 _t1srv
	rm -f _t1srv

test2-do: test2
	ln -fs test2 _t2srv
	_t2srv >/dev/null &
	test2 >/dev/null
	killall -9 _t2srv
	rm -f _t2srv

test3-do: test3
	ln -fs test3 _t3srv
	_t3srv >/dev/null &
	test3 >/dev/null
	killall -9 _t3srv
	rm -f _t3srv

test1-clean:
	rm -f test1 test1.o _t1srv

test2-clean:
	rm -f test2 test2.o _t2srv

test3-clean:
	rm -f test3 test3.o _t3srv



clean:	libmod-clean test-clean
