VS: Add test for building MSBuild project in subdir
Add test covering cmGlobalGenerator::GenerateBuildCommand for VS solutions with MSBuild and building a target defined in a subdirectory and not part of ALL.
This commit is contained in:
parent
3cd4000601
commit
1ca93182ad
|
@ -1495,6 +1495,29 @@ ${CMake_BINARY_DIR}/bin/cmake -DVERSION=master -P ${CMake_SOURCE_DIR}/Utilities/
|
|||
unset(_last_test)
|
||||
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/VSExcludeFromDefaultBuild")
|
||||
endif()
|
||||
|
||||
if(CMAKE_TEST_GENERATOR MATCHES "Visual Studio ([0-5]|[6-9][0-9])")
|
||||
if(CMAKE_TEST_MAKEPROGRAM MATCHES "[mM][sS][bB][uU][iI][lL][dD]\\.[eE][xX][eE]")
|
||||
set(MSBUILD_EXECUTABLE "${CMAKE_TEST_MAKEPROGRAM}")
|
||||
else()
|
||||
set(_FDIR "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VC7;FrameworkDir32]")
|
||||
set(_FVER "[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\VisualStudio\\SxS\\VC7;FrameworkVer32]")
|
||||
find_program(MSBUILD_EXECUTABLE NAMES msbuild HINTS ${_FDIR}/${_FVER})
|
||||
endif()
|
||||
if(MSBUILD_EXECUTABLE)
|
||||
add_test(NAME VSProjectInSubdir COMMAND ${CMAKE_CTEST_COMMAND}
|
||||
--build-and-test
|
||||
"${CMake_SOURCE_DIR}/Tests/VSProjectInSubdir"
|
||||
"${CMake_BINARY_DIR}/Tests/VSProjectInSubdir"
|
||||
--build-two-config
|
||||
--build-generator ${CMAKE_TEST_GENERATOR}
|
||||
--build-generator-toolset "${CMAKE_TEST_GENERATOR_TOOLSET}"
|
||||
--build-makeprogram "${MSBUILD_EXECUTABLE}"
|
||||
--build-project VSProjectInSubdir
|
||||
--build-target test)
|
||||
list(APPEND TEST_BUILD_DIRS "${CMake_BINARY_DIR}/Tests/VSProjectInSubdir")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (APPLE)
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
cmake_minimum_required(VERSION 2.8.10)
|
||||
project(VSProjectInSubdir NONE)
|
||||
add_subdirectory(subdir)
|
|
@ -0,0 +1 @@
|
|||
add_custom_target(test COMMAND ${CMAKE_COMMAND} -E echo test VERBATIM)
|
Loading…
Reference in New Issue