Files
lambda/Makefile
M.V. Hutz 8f70bfbbdb refactor: use .SILENT directive instead of @ prefixes
Adds .SILENT directive to suppress command echoing for all targets,
replacing individual @ prefixes. Also moves TEST variable to top with
other variables for better organization.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-10 16:34:07 -05:00

40 lines
1.0 KiB
Makefile

BINARY_NAME=lambda
TEST=simple
.SILENT:
.PHONY: help it run profile explain graph clean
help:
echo "Available targets:"
echo " it - Build the lambda binary"
echo " run - Build and run with sample input (default: simple.txt)"
echo " profile - Build and run with CPU profiling enabled"
echo " explain - Run with explanation mode and profiling"
echo " graph - Generate CPU profile visualization"
echo " clean - Remove build artifacts"
echo ""
echo "Usage: make run TEST=<sample-name>"
it:
go build -o ${BINARY_NAME} ./cmd/lambda
run: it
./lambda - < ./samples/$(TEST).txt > program.out
profile: it
mkdir -p profile
./lambda -p profile/cpu.prof - < ./samples/$(TEST).txt > program.out
explain: it
mkdir -p profile
./lambda -x -p profile/cpu.prof - < ./samples/$(TEST).txt > program.out
graph: profile
go tool pprof -raw -output=profile/cpu.raw profile/cpu.prof
go tool pprof -svg profile/cpu.prof > profile/cpu.svg
echo "Profile graph saved to 'file://profile/cpu.svg'"
clean:
rm -f ${BINARY_NAME} program.out
rm -rf profile/