summaryrefslogtreecommitdiff
path: root/Tests/RunCMake/CPack/tests/CPACK_INSTALL_SCRIPTS/test.cmake
blob: 249d2e6bb95b7bc2e7149a0a82fab4c0c5759941 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/abc.txt" "test content")
set(user_script_ "${CMAKE_CURRENT_BINARY_DIR}/user-script.cmake")
file(WRITE "${user_script_}"
  "file(INSTALL DESTINATION \"\${CMAKE_INSTALL_PREFIX}/foo\"
    TYPE FILE FILES \"${CMAKE_CURRENT_BINARY_DIR}/abc.txt\")")

if(RunCMake_SUBTEST_SUFFIX STREQUAL "both")
    set(CPACK_INSTALL_SCRIPT "${user_script_}")
    set(CPACK_INSTALL_SCRIPTS "${CPACK_INSTALL_SCRIPT}")

elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "singular")
    set(CPACK_INSTALL_SCRIPT "${user_script_}")

elseif(RunCMake_SUBTEST_SUFFIX STREQUAL "plural")
    set(CPACK_INSTALL_SCRIPTS "${user_script_}")

else()
    message(FATAL_ERROR "Unexpected subtest name: ${RunCMake_SUBTEST_SUFFIX}")

endif()

function(run_after_include_cpack)
  file(READ "${CPACK_OUTPUT_CONFIG_FILE}" conf_file_)
  string(REGEX REPLACE "SET\\(CPACK_INSTALL_CMAKE_PROJECTS [^)]*\\)" "" conf_file_ "${conf_file_}")
  file(WRITE "${CPACK_OUTPUT_CONFIG_FILE}" "${conf_file_}")
endfunction()