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)
