On Fri, 2017-01-27 at 15:45 -0400, Dave Flogeras wrote:
> I've recently upgraded to CMake 3.7.2 (and gnu make-4.2.1). Now, when
> I execute 'make -j5 NightlyBuild', I get the following new (to me)
> warning:
> 
> "gmake[4]: warning: jobserver unavailable: using -j1.  Add '+' to parent make 
> rule."
> 
> If I downgrade make back to the previous version, 4.1-r1 (the -r1 is
> Gentoo), the warning goes away again.
> 
> If I use CMake-3.6.3 (my previous version) with make-4.2.1, the
> warning is still there.
> 
> Is this a known issue?  Is it something I am doing wrong in my
> scripts?

My suspicion is that somehow the recursion is invoking an older version
of make.  In GNU make 4.2 the jobserver interface was stabilized and
published, so that other build tools could take advantage of it (if
desired); for example if your linker is multithreaded it could
participate in the jobserver feature, obtaining jobserver tokens for its
threads so it didn't overwhelm the system during linking.

As part of this the command-line interface between a parent make and its
sub-makes was changed.  This means that if a parent make tries to invoke
a sub-make and they have different versions there may be an
incompatibility.

Normally this is very difficult to do because GNU make sets the MAKE
variable to the version of make which is currently running (as best it
can determine it) and everyone should be invoking submakes using the
$(MAKE) variable.

But, perhaps something in your setup is confounding this normal
behavior.

You can try adding "VERBOSE=1" to your make invocation and look at the
way sub-makes are invoked and see if there's anything odd-looking about
it.

If that's not it, I'm not sure what the problem is but perhaps the
VERBOSE=1 will help diagnose it anyway.
-- 

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

Reply via email to