[cfe-dev] [LLVMdev] Ninja build available for Visual Studio users
=?utf-8?Q?=C3=93scar_Fuentes?=
ofv at wanadoo.es
Wed Jun 13 14:09:21 PDT 2012
Nikola Smiljanic <popizdeh at gmail.com> writes:
> Could somebody please provide more info. What exactly is ninja (I'm
> guessing it's a build system) and how to set it up in combination with
> Visual Studio?
This is the message I posted on the LLVM mailing list. Here it goes
again for the benefit of CLang'ers:
Building LLVM with Visual Studio is a bit of a pain because the
available methods are slow and doesn't make good use of multiprocessor
systems.
>From now on it is possible to build LLVM+Clang with the usual cmake
method but using Ninja, an ultra-fast tool that knows how to take
advantage of the availabe execution threads. Ultra-fast is no
exageration: with a warm cache, a no-op build of LLVM is done in less
than half a second.
Rigth now Ninja/VS support is activated on a cmake experimental build,
with strong possibilities of making its way into the next official
release. For now, you need to build the patched cmake+ninja yourselves
or download the executables from
http://sourceforge.net/projects/cmakescript/files/
Download and install cmake-Ninja-2.8.8.*-win32-x86.exe, then download
ninja.exe to the `bin' subdirectory of the place where you installed
cmake. Then proceed to build LLVM:
mkdir myLLVMbuildWithNinja
cd myLLVMbuildWithNinja
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release path/to/llvm/source/root
ninja
(be sure to use the cmake you just installed, not the one you already
had on the system)
If you prefer to build cmake+ninja yourselves, read the thread
http://news.gmane.org/find-root.php?group=gmane.comp.programming.tools.cmake.devel&article=3903
(long, sorry) or ask on the cmake developer's mailing list for pointers,
as right now the exact sources are a bit of a moving target. If you find
bugs building LLVM or any other cmake-based project with ninja, please
report them on cmake's developers mailing list, available through gmane:
http://dir.gmane.org/gmane.comp.programming.tools.cmake.devel
or via e-mail:
http://www.cmake.org/mailman/listinfo/cmake-developers
About ninja:
http://martine.github.com/ninja/
More information about the cfe-dev
mailing list