
CC       = gcc
CFLAGS   = -g -Wall -I.

ICC      = icc
ICCFLAGS = 
TTYPE    = -T8

C_SOURCES = ctest.c stest.c socketlib.c spy.c

all gnu    : libUCHAN.a farmer worker spy
transputer : sumrev.btl

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

%.tco : %.c
	$(ICC) $(ICCFLAGS) -o $*.tco $< $(TTYPE)

libUCHAN.a : misc.o process.o channel.o socketlib.o
	ar rc libUCHAN.a misc.o process.o channel.o socketlib.o
	ranlib libUCHAN.a

farmer : farmer.o libUCHAN.a
	$(CC) $(CFLAGS) -o farmer farmer.o libUCHAN.a

worker : worker.o libUCHAN.a
	$(CC) $(CFLAGS) -o worker worker.o libUCHAN.a

spy : spy.o libUCHAN.a
	$(CC) $(CFLAGS) -o spy spy.o libUCHAN.a

farmer.lku : farmer.tco
	ilink $< -f cstartup.lnk -o farmer.lku $(TTYPE)

worker.lku : worker.tco
	ilink $< -f cstartrd.lnk -o worker.lku $(TTYPE)

sumrev.cfb : farmer.lku worker.lku sumrev.cfs
	icconf sumrev.cfs

sumrev.btl : farmer.lku worker.lku sumrev.cfb
	icollect sumrev.cfb

clean :
	rm *.o *.a farmer worker spy sumrev.btl sumrev.cfb

dep :
	gcc -MM *.c >dep

archive :
	rm -f uchan.tar uchan.tar.gz
	tar cf uchan.tar worker.c farmer.c spy.c Makefile sumrev.cfs \
               process.h process.c channel.h channel.c sumrev \
               socketlib.c socketlib.h misc.c misc.h README \
               sumrev_spy
	gzip uchan.tar

#include dep











