Files
tsvm/video_encoder/Makefile

67 lines
1.7 KiB
Makefile

# 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