create different python based tests for single and multi configuration build generators
This commit is contained in:
		
							parent
							
								
									cd0574c396
								
							
						
					
					
						commit
						081b1448ef
					
				@ -237,20 +237,32 @@ endfunction()
 | 
			
		||||
# test/name.py.  It does nothing if Python is not installed.
 | 
			
		||||
function(py_test name)
 | 
			
		||||
  if (PYTHONINTERP_FOUND)
 | 
			
		||||
    # ${CMAKE_BINARY_DIR} is known at configuration time, so we can
 | 
			
		||||
    # directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known
 | 
			
		||||
    # only at ctest runtime (by calling ctest -c <Configuration>), so
 | 
			
		||||
    # we have to escape $ to delay variable substitution here.
 | 
			
		||||
    if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
 | 
			
		||||
      add_test(
 | 
			
		||||
        NAME ${name}
 | 
			
		||||
        COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
            --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>)
 | 
			
		||||
      if (CMAKE_CONFIGURATION_TYPES)
 | 
			
		||||
	# Multi-configuration build generators as for Visual Studio save
 | 
			
		||||
	# output in a subdirectory of CMAKE_CURRENT_BINARY_DIR (Debug,
 | 
			
		||||
	# Release etc.), so we have to provide it here.
 | 
			
		||||
        add_test(
 | 
			
		||||
          NAME ${name}
 | 
			
		||||
          COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
              --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>)
 | 
			
		||||
      else (CMAKE_CONFIGURATION_TYPES)
 | 
			
		||||
	# Single-configuration build generators like Makefile generators
 | 
			
		||||
	# don't have subdirs below CMAKE_CURRENT_BINARY_DIR.
 | 
			
		||||
        add_test(
 | 
			
		||||
          NAME ${name}
 | 
			
		||||
          COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
              --build_dir=${CMAKE_CURRENT_BINARY_DIR})
 | 
			
		||||
      endif (CMAKE_CONFIGURATION_TYPES)
 | 
			
		||||
    else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
 | 
			
		||||
      # ${CMAKE_CURRENT_BINARY_DIR} is known at configuration time, so we can
 | 
			
		||||
      # directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known
 | 
			
		||||
      # only at ctest runtime (by calling ctest -c <Configuration>), so
 | 
			
		||||
      # we have to escape $ to delay variable substitution here.
 | 
			
		||||
      add_test(
 | 
			
		||||
        ${name}
 | 
			
		||||
        ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
 | 
			
		||||
          --build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE})
 | 
			
		||||
    endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
 | 
			
		||||
  endif()
 | 
			
		||||
  endif(PYTHONINTERP_FOUND)
 | 
			
		||||
endfunction()
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user