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/Bui…
==============================================================================
--- 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/Cle…
==============================================================================
--- 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/cha…
==============================================================================
--- 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%" == "" (