Difference between revisions of "CMake"

From ReactOS Wiki
Jump to: navigation, search
m (moved Cmake to CMake)
m
Line 2: Line 2:
  
  
1.first of all we'll need CMake from [http://cmake.org CMake page], while installing please don't forget about adding it to PATH variable (you'll probably need to logout from your account to apply the changes)
+
1. First of all we will need CMake from the [http://www.cmake.org CMake] homepage. While installing please do not forget about adding it to the <tt>PATH</tt> variable. (You will probably need to logout from your account to apply the changes.)
  
  
2. checkout the branch: svn://svn.reactos.org/reactos/branches/cmake-bringup/ (read more about subversion here [http://www.reactos.org/wiki/Subversion here])
+
2. Checkout the branch: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/ (read more about subversion [[Subversion|here]])
  
  
3. create two more folders in cmake-bringup:  
+
3. Create two more folders in <tt>cmake-bringup</tt>:  
  
 
<pre>mkdir build  
 
<pre>mkdir build  
Line 14: Line 14:
  
  
4. launch rosbe command line, first we're going to build tools (you can change make to makex to use more than one processor/core):
+
4. Launch the RosBE command line. First we are going to build tools (you can change <code>make</code> to <code>makex</code> to use more than one processor/core):
  
 
<pre>cd build
 
<pre>cd build
Line 22: Line 22:
  
  
5. now we can build ros source using freshly compiled tools:
+
5. Now we can build ReactOS source using freshly compiled tools:
  
 
<pre>cd build-ros
 
<pre>cd build-ros
Line 30: Line 30:
  
  
you can also build any of the modules separately, like:
+
You can also build any of the modules separately, like:
  
 
<pre>make icu4ros</pre>
 
<pre>make icu4ros</pre>
  
  
or clean any of them, like:
+
Or clean any of them, like:
  
 
<pre>make icu4ros clean</pre>
 
<pre>make icu4ros clean</pre>
Line 45: Line 45:
  
  
to clean whole tree (like in rbuild):
+
To clean the whole tree (like in RBuild):
  
 
<pre>make clean</pre>
 
<pre>make clean</pre>
  
  
6. As build tools aren't changing very often, contents of 'build' folder can be compiled once and doesn't need recompilation with every commit.  
+
6. As build tools are not changing very often, contents of <tt>build</tt> folder can be compiled once and does not need recompilation with every commit.  
  
In case of any updated CMakeLists from other folders (like ros headers, libraries or apps), it's best to remove content of 'build-ros' folder, and repeat step 5
+
In case of any updated CMakeLists from other folders (like ReactOS headers, libraries or apps), it is best to remove content of <tt>build-ros</tt> folder, and repeat step 5

Revision as of 00:25, 29 July 2010

Here are few steps required for compiling the branch (using Windows XP):


1. First of all we will need CMake from the CMake homepage. While installing please do not forget about adding it to the PATH variable. (You will probably need to logout from your account to apply the changes.)


2. Checkout the branch: http://svn.reactos.org/svn/reactos/branches/cmake-bringup/ (read more about subversion here)


3. Create two more folders in cmake-bringup:

mkdir build 
mkdir build-ros


4. Launch the RosBE command line. First we are going to build tools (you can change make to makex to use more than one processor/core):

cd build
cmake -G "MinGW Makefiles" ..\
make
cd ..


5. Now we can build ReactOS source using freshly compiled tools:

cd build-ros
cmake -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain-mingw32.cmake ..\
make
(cd ..) <- optionally


You can also build any of the modules separately, like:

make icu4ros


Or clean any of them, like:

make icu4ros clean


List of modules and build targets is available using:

make help


To clean the whole tree (like in RBuild):

make clean


6. As build tools are not changing very often, contents of build folder can be compiled once and does not need recompilation with every commit.

In case of any updated CMakeLists from other folders (like ReactOS headers, libraries or apps), it is best to remove content of build-ros folder, and repeat step 5