[CMake] Source code configuration management in CMake?
Michael Jackson
mike.jackson at bluequartz.net
Fri Jan 15 14:32:12 EST 2010
On Jan 15, 2010, at 2:17 PM, Tyler Roscoe wrote:
> On Fri, Jan 15, 2010 at 05:57:20PM +0000, Ian Scott wrote:
>> I have an existing large hierarchically structured code base, but I
>> want
>> to extract a cut-down source code tree that only contains the source
>> code files necessary for a particular project. The files I don't want
>> are scattered through-out the code tree.
>>
>> I want to be able to extract this cut-down tree on demand, including
>> modifications to the CMakeLists.txt (and a few other places) to
>> remove
>> references to removed files. I need to do this for a variety of
>> licensing and quality-audit reasons. Just adding some option to my
>> CMakeLists.txt files to exclude files from the compilation will not
>> be
>> enough.
>
> This sounds scary.
>
> I would solve this problem with SCM tools. For example, you could
> cut a
> branch for your pared-down project, delete the unwanted files and
> modify
> the CMakeLists on that branch, and Bob's your uncle. This approach
> requires you to use merging to keep your branch up-to-date, but to me
> that seems less onerous than having a script that tweaks your build
> scripts every time.
>
> tyler
Boost solved this with a custom program called "bcp". Bcp scans the
headers for #include <boost/*> and then copies the include files and
implementation files into the new location. Not that I am advocating
that type of solution but in the case of boost, it did work.
I was able to extract out a portion of boost for what I use with my
own projects which cut boost down to just a few hundred files, instead
of the whole enchilada.
Cheers
___________________________________________________________
Mike Jackson www.bluequartz.net
Principal Software Engineer mike.jackson at bluequartz.net
BlueQuartz Software Dayton, Ohio
More information about the CMake
mailing list