On 22 March 2013 18:01, Sergei Nikulov <sergey.niku...@gmail.com> wrote: > 2013/3/22 Mateusz Loskot <mate...@loskot.net> >> >> I'm trying to build software which uses libE57 library which has >> Xerces as dependency. >> I build Xerces too as part of my project and I deploy it in custom >> locations >> and Xerces library has custom name. >> >> libE57 provides FindXerces.cmake [1] and I've been trying to figure >> out how I can >> make this module find Xerces I provide, I tried to explicitly the two >> variables: >> Xerces_INCLUDE_DIR >> Xerces_LIBRARY >> on invocation of cmake, but obviously this FindXerces.cmake is still >> nagging me >> about XERCES_ROOT >> >> This is first time when I have to deal with CMake-based software and >> custom >> names and locations of libraries, so I'm not sure either I'm missing some >> important tricks here or this FindXerces.cmake is just poorly written >> module >> and it does not check if user passes <NAME>_INCLUDE or <NAME>_LIBRARY >> directly. >> >> I know I can also use CMAKE_INCLUDE_PATH and CMAKE_LIBRARY_PATH, >> but how to deal with custom library names, when this module expects >> two options only [2]. >> >> Could anyone advise about workaround? >> >> Is this an issue in the FindXerces.cmake and would you say it's worth >> to submit bug report to libE57? >> >> [1] >> http://sourceforge.net/p/e57-3d-imgfmt/code/331/tree/trunk/cmake/Modules/FindXerces.cmake >> [2] >> http://sourceforge.net/p/e57-3d-imgfmt/code/331/tree/trunk/cmake/Modules/FindXerces.cmake#l44 > > Hi Mateusz, > > FindXerces is not part of officially supported modules, so you're on your > own here :-) > As workaround - try provide for script you're pointed with two more > parameters _LIBRARY_DEBUG & _LIBRARY_RELEASE. > AFAIR you need all vars be set to avoid error message from > "find_package_handle_standard_args". > Custom name add to NAMES.
Sergei, I tried that, I specified location of my build of .lib of Xerces using all the three variables: Xerces_LIBRARY_DEBUG Xerces_LIBRARY_RELEASE Xerces_LIBRARY and it's ignored. I'm confused, because as I have been taught by Ryan here http://www.cmake.org/pipermail/cmake/2010-March/035597.html "find_whatever won't run if the variable it's given already has a valid value" Best regards, -- Mateusz Loskot, http://mateusz.loskot.net -- Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Follow this link to subscribe/unsubscribe: http://www.cmake.org/mailman/listinfo/cmake