#!/bin/bash

# Configuration settings
OUTPUT_CONFIG="config.mk"
PKG_NAME="gtkmm-3.0"
MIN_GTK_VERSION="3.0.0"

echo "Configuring Visual Renamer..."

# 1. Check for C++ Compiler
if [ -z "$CXX" ]; then
    CXX=g++
fi
echo "Checking for C++ compiler... $CXX"
if ! command -v $CXX >/dev/null 2>&1; then
    echo "Error: C++ compiler '$CXX' not found."
    exit 1
fi

# 2. Check for pkg-config
echo "Checking for pkg-config..."
if ! command -v pkg-config >/dev/null 2>&1; then
    echo "Error: pkg-config not found."
    exit 1
fi

# 3. Check for GTKmm Libraries
echo "Checking for $PKG_NAME..."
if pkg-config --exists "$PKG_NAME >= $MIN_GTK_VERSION"; then
    GTK_CFLAGS=$(pkg-config --cflags "$PKG_NAME")
    GTK_LIBS=$(pkg-config --libs "$PKG_NAME")
    echo "  Found $PKG_NAME."
else
    echo "Error: $PKG_NAME not found (or version too old)."
    echo "  On Debian/Ubuntu, try: sudo apt-get install libgtkmm-3.0-dev"
    exit 1
fi

# 4. Generate config.mk
echo "Generating $OUTPUT_CONFIG..."

cat > $OUTPUT_CONFIG <<EOF
# Auto-generated by ./configure
CXX = $CXX
CXXFLAGS = -std=c++17 -Wall -O2 $GTK_CFLAGS
LIBS = $GTK_LIBS -pthread
PREFIX ?= /usr/local
EOF

echo "Configuration successful!"
echo "Run 'make' to build the project."
