[ros-diffs] [dreimer] 35864: Start support of multiple arches in rosbe.

dreimer at svn.reactos.org dreimer at svn.reactos.org
Wed Sep 3 14:38:27 CEST 2008


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/Build.cmd?rev=35864&r1=35863&r2=35864&view=diff
==============================================================================
--- 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/Clean.cmd?rev=35864&r1=35863&r2=35864&view=diff
==============================================================================
--- 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/charch.cmd?rev=35864&r1=35863&r2=35864&view=diff
==============================================================================
--- 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%" == "" (



More information about the Ros-diffs mailing list