Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-30 Thread Nick Overdijk
Here's the sample code: https://github.com/NickNick/cmake-interface-includes/commits/master . The second commit breaks the build. I sort of understand why it does, but that means I can't use the INTERFACE-trick, so to say, even with static libraries. Thanks for linking the other bug. On Mon,

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-30 Thread Brad King
On 07/30/2014 05:31 AM, Nick Overdijk wrote: https://github.com/NickNick/cmake-interface-includes/commits/master Thanks. For reference, the summary is: cmake_minimum_required(VERSION 2.8.12) project(FOO CXX) add_library(foo foo/foo.cpp) target_include_directories(foo INTERFACE foo)

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-30 Thread Nick Overdijk
True, I was just bothered by it when we got distcc running with a good amount of cores. Thanks for your effort. :) I'll try and make something with the things I've learned (I'm thinking of making some functions that propagate usage requirements yet link with INTERFACE or something along those

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-28 Thread Brad King
On 07/24/2014 05:47 PM, Nick Overdijk wrote: I'm using target_include_directories of A to get some include directories into B well, so I can't use target_link_libraries(A INTERFACE B), Can you clarify this with sample code please? and I can't seem to use the OBJECT-way neither since B's

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-24 Thread Nick Overdijk
I'm using target_include_directories of A to get some include directories into B well, so I can't use target_link_libraries(A INTERFACE B), and I can't seem to use the OBJECT-way neither since B's sources won't compile without A's INTERFACE_INCLUDE_DIRECTORIES... Any suggestions? On Wed, Jul 23,

[cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-23 Thread Nick Overdijk
Hey guys, With this https://github.com/NickNick/cmake-dependency-waiting code here, why do b wait for a and c wait for b to be build? The object files could all be build in parallel right? Not doing it is making my distcc-cluster less and less useful the more nodes I add. Is there a way to fix or

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-23 Thread Brad King
On 07/23/2014 08:00 AM, Nick Overdijk wrote: With this https://github.com/NickNick/cmake-dependency-waiting code here, why do b wait for a and c wait for b to be build? The object files could all be build in parallel right? Not doing it is making my distcc-cluster less and less useful the

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-23 Thread Nick Overdijk
Thanks for the quick reply, but what if c needs b and b needs a? Adding INTERFACE will then break the build of course, right, since b isn't really linked to a... Or am I mistaken? On Wed, Jul 23, 2014 at 2:36 PM, Brad King brad.k...@kitware.com wrote: On 07/23/2014 08:00 AM, Nick Overdijk

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-23 Thread Nick Overdijk
Oh wait, since a is in the interface of b, b will always be accompanied by a, even though it's not a dependency. Is that how it works? On Wed, Jul 23, 2014 at 2:58 PM, Nick Overdijk n...@astrant.net wrote: Thanks for the quick reply, but what if c needs b and b needs a? Adding INTERFACE will

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-23 Thread Brad King
On 07/23/2014 09:07 AM, Nick Overdijk wrote: Oh wait, since a is in the interface of b, b will always be accompanied by a, even though it's not a dependency. Is that how it works? Yes. If B is a static library then it does not really link so its dependencies are only ever used transitively

Re: [cmake-developers] CMake generates Makefiles that don't parallelize as much as they could.

2014-07-23 Thread Nick Overdijk
Crystal clear. Another layer of indirection eh? I'll see if I can work with that... Thanks for the explanation. On Wed, Jul 23, 2014 at 3:14 PM, Brad King brad.k...@kitware.com wrote: On 07/23/2014 09:07 AM, Nick Overdijk wrote: Oh wait, since a is in the interface of b, b will always be