Am Montag, den 19.04.2010, 16:07 -0400 schrieb Benoit Thomas: > Hello, > > I'm using an external library which is already compiled. I have wrapped > the library in a MyLib.cmake and use it in cmake as an imported library. > It works fine, but since the include line uses relative path, it changes > from projects to projects and in some case it looks just wrong. > > I want to change this to something more like: > > find_package (MyLib) > include (MYLIB_CMAKE_FILE) > # add_executable and stuff > target_link_libraries (MyExe MyLib) > > However, I'm not sure if I should create a FindMyLib.cmake file or > MyLib-config.cmake. Both seems to eventually do the same, but I don't > really understand what are the differences. > > When I looked at some Find*.cmake file (FindSWIG for example) it has a > UseSWIG.cmake file. Syntax looks like what I'm trying to achieve, but > the none of the Use* files I've check create imported libray, so I guess > this is not the way to go. > > In the book, there is an example which seems to do more what I want and > use *-config.cmake, which give something like > > find_package (MyLib) > # no include, since the MyLib-config.cmake already took care of the include > # add_executable and stuff > target_link_libraries (MyExe MyLib) > > Part of what I don't understand is when a user use the find_package > command, is he expecting to load a Find* file or a *-config file (or he > doesn't care?), and is he expecting a specific behavior from each file, > etc, etc... And would it be a surprise for the user if the > find_package(MyLib) add a MyLib target into his project ? And is using > find_package appropriate for this kind of situation and I got it all > wrong :) ? > > Bottom line, I'm looking for a way to write my projects so that if > someone else with cmake experience look into them, it will feel like > "common" cmake project (if such thing exists) and not something I'm the > only one to understand... > > (Sorry if this sound confusing)
Here, http://www.cmake.org/Wiki/CMake:How_To_Find_Libraries#How_package_finding_works you can also read some statements about Find* and *config files. Micha _______________________________________________ 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