[Rock-dev] [PROPOSAL] modularized cmake library code

Sylvain Joyeux sylvain.joyeux at dfki.de
Thu Jan 6 19:21:56 CET 2011


I created a modularized CMake code for CMake libraries, which covers 90% 
of the needs and is dead simple to use. This is a PROPOSAL. I mean, it 
is obviously open for discussion.

What I wanted to improve w.r.t. the current template is:
* function/macro based. In particular, getting rid of all these
   global variables
* handles multiple targets in the same package in a straightforward
   way (comes with the removal of the global variables)

I also adapted the current template. Here, my goal was to start with a 
MINIMAL template, with really only what's needed to create a library. 
The idea would be to have scripts to add stuff piece by piece.

Example:

   rock-create-lib corridor_planner
   # creates the library package for corridor_planner

   # Later, I want to have a vizkit plugin for it. I 'cd' in it and do.
   rock-add-vizkit

   # Oh, let's have a test suite !
   rock-add-test

   # I think you got the point ...

== Where to have a look ?
The cmake code is in base/types/cmake

The updated template is in the "modularized" branch of
   git://gitorious.org/rock-base/template_cmake_lib.git

rock-planning/corridor_planner and the (yet) DFKI-internal 
imoby/corridor_nav_widget are using it as examples. Have a look there !

Comments (critics !) are welcome

Sylvain


More information about the Rock-dev mailing list