[CMake] Correct usage of add_library

Cedric Doucet cedric.doucet at inria.fr
Wed Dec 23 06:59:48 EST 2015


Hello,

thank you very much, it works fine!

Do you know how to create a target so that

   make mykernel

creates a library libkernel.so?


For the moment, I create a library with the command

   add_library(kernel SHARED ${src})

and I build libkernel.so by typing make.

I have found there exists a command add_custom_target but I don't know how to use it.
I tried

   add_custom_target(mykernel DEPENDS kernel)

but it does not seems to take my include_directories instructions into account since some headers are not found anymore (they're found when I type 'make').

Cédric

----- Mail original -----
> De: "Sergei Nikulov" <sergey.nikulov at gmail.com>
> À: "Cedric Doucet" <cedric.doucet at inria.fr>
> Cc: cmake at cmake.org
> Envoyé: Mercredi 23 Décembre 2015 11:38:38
> Objet: Re: [CMake] Correct usage of add_library
> 
> Hello,
> 
> 2015-12-23 13:32 GMT+03:00 Cedric Doucet <cedric.doucet at inria.fr>:
> >
> > Hello,
> >
> > I have a code which consist in a kernel and several independent modules
> > which depend on this kernel.
> > I would like to let users build the module they want by typing, for
> > example,
> >
> >     make module1
> >
> > to build the first module.
> > But, as this first module depends on the kernel, I need this kernel to be
> > built BEFORE module1.
> >
> 
> You should add
> 
> add_dependencies(module1 kernel)
> 
> in your module1 CMakeLists.txt
> 
> https://cmake.org/cmake/help/latest/command/add_dependencies.html
> 
> HTH,
> 
> --
> Best Regards,
> Sergei Nikulov
> 


More information about the CMake mailing list