# Makefile for NetStrain

# variables

CC = gcc
CFLAGS = -Wall -O2

COMMON_OBJS = error.o net6emu.o

# rules

all: netstrain netstraind

net6emuconf.h:
	CC="$(CC)" CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" LIBS="$(LIBS)" ./net6emuconf

netstrain: client.o transfer.o stats.o $(COMMON_OBJS)
	$(CC) $(LDFLAGS) -o $@ client.o transfer.o stats.o $(COMMON_OBJS) $(LIBS)

netstraind: server.o transfer.o $(COMMON_OBJS)
	$(CC) $(LDFLAGS) -o $@ server.o transfer.o $(COMMON_OBJS) $(LIBS)

clean:
	rm -f netstrain netstraind *.o *~ net6emuconf.h net6emuconf.log

# more dependencies

client.o server.o transfer.o stats.o error.o: netstrain.h net6emu.h net6emuconf.h
net6emu.o: net6emu.h net6emuconf.h

# eof
