cmake_minimum_required(VERSION 3.10)
project(globaltheme)

# 核心修复：不再硬编码 /usr，完全依赖 CMAKE_INSTALL_PREFIX
set(THEME_INSTALL_PATH "${CMAKE_INSTALL_PREFIX}/share/config/themeconfig/token/")

# 检查并设置脚本权限
set(SCRIPT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/dtConvert.sh")
if(NOT EXISTS "${SCRIPT_PATH}")
  message(FATAL_ERROR "Script does not exist: ${SCRIPT_PATH}")
endif()
execute_process(
  COMMAND chmod +x "${SCRIPT_PATH}"
  RESULT_VARIABLE CHMOD_RESULT
  ERROR_VARIABLE CHMOD_ERROR
)
if(NOT CHMOD_RESULT EQUAL 0)
  message(FATAL_ERROR "Failed to set execute permission for script: ${CHMOD_ERROR}")
endif()

# 扫描 CSS 文件并转换
file(GLOB_RECURSE CSS_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.css")
foreach(file ${CSS_FILES})
  message(STATUS "Converting CSS to QML: ${file}")
  execute_process(
    COMMAND "${SCRIPT_PATH}" "${file}"
    WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
    RESULT_VARIABLE CONVERT_RESULT
    OUTPUT_VARIABLE CONVERT_OUTPUT
    ERROR_VARIABLE CONVERT_ERROR
  )
  if(NOT CONVERT_RESULT EQUAL 0)
    message(FATAL_ERROR "Failed to convert ${file}: ${CONVERT_ERROR}")
  endif()
endforeach()

# 扫描 QML 文件
file(GLOB_RECURSE QML_FILES "${CMAKE_CURRENT_SOURCE_DIR}/*.qml")
if(QML_FILES STREQUAL "")
  message(WARNING "No QML files generated from CSS conversion!")
endif()

# 安装 QML 文件（使用动态路径）
install(FILES
        ${QML_FILES}
        DESTINATION ${THEME_INSTALL_PATH})

message(STATUS "Install path: ${THEME_INSTALL_PATH}") # 验证路径是否正确
