CC=gcc
CFLAG= -c -g -O -I ../interpreter/interpreter -o
objects=../interpreter/interpreter/stack.o \
	../interpreter/interpreter/interpreter/core_methods.o \
	../interpreter/interpreter/interpreter/interpreter.o \
	../interpreter/interpreter/method_dispatcher/method_dispatcher.o \
	main.o


all: clean lib $(objects) test
clean:
	- rm code.bin
	- rm main
lib:
	cd ../interpreter/interpreter && make -s

%.o: %.c
	$(CC) $(CFLAG) $@ $<

main: main.o
	$(CC) -O -g $(objects) -o main

test: main code.bin
	cd ../assembler/assembler && make test
	valgrind ./main

code.bin:
	python3 test.py

