ctkMacroGeneratePluginResourceFile.cmake 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #
  2. # Depends on:
  3. # CTK/CMake/ctkMacroParseArguments.cmake
  4. #
  5. #! \ingroup CMakeUtilities
  6. MACRO(ctkMacroGeneratePluginResourceFile QRC_SRCS)
  7. CtkMacroParseArguments(MY
  8. "NAME;PREFIX;RESOURCES;BINARY_RESOURCES"
  9. ""
  10. ${ARGN}
  11. )
  12. SET(_qrc_filepath "${CMAKE_CURRENT_BINARY_DIR}/${MY_NAME}")
  13. SET(_qrc_content
  14. "<!DOCTYPE RCC><RCC version=\"1.0\">
  15. <qresource prefix=\"/${MY_PREFIX}\">
  16. ")
  17. IF(MY_RESOURCES)
  18. FOREACH(_resource_file ${MY_RESOURCES})
  19. CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/${_resource_file}" "${CMAKE_CURRENT_BINARY_DIR}/${_resource_file}" COPYONLY)
  20. SET(_qrc_content "${_qrc_content}<file>${_resource_file}</file>
  21. ")
  22. ENDFOREACH()
  23. ENDIF()
  24. IF(MY_BINARY_RESOURCES)
  25. FOREACH(_resource_file ${MY_BINARY_RESOURCES})
  26. SET(_qrc_content "${_qrc_content}<file>${_resource_file}</file>
  27. ")
  28. ENDFOREACH()
  29. ENDIF()
  30. SET(_qrc_content "${_qrc_content}</qresource>
  31. </RCC>
  32. ")
  33. CONFIGURE_FILE("${CTK_CMAKE_DIR}/plugin_resources_cached.qrc.in" "${_qrc_filepath}" @ONLY)
  34. QT4_ADD_RESOURCES(${QRC_SRCS} ${_qrc_filepath})
  35. ENDMACRO()