Re: [cmake-developers] How to use JOB_POOLS?

2016-11-21 Thread Dave Abrahams

on Mon Nov 21 2016, Brad King  wrote:

> On 11/21/2016 11:06 AM, Dave Abrahams wrote:
>> the documentation for JOB_POOLS is sparse
>
> Yes, it is bare-bones reference documentation for someone that already
> knows how Ninja job pools work.  

I know perfectly well how Ninja job pools work.  The docs in CMake are
inadequate for understanding how CMake interacts with them.

> A sufficiently motivated contributor could add more to the
> `Help/generator/Ninja.rst` document in a new "Job Pools" section.

I do appreciate the hint, Brad, but I'm currently unable to make
contributions to arbitrary open-source projects.

>> I understand the principle at work, but it's really unclear
>> how JOB_POOL_LINK and JOB_POOL_COMPILE are supposed to work when set
>> per-target.
>
> They assign link rules and compile rules for that target to the
> named pool.  Each pool can have a different size assigned in the
> global JOB_POOLS property.  Different targets could be in different
> pools, though typically the global settings are sufficient.

Ah.

>> I presume means compilation of languages that CMake knows about?
>
> Yes.  It is for the compilation and linking commands that CMake
> generates.
>
>> what about custom targets?
>
> We currently have no interface to assign custom commands or
> custom targets to any pool, simply because no one implemented
> such support.  It would have to be a new optional argument to
> the add_custom_command and add_custom_target commands.

Wow, that's too bad.  It gets kinda awkward when my Swift build, which
uses distcc over 100 cpus for C++ compilation, tries to do 100 parallel
swift compilations (not supported by distcc) on my poor local 4-core
machine.

I may have to resort to postprocessing the generated Ninja files if
I can't modify CMake.

-- 
-Dave
-- 

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


Re: [cmake-developers] Docs for CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT

2016-11-21 Thread Brad King
On 11/19/2016 06:06 AM, Craig Scott wrote:
> can documentation be added for it

Yes, it was simply missing the docs:

https://gitlab.kitware.com/cmake/cmake/merge_requests/271

Thanks,
-Brad

-- 

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


Re: [cmake-developers] How to use JOB_POOLS?

2016-11-21 Thread Brad King
On 11/21/2016 11:06 AM, Dave Abrahams wrote:
> the documentation for JOB_POOLS is sparse

Yes, it is bare-bones reference documentation for someone that already
knows how Ninja job pools work.  A sufficiently motivated contributor
could add more to the `Help/generator/Ninja.rst` document in a new
"Job Pools" section.

> I understand the principle at work, but it's really unclear
> how JOB_POOL_LINK and JOB_POOL_COMPILE are supposed to work when set
> per-target.

They assign link rules and compile rules for that target to the
named pool.  Each pool can have a different size assigned in the
global JOB_POOLS property.  Different targets could be in different
pools, though typically the global settings are sufficient.

> I presume means compilation of languages that CMake knows about?

Yes.  It is for the compilation and linking commands that CMake
generates.

> what about custom targets?

We currently have no interface to assign custom commands or
custom targets to any pool, simply because no one implemented
such support.  It would have to be a new optional argument to
the add_custom_command and add_custom_target commands.

-Brad

-- 

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


[cmake-developers] How to use JOB_POOLS?

2016-11-21 Thread Dave Abrahams

Hi all,

I'm finding that the documentation for JOB_POOLS is... sparse, to say
the least.  I understand the principle at work, but it's really unclear
how JOB_POOL_LINK and JOB_POOL_COMPILE are supposed to work when set
per-target.  When set globally, it's clear that JOB_POOL_COMPILE is
supposed to affect “compilation” targets (which I presume means
compilation of languages that CMake knows about?) while JOB_POOL_LINK is
supposed to affect link targets (a little more constrained; I think
CMake knows about most linkers) but what about custom targets?  I have
lots of those and their compilations can't be distributed with distcc.
Can they be assigned to job pools?

Can anyone explain this stuff?

Thanks,
Dave

P.S. Someone should build up an example that illustrates how this all works.

-- 

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

Re: [cmake-developers] improved CodeBlocks group support

2016-11-21 Thread Daniel Pfeifer
On Mon, Nov 21, 2016 at 4:21 PM, Tobias Hunger 
wrote:

> Hi Tim,
>
> Am 21.11.2016 01:19 schrieb "tim cotter" :
> >
> > i've patched my local cmake to automatically add a virtual folder group
> option for every file in a code blocks project.
> >
> > it's not proper support for cmake source groups.
> > but it does what i want it to do.
> >
> > the patch is small.
> >
> > would the community be interested in such a thing?
>
> Have you tested this with the IDEs that user this extra generator?
> CodeBlocks and QtCreator are the ones I know to be using this.
>
> > if so, how would i go about submitting it?
>
> If you can create a merge request at gitlab.kitware.com, then that would
> be the best option. Not sure you can get an account there (that is able to
> create merge requests).
>
https://gitlab.kitware.com/cmake/cmake/blob/master/CONTRIBUTING.rst
-- 

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

Re: [cmake-developers] improved CodeBlocks group support

2016-11-21 Thread Tobias Hunger
Hi Tim,

Am 21.11.2016 01:19 schrieb "tim cotter" :
>
> i've patched my local cmake to automatically add a virtual folder group
option for every file in a code blocks project.
>
> it's not proper support for cmake source groups.
> but it does what i want it to do.
>
> the patch is small.
>
> would the community be interested in such a thing?

Have you tested this with the IDEs that user this extra generator?
CodeBlocks and QtCreator are the ones I know to be using this.

> if so, how would i go about submitting it?

If you can create a merge request at gitlab.kitware.com, then that would be
the best option. Not sure you can get an account there (that is able to
create merge requests).

Otherwise sending it here will probably work, too.

Best Regards,
Tobias
-- 

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