After commenting out the call there is no error output: -- The CXX compiler identification is MSVC 17.0.61030.0 -- Check for working CXX compiler using: Visual Studio 11 2012 Win64 -- Check for working CXX compiler using: Visual Studio 11 2012 Win64 -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Detecting CXX compile features -- Detecting CXX compile features - done -- Found PythonInterp: C:/Python27/python.exe (found version "2.7.10") -- Configuring done -- Generating done
Yves On Thu, Dec 10, 2015 at 12:58 PM, David Cole <dlrd...@aol.com> wrote: > Out of curiosity, what output do you get (with 3.4.1) when you comment out > your call to variable_watch? Do you still get error output, but without > strange symbols in it? Or is there no error output in that case? > > > On Thursday, December 10, 2015, Yves Frederix < > yves.frederix+cm...@gmail.com> wrote: > >> Hi all, >> >> I am experiencing problems during the CMake configure step when using >> the function variable_watch. Consider the following minimal CMakeLists >> file: >> >> cmake_minimum_required(VERSION 3.4) >> project(test CXX) >> >> function(myhook _variable _access _value _current_list_file _stack) >> if("${_value}" STREQUAL "") >> # Do nothing >> endif() >> endfunction() >> >> variable_watch(CMAKE_CURRENT_LIST_DIR myhook) >> find_package(PythonInterp REQUIRED) >> >> >> When configuring on Windows using CMake 3.4.1 with the Visual Studio >> generator (I tried both VS2012 and VS2015), the process fails with an >> error message (notice the strange symbols at the beginning of the line >> mentioning FindPackageMessage.cmake): >> >> -- Detecting CXX compile features - done >> CMake Error at >> C:/Tools/CMake_3.4.1/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:142 >> (include): >> include could not find load file: >> >> L☺/Tools/CMake_3.4.1/share/cmake-3.4/Modules/FindPackageMessage.cmake >> Call Stack (most recent call first): >> C:/Tools/CMake_3.4.1/share/cmake-3.4/Modules/FindPythonInterp.cmake:161 >> (include) >> CMakeLists.txt:12 (find_package) >> >> >> CMake Error at >> >> C:/Tools/CMake_3.4.1/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:379 >> (FIND_PACKAGE_MESSAGE): >> Unknown CMake command "FIND_PACKAGE_MESSAGE". >> Call Stack (most recent call first): >> >> C:/Tools/CMake_3.4.1/share/cmake-3.4/Modules/FindPythonInterp.cmake:162 >> (FIND_PACKAGE_HANDLE_STANDARD_ARGS) >> CMakeLists.txt:12 (find_package) >> >> >> I did some more testing, and the configuration step is successful when: >> - using CMake 2.8.12 or 3.4.0 >> - using 3.4.1 (or older versions) on osx (I did not try linux) >> - removing the 'CXX' in the project call or removing the project call >> entirely >> - removing the check for _value inside the function >> >> It seems that for some reason adding the watch (which actually only >> does read-only access), the contents of the CMAKE_CURRENT_LIST_DIR >> variable is messed up somehow. Could I have run into some corner case >> behavior here? >> >> Maybe it is also useful to mention how I ended up in this situation. >> My requirement was to run some custom code as the very last step of >> the configure process. The solution I found was based on using >> variable_watch (see >> >> http://stackoverflow.com/questions/15760580/execute-command-or-macro-in-cmake-as-last-step-before-configure-step-finishes#15824843 >> ), >> but apparently this is not a very robust solution. Are there possibly >> better ways of accomplishing the same thing? >> >> Thanks! >> >> Regards, >> Yves >> -- >> >> 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 > >
-- 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