# Makefile CC = gcc CFLAGS = -Wall -O2 -Iinclude -Ithird_party LDFLAGS = -lm SRCDIR = src BUILDDIR = build TARGET = e36 SRCS = \ $(SRCDIR)/main.c \ $(SRCDIR)/encoder/image.c \ $(SRCDIR)/encoder/sstv.c \ $(SRCDIR)/encoder/modes/martin.c \ $(SRCDIR)/encoder/modes/robot36.c \ $(SRCDIR)/encoder/modes/scottie.c \ $(SRCDIR)/sound/wav.c OBJS = $(patsubst $(SRCDIR)/%.c,$(BUILDDIR)/%.o,$(SRCS)) .PHONY: all clean dirs all: dirs $(TARGET) dirs: mkdir -p $(BUILDDIR)/encoder/modes $(BUILDDIR)/sound $(TARGET): $(OBJS) $(CC) $(OBJS) -o $@ $(LDFLAGS) $(BUILDDIR)/%.o: $(SRCDIR)/%.c $(CC) $(CFLAGS) -c $< -o $@ clean: rm -rf $(BUILDDIR) $(TARGET)