CC := gcc CFLAGS = -Wall -Os -std=c99 -pedantic MACROS = -D__$(shell uname -m)__ -DAS=\"$(shell which as)\" -DLD=\"$(shell which ld)\" all: skullfuck skullfuck: skullfuck.c $(CC) $(CFLAGS) $(MACROS) -o skullfuck skullfuck.c run_tests: run_tests.c $(CC) $(CFLAGS) -o run_tests run_tests.c hello: test/hello_world.bf ./skullfuck -o hello test/hello_world.bf rot13: test/rot13.bf ./skullfuck -o rot13 test/rot13.bf test: run_tests hello rot13 ./run_tests clean: skullfuck rm -f skullfuck .PHONY: clean test