Author: dreimer Date: Mon Sep 1 22:52:26 2008 New Revision: 35864
URL: http://svn.reactos.org/svn/reactos?rev=35864&view=rev Log: Start support of multiple arches in rosbe.
Modified: trunk/tools/RosBE/RosBE-Windows/Root/Build.cmd trunk/tools/RosBE/RosBE-Windows/Root/Clean.cmd trunk/tools/RosBE/RosBE-Windows/Root/charch.cmd
Modified: trunk/tools/RosBE/RosBE-Windows/Root/Build.cmd URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Buil... ============================================================================== --- trunk/tools/RosBE/RosBE-Windows/Root/Build.cmd [iso-8859-1] (original) +++ trunk/tools/RosBE/RosBE-Windows/Root/Build.cmd [iso-8859-1] Mon Sep 1 22:52:26 2008 @@ -55,13 +55,41 @@ set CCACHE_DIR=%APPDATA%\RosBE.ccache set HOST_CC=ccache gcc set HOST_CPP=ccache g++ - set TARGET_CC=ccache gcc - set TARGET_CPP=ccache g++ + if %ROS_ARCH% == arm ( + set TARGET_CC=ccache arm-pc-mingw32-gcc + set TARGET_CPP=ccache arm-pc-mingw32-g++ + ) + if %ROS_ARCH% == x86 ( + set TARGET_CC=ccache gcc + set TARGET_CPP=ccache g++ + ) + if %ROS_ARCH% == x64 ( + set TARGET_CC=ccache x86_64-pc-mingw32-gcc + set TARGET_CPP=ccache x86_64-pc-mingw32-g++ + ) + if %ROS_ARCH% == ppc ( + set TARGET_CC=ccache ppc-pc-mingw32-gcc + set TARGET_CPP=ccache ppc-pc-mingw32-g++ + ) ) else ( set HOST_CC=gcc set HOST_CPP=g++ - set TARGET_CC=gcc - set TARGET_CPP=g++ + if %ROS_ARCH% == arm ( + set TARGET_CC=arm-pc-mingw32-gcc + set TARGET_CPP=arm-pc-mingw32-g++ + ) + if %ROS_ARCH% == x86 ( + set TARGET_CC=gcc + set TARGET_CPP=g++ + ) + if %ROS_ARCH% == x64 ( + set TARGET_CC=x86_64-pc-mingw32-gcc + set TARGET_CPP=x86_64-pc-mingw32-g++ + ) + if %ROS_ARCH% == ppc ( + set TARGET_CC=ppc-pc-mingw32-gcc + set TARGET_CPP=ppc-pc-mingw32-g++ + ) ) )
Modified: trunk/tools/RosBE/RosBE-Windows/Root/Clean.cmd URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Clea... ============================================================================== --- trunk/tools/RosBE/RosBE-Windows/Root/Clean.cmd [iso-8859-1] (original) +++ trunk/tools/RosBE/RosBE-Windows/Root/Clean.cmd [iso-8859-1] Mon Sep 1 22:52:26 2008 @@ -47,30 +47,95 @@ goto :EOF
:DEL -:: -:: Check if we have something to clean, if so, clean it. -:: -if exist "obj-i386." ( - echo Cleaning ReactOS source directory... + +if %ROS_ARCH% == arm ( :: - : Remove directories/makefile.auto created by the build. + :: Check if we have something to clean, if so, clean it. + :: + if exist "obj-arm." ( + echo Cleaning ReactOS source directory... + :: + : Remove directories created by the build. + :: + if exist "obj-arm." ( + rd /s /q "obj-arm" 1> NUL 2> NUL + ) + if exist "output-arm." ( + rd /s /q "output-arm" 1> NUL 2> NUL + ) + echo Done cleaning ReactOS source directory. + ) else ( + echo ERROR: There is no compiler output to clean. + ) +) +if %ROS_ARCH% == x86 ( + :: + :: Check if we have something to clean, if so, clean it. :: if exist "obj-i386." ( - rd /s /q "obj-i386" 1> NUL 2> NUL + echo Cleaning ReactOS source directory... + :: + : Remove directories created by the build. + :: + if exist "obj-i386." ( + rd /s /q "obj-i386" 1> NUL 2> NUL + ) + if exist "output-i386." ( + rd /s /q "output-i386" 1> NUL 2> NUL + ) + echo Done cleaning ReactOS source directory. + ) else ( + echo ERROR: There is no compiler output to clean. ) - if exist "output-i386." ( - rd /s /q "output-i386" 1> NUL 2> NUL +) +if %ROS_ARCH% == ppc ( + :: + :: Check if we have something to clean, if so, clean it. + :: + if exist "obj-ppc." ( + echo Cleaning ReactOS source directory... + :: + : Remove directories created by the build. + :: + if exist "obj-ppc." ( + rd /s /q "obj-ppc" 1> NUL 2> NUL + ) + if exist "output-ppc." ( + rd /s /q "output-ppc" 1> NUL 2> NUL + ) + echo Done cleaning ReactOS source directory. + ) else ( + echo ERROR: There is no compiler output to clean. ) - if exist "reactos." ( - rd /s /q "reactos" 1> NUL 2> NUL +) +if %ROS_ARCH% == x64 ( + :: + :: Check if we have something to clean, if so, clean it. + :: + if exist "obj-x86_64." ( + echo Cleaning ReactOS source directory... + :: + : Remove directories created by the build. + :: + if exist "obj-x86_64." ( + rd /s /q "obj-x86_64" 1> NUL 2> NUL + ) + if exist "output-x86_64." ( + rd /s /q "output-x86_64" 1> NUL 2> NUL + ) + echo Done cleaning ReactOS source directory. + ) else ( + echo ERROR: There is no compiler output to clean. ) - if exist "makefile.auto" ( - del "makefile.auto" 1> NUL 2> NUL - ) - echo Done cleaning ReactOS source directory. -) else ( - echo ERROR: There is no compiler output to clean. ) + +if exist "reactos." ( + rd /s /q "reactos" 1> NUL 2> NUL +) +if exist "makefile.auto" ( + del "makefile.auto" 1> NUL 2> NUL +) + goto :EOF
:EOC
Modified: trunk/tools/RosBE/RosBE-Windows/Root/charch.cmd URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/char... ============================================================================== --- trunk/tools/RosBE/RosBE-Windows/Root/charch.cmd [iso-8859-1] (original) +++ trunk/tools/RosBE/RosBE-Windows/Root/charch.cmd [iso-8859-1] Mon Sep 1 22:52:26 2008 @@ -15,8 +15,8 @@
:: :: Parse the command line arguments. -:: ROS_ARCH: Set to x86, ppc or arm. -:: ROS_PREFIX: Default is mingw32. ppc could be mingw32-ppc, arm mingw32-arm. +:: ROS_ARCH: Set to x86, x64, ppc or arm. +:: ROS_PREFIX: Default is mingw32. ppc could be mingw32-ppc, arm mingw32-arm, x64 mingw32-x86_64. ::
if "%1" == "" ( @@ -37,6 +37,11 @@ if /i "%_1%" == "ppc" ( set ROS_ARCH==ppc set ROS_PREFIX=mingw32-ppc + goto :EOC +) +if /i "%_1%" == "x64" ( + set ROS_ARCH==x64 + set ROS_PREFIX=mingw32-x86_64 goto :EOC ) if not "%_1%" == "" (