From: Deepika Upadhyay Date: Fri, 22 Nov 2019 14:17:16 +0000 (+0530) Subject: cmake: support parallel build for rocksdb X-Git-Tag: v15.1.0~754^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a930706aa603ba91800221bba754ee478164108d;p=ceph.git cmake: support parallel build for rocksdb * cmake/modules/BuildRocksDB.cmake: if "make" detected use concurrent processing, by passing the jobserver to sub-make using `$(MAKE)` Signed-off-by: Deepika Upadhyay --- diff --git a/cmake/modules/BuildRocksDB.cmake b/cmake/modules/BuildRocksDB.cmake index 73b864c76a5e..f1b68c05422f 100644 --- a/cmake/modules/BuildRocksDB.cmake +++ b/cmake/modules/BuildRocksDB.cmake @@ -60,11 +60,18 @@ function(build_rocksdb) set(rocksdb_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/rocksdb") set(rocksdb_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/rocksdb") set(rocksdb_LIBRARY "${rocksdb_BINARY_DIR}/librocksdb.a") + if(CMAKE_MAKE_PROGRAM MATCHES "make") + # try to inherit command line arguments passed by parent "make" job + set(make_cmd $(MAKE) rocksdb) + else() + set(make_cmd ${CMAKE_COMMAND} --build --target rocksdb) + endif() + ExternalProject_Add(rocksdb_ext SOURCE_DIR "${rocksdb_SOURCE_DIR}" CMAKE_ARGS ${rocksdb_CMAKE_ARGS} BINARY_DIR "${rocksdb_BINARY_DIR}" - BUILD_COMMAND ${CMAKE_COMMAND} --build --target rocksdb + BUILD_COMMAND "${make_cmd}" BUILD_ALWAYS TRUE BUILD_BYPRODUCTS "${rocksdb_LIBRARY}" INSTALL_COMMAND "true")