40 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| if(NOT ${RunCMake_SUBTEST_SUFFIX} MATCHES "invalid_.*_var")
 | |
|   if(GENERATOR_TYPE STREQUAL "RPM")
 | |
|     function(checkContentPermissions_ FILE REGEX)
 | |
|       execute_process(COMMAND ${RPM_EXECUTABLE} -qp --dump ${FILE}
 | |
|                   WORKING_DIRECTORY "${CPACK_TEMPORARY_DIRECTORY}"
 | |
|                   OUTPUT_VARIABLE PERMISSIONS_
 | |
|                   ERROR_QUIET
 | |
|                   OUTPUT_STRIP_TRAILING_WHITESPACE)
 | |
| 
 | |
|       if(NOT PERMISSIONS_ MATCHES "${REGEX}")
 | |
|         message(FATAL_ERROR "Permissions in '${FILE}'. Permissions: '${PERMISSIONS_}'")
 | |
|       endif()
 | |
|     endfunction()
 | |
| 
 | |
|     if(${RunCMake_SUBTEST_SUFFIX} MATCHES "CMAKE_var_set")
 | |
|       checkContentPermissions_("${FOUND_FILE_1}"
 | |
|         "/usr/foo .*740 root root.*")
 | |
|     else()
 | |
|       checkContentPermissions_("${FOUND_FILE_1}"
 | |
|         "/usr/foo .*700 root root.*")
 | |
|     endif()
 | |
|   else() # DEB
 | |
|     function(checkContentPermissions_ FILE REGEX)
 | |
|       getPackageContent("${FILE}" PERMISSIONS_)
 | |
| 
 | |
|       if(NOT PERMISSIONS_ MATCHES "${REGEX}")
 | |
|         message(FATAL_ERROR "Permissions in '${FILE}'. Permissions: '${PERMISSIONS_}'")
 | |
|       endif()
 | |
|     endfunction()
 | |
| 
 | |
|     if(${RunCMake_SUBTEST_SUFFIX} MATCHES "CMAKE_var_set")
 | |
|       checkContentPermissions_("${FOUND_FILE_1}"
 | |
|         "drwxr----- root/root .* ./usr/\ndrwxr----- root/root .* ./usr/foo/\n.*")
 | |
|     else()
 | |
|       checkContentPermissions_("${FOUND_FILE_1}"
 | |
|         "drwx------ root/root .* ./usr/\ndrwx------ root/root .* ./usr/foo/\n.*")
 | |
|     endif()
 | |
|   endif()
 | |
| endif()
 |