On Tue, Jan 05, 2016 at 09:18:49 +0100, Bartosz Kosiorek wrote:
> That's great news.
> What is the branch name/link to these improvement?
> Is it possible to push these improvements partially?

Because the changes are so pervasive, I'd like for the branch to be
bisectable, so every commit should pass the test suite on at least the
common platforms (make, ninja, visual studio, xcode).

    https://github.com/mathstuf/cmake/tree/dev/string-overloads

> Maybe CMake community could continue working on that improvement?

I have no problem with anyone taking over the branch as long as the
branch ends up bisectable. If anyone wants to take it over and put the
branch together, I can run the test suite.

> It will be great to create ticket, in which propose solution will be
> described.
> 
> BTW: Do you know why the Xcode and MS Visual Studio is slower than CMake
> one ?

As Petr said, it is because these generators generate a build for each
configuration. You can help this by removing configurations you don't
care about from CMAKE_CONFIGURATION_TYPES (like, say, MinSizeRel) to
help reduce the time.

There are also probably some places in the genex evaluator where
computed values could be cached to improve times (e.g., make a cache of
the transitive closure for each target's include directories, link
libraries, etc. when evaluating $<LINK_LIBRARIES:my_target> and
friends). Alternatively, cmTarget could cache them (but that may not be
as straight forward since cmTarget is editable while genex evaluation
occurs when everything is read-only). Not sure how much it would help
the multi-config generators since they already memoize
configuration-independent evaluations.

--Ben
-- 

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/opensource/opensource.html

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/mailman/listinfo/cmake-developers

Reply via email to