CXX := g++ CXXFLAGS := -O2 -std=c++17 -Wall -Wextra -pedantic TARGET := lab3 OUT_DIR := out .PHONY: all clean run test bench timelines pack all: $(TARGET) $(TARGET): main.cpp $(CXX) $(CXXFLAGS) main.cpp -o $(TARGET) run: $(TARGET) ./$(TARGET) --size 100000 --depth 2 --min-size 4096 test: $(TARGET) python3 test_lab3.py ./$(TARGET) --size 0 --depth 3 --min-size 1 >/dev/null ./$(TARGET) --size 1 --depth 3 --min-size 1 >/dev/null ./$(TARGET) --size 10000 --depth 0 --min-size 1 >/dev/null ./$(TARGET) --size 10000 --depth 2 --min-size 128 >/dev/null ./$(TARGET) --size 10000 --depth 3 --min-size 256 --seed 2026 >/dev/null ./$(TARGET) --size 12345 --depth 4 --min-size 257 --seed 777 >/dev/null bench: $(TARGET) python3 benchmark.py timelines: $(TARGET) mkdir -p $(OUT_DIR)/logs $(OUT_DIR)/pics ./$(TARGET) --size 2048 --depth 2 --min-size 64 --log > $(OUT_DIR)/logs/depth2.log 2>$(OUT_DIR)/logs/depth2.stat ./$(TARGET) --size 4096 --depth 3 --min-size 64 --log > $(OUT_DIR)/logs/depth3.log 2>$(OUT_DIR)/logs/depth3.stat python3 exporter.py $(OUT_DIR)/logs/depth2.log $(OUT_DIR)/pics python3 exporter.py $(OUT_DIR)/logs/depth3.log $(OUT_DIR)/pics pack: clean zip -r lab3_process_pipes.zip main.cpp Makefile benchmark.py exporter.py test_lab3.py README.md clean: rm -f $(TARGET) lab3_process_pipes.zip rm -rf $(OUT_DIR) __pycache__