Tests/RunCMake/CPack/DEB: add verifyDebControl

Add verifyDebControl helper function for checking
of package control files such as preinstall scripts.
This commit is contained in:
Domen Vrankar 2015-07-13 22:23:22 +02:00 committed by Brad King
parent 47d1f1189c
commit 32e9276a08

View File

@ -8,3 +8,21 @@ function(getPackageContent FILE RESULT_VAR)
set(${RESULT_VAR} "${package_content_}" PARENT_SCOPE)
endfunction()
function(verifyDebControl FILE PREFIX VERIFY_FILES)
execute_process(COMMAND ${DPKG_EXECUTABLE} --control ${FILE} control_${PREFIX}
ERROR_VARIABLE err_)
if(err_)
message(FATAL_ERROR "Debian controll verification failed for file: "
"'${FILE}'; error output: '${err_}'")
endif()
foreach(FILE_ IN LISTS VERIFY_FILES)
file(READ "${CMAKE_CURRENT_BINARY_DIR}/control_${PREFIX}/${FILE_}" content_)
if(NOT content_ MATCHES "${${PREFIX}_${FILE_}}")
message(FATAL_ERROR "Unexpected content in for '${PREFIX}_${FILE_}'!"
" Content: '${content_}'")
endif()
endforeach()
endfunction()