[cmake-developers] Adding the OpenRAVE library module

Rosen Diankov rosen.diankov at gmail.com
Fri Apr 15 06:06:45 EDT 2011


Hi Brad,

Ok, just released a new version of OpenRAVE that uses configuration
files. I'm attaching the final cmake files, can you double check to
make sure there are no problems?

I wasn't really sure what changes are needed to use the new registry
functions you committed. is there a nightly build of cmake somewhere?

Also here's my comments while going through this:

in the -version.cmake file, PACKAGE_FIND_VERSION is not set when just
using find_package(OpenRAVE), therefore i had to enclose everything
with:

if( PACKAGE_FIND_VERSION )
...
else()
  set(PACKAGE_VERSION_COMPATIBLE 1)
endif()

is this correct?

the wiki says to set foo_LIBRARY, where the cmake readme says _LIBRARY
is deprecated, _LIBRARIES should be used. which one is it?

I read all the documentation on imported/exported targets, but there's
one thing i don't understand. Is this a replacement for configuration
files? Or are imported targets declared inside configuration files and
used in conjunction with OpenRAVE_LIBRARIES variables?


EXPORT targets are not working for me as expected.

the libopenrave library links to static libraries, which will never be
exported from openrave, but i get the following message:

CMake Error: INSTALL(EXPORT "openrave-targets" ...) includes target
"libopenrave" which requires target "crlibm" that is not in the export
set.


thanks,
rosen,

2011/4/14 Brad King <brad.king at kitware.com>:
> On 04/13/2011 11:32 AM, Rosen Diankov wrote:
>> ok, the changes you are proposing sound exciting! perhaps this can be
>> a start for a truly cross platform package management system ;0)
>
> If only ;)
>
>> so is the best approach for now to create a minimal FindOpenRAVE.cmake
>> to give to user, and put FindOpenRAVEConfig.cmake in
>> $installprefix/lib/cmake/?
>
> The name "FindOpenRAVEConfig" makes no sense.  The files are:
>
> - FindOpenRAVE.cmake goes in user applications and contains basically
>
>  find_package(OpenRAVE NO_MODULE PATHS ${REGISTRY_ENTRIES})
>
> - OpenRAVEConfig.cmake goes in the directory
>
>    <prefix>/lib/cmake/OpenRAVE-${VERSION}
>
> - OpenRAVEConfigVersion.cmake goes in next to the config file.
>  http://www.cmake.org/Wiki/CMake/Tutorials/Packaging#Package_Version_Files
>
> -Brad
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openrave-config.cmake
Type: text/x-cmake
Size: 4106 bytes
Desc: not available
URL: <http://public.kitware.com/pipermail/cmake-developers/attachments/20110415/e17607c2/attachment-0006.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: openrave-config-version.cmake
Type: text/x-cmake
Size: 498 bytes
Desc: not available
URL: <http://public.kitware.com/pipermail/cmake-developers/attachments/20110415/e17607c2/attachment-0007.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: FindOpenRAVE.cmake
Type: text/x-cmake
Size: 2402 bytes
Desc: not available
URL: <http://public.kitware.com/pipermail/cmake-developers/attachments/20110415/e17607c2/attachment-0008.bin>


More information about the cmake-developers mailing list