Re: [cmake-developers] kwsysProcess threadsafety

2018-01-08 Thread Alexander Neundorf
On 2018 M01 8, Mon 10:32:22 CET Jean-Michaël Celerier wrote: > > 3) Abandon the idea to parallelize AUTOMOC/UIC > > please no ! moc is a huge bottleneck in my builds (to the point that using > verdigris instead ends up having > faster build time overall). you

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-08 Thread Brad King
On 01/08/2018 07:26 AM, Sebastian Holtermann wrote: > Then I'm going to refactor cmQtAutoGeneratorMocUic > to use a libuv event loop internally. Great. Take a look at Source/cmUVHandlePtr.h for some C++ helpers. -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-08 Thread Sebastian Holtermann
On Montag, 8. Januar 2018 06:56:57 CET Brad King wrote: > On 01/06/2018 02:31 AM, Sebastian Holtermann wrote: > >>> 2) Use libuv instead > > > > I just saw the libuv library in the CMake sources. > > > >> libuv for process management is on the list. I think it is waiting for > >> porting to all

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-08 Thread Brad King
On 01/06/2018 02:31 AM, Sebastian Holtermann wrote: >>> 2) Use libuv instead > > I just saw the libuv library in the CMake sources. > >> libuv for process management is on the list. I think it is waiting for >> porting to all of CMake's platforms to actually happen. > > Does that mean it's

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-08 Thread Jean-Michaël Celerier
> 3) Abandon the idea to parallelize AUTOMOC/UIC please no ! moc is a huge bottleneck in my builds (to the point that using verdigris instead ends up having faster build time overall). Best, Jean-Michaël --- Jean-Michaël Celerier

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-05 Thread Sebastian Holtermann
> > 2) Use libuv instead I just saw the libuv library in the CMake sources. > libuv for process management is on the list. I think it is waiting for > porting to all of CMake's platforms to actually happen. Does that mean it's only there for some specific scenarios and shouldn't be used in

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-05 Thread Ben Boeckel
On Fri, Jan 05, 2018 at 20:34:53 +0100, Sebastian Holtermann wrote: > 2) Use libuv instead libuv for process management is on the list. I think it is waiting for porting to all of CMake's platforms to actually happen. I'm seeing this PR hung up on process:

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-05 Thread clinton
Cool. I'd like to have parallel automoc and uic. How about this 4th option? Don't use threads. A single thread is able to spawn multiple processes, and wait on multiple processes, and react when 1 or more processes change state. I'm probably not familiar enough with kwsysProcess to know if

Re: [cmake-developers] kwsysProcess threadsafety

2018-01-05 Thread Sebastian Holtermann
On Freitag, 5. Januar 2018 13:00:30 CET clin...@elemtech.com wrote: > Cool. I'd like to have parallel automoc and uic. > > How about this 4th option? > Don't use threads. A single thread is able to spawn multiple processes, and > wait on multiple processes, and react when 1 or more processes

[cmake-developers] kwsysProcess threadsafety

2018-01-05 Thread Sebastian Holtermann
Hello! As you might have noticed I tried to parallelize AUTOMOC/UIC. https://gitlab.kitware.com/cmake/cmake/merge_requests/1632 The issue that's blocking it now is that the kwsysProcess framework isn't thread safe. As a consequence it is not possible for threads to start processes concurrently