Helpers.cmake 943 B

12345678910111213141516171819202122232425262728
  1. set(ALL_FILES_GLOB "*.deb")
  2. function(getPackageContent FILE RESULT_VAR)
  3. execute_process(COMMAND ${DPKG_EXECUTABLE} -c ${FILE}
  4. OUTPUT_VARIABLE package_content_
  5. ERROR_QUIET
  6. OUTPUT_STRIP_TRAILING_WHITESPACE)
  7. set(${RESULT_VAR} "${package_content_}" PARENT_SCOPE)
  8. endfunction()
  9. function(verifyDebControl FILE PREFIX VERIFY_FILES)
  10. execute_process(COMMAND ${DPKG_EXECUTABLE} --control ${FILE} control_${PREFIX}
  11. ERROR_VARIABLE err_)
  12. if(err_)
  13. message(FATAL_ERROR "Debian controll verification failed for file: "
  14. "'${FILE}'; error output: '${err_}'")
  15. endif()
  16. foreach(FILE_ IN LISTS VERIFY_FILES)
  17. file(READ "${CMAKE_CURRENT_BINARY_DIR}/control_${PREFIX}/${FILE_}" content_)
  18. if(NOT content_ MATCHES "${${PREFIX}_${FILE_}}")
  19. message(FATAL_ERROR "Unexpected content in for '${PREFIX}_${FILE_}'!"
  20. " Content: '${content_}'")
  21. endif()
  22. endforeach()
  23. endfunction()