#!/bin/bash

# 🏁 Ruta base del proyecto
BASE_DIR="/home/sergio/gitea/jaildoctors_dilemma"

# 📁 Ruta al build
BUILD_DIR="$BASE_DIR/build"

# 📄 Archivo de mapping personalizado
MAPPING_FILE="$BASE_DIR/tools/linter/sdl3_mapping.imp"

# 📦 Generar compile_commands.json
echo "🔧 Generando compile_commands.json..."
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -S "$BASE_DIR" -B "$BUILD_DIR"

# 🛠️ Ejecutar IWYU con fix_includes.py
echo "🚀 Ejecutando IWYU..."
./iwyu_tool.py -p "$BUILD_DIR" -- -Xiwyu --mapping_file="$MAPPING_FILE" -Xiwyu --verbose=3 \
| fix_include --update_comments --reorder --nosafe_headers

# 🧹 Reemplazar // for por // Para en líneas de #include
echo "✍️ Corrigiendo comentarios en includes..."
find "$BASE_DIR" -type f \( -name "*.cpp" -o -name "*.h" \) -exec \
sed -i '/^#include .*\/\/ for/s/\/\/ for/\/\/ Para/' {} +

echo "✅ Script completado."
