test.cmake 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. include(CPackComponent)
  2. if(RunCMake_SUBTEST_SUFFIX STREQUAL "none")
  3. unset(CPACK_EXT_REQUESTED_VERSIONS)
  4. elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "good")
  5. set(CPACK_EXT_REQUESTED_VERSIONS "1.0")
  6. elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "good_multi")
  7. set(CPACK_EXT_REQUESTED_VERSIONS "1.0;2.0")
  8. elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "bad_major")
  9. set(CPACK_EXT_REQUESTED_VERSIONS "2.0")
  10. elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "bad_minor")
  11. set(CPACK_EXT_REQUESTED_VERSIONS "1.1")
  12. elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "invalid_good")
  13. set(CPACK_EXT_REQUESTED_VERSIONS "1;1.0")
  14. elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "invalid_bad")
  15. set(CPACK_EXT_REQUESTED_VERSIONS "1")
  16. endif()
  17. file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/f1.txt" test1)
  18. file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/f2.txt" test2)
  19. file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/f3.txt" test3)
  20. file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/f4.txt" test4)
  21. install(FILES "${CMAKE_CURRENT_BINARY_DIR}/f1.txt" DESTINATION share/cpack-test COMPONENT f1)
  22. install(FILES "${CMAKE_CURRENT_BINARY_DIR}/f2.txt" DESTINATION share/cpack-test COMPONENT f2)
  23. install(FILES "${CMAKE_CURRENT_BINARY_DIR}/f3.txt" DESTINATION share/cpack-test COMPONENT f3)
  24. install(FILES "${CMAKE_CURRENT_BINARY_DIR}/f4.txt" DESTINATION share/cpack-test COMPONENT f4)
  25. cpack_add_component(f1
  26. DISPLAY_NAME "File 1"
  27. DESCRIPTION "Component for file 1"
  28. GROUP f12
  29. INSTALL_TYPES full f12
  30. )
  31. cpack_add_component(f2
  32. DISPLAY_NAME "File 2"
  33. DESCRIPTION "Component for file 2"
  34. GROUP f12
  35. DEPENDS f1
  36. INSTALL_TYPES full f12
  37. )
  38. cpack_add_component(f3
  39. DISPLAY_NAME "File 3"
  40. DESCRIPTION "Component for file 3"
  41. GROUP f34
  42. DEPENDS f1 f2
  43. INSTALL_TYPES full
  44. )
  45. cpack_add_component(f4
  46. DISPLAY_NAME "File 4"
  47. DESCRIPTION "Component for file 4"
  48. GROUP f34
  49. DEPENDS f2 f3 f1
  50. INSTALL_TYPES full
  51. )
  52. cpack_add_component_group(f12
  53. DISPLAY_NAME "Files 1 and 2"
  54. DESCRIPTION "Component group for files 1 and 2"
  55. PARENT_GROUP f1234
  56. )
  57. cpack_add_component_group(f34
  58. DISPLAY_NAME "Files 3 and 4"
  59. DESCRIPTION "Component group for files 3 and 4"
  60. PARENT_GROUP f1234
  61. )
  62. cpack_add_component_group(f1234
  63. DISPLAY_NAME "Files 1-4"
  64. DESCRIPTION "Component group for all files"
  65. )
  66. cpack_add_install_type(full
  67. DISPLAY_NAME "Full installation"
  68. )
  69. cpack_add_install_type(f12
  70. DISPLAY_NAME "Only files 1 and 2"
  71. )