On Sun, Oct 11, 2009 at 9:01 PM, Tyler Roscoe <ty...@cryptio.net> wrote:

> On Sun, Oct 11, 2009 at 08:41:27PM +0100, Mateusz Loskot wrote:
> > The sources are organised in large number of subdirectories and
> > sort of logical sub-libraries, but the binary output of compilation
> > is a single library.
> [snip]
> > It looks like the best portable approach is to walk through the whole
> > tree of project, collect all .c and .cpp files (assigning list of files
> > to global variables) and, back in the main CMakeLists.txt, stream all
> > source files to single ADD_LIBRARY call.
>
> This is what I would do. IME, CMake works best when you do the simplest
> thing that can possibly work.
>

I would do what makes sense in terms of the end user.  If those separate
subdirectories are meant to be separate libraries, then build separate
libraries.  If the source code is scattered across multiple subdirectories
but is all supposed to be part of the same library then build it together.

You can use PARENT_SCOPE to hand lists of source files up a directory, if
that is of interest.
set(FOO_SRCS ${list_of_sources} PARENT_SCOPE)

-- 
Philip Lowman
_______________________________________________
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

Reply via email to