# Makefile - Exemplo da Aula 14
# ***************************************************************

PROGRAMAS = \
    testarand \
    testamoeda \
    testadado 

# ***************************************************************
# Parametros para controlar o funcionamento do Make

CC = gcc                 # compilador C usado
CFLAGS = -Wall -L.           # parametros para o compilador

# ***************************************************************
# Entrada para deixar o pacote todo atualizado

all: $(PROGRAMAS)

# ***************************************************************
# Entrada para remover arquivos do diretorio derivados do processo
# de construcao

clean: 
	rm -f *.o *.a *~ $(PROGRAMAS)

# ***************************************************************
# Compilacoes em C 

# Arquivos objeto
testarand.o: testarand.c
	$(CC) $(CFLAGS) -c testarand.c

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

testadado.o: testadado.c random.h
	$(CC) $(CFLAGS) -c testadado.c

random.o: random.c random.h
	$(CC) $(CFLAGS) -c random.c

# Bibliotecas
librandom.a: random.o	
	ar rcv librandom.a random.o

# Executaveis
testarand: testarand.o
	$(CC) $(CFLAGS) -o testarand testarand.o

testamoeda: testamoeda.o
	$(CC) $(CFLAGS) -o testamoeda testamoeda.o

testadado: testadado.o random.h librandom.a
	$(CC) $(CFLAGS) -o testadado testadado.o -lrandom


