summaryrefslogtreecommitdiffstats
path: root/Tests/RunCMake/CPack/RPM/Prerequirements.cmake
blob: a4741ba5b807131bdb0cf4bb91f5119945ac53dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function(get_test_prerequirements found_var config_file)
  if(CMAKE_CURRENT_BINARY_DIR MATCHES " ")
    # rpmbuild can't handle spaces in path
    return()
  endif()

  find_program(RPM_EXECUTABLE rpm)
  find_program(RPMBUILD_EXECUTABLE rpmbuild)

  if(RPM_EXECUTABLE AND RPMBUILD_EXECUTABLE)
    file(WRITE "${config_file}" "set(RPM_EXECUTABLE \"${RPM_EXECUTABLE}\")")
    file(APPEND "${config_file}"
        "\nset(RPMBUILD_EXECUTABLE \"${RPMBUILD_EXECUTABLE}\")")
    set(${found_var} true PARENT_SCOPE)
  endif()

  # optional tool for some tests
  find_program(CPACK_OBJDUMP_EXECUTABLE objdump)
  if(CPACK_OBJDUMP_EXECUTABLE)
    file(APPEND "${config_file}"
      "\nset(CPACK_OBJDUMP_EXECUTABLE \"${CPACK_OBJDUMP_EXECUTABLE}\")")
  endif()
endfunction()