- protocol.yaml: SSoT for the binary framing protocol (12 record types) - codegen/gen.mjs: generates C header/source and Node ESM from protocol.yaml - c-backend: ALSA sequencer with drift-free clock_nanosleep tick thread, pattern store (hierarchical sub-patterns), Unix socket server - node-server: Express 5 web app — REST API, SSE for real-time beat events, step-sequencer frontend with pending-edit / explicit-save flow Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
21 lines
468 B
Makefile
21 lines
468 B
Makefile
CC = gcc
|
|
CFLAGS = -std=c11 -Wall -Wextra -D_GNU_SOURCE -Isrc -Igenerated -O2
|
|
LDFLAGS = -lasound -lpthread
|
|
TARGET = midi-sequencer
|
|
|
|
SRCS = src/main.c \
|
|
src/socket_server.c \
|
|
src/pattern_store.c \
|
|
src/sequencer.c \
|
|
generated/protocol.c
|
|
|
|
.PHONY: all clean
|
|
|
|
all: $(TARGET)
|
|
|
|
$(TARGET): $(SRCS) src/socket_server.h src/pattern_store.h src/sequencer.h generated/protocol.h
|
|
$(CC) $(CFLAGS) -o $@ $(SRCS) $(LDFLAGS)
|
|
|
|
clean:
|
|
rm -f $(TARGET)
|