CC = gcc CFLAGS := -std=c99 -Wall -Wextra -Werror -pedantic -Wvla OBJ_RUN := src/student.c INO_FILE := ref.ino all: run %.o: %.c @$(CC) $(LFLAGS) $(CFLAGS) -c -o $@ $< prepare: CFLAGS += -shared prepare: src/main.o src/pin_handler.o ar crs src/pin_handler.a $^ tar czf student.tar.gz src/pin_handler.a src/student.c src/default_student.c Makefile $(INO_FILE) src/parser.c parser: src/parser.o $(INO_FILE) @$(CC) $(CFLAGS) -o $@ src/parser.o @./parser $(INO_FILE) run: parser $(OBJ_RUN) $(INO_FILE) @$(CC) -o main $(OBJ_RUN) src/pin_handler.a @./main clean: $(RM) src/*.o main parser