30 lines
498 B
Makefile
30 lines
498 B
Makefile
CC := gcc
|
|
CFLAGS := -Wall -Wextra -O2
|
|
#CFLAGS += -std=c99 # C99 breaks sbrk for some reason (likely toolchain bug)
|
|
LIBS := -lsqlite3 # Everything links to sqlite rofl
|
|
|
|
SRC := $(wildcard *.c)
|
|
OBJ := $(SRC:.c=.o)
|
|
ELF := $(SRC:.c=.elf)
|
|
|
|
%.o: %.c
|
|
$(CC) $(CFLAGS) -c -o $@ $<
|
|
|
|
%.elf: %.o
|
|
$(CC) $(LIBS) -o $@ $<
|
|
|
|
all: $(ELF)
|
|
|
|
tags:
|
|
ctags -R .
|
|
|
|
compile_commands.json:
|
|
bear -- make
|
|
|
|
format:
|
|
clang-format -i $(shell git ls-files '*.c' '*.h')
|
|
|
|
clean:
|
|
rm -rf $(OBJ) $(ELF) *.json .cache
|
|
|
|
.PHONY: format
|