CC = gcc

SRC =  simulation_channel.c
OUTPUT = 1.output 2.output 3.output

# By default, compile with everything.
BINARY = ./sim

.SUFFIXES: .input .output

.input.output :
	 $(BINARY) $< > $@

run: $(BINARY) $(OUTPUT)

sim: $(SRC)
	$(CC) $(CFLAGS) -DSHOW_INPUT -DSHOW_OUTPUT \
		 -DSHOW_ALGORITHM -o $@ $(SRC)

sim_input: $(SRC)
	$(CC) $(CFLAGS) -DSHOW_INPUT -o $@ $(SRC)

sim_output: $(SRC)
	$(CC) $(CFLAGS) -DSHOW_OUTPUT -o $@ $(SRC)

sim_alg: $(SRC)
	$(CC) $(CFLAGS) -DSHOW_ALGORITHM -o $@ $(SRC)

sim_plain: $(SRC)
	$(CC) $(CFLAGS) -o $@ $(SRC)

clean:
	rm $(BINARY) *.output
