# trame-tui — ncurses front-end for Trame (Phase 1: skeleton)

CC      ?= cc
CFLAGS  ?= -O2 -Wall -Wextra -Wpedantic -std=c99 -D_POSIX_C_SOURCE=200809L
LDLIBS  ?= -lncursesw
PREFIX  ?= /usr
DESTDIR ?=

SRC = src/main.c src/ui.c src/theme.c src/cmd.c src/bridge.c src/json.c src/render.c
OBJ = $(SRC:.c=.o)
BIN = trame-tui

HDR = src/ui.h src/theme.h src/cmd.h src/bridge.h src/json.h src/render.h

all: $(BIN)

$(BIN): $(OBJ)
	$(CC) $(LDFLAGS) -o $@ $(OBJ) $(LDLIBS)

%.o: %.c $(HDR)
	$(CC) $(CFLAGS) -c -o $@ $<

clean:
	rm -f $(OBJ) $(BIN)

install: $(BIN)
	install -m 0755 -d $(DESTDIR)$(PREFIX)/bin
	install -m 0755 $(BIN) $(DESTDIR)$(PREFIX)/bin/$(BIN)

.PHONY: all clean install
