ctkMacroGeneratePluginResourceFile.cmake 1013 B

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