Sedat Dilek via llvm-dev
2016-Feb-25 05:55 UTC
[llvm-dev] Building with LLVM_PARALLEL_XXX_JOBS
Hi, I switched from "configure and make" to "cmake" build-system and wanted to speedup my build. In my build-script I use... CMAKE_JOBS="1" ##CMAKE_JOBS=$(($(getconf _NPROCESSORS_ONLN)+1)) JOBS_CMAKE_OPTS="-DLLVM_PARALLEL_COMPILE_JOBS=$CMAKE_JOBS -DLLVM_PARALLEL_LINK_JOBS=$CMAKE_JOBS" [1] says in "LLVM-specific variables" section... *** LLVM_PARALLEL_COMPILE_JOBS:STRING Define the maximum number of concurrent compilation jobs. *** LLVM_PARALLEL_LINK_JOBS:STRING Define the maximum number of concurrent link jobs. ...whereas my configure-log says... $ grep -i job -A1 logs/configure-log_llvm-toolchain-3.8.0rc3.txt Job pooling is only available with Ninja generators and CMake 3.0 and later. -- Job pooling is only available with Ninja generators and CMake 3.0 and later. My cmake-version is... $ cmake --version cmake version 2.8.12.2 So, I need Ninja *and* CMake >= v3.0 (or is the right CMake version sufficient) to use LLVM_PARALLEL_XXX_JOBS? If this is a fact, can you please adjust the information in [1]? Do I have other options to speedup my build? ( For testing RCs I tend to use slow build - one single (c)make job. ) My build-script and configure-log are attached. Thanks. Regards, - Sedat - [1] http://llvm.org/docs/CMake.html -------------- next part -------------- -- The C compiler identification is GNU 4.9.2 -- The CXX compiler identification is GNU 4.9.2 -- The ASM compiler identification is GNU -- Found assembler: /usr/bin/gcc-4.9 -- Check for working C compiler: /usr/bin/gcc-4.9 -- Check for working C compiler: /usr/bin/gcc-4.9 -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/g++-4.9 -- Check for working CXX compiler: /usr/bin/g++-4.9 -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done CMake Warning at CMakeLists.txt:64 (message): Job pooling is only available with Ninja generators and CMake 3.0 and later. CMake Warning at CMakeLists.txt:75 (message): Job pooling is only available with Ninja generators and CMake 3.0 and later. -- Looking for dirent.h -- Looking for dirent.h - found -- Looking for dlfcn.h -- Looking for dlfcn.h - found -- Looking for errno.h -- Looking for errno.h - found -- Looking for execinfo.h -- Looking for execinfo.h - found -- Looking for fcntl.h -- Looking for fcntl.h - found -- Looking for inttypes.h -- Looking for inttypes.h - found -- Looking for limits.h -- Looking for limits.h - found -- Looking for link.h -- Looking for link.h - found -- Looking for malloc.h -- Looking for malloc.h - found -- Looking for malloc/malloc.h -- Looking for malloc/malloc.h - not found -- Looking for ndir.h -- Looking for ndir.h - not found -- Looking for pthread.h -- Looking for pthread.h - found -- Looking for signal.h -- Looking for signal.h - found -- Looking for stdint.h -- Looking for stdint.h - found -- Looking for sys/dir.h -- Looking for sys/dir.h - found -- Looking for sys/ioctl.h -- Looking for sys/ioctl.h - found -- Looking for sys/mman.h -- Looking for sys/mman.h - found -- Looking for sys/ndir.h -- Looking for sys/ndir.h - not found -- Looking for sys/param.h -- Looking for sys/param.h - found -- Looking for sys/resource.h -- Looking for sys/resource.h - found -- Looking for sys/stat.h -- Looking for sys/stat.h - found -- Looking for sys/time.h -- Looking for sys/time.h - found -- Looking for sys/uio.h -- Looking for sys/uio.h - found -- Looking for termios.h -- Looking for termios.h - found -- Looking for unistd.h -- Looking for unistd.h - found -- Looking for utime.h -- Looking for utime.h - found -- Looking for valgrind/valgrind.h -- Looking for valgrind/valgrind.h - found -- Looking for zlib.h -- Looking for zlib.h - found -- Looking for fenv.h -- Looking for fenv.h - found -- Looking for FE_ALL_EXCEPT -- Looking for FE_ALL_EXCEPT - found -- Looking for FE_INEXACT -- Looking for FE_INEXACT - found -- Looking for mach/mach.h -- Looking for mach/mach.h - not found -- Looking for mach-o/dyld.h -- Looking for mach-o/dyld.h - not found -- Looking for histedit.h -- Looking for histedit.h - found -- Performing Test HAVE_CXXABI_H -- Performing Test HAVE_CXXABI_H - Success -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Looking for pthread_getspecific in pthread -- Looking for pthread_getspecific in pthread - found -- Looking for pthread_rwlock_init in pthread -- Looking for pthread_rwlock_init in pthread - found -- Looking for pthread_mutex_lock in pthread -- Looking for pthread_mutex_lock in pthread - found -- Looking for dlopen in dl -- Looking for dlopen in dl - found -- Looking for clock_gettime in rt -- Looking for clock_gettime in rt - found -- Looking for compress2 in z -- Looking for compress2 in z - found -- Looking for el_init in edit -- Looking for el_init in edit - found -- Looking for setupterm in tinfo -- Looking for setupterm in tinfo - found -- Looking for arc4random -- Looking for arc4random - not found -- Looking for backtrace -- Looking for backtrace - found -- Looking for getpagesize -- Looking for getpagesize - found -- Looking for getrusage -- Looking for getrusage - found -- Looking for setrlimit -- Looking for setrlimit - found -- Looking for isatty -- Looking for isatty - found -- Looking for futimens -- Looking for futimens - found -- Looking for futimes -- Looking for futimes - found -- Looking for writev -- Looking for writev - found -- Looking for mallctl -- Looking for mallctl - not found -- Looking for mallinfo -- Looking for mallinfo - found -- Looking for malloc_zone_statistics -- Looking for malloc_zone_statistics - not found -- Looking for mkdtemp -- Looking for mkdtemp - found -- Looking for mkstemp -- Looking for mkstemp - found -- Looking for mktemp -- Looking for mktemp - found -- Looking for closedir -- Looking for closedir - found -- Looking for opendir -- Looking for opendir - found -- Looking for readdir -- Looking for readdir - found -- Looking for getcwd -- Looking for getcwd - found -- Looking for gettimeofday -- Looking for gettimeofday - found -- Looking for getrlimit -- Looking for getrlimit - found -- Looking for posix_spawn -- Looking for posix_spawn - found -- Looking for pread -- Looking for pread - found -- Looking for realpath -- Looking for realpath - found -- Looking for sbrk -- Looking for sbrk - found -- Looking for srand48 -- Looking for srand48 - found -- Looking for lrand48 -- Looking for lrand48 - found -- Looking for drand48 -- Looking for drand48 - found -- Looking for strtoll -- Looking for strtoll - found -- Looking for strtoq -- Looking for strtoq - found -- Looking for strerror -- Looking for strerror - found -- Looking for strerror_r -- Looking for strerror_r - found -- Looking for strerror_s -- Looking for strerror_s - not found -- Looking for setenv -- Looking for setenv - found -- Looking for dlerror -- Looking for dlerror - found -- Looking for dlopen -- Looking for dlopen - found -- Looking for __GLIBC__ -- Looking for __GLIBC__ - found -- Performing Test HAVE_INT64_T -- Performing Test HAVE_INT64_T - Success -- Performing Test HAVE_UINT64_T -- Performing Test HAVE_UINT64_T - Success -- Performing Test HAVE_U_INT64_T -- Performing Test HAVE_U_INT64_T - Success -- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB -- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB - Success -- Performing Test LLVM_HAS_ATOMICS -- Performing Test LLVM_HAS_ATOMICS - Success -- Performing Test SUPPORTS_NO_VARIADIC_MACROS_FLAG -- Performing Test SUPPORTS_NO_VARIADIC_MACROS_FLAG - Success -- Performing Test HAS_MAYBE_UNINITIALIZED -- Performing Test HAS_MAYBE_UNINITIALIZED - Success -- Target triple: x86_64-unknown-linux-gnu -- Native target architecture is X86 -- Threads enabled. -- Doxygen disabled. -- Sphinx disabled. -- Go bindings disabled. -- Could NOT find OCaml (missing: OCAMLFIND OCAML_VERSION OCAML_STDLIB_PATH) -- Could NOT find OCaml (missing: OCAMLFIND OCAML_VERSION OCAML_STDLIB_PATH) -- OCaml bindings disabled. -- Performing Test C_SUPPORTS_FPIC -- Performing Test C_SUPPORTS_FPIC - Success -- Performing Test CXX_SUPPORTS_FPIC -- Performing Test CXX_SUPPORTS_FPIC - Success -- Building with -fPIC -- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG -- Performing Test SUPPORTS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success -- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG -- Performing Test CXX_SUPPORTS_MISSING_FIELD_INITIALIZERS_FLAG - Success -- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG -- Performing Test C_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed -- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG -- Performing Test CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG - Failed -- Performing Test C_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG -- Performing Test C_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG - Failed -- Performing Test CXX_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG -- Performing Test CXX_SUPPORTS_DELETE_NON_VIRTUAL_DTOR_FLAG - Success -- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP -- Performing Test C_WCOMMENT_ALLOWS_LINE_WRAP - Failed -- Performing Test CXX_SUPPORTS_CXX11 -- Performing Test CXX_SUPPORTS_CXX11 - Success -- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS -- Performing Test C_SUPPORTS_FNO_FUNCTION_SECTIONS - Success -- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS -- Performing Test C_SUPPORTS_FFUNCTION_SECTIONS - Success -- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS -- Performing Test CXX_SUPPORTS_FFUNCTION_SECTIONS - Success -- Performing Test C_SUPPORTS_FDATA_SECTIONS -- Performing Test C_SUPPORTS_FDATA_SECTIONS - Success -- Performing Test CXX_SUPPORTS_FDATA_SECTIONS -- Performing Test CXX_SUPPORTS_FDATA_SECTIONS - Success -- Found PythonInterp: /usr/bin/python (found version "2.7.3") -- Constructing LLVMBuild project information -- Targeting X86 -- Looking for unwind.h -- Looking for unwind.h - found -- Performing Test COMPILER_RT_HAS_FPIC_FLAG -- Performing Test COMPILER_RT_HAS_FPIC_FLAG - Success -- Performing Test COMPILER_RT_HAS_FPIE_FLAG -- Performing Test COMPILER_RT_HAS_FPIE_FLAG - Success -- Performing Test COMPILER_RT_HAS_FNO_BUILTIN_FLAG -- Performing Test COMPILER_RT_HAS_FNO_BUILTIN_FLAG - Success -- Performing Test COMPILER_RT_HAS_FNO_EXCEPTIONS_FLAG -- Performing Test COMPILER_RT_HAS_FNO_EXCEPTIONS_FLAG - Success -- Performing Test COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG -- Performing Test COMPILER_RT_HAS_FOMIT_FRAME_POINTER_FLAG - Success -- Performing Test COMPILER_RT_HAS_FUNWIND_TABLES_FLAG -- Performing Test COMPILER_RT_HAS_FUNWIND_TABLES_FLAG - Success -- Performing Test COMPILER_RT_HAS_FNO_STACK_PROTECTOR_FLAG -- Performing Test COMPILER_RT_HAS_FNO_STACK_PROTECTOR_FLAG - Success -- Performing Test COMPILER_RT_HAS_FNO_SANITIZE_SAFE_STACK_FLAG -- Performing Test COMPILER_RT_HAS_FNO_SANITIZE_SAFE_STACK_FLAG - Failed -- Performing Test COMPILER_RT_HAS_FVISIBILITY_HIDDEN_FLAG -- Performing Test COMPILER_RT_HAS_FVISIBILITY_HIDDEN_FLAG - Success -- Performing Test COMPILER_RT_HAS_FNO_RTTI_FLAG -- Performing Test COMPILER_RT_HAS_FNO_RTTI_FLAG - Success -- Performing Test COMPILER_RT_HAS_FFREESTANDING_FLAG -- Performing Test COMPILER_RT_HAS_FFREESTANDING_FLAG - Success -- Performing Test COMPILER_RT_HAS_FNO_FUNCTION_SECTIONS_FLAG -- Performing Test COMPILER_RT_HAS_FNO_FUNCTION_SECTIONS_FLAG - Success -- Performing Test COMPILER_RT_HAS_STD_CXX11_FLAG -- Performing Test COMPILER_RT_HAS_STD_CXX11_FLAG - Success -- Performing Test COMPILER_RT_HAS_FTLS_MODEL_INITIAL_EXEC -- Performing Test COMPILER_RT_HAS_FTLS_MODEL_INITIAL_EXEC - Success -- Performing Test COMPILER_RT_HAS_FNO_LTO_FLAG -- Performing Test COMPILER_RT_HAS_FNO_LTO_FLAG - Success -- Performing Test COMPILER_RT_HAS_MSSE3_FLAG -- Performing Test COMPILER_RT_HAS_MSSE3_FLAG - Success -- Performing Test COMPILER_RT_HAS_STD_C99_FLAG -- Performing Test COMPILER_RT_HAS_STD_C99_FLAG - Failed -- Performing Test COMPILER_RT_HAS_SYSROOT_FLAG -- Performing Test COMPILER_RT_HAS_SYSROOT_FLAG - Success -- Performing Test COMPILER_RT_HAS_FVISIBILITY_INLINES_HIDDEN_FLAG -- Performing Test COMPILER_RT_HAS_FVISIBILITY_INLINES_HIDDEN_FLAG - Success -- Performing Test COMPILER_RT_HAS_GR_FLAG -- Performing Test COMPILER_RT_HAS_GR_FLAG - Failed -- Performing Test COMPILER_RT_HAS_GS_FLAG -- Performing Test COMPILER_RT_HAS_GS_FLAG - Failed -- Performing Test COMPILER_RT_HAS_MT_FLAG -- Performing Test COMPILER_RT_HAS_MT_FLAG - Failed -- Performing Test COMPILER_RT_HAS_Oy_FLAG -- Performing Test COMPILER_RT_HAS_Oy_FLAG - Failed -- Performing Test COMPILER_RT_HAS_GLINE_TABLES_ONLY_FLAG -- Performing Test COMPILER_RT_HAS_GLINE_TABLES_ONLY_FLAG - Failed -- Performing Test COMPILER_RT_HAS_G_FLAG -- Performing Test COMPILER_RT_HAS_G_FLAG - Success -- Performing Test COMPILER_RT_HAS_Zi_FLAG -- Performing Test COMPILER_RT_HAS_Zi_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WALL_FLAG -- Performing Test COMPILER_RT_HAS_WALL_FLAG - Success -- Performing Test COMPILER_RT_HAS_WERROR_FLAG -- Performing Test COMPILER_RT_HAS_WERROR_FLAG - Success -- Performing Test COMPILER_RT_HAS_WFRAME_LARGER_THAN_FLAG -- Performing Test COMPILER_RT_HAS_WFRAME_LARGER_THAN_FLAG - Success -- Performing Test COMPILER_RT_HAS_WGLOBAL_CONSTRUCTORS_FLAG -- Performing Test COMPILER_RT_HAS_WGLOBAL_CONSTRUCTORS_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WC99_EXTENSIONS_FLAG -- Performing Test COMPILER_RT_HAS_WC99_EXTENSIONS_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WGNU_FLAG -- Performing Test COMPILER_RT_HAS_WGNU_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WNON_VIRTUAL_DTOR_FLAG -- Performing Test COMPILER_RT_HAS_WNON_VIRTUAL_DTOR_FLAG - Success -- Performing Test COMPILER_RT_HAS_WVARIADIC_MACROS_FLAG -- Performing Test COMPILER_RT_HAS_WVARIADIC_MACROS_FLAG - Success -- Performing Test COMPILER_RT_HAS_W3_FLAG -- Performing Test COMPILER_RT_HAS_W3_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WX_FLAG -- Performing Test COMPILER_RT_HAS_WX_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WD4146_FLAG -- Performing Test COMPILER_RT_HAS_WD4146_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WD4291_FLAG -- Performing Test COMPILER_RT_HAS_WD4291_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WD4391_FLAG -- Performing Test COMPILER_RT_HAS_WD4391_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WD4722_FLAG -- Performing Test COMPILER_RT_HAS_WD4722_FLAG - Failed -- Performing Test COMPILER_RT_HAS_WD4800_FLAG -- Performing Test COMPILER_RT_HAS_WD4800_FLAG - Failed -- Looking for __func__ -- Looking for __func__ - found -- Looking for fopen in c -- Looking for fopen in c - found -- Looking for dlopen in dl -- Looking for dlopen in dl - found -- Looking for shm_open in rt -- Looking for shm_open in rt - found -- Looking for pow in m -- Looking for pow in m - found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Looking for __cxa_throw in stdc++ -- Looking for __cxa_throw in stdc++ - found -- Looking for __i686__ -- Looking for __i686__ - found -- Looking for __i386__ -- Looking for __i386__ - found -- Compiler-RT supported architectures: x86_64 -- Looking for rpc/xdr.h -- Looking for rpc/xdr.h - found -- Looking for tirpc/rpc/xdr.h -- Looking for tirpc/rpc/xdr.h - not found -- Performing Test COMPILER_RT_TARGET_HAS_ATOMICS -- Performing Test COMPILER_RT_TARGET_HAS_ATOMICS - Success -- Clang version: 3.8.0 -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG -- Performing Test CXX_SUPPORTS_NO_NESTED_ANON_TYPES_FLAG - Failed -- Configuring done -- Generating done -- Build files have been written to: /home/wearefam/src/llvm-toolchain/llvm-build -------------- next part -------------- A non-text attachment was scrubbed... Name: build_llvm-toolchain.sh Type: application/x-sh Size: 3786 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160225/0393e162/attachment.sh>
Mehdi Amini via llvm-dev
2016-Feb-25 06:37 UTC
[llvm-dev] Building with LLVM_PARALLEL_XXX_JOBS
> On Feb 24, 2016, at 9:55 PM, Sedat Dilek via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > Hi, > > I switched from "configure and make" to "cmake" build-system and > wanted to speedup my build. > > In my build-script I use... > > CMAKE_JOBS="1" > ##CMAKE_JOBS=$(($(getconf _NPROCESSORS_ONLN)+1)) > JOBS_CMAKE_OPTS="-DLLVM_PARALLEL_COMPILE_JOBS=$CMAKE_JOBS > -DLLVM_PARALLEL_LINK_JOBS=$CMAKE_JOBS" > > [1] says in "LLVM-specific variables" section... > > *** LLVM_PARALLEL_COMPILE_JOBS:STRING > > Define the maximum number of concurrent compilation jobs. > > *** LLVM_PARALLEL_LINK_JOBS:STRING > > Define the maximum number of concurrent link jobs. > > ...whereas my configure-log says... > > $ grep -i job -A1 logs/configure-log_llvm-toolchain-3.8.0rc3.txt > Job pooling is only available with Ninja generators and CMake 3.0 and > later. > -- > Job pooling is only available with Ninja generators and CMake 3.0 and > later. > > My cmake-version is... > > $ cmake --version > cmake version 2.8.12.2 > > So, I need Ninja *and* CMake >= v3.0 (or is the right CMake version > sufficient) to use LLVM_PARALLEL_XXX_JOBS?Yes. When you run ninja without any argument you have parallelism by default. This options can control the default number of jobs for ninja. Also, especially when doing LTO, you may want to limit the number of link jobs independently from the number of compile job, which is again a facility that ninja has.> If this is a fact, can you please adjust the information in [1]? > > Do I have other options to speedup my build?Yes: start to use ninja ;) If for any reason (?) you are really stuck with "make", then run "make -j ~ncpus" (with ~ncpus "approximately the number of cores in your machine). It will build in parallel. -- Mehdi> ( For testing RCs I tend to use slow build - one single (c)make job. ) > > My build-script and configure-log are attached. > > Thanks. > > Regards, > - Sedat - > > > [1] http://llvm.org/docs/CMake.html > <configure-log_llvm-toolchain-3.8.0rc3.txt><build_llvm-toolchain.sh>_______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
Sedat Dilek via llvm-dev
2016-Feb-25 06:51 UTC
[llvm-dev] Building with LLVM_PARALLEL_XXX_JOBS
On Thu, Feb 25, 2016 at 7:37 AM, Mehdi Amini <mehdi.amini at apple.com> wrote:> >> On Feb 24, 2016, at 9:55 PM, Sedat Dilek via llvm-dev <llvm-dev at lists.llvm.org> wrote: >> >> Hi, >> >> I switched from "configure and make" to "cmake" build-system and >> wanted to speedup my build. >> >> In my build-script I use... >> >> CMAKE_JOBS="1" >> ##CMAKE_JOBS=$(($(getconf _NPROCESSORS_ONLN)+1)) >> JOBS_CMAKE_OPTS="-DLLVM_PARALLEL_COMPILE_JOBS=$CMAKE_JOBS >> -DLLVM_PARALLEL_LINK_JOBS=$CMAKE_JOBS" >> >> [1] says in "LLVM-specific variables" section... >> >> *** LLVM_PARALLEL_COMPILE_JOBS:STRING >> >> Define the maximum number of concurrent compilation jobs. >> >> *** LLVM_PARALLEL_LINK_JOBS:STRING >> >> Define the maximum number of concurrent link jobs. >> >> ...whereas my configure-log says... >> >> $ grep -i job -A1 logs/configure-log_llvm-toolchain-3.8.0rc3.txt >> Job pooling is only available with Ninja generators and CMake 3.0 and >> later. >> -- >> Job pooling is only available with Ninja generators and CMake 3.0 and >> later. >> >> My cmake-version is... >> >> $ cmake --version >> cmake version 2.8.12.2 >> >> So, I need Ninja *and* CMake >= v3.0 (or is the right CMake version >> sufficient) to use LLVM_PARALLEL_XXX_JOBS? > > Yes. When you run ninja without any argument you have parallelism by default. This options can control the default number of jobs for ninja. > Also, especially when doing LTO, you may want to limit the number of link jobs independently from the number of compile job, which is again a facility that ninja has. > >> If this is a fact, can you please adjust the information in [1]? >> >> Do I have other options to speedup my build? > > Yes: start to use ninja ;) > If for any reason (?) you are really stuck with "make", then run "make -j ~ncpus" (with ~ncpus "approximately the number of cores in your machine). It will build in parallel. >So, I like NinjaS but I have not used it yet as software.>From my build-script...[ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR} cd $BUILD_DIR # BUILD-VARIANT #1: CONFIGURE AND MAKE (will be DEPRECATED with LLVM v3.9) ##../llvm/configure $CONFIGURE_OPTS 2>&1 | tee $LOGS_DIR/$CONFIGURE_LOG_FILE ##$MAKE $MAKE_OPTS 2>&1 | tee $LOGS_DIR/$BUILD_LOG_FILE ##sudo $MAKE install 2>&1 | tee $LOGS_DIR/$INSTALL_LOG_FILE # BUILD-VARIANT #2: CMAKE $CMAKE ../llvm $CMAKE_OPTS 2>&1 | tee $LOGS_DIR/$CONFIGURE_LOG_FILE $CMAKE --build . 2>&1 | tee $LOGS_DIR/$BUILD_LOG_FILE ##sudo $CMAKE --build . --target install 2>&1 | tee $LOGS_DIR/$INSTALL_LOG_FILE You mean configuring with cmake and build (and install) with make? $CMAKE ../llvm $CMAKE_OPTS 2>&1 | tee $LOGS_DIR/$CONFIGURE_LOG_FILE $MAKE $MAKE_OPTS 2>&1 | tee $LOGS_DIR/$BUILD_LOG_FILE sudo $MAKE install 2>&1 | tee $LOGS_DIR/$INSTALL_LOG_FILE Which combination of cmake/ninja versions are you using (latest are v3.4.3 and v1.6.0)? - Sedat -> -- > Mehdi > > > >> ( For testing RCs I tend to use slow build - one single (c)make job. ) >> >> My build-script and configure-log are attached. >> >> Thanks. >> >> Regards, >> - Sedat - >> >> >> [1] http://llvm.org/docs/CMake.html >> <configure-log_llvm-toolchain-3.8.0rc3.txt><build_llvm-toolchain.sh>_______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >