#!/bin/bash # Build Phase 6-1.5 Integrated Test # Ultra-Simple Fast Path + Existing HAKMEM Backend set -e PHASE6_FLAG="-DHAKMEM_TINY_PHASE6_ULTRA_SIMPLE=1" RELEASE_FLAG="-DHAKMEM_BUILD_RELEASE=1" CFLAGS="-O2 -march=native -std=c11 -D_GNU_SOURCE -I core $PHASE6_FLAG $RELEASE_FLAG" LDFLAGS="-lm -lpthread" echo "=== Building Phase 6-1.5 Integrated Test ===" echo "Flags: $PHASE6_FLAG $RELEASE_FLAG" echo "" # Compile HAKMEM core files echo "Compiling HAKMEM core..." gcc $CFLAGS -c core/hakmem.c -o build/hakmem_phase6.o gcc $CFLAGS -c core/hakmem_tiny.c -o build/hakmem_tiny_phase6.o gcc $CFLAGS -c core/hakmem_pool.c -o build/hakmem_pool_phase6.o gcc $CFLAGS -c core/hakmem_l25_pool.c -o build/hakmem_l25_pool_phase6.o gcc $CFLAGS -c core/hakmem_tiny_superslab.c -o build/hakmem_tiny_superslab_phase6.o gcc $CFLAGS -c core/hakmem_tiny_magazine.c -o build/hakmem_tiny_magazine_phase6.o gcc $CFLAGS -c core/hakmem_policy.c -o build/hakmem_policy_phase6.o gcc $CFLAGS -c core/hakmem_prof.c -o build/hakmem_prof_phase6.o # Compile test benchmark echo "Compiling benchmark..." gcc $CFLAGS -c benchmarks/src/tiny/phase6/bench_phase6_integrated.c -o build/bench_phase6_integrated.o # Link echo "Linking..." gcc -o bench_phase6_integrated \ build/bench_phase6_integrated.o \ build/hakmem_phase6.o \ build/hakmem_tiny_phase6.o \ build/hakmem_pool_phase6.o \ build/hakmem_l25_pool_phase6.o \ build/hakmem_tiny_superslab_phase6.o \ build/hakmem_tiny_magazine_phase6.o \ build/hakmem_policy_phase6.o \ build/hakmem_prof_phase6.o \ $LDFLAGS echo "" echo "=== Build Complete! ===" echo "Binary: ./bench_phase6_integrated" echo "" echo "Run with: ./bench_phase6_integrated"