CC ?= gcc CFLAGS ?= -std=c11 -Wall -Wextra -O2 # Keep include paths when a parent make passes CFLAGS=... on the command # line (CI uses -Werror that way); plain CFLAGS ?= would be overridden. override CPPFLAGS += -Iinclude -Isrc SRCS = src/fsm.c src/table_stats.c src/line_index.c src/block_scan.c \ src/ansi_style.c src/render.c src/render_ansi.c src/render_json.c \ src/sashidown.c src/compat_cmark.c src/stream.c OBJS = $(SRCS:.c=.o) LIB = libsashidown.a .PHONY: all clean all: $(LIB) $(LIB): $(OBJS) $(AR) rcs $@ $(OBJS) src/%.o: src/%.c $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< clean: rm -f $(OBJS) $(LIB)