[ros-diffs] [dreimer] 48353: Add CMake Support to RosBE. It detects if you are inside the CMake Branch and behaves accordingly. Just use make/makex as you did before. PS Version will come later today.

dreimer at svn.reactos.org dreimer at svn.reactos.org
Thu Jul 29 13:37:04 UTC 2010


Author: dreimer
Date: Thu Jul 29 13:37:03 2010
New Revision: 48353

URL: http://svn.reactos.org/svn/reactos?rev=48353&view=rev
Log:
Add CMake Support to RosBE. It detects if you are inside the CMake Branch and behaves accordingly. Just use make/makex as you did before.
PS Version will come later today.

Added:
    trunk/tools/RosBE/RosBE-Windows/Root/CMake-Shared.cmd   (with props)
Modified:
    trunk/tools/RosBE/RosBE-Windows/Root/Build-Shared.cmd
    trunk/tools/RosBE/RosBE-Windows/Root/Make.cmd
    trunk/tools/RosBE/RosBE-Windows/Root/Makex.cmd
    trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd

Modified: trunk/tools/RosBE/RosBE-Windows/Root/Build-Shared.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Build-Shared.cmd?rev=48353&r1=48352&r2=48353&view=diff
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/Build-Shared.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/Build-Shared.cmd [iso-8859-1] Thu Jul 29 13:37:03 2010
@@ -2,7 +2,7 @@
 :: PROJECT:     RosBE - ReactOS Build Environment for Windows
 :: LICENSE:     GNU General Public License v2. (see LICENSE.txt)
 :: FILE:        Root/Build-Shared.cmd
-:: PURPOSE:     Perform the build of ReactOS.
+:: PURPOSE:     Perform the build of ReactOS - Shared commands.
 :: COPYRIGHT:   Copyright 2010 Daniel Reimer <reimer.daniel at freenet.de>
 ::                             Colin Finck <colin at reactos.org>
 ::                             Peter Ward <dralnix at gmail.com>

Added: trunk/tools/RosBE/RosBE-Windows/Root/CMake-Shared.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/CMake-Shared.cmd?rev=48353&view=auto
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/CMake-Shared.cmd (added)
+++ trunk/tools/RosBE/RosBE-Windows/Root/CMake-Shared.cmd [iso-8859-1] Thu Jul 29 13:37:03 2010
@@ -1,0 +1,75 @@
+::
+:: PROJECT:     RosBE - ReactOS Build Environment for Windows
+:: LICENSE:     GNU General Public License v2. (see LICENSE.txt)
+:: FILE:        Root/CMake-Shared.cmd
+:: PURPOSE:     Perform the CMake build of ReactOS - Shared commands.
+:: COPYRIGHT:   Copyright 2010 Daniel Reimer <reimer.daniel at freenet.de>
+::
+
+ at echo off
+if not defined _ROSBE_DEBUG set _ROSBE_DEBUG=0
+if %_ROSBE_DEBUG% == 1 (
+    @echo on
+)
+
+if %_ROSBE_WRITELOG% == 1 (
+    if not exist "%_ROSBE_LOGDIR%\." (
+        mkdir "%_ROSBE_LOGDIR%" 1> NUL 2> NUL
+    )
+)
+
+if not exist "output-%ROS_ARCH%\." (
+    mkdir "output-%ROS_ARCH%" 1> NUL 2> NUL
+)
+
+cd "output-%ROS_ARCH%"
+
+:: Get the current date and time for use in in our build log's file name.
+call "%_ROSBE_BASEDIR%\TimeDate.cmd"
+
+title '%TITLE_COMMAND%' cmake build started: %TIMERAW%   (%ROS_ARCH%)
+
+:: Do the actual building
+if %_ROSBE_SHOWTIME% == 1 (
+    set BUILDTIME_COMMAND=buildtime.exe
+) else (
+    set BUILDTIME_COMMAND=
+)
+
+if not exist "build\." (
+    mkdir "build" 1> NUL 2> NUL
+)
+cd build
+cmake.exe -G "MinGW Makefiles" ..\..\
+if %_ROSBE_WRITELOG% == 1 (
+    %BUILDTIME_COMMAND% make.exe -j %MAKE_JOBS% %* 2>&1 | tee.exe "%_ROSBE_LOGDIR%\BuildToolLog-%ROS_ARCH%-%datename%-%timename%.txt"
+) else (
+    %BUILDTIME_COMMAND% make.exe -j %MAKE_JOBS% %*
+)
+cd..
+
+if not exist "build-ros\." (
+    mkdir "build-ros" 1> NUL 2> NUL
+)
+cd build-ros
+cmake.exe -G "MinGW Makefiles" -DCMAKE_TOOLCHAIN_FILE=toolchain-mingw32.cmake ..\..\
+if %_ROSBE_WRITELOG% == 1 (
+    %BUILDTIME_COMMAND% make.exe -j %MAKE_JOBS% %* 2>&1 | tee.exe "%_ROSBE_LOGDIR%\BuildROSLog-%ROS_ARCH%-%datename%-%timename%.txt"
+) else (
+    %BUILDTIME_COMMAND% make.exe -j %MAKE_JOBS% %*
+)
+cd..
+
+cd..
+:EOC
+:: Highlight the fact that building has ended.
+
+if !errorlevel! GEQ 1 (
+    playwav.exe error.wav
+) else (
+    playwav.exe notification.wav
+)
+
+flash.exe
+
+title ReactOS Build Environment %_ROSBE_VERSION%

