install.cmake 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. set(_build_data_dir ${CMAKE_CURRENT_BINARY_DIR}/../etc/share)
  2. # Install qmake files
  3. if(TRUE)
  4. set(_qmake_install_dir "${CMAKE_INSTALL_DATADIR}/QWindowKit/qmake")
  5. set(_qmake_build_dir ${_build_data_dir}/${_qmake_install_dir})
  6. file(RELATIVE_PATH _qmake_install_prefix
  7. "${CMAKE_INSTALL_PREFIX}/${_qmake_install_dir}"
  8. "${CMAKE_INSTALL_PREFIX}"
  9. )
  10. string(REGEX REPLACE "/$" "" _qmake_install_prefix "${_qmake_install_prefix}")
  11. set(QMAKE_QWK_INSTALL_PREFIX "\$\$PWD/${_qmake_install_prefix}")
  12. set(QMAKE_QWK_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR})
  13. set(QMAKE_QWK_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
  14. set(QMAKE_QWK_INSTALL_INCDIR ${CMAKE_INSTALL_INCLUDEDIR})
  15. set(QMAKE_QWK_CORE_NAME_RELEASE QWKCore)
  16. set(QMAKE_QWK_WIDGETS_NAME_RELEASE QWKWidgets)
  17. set(QMAKE_QWK_QUICK_NAME_RELEASE QWKQuick)
  18. set(QMAKE_QWK_CORE_NAME_DEBUG QWKCore${CMAKE_DEBUG_POSTFIX})
  19. set(QMAKE_QWK_WIDGETS_NAME_DEBUG QWKWidgets${CMAKE_DEBUG_POSTFIX})
  20. set(QMAKE_QWK_QUICK_NAME_DEBUG QWKQuick${CMAKE_DEBUG_POSTFIX})
  21. if(QWINDOWKIT_BUILD_STATIC)
  22. set(QMAKE_QWK_CORE_STATIC_MACRO "DEFINES += QWK_CORE_STATIC")
  23. set(QMAKE_QWK_WIDGETS_STATIC_MACRO "DEFINES += QWK_WIDGETS_STATIC")
  24. set(QMAKE_QWK_QUICK_STATIC_MACRO "DEFINES += QWK_QUICK_STATIC")
  25. endif()
  26. file(GLOB _qmake_components "${CMAKE_CURRENT_LIST_DIR}/qmake/*.pri.in")
  27. foreach(_item IN LISTS _qmake_components)
  28. get_filename_component(_name ${_item} NAME_WLE)
  29. configure_file(${_item} ${_build_data_dir}/qmake/${_name} @ONLY)
  30. endforeach()
  31. install(DIRECTORY ${_build_data_dir}/qmake/
  32. DESTINATION ${_qmake_install_dir}
  33. )
  34. endif()
  35. # Install msbuild files
  36. if(MSVC)
  37. macro(to_dos_separator _var)
  38. string(REPLACE "/" "\\" ${_var} ${${_var}})
  39. endmacro()
  40. set(_msbuild_install_dir "${CMAKE_INSTALL_DATADIR}/QWindowKit/msbuild")
  41. set(_msbuild_build_dir ${_build_data_dir}/${_msbuild_install_dir})
  42. file(RELATIVE_PATH _msbuild_install_prefix
  43. "${CMAKE_INSTALL_PREFIX}/${_msbuild_install_dir}"
  44. "${CMAKE_INSTALL_PREFIX}"
  45. )
  46. string(REGEX REPLACE "/$" "" _msbuild_install_prefix "${_msbuild_install_prefix}")
  47. set(MSBUILD_QWK_INSTALL_PREFIX "\$(MSBuildThisFileDirectory)${_msbuild_install_prefix}")
  48. set(MSBUILD_QWK_INSTALL_BINDIR ${CMAKE_INSTALL_BINDIR})
  49. set(MSBUILD_QWK_INSTALL_LIBDIR ${CMAKE_INSTALL_LIBDIR})
  50. set(MSBUILD_QWK_INSTALL_INCDIR ${CMAKE_INSTALL_INCLUDEDIR})
  51. set(MSBUILD_QWK_LIBRARY_LIST_DEBUG
  52. QWKCore${CMAKE_DEBUG_POSTFIX}.lib
  53. QWKWidgets${CMAKE_DEBUG_POSTFIX}.lib
  54. QWKQuick${CMAKE_DEBUG_POSTFIX}.lib
  55. )
  56. set(MSBUILD_QWK_LIBRARY_LIST_RELEASE
  57. QWKCore.lib
  58. QWKWidgets.lib
  59. QWKQuick.lib
  60. )
  61. to_dos_separator(MSBUILD_QWK_INSTALL_PREFIX)
  62. to_dos_separator(MSBUILD_QWK_INSTALL_BINDIR)
  63. to_dos_separator(MSBUILD_QWK_INSTALL_LIBDIR)
  64. to_dos_separator(MSBUILD_QWK_INSTALL_INCDIR)
  65. if(QWINDOWKIT_BUILD_STATIC)
  66. set(MSBUILD_QWK_STATIC_MACRO
  67. "<PreprocessorDefinitions>QWK_CORE_STATIC;QWK_WIDGETS_STATIC;QWK_QUICK_STATIC</PreprocessorDefinitions>"
  68. )
  69. endif()
  70. configure_file(${CMAKE_CURRENT_LIST_DIR}/msbuild/QWindowKit.props.in
  71. ${_build_data_dir}/msbuild/QWindowKit.props
  72. @ONLY
  73. )
  74. install(DIRECTORY ${_build_data_dir}/msbuild/
  75. DESTINATION ${_msbuild_install_dir}
  76. )
  77. endif()