[CMake] Building third party libraries along with normal targets

Tamás Kenéz tamas.kenez at gmail.com
Thu Mar 30 04:42:27 EDT 2017


An alternative to the CMake superbuild: leave your actual project intact.
Simply create a separate shell script which builds all the dependencies (by
running cmake commands). Or, if you do like the ExternalProject stuff,
create a superbuild which builds only the dependencies.

Tamas

On Thu, Mar 30, 2017 at 5:01 AM, Florent Castelli <
florent.castelli at gmail.com> wrote:

> On 30/03/2017 04:38, Robert Dailey wrote:
>
>> At the end of the day, I've solved the Boost problem but I have many
>> other libraries I still manually build: openssl, libpng, zlib, etc.
>> It's as you said, maintaining build scripts for all of these will be
>> challenging but I think that's the proper way to go in my specific
>> situation (multi platform). It'll be less maintenance than rebuilding
>> binaries 3x per each.
>>
>> Do you know how to set up the boost cmake project I linked on github
>> to work with superbuild? And do you prefer your superbuild execution
>> to happen during cmake generate (basically cmake invokes itself for
>> the superbuild) or do you prefer a separate external run, independent
>> of the normal one (basically 2x cmake invocations)?
>>
>> Do you know of similar projects for other libraries I mentioned? Could
>> hand write my own, but seems better to piggyback on someone else's
>> efforts.
>>
>> Thanks for your feedback!
>>
>
> Only a few libraries are tricky to build, libpng or zlib are trivial for
> example.
>
> A super-build is just having one big project and defining all the targets
> directly in there, using external CMake build scripts through
> add_subdirectory() for example. There is just one CMake invocation.
> This is how my Boost CMake project (yes, I'm the one being it) works. As
> for the Boost dependencies, are you really using them? If you're not, then
> you don't need to build the parts of Boost using them, most are optional.
> If you do, then you can provide Find*.cmake scripts returning targets
> you've built yourself currently. Feel free to create issues on the bug
> tracker if you need assistance with that.
>
> I don't know on the top of my head similar projects for all libraries, but
> I know there are many people writing CMake build scripts for all kind of
> libraries, so just search on the web :)
>
> /Florent
>
>
> --
>
> Powered by www.kitware.com
>
> Please keep messages on-topic and check the CMake FAQ at:
> http://www.cmake.org/Wiki/CMake_FAQ
>
> Kitware offers various services to support the CMake community. For more
> information on each offering, please visit:
>
> CMake Support: http://cmake.org/cmake/help/support.html
> CMake Consulting: http://cmake.org/cmake/help/consulting.html
> CMake Training Courses: http://cmake.org/cmake/help/training.html
>
> Visit other Kitware open-source projects at http://www.kitware.com/opensou
> rce/opensource.html
>
> Follow this link to subscribe/unsubscribe:
> http://public.kitware.com/mailman/listinfo/cmake
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake/attachments/20170330/86c3feb1/attachment.html>


More information about the CMake mailing list