Propchange: trunk/tools/RosBE/RosBE-Windows/Root/CMake-Shared.cmd
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: trunk/tools/RosBE/RosBE-Windows/Root/Make.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Make.cmd?rev=48353&r1=48352&r2=48353&view=diff
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/Make.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/Make.cmd [iso-8859-1] Thu Jul 29 13:37:03 2010
@@ -3,7 +3,7 @@
 :: LICENSE:     GNU General Public License v2. (see LICENSE.txt)
 :: FILE:        Root/Make.cmd
 :: PURPOSE:     Perform a uniprocessor build
-:: COPYRIGHT:   Copyright 2009 Daniel Reimer <reimer.daniel at freenet.de>
+:: COPYRIGHT:   Copyright 2010 Daniel Reimer <reimer.daniel at freenet.de>
 ::                             Colin Finck <colin at reactos.org>
 ::                             Peter Ward <dralnix at gmail.com>
 ::
@@ -20,5 +20,9 @@
 set MAKE_JOBS=1
 set TITLE_COMMAND=make %*
 
-call "%_ROSBE_BASEDIR%\Build-Shared.cmd" %*
+if exist "CMakeLists.txt" (
+    call "%_ROSBE_BASEDIR%\CMake-Shared.cmd" %*
+) else (
+    call "%_ROSBE_BASEDIR%\Build-Shared.cmd" %*
+)
 endlocal

Modified: trunk/tools/RosBE/RosBE-Windows/Root/Makex.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Makex.cmd?rev=48353&r1=48352&r2=48353&view=diff
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/Makex.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/Makex.cmd [iso-8859-1] Thu Jul 29 13:37:03 2010
@@ -3,7 +3,7 @@
 :: LICENSE:     GNU General Public License v2. (see LICENSE.txt)
 :: FILE:        Root/Makex.cmd
 :: PURPOSE:     Perform a multiprocessor build
-:: COPYRIGHT:   Copyright 2009 Daniel Reimer <reimer.daniel at freenet.de>
+:: COPYRIGHT:   Copyright 2010 Daniel Reimer <reimer.daniel at freenet.de>
 ::                             Colin Finck <colin at reactos.org>
 ::                             Peter Ward <dralnix at gmail.com>
 ::
@@ -20,5 +20,9 @@
 set MAKE_JOBS=%_ROSBE_MAKEX_JOBS%
 set TITLE_COMMAND=makex %*
 
-call "%_ROSBE_BASEDIR%\Build-Shared.cmd" %*
+if exist "CMakeLists.txt" (
+    call "%_ROSBE_BASEDIR%\CMake-Shared.cmd" %*
+) else (
+    call "%_ROSBE_BASEDIR%\Build-Shared.cmd" %*
+)
 endlocal

Modified: trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd?rev=48353&r1=48352&r2=48353&view=diff
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd [iso-8859-1] Thu Jul 29 13:37:03 2010
@@ -41,12 +41,12 @@
 set _ROSBE_TARGET_MINGWPATH=%_ROSBE_BASEDIR%\%ROS_ARCH%
 set _BUILDBOT_SVNSKIPMAINTRUNK=0
 
-set _ROSBE_ORIGINALPATH=%_ROSBE_BASEDIR%;%_ROSBE_BASEDIR%\Tools;%_ROSBE_BASEDIR%\samples;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem"
+set _ROSBE_ORIGINALPATH=%_ROSBE_BASEDIR%;%_ROSBE_BASEDIR%\Tools;%_ROSBE_BASEDIR%\samples;%PATH%
 
 ::
-:: Enable this one, if you want to use the System Path Var inside RosBE.
+:: Enable this one, if you don't want to use the System Path Var inside RosBE.
 ::
-REM set _ROSBE_ORIGINALPATH=%_ROSBE_BASEDIR%;%_ROSBE_BASEDIR%\Tools;%_ROSBE_BASEDIR%\samples;%PATH%
+REM set _ROSBE_ORIGINALPATH=%_ROSBE_BASEDIR%;%_ROSBE_BASEDIR%\Tools;%_ROSBE_BASEDIR%\samples;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem"
 
 :: Fix Bison package path (just in case RosBE is installed in a path which contains spaces)
 set BISON_PKGDATADIR=%~ds0%~sp0%i386\share\bison




More information about the Ros-diffs mailing list