On Tuesday 08 March 2016, 10:00:00 wrote Nicholas Braden: > Jakob, I don't think there is any confusion about what REQUIRED means. > Whether or not REQUIRED is provided, the list of OPTIONAL_COMPONENTS > should not be required under any circumstances. The example error > message seems pretty clear to me that the expected behavior and actual > behavior are different. I went and looked at the source code of the > find module: > > https://github.com/Kitware/CMake/blob/master/Modules/FindQt4.cmake > > It seems that there is no check whatsoever for > Qt4_FIND_REQUIRED_<component>, so the find module just blindly assumes > that all components are required. > > More info: > https://cmake.org/cmake/help/latest/manual/cmake-developer.7.html#find-modules > > To me this seems like a bug in the find module.
Yep, FindQt4.cmake doesn't support OPTIONAL_COMPONENTS which seems only to work if FIND_PACKAGE_HANDLE_STANDARD_ARGS is called with HANDLE_COMPONENTS passed. This is not the case and does not work. I guess due to different naming scheme used for components. AFAICS they have to be e.g. Qt4_QtCore_FOUND, but not QT_QTCORE_FOUND. Best regards, Alexander -- 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