diff options
Diffstat (limited to 'scripts')
| -rwxr-xr-x | scripts/gen_spectrograms.sh | 2 | ||||
| -rwxr-xr-x | scripts/measure_size.sh | 46 |
2 files changed, 47 insertions, 1 deletions
diff --git a/scripts/gen_spectrograms.sh b/scripts/gen_spectrograms.sh index a5c1510..3213787 100755 --- a/scripts/gen_spectrograms.sh +++ b/scripts/gen_spectrograms.sh @@ -7,7 +7,7 @@ set -euo pipefail # --- Configuration --- PROJECT_ROOT=$(git rev-parse --show-toplevel) SOURCE_DIR="${PROJECT_ROOT}/assets/originals" -DEST_DIR="${PROJECT_ROOT}/assets/final" +DEST_DIR="${PROJECT_ROOT}/assets/final/music" SPECTOOL_PATH="${PROJECT_ROOT}/build/spectool" TEMP_WAV_DIR=$(mktemp -d) diff --git a/scripts/measure_size.sh b/scripts/measure_size.sh new file mode 100755 index 0000000..51c773f --- /dev/null +++ b/scripts/measure_size.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# Measures core demo size by building with STRIP_EXTERNAL_LIBS +# Binary compiles but does NOT run (all I/O stubbed) + +set -e + +echo "=== Demo Size Measurement ===" +echo "" + +# Clean previous build +rm -rf build_size + +# Build with STRIP_EXTERNAL_LIBS +echo "Building with STRIP_EXTERNAL_LIBS..." +cmake -S . -B build_size -DDEMO_STRIP_EXTERNAL_LIBS=ON +cmake --build build_size -j4 + +# Strip debug symbols +strip build_size/demo64k + +# Measure sizes +echo "" +echo "=== Size Results ===" +echo "" + +DEMO_SIZE=$(stat -f%z build_size/demo64k 2>/dev/null || stat -c%s build_size/demo64k) +DEMO_SIZE_KB=$((DEMO_SIZE / 1024)) + +echo "Demo code only: ${DEMO_SIZE_KB} KB (${DEMO_SIZE} bytes)" + +# Compare with normal build if it exists +if [ -f build/demo64k ]; then + NORMAL_SIZE=$(stat -f%z build/demo64k 2>/dev/null || stat -c%s build/demo64k) + NORMAL_SIZE_KB=$((NORMAL_SIZE / 1024)) + EXTERNAL_SIZE=$((NORMAL_SIZE - DEMO_SIZE)) + EXTERNAL_SIZE_KB=$((EXTERNAL_SIZE / 1024)) + + echo "" + echo "Normal build: ${NORMAL_SIZE_KB} KB (${NORMAL_SIZE} bytes)" + echo "External libs: ${EXTERNAL_SIZE_KB} KB (${EXTERNAL_SIZE} bytes)" + echo "" + echo "Demo is $(echo "scale=1; $DEMO_SIZE * 100 / $NORMAL_SIZE" | bc)% of total size" +fi + +echo "" +echo "Note: Size measurement binary does NOT run (all I/O stubbed)" |
