On 11/17/2015 11:37 AM, Rolf Eike Beer wrote:
> Am 17.11.2015 17:08, schrieb David Chen:
>> We’ve been getting a warning from FindGTest.cmake about CMP0064 when
>> building SimpleITK.  The warning occurs at lines 127, 129 and 131 when
>> the variable ${test_type} is equal to “TEST”.  With CMP0064 this TEST
>> could be interpreted as commands in the if() and elseif() statements
>> unless the policy is set to OLD.

With CMP0054 and CMP0064 both set to NEW then the original code
would work as expected.  However, CMake's modules must tolerate
many policy (non-)setting combinations.

> The correct fix would probably to just remove the dereference, i.e. 
> change
> 
>    if(${test_type} STREQUAL "TEST_P")
> 
> to
> 
>    if(test_type STREQUAL "TEST_P")

The code

  if(test_type STREQUAL "TEST")

could still trigger CMP0064 warnings.  We can use the style

  if("x${test_type}" STREQUAL "xTEST_P")

to avoid both CMP0054 and CMP0064.  Done here:

 FindGTest: Refactor test type checks to avoid cases triggering CMP0064
 https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=b5e7b22d

David, please verify that this approach still works for your case.

I've queued this for merge to 'release' for 3.4.1.

Thanks,
-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

Reply via email to