Re: [cmake-developers] [PATCH] Tests: Refactor testing of extra generators.

2016-08-23 Thread Brad King
On 08/17/2016 04:48 PM, Chaoren Lin via cmake-developers wrote:
> From: Chaoren Lin 
> 
> Use a loop instead of repeating the same thing multiple times.
> ---
>  Tests/CMakeLists.txt | 77 
> 
>  1 file changed, 30 insertions(+), 47 deletions(-)

Applied, thanks:

 Tests: Refactor testing of extra generators.
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9bd0643a

-Brad

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: http://cmake.org/cmake/help/training.html

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers


[cmake-developers] [PATCH] Tests: Refactor testing of extra generators.

2016-08-17 Thread Chaoren Lin via cmake-developers
From: Chaoren Lin 

Use a loop instead of repeating the same thing multiple times.
---
 Tests/CMakeLists.txt | 77 
 1 file changed, 30 insertions(+), 47 deletions(-)

diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 6f1805b..c119cfd 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -569,60 +569,43 @@ if(BUILD_TESTING)
   ADD_LINK_FLAGS_TEST(mod_flags_config dll_flags_config)
   ADD_LINK_FLAGS_TEST(exe_flags_config mod_flags_config)
 
-  # If we are running right now with a UnixMakefiles based generator,
+  # If we are running right now with a Unix Makefiles or Ninja based generator,
   # build the "Simple" test with the ExtraGenerators, if available
   # This doesn't test whether the generated project files work (unfortunately),
   # mainly it tests that cmake doesn't crash when generating these project 
files.
-  if(${CMAKE_GENERATOR} MATCHES "Unix Makefiles"  OR  ${CMAKE_GENERATOR} 
MATCHES "KDevelop")
+  if(${CMAKE_GENERATOR} MATCHES "Unix Makefiles" OR ${CMAKE_GENERATOR} MATCHES 
"Ninja")
+
 # check which generators we have
 execute_process(COMMAND ${CMAKE_CMAKE_COMMAND} --help
   OUTPUT_VARIABLE cmakeOutput ERROR_VARIABLE cmakeOutput)
-# check for the Eclipse generator
-if ("${cmakeOutput}" MATCHES Eclipse)
-  add_test(Simple_EclipseGenerator ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Simple"
- "${CMake_BINARY_DIR}/Tests/Simple_EclipseGenerator"
- --build-two-config
- --build-generator "Eclipse CDT4 - Unix Makefiles"
- --build-generator-platform "${CMAKE_GENERATOR_PLATFORM}"
- --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}"
- --build-project Simple
- --build-options ${build_options}
- --test-command Simple)
-  list(APPEND TEST_BUILD_DIRS 
"${CMake_BINARY_DIR}/Tests/Simple_EclipseGenerator")
-endif ()
 
-# check for the CodeBlocks generator
-if ("${cmakeOutput}" MATCHES CodeBlocks)
-  add_test(Simple_CodeBlocksGenerator ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Simple"
- "${CMake_BINARY_DIR}/Tests/Simple_CodeBlocksGenerator"
- --build-two-config
- --build-generator "CodeBlocks - Unix Makefiles"
- --build-generator-platform "${CMAKE_GENERATOR_PLATFORM}"
- --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}"
- --build-project Simple
- --build-options ${build_options}
- --test-command Simple)
-  list(APPEND TEST_BUILD_DIRS 
"${CMake_BINARY_DIR}/Tests/Simple_CodeBlocksGenerator")
-endif ()
-# check for the KDevelop3 generator
-if ("${cmakeOutput}" MATCHES KDevelop3)
-  add_test(Simple_KDevelop3Generator ${CMAKE_CTEST_COMMAND}
- --build-and-test
- "${CMake_SOURCE_DIR}/Tests/Simple"
- "${CMake_BINARY_DIR}/Tests/Simple_KDevelop3Generator"
- --build-two-config
- --build-generator "KDevelop3 - Unix Makefiles"
- --build-generator-platform "${CMAKE_GENERATOR_PLATFORM}"
- --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}"
- --build-project Simple
- --build-options ${build_options}
- --test-command Simple)
-  list(APPEND TEST_BUILD_DIRS 
"${CMake_BINARY_DIR}/Tests/Simple_KDevelop3Generator")
-endif ()
+set(extraGenerators
+  "CodeBlocks"
+  "CodeLite"
+  "Eclipse CDT4"
+  "Kate"
+  "KDevelop3"
+  "Sublime Text 2")
+
+foreach(extraGenerator ${extraGenerators})
+  if ("${cmakeOutput}" MATCHES "${extraGenerator} - ${CMAKE_GENERATOR}")
+set(extraGeneratorTestName "Simple_${extraGenerator}Generator")
+string(REPLACE " " "" extraGeneratorTestName ${extraGeneratorTestName})
+
+add_test(${extraGeneratorTestName} ${CMAKE_CTEST_COMMAND}
+  --build-and-test
+  "${CMake_SOURCE_DIR}/Tests/Simple"
+  "${CMake_BINARY_DIR}/Tests/${extraGeneratorTestName}"
+  --build-two-config
+  --build-generator "${extraGenerator} - ${CMAKE_GENERATOR}"
+  --build-generator-platform "${CMAKE_GENERATOR_PLATFORM}"
+  --build-generator-toolset "${CMAKE_GENERATOR_TOOLSET}"
+  --build-project Simple
+  --build-options ${build_options}
+  --test-command Simple)
+list(APPEND TEST_BUILD_DIRS 
"${CMake_BINARY_DIR}/Tests/${extraGeneratorTestName}")
+  endif ()
+endforeach(extraGenerator)
 
   endif()
 
-- 
2.8.0.rc3.226.g39d4020

-- 

Powered by www.kitware.com

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Kitware offers various services to support the CMake community. For more 
information on each offering, please visit:

CMake Support: http://cmake.org/cmake/help/support.html
CMake Consulting: http://cmake.org/cmake/help/consulting.html
CMake Training Courses: