33 lines
743 B
Makefile
33 lines
743 B
Makefile
CC ?= gcc
|
|
CFLAGS ?= -Wall -Wextra -g -Isrc
|
|
LDFLAGS ?= -ljack -lm
|
|
|
|
SRC = src/main.c src/looper.c src/channel.c src/midi.c
|
|
OBJ = $(SRC:.c=.o)
|
|
|
|
looper: $(OBJ)
|
|
$(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS)
|
|
|
|
src/%.o: src/%.c
|
|
$(CC) $(CFLAGS) -c -o $@ $<
|
|
|
|
integration: looper tests/integration.c
|
|
$(CC) $(CFLAGS) -o integration_test tests/integration.c -ljack -lm
|
|
./integration_test
|
|
|
|
test: integration
|
|
|
|
.PHONY: clean integration test
|
|
clean:
|
|
rm -f looper integration_test src/*.o
|
|
|
|
check:
|
|
cppcheck --enable=all --error-exitcode=1 --suppress=missingIncludeSystem --suppress=normalCheckLevelMaxBranches src/*.c --library=posix .
|
|
|
|
# Optional: Format code using clang-format
|
|
format:
|
|
clang-format -i src/*.c
|
|
|
|
install-hooks:
|
|
git config core.hooksPath .githooks
|