Makefile 610 B

1234567891011121314151617181920212223242526272829303132
  1. CC = g++
  2. FLAGS = -Wall
  3. EXAMPLE = examples/factorial
  4. all: test.out
  5. ./$< $(EXAMPLE)
  6. $(CC) out.c
  7. Token.o : src/Token.cpp src/Token.hpp
  8. $(CC) -c $(FLAGS) $<
  9. Symbol.o : src/Symbol.cpp src/Symbol.hpp
  10. $(CC) -c $(FLAGS) $<
  11. Emitter.o : src/Emitter.cpp src/Emitter.hpp
  12. $(CC) -c $(FLAGS) $<
  13. Lexer.o : src/Lexer.cpp src/Lexer.hpp Token.o
  14. $(CC) -c $(FLAGS) $<
  15. Parser.o : src/Parser.cpp src/Parser.hpp Lexer.o Token.o Symbol.o Emitter.o
  16. $(CC) -c $(FLAGS) $<
  17. test.out: src/main.cpp Token.o Lexer.o Parser.o Symbol.o Emitter.o
  18. $(CC) $(FLAGS) $^ -o $@
  19. exec: test.out
  20. ./a.out
  21. clean:
  22. rm -f *.o *.out *.c