# Created by Claude on 2025-08-17. # Makefile for TSVM Enhanced Video (TEV) encoder CC = gcc CFLAGS = -std=c99 -Wall -Wextra -O2 -D_GNU_SOURCE LIBS = -lm -lz # Source files and targets SOURCES = encoder_tev.c encoder_tev_xyb.c TARGETS = encoder_tev encoder_tev_xyb # Build all encoders all: $(TARGETS) # Build main encoder encoder_tev: encoder_tev.c rm -f encoder_tev $(CC) $(CFLAGS) -o $@ $< $(LIBS) # Build XYB encoder encoder_tev_xyb: encoder_tev_xyb.c rm -f encoder_tev_xyb $(CC) $(CFLAGS) -o $@ $< $(LIBS) # Default target $(TARGETS): all # Build with debug symbols debug: CFLAGS += -g -DDEBUG debug: $(TARGETS) # Clean build artifacts clean: rm -f $(TARGETS) # Install (copy to PATH) install: $(TARGETS) cp $(TARGETS) /usr/local/bin/ # Check for required dependencies check-deps: @echo "Checking dependencies..." @echo "libzstd no longer required - using gzip compression instead" @pkg-config --exists zlib || (echo "Error: zlib-dev not found. Install with: sudo apt install zlib1g-dev" && exit 1) @echo "All dependencies found." # Help help: @echo "TSVM Enhanced Video (TEV) Encoder" @echo "" @echo "Targets:" @echo " all - Build both encoders (default)" @echo " encoder_tev - Build the main TEV encoder" @echo " encoder_tev_xyb - Build the XYB color space encoder" @echo " debug - Build with debug symbols" @echo " clean - Remove build artifacts" @echo " install - Install to /usr/local/bin" @echo " check-deps - Check for required dependencies" @echo " help - Show this help" @echo "" @echo "Usage:" @echo " make # Build both encoders" @echo " ./encoder_tev input.mp4 -o output.tev" @echo " ./encoder_tev_xyb input.mp4 -o output.tev" .PHONY: all clean install check-deps help debug