[CMake] cmake - library help

Torri, Stephen CIV NSWCDD, W15 stephen.torri at navy.mil
Thu May 27 11:32:13 EDT 2010


> From: cmake-bounces at cmake.org on behalf of Doug Reiland
> Sent: Thu 5/27/2010 11:14 AM
> To: cmake at cmake.org
> Subject: [CMake] cmake - library help
> 
> First, I am new to cmake and exploring converting our home grown build system.
> How would I code this up in cmake
> I have composite objects that need to be added to a share library
> add_library(foo a.c b.c c.c)

Use the keyword 'SHARED' to indicate you need shared library:

add_library (foo SHARED a.c b.c c.c)

> I also need x.o in the library AND x.o linked from:
> subdir-a/aa.c subdir-a/bb.c
 
If the subdirectories have a project named in a CMakeLists.txt you can just tell cmake to link the library in:
 
So if subdir-a has a project like:
 
  cmake_minimum_required(VERSION 2.6)
  add_library (subA aa.c bb.c )
 
then you can link subA inside the other project. For example say the 'foo' library needs to statically link in subA.
 
  add_library ( foo SHARED a.c b.c c.c)
  link_libraries ( subA )
 
Stephen


More information about the CMake mailing list