On Thu, 27 Sep 2018 at 23:34, Dorier, Matthieu <mdor...@anl.gov> wrote:
>
> When I call find_package(XercesC REQUIRED) and XercesC is not in a standard 
> location, I have to set XercesC_INCLUDE_DIR to its include directory and 
> XercesC_LIBRARY to the location of the library.

Correct. If Find-module can not guess, you help it by setting
FOO_INCLUDE_DIR and FOO_LIBRARY.

> If I set XercesC_LIBRARY to the directory containing the library (not to the 
> fullpath of the library itself), cmake finds XercesC but sets 
> XercesC_LIBRARIES to the folder instead of the library, and the same for the 
> XercesC::XercesC target. It seems I truly have to set XercesC_LIBRARY to the 
> name of the library rather than the path to the folder containing it, which 
> kinds of defies the point of find_package...

Find-modules are guessers and as such they do not guarantee they will
find anything.
Sometimes you need to help it, by setting some standard variables,
https://cmake.org/cmake/help/latest/manual/cmake-developer.7.html

Xxx_INCLUDE_DIR - Where to find headers for using the Xxx library.
Xxx_LIBRARY - The path of the Xxx library

Then, Find-module can also perform extra checks of the explicitly
specified library
for eg.  version, symbols, functions, etc.

> I use to rely on a custom FindXercesC.cmake file that was using XercesC_ROOT 
> to figure all this out.
> Is there any way to do the same here?

There seem to be no Xxx_ROOT_DIR handled by this module
https://cmake.org/cmake/help/latest/module/FindXercesC.html

Best regards,
-- 
Mateusz Loskot, http://mateusz.loskot.net
-- 

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:
https://cmake.org/mailman/listinfo/cmake

Reply via email to