CC = gcc SOURCEFILES := $(wildcard *.c) SOURCE := $(wildcard *.c) $(SOURCE:.c=.o): $(SOURCE) @mkdir -p obj $(CC) $^ -o obj/clox .PHONY: clean .PHONY: test clean: rm -r obj test: ./obj/clox test.lox