[CMake] build directories, subdirs and lib dependencies
Nick Arini
n.arini at btinternet.com
Mon Jan 3 11:38:17 EST 2005
Brad,
thanks for this.
I have done what you suggested and it actually makes the whole project
folder much neater.
Cheers,
Nick
Brad King wrote:
> Nick Arini wrote:
>
>> I have a source directory structure with a root directory containing
>> a top level CMakeLists.txt file and some code to build a front end
>> executable. I also have a couple of sub directories which contain
>> libraries which are required to link to the executable in the top
>> level directory for the program to function correctly. I would like
>> to step into each of these subdirs in turn (the libraries themselves
>> have interdependencies) and build each library then build the front
>> end executable and link the libraries.
>>
>> In my top level CMakeLists.txt file I first step into the subdirs for
>> each library in turn:
>
> [snip]
>
>> How do I get CMake to build the libraries first then link to the
>> executable (in actual fact if you ignor the error and build anyway it
>> does the right thing!)?
>
>
> The make system generated by CMake does a pre-order traversal, so
> directories can depend on their parents and earlier siblings, but not
> on their children. This was chosen so that test executables could be
> in subdirectories below the libraries they test. It is a known
> limitation and will eventually be fixed. For now you can put the
> executable in a subdirectory:
>
> SUBDIRS(LibDir1 LibDir2 ExeDir)
>
> -Brad
>
More information about the CMake
mailing list