[CMake] How would I use parallel make on ExternalProjects?

Bill Hoffman bill.hoffman at kitware.com
Thu Oct 7 11:36:55 EDT 2010


On 10/7/2010 11:25 AM, kent williams wrote:
> On Wed, Oct 6, 2010 at 5:01 PM, Clifford Yapp<cliffyapp at gmail.com>  wrote:
>> I use $(MAKE) in my BUILD_COMMAND and that seems to do OK, although I
>> don't know if it works universally.
>>
>
> That's an environment variable, as near as I can tell and isn't
> mentioned in the current CMake documentation. So it's probably not the
> best thing to do.
>
> upon reflection, this would be a little safer:
>
> if("${CMAKE_GENERATOR}" STREQUAL "Unix Makefiles")
> set(BUILD_COMMAND_STRING "${CMAKE_MAKE_PROGRAM} -j4")
> else()
> set(BUILD_COMMAND_STRING "$(CMAKE_MAKE_PROGRAM)")
> endif()

By using $(MAKE), the toplevel -j N option should be passed down.  The 
2.8.3 RC that is out now has some fixes in this area.


-Bill


More information about the CMake mailing list