28 lines
967 B
Bash
28 lines
967 B
Bash
#!/bin/bash
|
|
|
|
# 🏁 Auto-detectar ruta base del proyecto
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
|
|
# 📁 Ruta al build
|
|
BUILD_DIR="$PROJECT_ROOT/build"
|
|
|
|
# 📄 Archivo de mapping personalizado
|
|
MAPPING_FILE="$SCRIPT_DIR/sdl3_mapping.imp"
|
|
|
|
# 📦 Generar compile_commands.json
|
|
echo "🔧 Generando compile_commands.json..."
|
|
cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -S "$PROJECT_ROOT" -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 "$PROJECT_ROOT" -type f \( -name "*.cpp" -o -name "*.h" \) -exec \
|
|
sed -i '/^#include .*\/\/ for/s/\/\/ for/\/\/ Para/' {} +
|
|
|
|
echo "✅ Script completado."
|