
# CC=clang
# CFLAGS=-I.
# DEPS = queues.h utilities.h types.h symbol.h simpleADL.h Tokens.h TokPrivate.h 
# SRC = simpleADL.c utilities.c TokUtilities.c TokName.c Tokens.c symbol.c queues.c generateAsm.c generateModel.c

# %.o: %.c $(DEPS)
# 	$(CC) -Ofast -c -o $@ $< $(CFLAGS)

# simpleADL: $(SRC)
# 	$(CC) -Ofast -o $@ $(SRC) -I.

# clean:
# 	rm -f *.o

#################### better #################

# this is modeled after the example in
# https://www.gnu.org/software/make/manual/html_node/make-Deduces.html#make-Deduces
CC = clang
DEPS = asm.h asmDefinitions.h asmFields.h queues.h symbol.h Tokens.h TokPrivate.h types.h utilities.h
objects = asmmain.o utilities.o TokUtilities.o TokName.o Tokens.o symbol.o queues.o asm.o 

sAsm : $(objects)
	$(CC) -o sAsm $(objects)

asmmain.o : $(DEPS) 
utilities.o : $(DEPS) 
TokUtilities.o : $(DEPS) 
TokName.o : $(DEPS) 
Tokens.o : $(DEPS) 
symbol.o : $(DEPS) 
queues.o : $(DEPS) 
asm.o : $(DEPS) 

.PHONY : clean
clean :
	rm sAsm $(objects)
