CC = gcc
CFLAGS = -Wall -Wextra -std=c17 -O2

TARGETS = WordCountMR_v2a WordCountMapper WordCountSuffle WordCountReduce

all: $(TARGETS)

WordCountMR_v2a: WordCountMR_v2a.c
	$(CC) $(CFLAGS) WordCountMR_v2a.c -o WordCountMR_v2a

WordCountMap: WordCountMapper.c
	$(CC) $(CFLAGS) WordCountMapper.c -o WordCountMapper

WordCountSuffle: WordCountSuffle.c
	$(CC) $(CFLAGS) WordCountSuffle.c -o WordCountSuffle

WordCountReduce: WordCountReduce.c
	$(CC) $(CFLAGS) WordCountReduce.c -o WordCountReduce

clean:
	rm -f $(TARGETS)
	rm -f ./tmp/_map_*.tmp ./tmp/_batch_*.tmp ./tmp/_suffle_*.tmp
	rm -f ./Result/*.txt

run_prueba1: all
	./WordCountMR_v2a -r 1 -o ./Result/wc_prueba.txt ./Input/prueba1.txt

run_inputs: all
	./WordCountMR_v2a -m -r 2 -o ./Result/wc_input.txt ./Input/README.txt ./Input/LEEME.txt ./Input/LLEGEIXME.txt

.PHONY: all clean run_prueba1 run_inputs
