LIBS = -lm
CFLAGS = -O
# OCFLAGS = -O4
CC = cc
ASM = ../asm_ng


all: master slave

master: master.o util_fns.o
	$(CC) $(CFLAGS) master.o util_fns.o -o master $(LIBS)

behave: behave.o weather_functions.o feature_inits.o feature_updates.o animal_functions.o $(ASM)/asm_functions.o util_fns.o 
	$(CC) $(CFLAGS) behave.o weather_functions.o feature_inits.o feature_updates.o animal_functions.o $(ASM)/asm_functions.o util_fns.o -o behave $(LIBS)

slave: slave.o behave.o weather_functions.o feature_inits.o feature_updates.o animal_functions.o $(ASM)/asm_functions.o util_fns.o
	$(CC) $(CFLAGS) slave.o behave.o weather_functions.o feature_inits.o feature_updates.o animal_functions.o asm_functions.o util_fns.o -o slave $(LIBS)

behave.o: structures.h env_decs.h env_defs.h animal_decs.h env_spec.h util_fns.h
weather_functions.o: structures.h ext_env_decs.h env_defs.h env_spec.h util_fns.h
feature_inits.o: structures.h ext_env_decs.h env_defs.h env_spec.h util_fns.h
feature_updates.o: structures.h ext_env_decs.h env_defs.h env_spec.h util_fns.h
animal_functions.o: structures.h ext_env_decs.h env_defs.h animal_decs.h animal_defs.h env_spec.h util_fns.h
$(ASM)/asm_functions.o: structures.h ext_env_decs.h env_defs.h animal_decs.h animal_defs.h env_spec.h $(ASM)/asm_decs.h $(ASM)/asm_defs.h util_fns.h
master.o: $(ASM)/asm_defs.h master.h util_fns.h
slave.o: $(ASM)/asm_defs.h slave.h util_fns.h
slave1.o: $(ASM)/asm_defs.h slave1.h util_fns.h
slave2.o: $(ASM)/asm_defs.h slave2.h util_fns.h
slave3.o: $(ASM)/asm_defs.h slave3.h util_fns.h

