Author: dreimer
Date: Tue May 25 00:22:13 2010
New Revision: 47344
URL:
http://svn.reactos.org/svn/reactos?rev=47344&view=rev
Log:
Bug 5426 (Patch by Adam Kachwalla, PS Port by Daniel Reimer)
This patch adds selection of the branch for sSVN using the ROS_BRANCH variable.
For example, setting ROS_BRANCH to "arwinss" (without quotes) will allow sSVN to
operate on the ARWINSS branch.
If ROS_ARCH is set to "amd64" this will override ROS_BRANCH
NOTE: ROS_BRANCH is "recyclable" - by that I mean you can use it for multiple
sSVN executions without it being changed, since this new sSVN modifies its own internal
_ROS_BRANCH variable.
A nice side-effect of this patch is that it also refactors redundant 'if
"%ROS_ARCH%" == "amd64" () else ()' style blocks, making the code
a little smaller and neater.
-----------
Additionally fixed some slipped in brace errors resulting in funny behavior on specific
circumstances + some more cleanup.
Modified:
trunk/tools/RosBE/RosBE-Windows/Powershell/sSVN.ps1
trunk/tools/RosBE/RosBE-Windows/Root/LICENSE.txt
trunk/tools/RosBE/RosBE-Windows/Root/README.odt
trunk/tools/RosBE/RosBE-Windows/Root/sSVN.cmd
Modified: trunk/tools/RosBE/RosBE-Windows/Powershell/sSVN.ps1
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Powershe…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Powershell/sSVN.ps1 [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Powershell/sSVN.ps1 [iso-8859-1] Tue May 25 00:22:13
2010
@@ -6,23 +6,31 @@
# COPYRIGHT: Copyright 2010 Daniel Reimer <reimer.daniel(a)freenet.de>
#
+# Set branch to trunk if one is not already set
+if ("$ENV:ROS_BRANCH" -eq "") {
+ $_ROS_BRANCH = "trunk"
+} else {
+ $_ROS_BRANCH = "branches/$ENV:ROS_BRANCH"
+}
+
+# AMD64 architecture overrides branch that was previously set
+if ("$ENV:ROS_ARCH" -eq "amd64") {
+ $_ROS_BRANCH = "branches/ros-amd64-bringup"
+}
+
$_ROSBE_SSVNSOURCEDIR = "$pwd"
function UP($arg) {
- $OFFSVN = IEX "& svn.exe info" | select-string "Revision:"
- $OFFSVN = $OFFSVN -replace "(.*)Revision: ",''
+ $OFFSVN = IEX "& svn.exe info" | select-string "Last Changed
Rev:"
+ $OFFSVN = $OFFSVN -replace "(.*)Last Changed Rev: ",''
$OFFSVN = [CONVERT]::ToInt32($OFFSVN,10)
- if ("$ENV:ROS_ARCH" -eq "amd64") {
- $ONSVN = IEX "& svn.exe info
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/reactos" | select-string
"Revision:"
- } else {
- $ONSVN = IEX "& svn.exe info
http://svn.reactos.org/reactos/trunk/reactos" | select-string "Revision:"
- }
- $ONSVN = $ONSVN -replace "(.*)Revision: ",''
+ $ONSVN = IEX "& svn.exe info
http://svn.reactos.org/reactos/$_ROS_BRANCH/reactos" | select-string "Last
Changed Rev:"
+ $ONSVN = $ONSVN -replace "(.*)Last Changed Rev: ",''
$ONSVN = [CONVERT]::ToInt32($ONSVN,10)
"Local Revision: $OFFSVN"
"Online HEAD Revision: $ONSVN"
""
- if (($OFFSVN -lt $ONSVN) -or ("$($arg[1])" -ne "")) {
+ if ($OFFSVN -lt $ONSVN) {
if ("$_ROSBE_SSVN_JOB" -eq "status") {
"Your tree is not up to date. Do you want to update it?"
$UP = Read-Host "Please enter 'yes' or 'no': "
@@ -30,65 +38,65 @@
$_ROSBE_SSVN_JOB = "update"
}
}
- if ($OFFSVN -eq $ONSVN) {
- "Your tree is up to date."
- }
-
- if ("$_ROSBE_SSVN_JOB" -eq "update") {
- if ("$($arg[1])" -ne "") {
- $temparg = $arg[1]
-
- if ($temparg -eq $OFFSVN) {
- "Your Local Repository is currently $temparg"
- }
- if ($temparg -lt $OFFSVN) {
- "Downgrading to $temparg ..."
- }
- if ($temparg -gt $OFFSVN) {
- "Updating to $temparg ..."
- }
- if ("$_BUILDBOT_SVNSKIPMAINTRUNK" -ne "1") {
- IEX "& svn.exe update -r $temparg"
- } else {
- "Skipping ReactOS Trunk update."
- }
- if (Test-Path "modules\rosapps\.") {
- Set-Location "modules\rosapps"
- "Updating RosApps..."
- IEX "& svn.exe update -r $temparg"
- Set-Location "$_ROSBE_SSVNSOURCEDIR"
- }
- if (Test-Path "modules\rostests\.") {
- Set-Location "modules\rostests"
- "Updating RosTests..."
- IEX "& svn.exe update -r $temparg"
- Set-Location "$_ROSBE_SSVNSOURCEDIR"
- }
- } else {
- if ("$_BUILDBOT_SVNSKIPMAINTRUNK" -ne "1") {
- IEX "& svn.exe update"
- } else {
- "Skipping ReactOS Trunk update."
- }
- if (Test-Path "modules\rosapps\.") {
- Set-Location "modules\rosapps"
- "Updating RosApps..."
- IEX "& svn.exe update"
- Set-Location "$_ROSBE_SSVNSOURCEDIR"
- }
- if (Test-Path "modules\rostests\.") {
- Set-Location "modules\rostests"
- "Updating RosTests..."
- IEX "& svn.exe update"
- Set-Location "$_ROSBE_SSVNSOURCEDIR"
- }
- }
- "Do you want to see the changelog?"
- $CL = Read-Host "Please enter 'yes' or 'no': "
- if (("$CL" -eq "yes") -or ("$CL" -eq
"y")) {
- $range = "$OFFSVN" + ":" + "$ONSVN"
- IEX "& svn.exe log -r $range"
- }
+ }
+ if ($OFFSVN -eq $ONSVN) {
+ "Your tree is up to date."
+ exit
+ }
+ if ("$_ROSBE_SSVN_JOB" -eq "update") {
+ if ("$($arg[1])" -ne "") {
+ $temparg = $arg[1]
+
+ if ($temparg -eq $OFFSVN) {
+ "Your Local Repository is currently $temparg"
+ }
+ if ($temparg -lt $OFFSVN) {
+ "Downgrading to $temparg ..."
+ }
+ if ($temparg -gt $OFFSVN) {
+ "Updating to $temparg ..."
+ }
+ if ("$_BUILDBOT_SVNSKIPMAINTRUNK" -ne "1") {
+ IEX "& svn.exe update -r $temparg"
+ } else {
+ "Skipping ReactOS Trunk update."
+ }
+ if (Test-Path "modules\rosapps\.") {
+ Set-Location "modules\rosapps"
+ "Updating RosApps..."
+ IEX "& svn.exe update -r $temparg"
+ Set-Location "$_ROSBE_SSVNSOURCEDIR"
+ }
+ if (Test-Path "modules\rostests\.") {
+ Set-Location "modules\rostests"
+ "Updating RosTests..."
+ IEX "& svn.exe update -r $temparg"
+ Set-Location "$_ROSBE_SSVNSOURCEDIR"
+ }
+ } else {
+ if ("$_BUILDBOT_SVNSKIPMAINTRUNK" -ne "1") {
+ IEX "& svn.exe update"
+ } else {
+ "Skipping ReactOS Trunk update."
+ }
+ if (Test-Path "modules\rosapps\.") {
+ Set-Location "modules\rosapps"
+ "Updating RosApps..."
+ IEX "& svn.exe update"
+ Set-Location "$_ROSBE_SSVNSOURCEDIR"
+ }
+ if (Test-Path "modules\rostests\.") {
+ Set-Location "modules\rostests"
+ "Updating RosTests..."
+ IEX "& svn.exe update"
+ Set-Location "$_ROSBE_SSVNSOURCEDIR"
+ }
+ }
+ "Do you want to see the changelog?"
+ $CL = Read-Host "Please enter 'yes' or 'no': "
+ if (("$CL" -eq "yes") -or ("$CL" -eq
"y")) {
+ $range = "$OFFSVN" + ":" + "$ONSVN"
+ IEX "& svn.exe log -r $range"
}
}
}
@@ -123,17 +131,9 @@
$dir = get-childitem
if ("$dir" -eq "") {
if ("$($args[1])" -ne "") {
- if ("$ENV:ROS_ARCH" -eq "amd64") {
- IEX "& svn.exe -r $($args[1]) checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/reactos ."
- } else {
- IEX "& svn.exe -r $($args[1]) checkout
http://svn.reactos.org/reactos/trunk/reactos ."
- }
- } else {
- if ("$ENV:ROS_ARCH" -eq "amd64") {
- IEX "& svn.exe checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/reactos ."
- } else {
- IEX "& svn.exe checkout
http://svn.reactos.org/reactos/trunk/reactos ."
- }
+ IEX "& svn.exe -r $($args[1]) checkout
http://svn.reactos.org/reactos/$_ROS_BRANCH/reactos ."
+ } else {
+ IEX "& svn.exe checkout
http://svn.reactos.org/reactos/$_ROS_BRANCH/reactos ."
}
} else {
"ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
@@ -156,13 +156,9 @@
Set-Location "modules\rosapps"
$dir = get-childitem
if ("$dir" -eq "") {
- if("$ENV:ROS_ARCH" -eq "amd64") {
- IEX "& svn.exe checkout -r $($args[1])
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rosapps ."
- } else {
- IEX "& svn.exe checkout -r $($args[1])
http://svn.reactos.org/reactos/trunk/rosapps ."
- }
- } else {
- "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
+ IEX "& svn.exe checkout -r $($args[1])
http://svn.reactos.org/reactos/$_ROS_BRANCH/rosapps ."
+ } else {
+ "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
}
}
} else {
@@ -178,13 +174,9 @@
Set-Location "modules\rosapps"
$dir = get-childitem
if ("$dir" -eq "") {
- if ("$ENV:ROS_ARCH" -eq "amd64") {
- IEX "& svn.exe checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rosapps ."
- } else {
- IEX "& svn.exe checkout
http://svn.reactos.org/reactos/trunk/rosapps ."
- }
- } else {
- "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
+ IEX "& svn.exe checkout
http://svn.reactos.org/reactos/$_ROS_BRANCH/rosapps ."
+ } else {
+ "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
}
}
}
@@ -206,13 +198,9 @@
Set-Location "modules\rostests"
$dir = get-childitem
if ("$dir" -eq "") {
- if("$ENV:ROS_ARCH" -eq "amd64") {
- IEX "& svn.exe checkout -r $($args[1])
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rostests ."
- } else {
- IEX "& svn.exe checkout -r $($args[1])
http://svn.reactos.org/reactos/trunk/rostests ."
- }
- } else {
- "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
+ IEX "& svn.exe checkout -r $($args[1])
http://svn.reactos.org/reactos/$_ROS_BRANCH/rostests ."
+ } else {
+ "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
}
}
} else {
@@ -228,13 +216,9 @@
Set-Location "modules\rostests"
$dir = get-childitem
if ("$dir" -eq "") {
- if ("$ENV:ROS_ARCH" -eq "amd64") {
- IEX "& svn.exe checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rostests ."
- } else {
- IEX "& svn.exe checkout
http://svn.reactos.org/reactos/trunk/rostests ."
- }
- } else {
- "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
+ IEX "& svn.exe checkout
http://svn.reactos.org/reactos/$_ROS_BRANCH/rostests ."
+ } else {
+ "ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED"
}
}
}
Modified: trunk/tools/RosBE/RosBE-Windows/Root/LICENSE.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/LIC…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/LICENSE.txt [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/LICENSE.txt [iso-8859-1] Tue May 25 00:22:13
2010
@@ -1,4 +1,4 @@
-ReactOS Build Environment v1.5.1
+ReactOS Build Environment v1.5.1.1
Various parts of the ReactOS Build Environment are under different license's, the
license's are as follows.
(The complete text for each license is included in this document excluding Subversion)
Modified: trunk/tools/RosBE/RosBE-Windows/Root/README.odt
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/REA…
==============================================================================
Binary files - no diff available.
Modified: trunk/tools/RosBE/RosBE-Windows/Root/sSVN.cmd
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/sSV…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/sSVN.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/sSVN.cmd [iso-8859-1] Tue May 25 00:22:13 2010
@@ -14,6 +14,17 @@
setlocal enabledelayedexpansion
+:: Set branch to trunk if one is not already set
+if not defined ROS_BRANCH (
+ set _ROS_BRANCH=trunk
+) else (
+ set _ROS_BRANCH=branches/%ROS_BRANCH%
+)
+:: AMD64 architecture overrides branch that was previously set
+if "%ROS_ARCH%" == "amd64" (
+ set _ROS_BRANCH=branches/ros-amd64-bringup
+)
+
set _ROSBE_SSVNSOURCEDIR=%CD%
:: Receive the first parameter and decide what to do.
@@ -50,17 +61,9 @@
dir /b 2>nul | findstr "." >nul
if errorlevel 1 (
if not "%2" == "" (
- if "%ROS_ARCH%" == "amd64" (
- svn.exe checkout -r %2
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/reactos .
- ) else (
- svn.exe checkout -r %2
http://svn.reactos.org/reactos/trunk/reactos .
- )
- ) else (
- if "%ROS_ARCH%" == "amd64" (
- svn.exe checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/reactos .
- ) else (
- svn.exe checkout
http://svn.reactos.org/reactos/trunk/reactos .
- )
+ svn.exe checkout -r %2
http://svn.reactos.org/reactos/%_ROS_BRANCH%/reactos
.
+ ) else (
+ svn.exe checkout
http://svn.reactos.org/reactos/%_ROS_BRANCH%/reactos .
)
) else (
echo ERROR: Folder is not empty. Continuing is dangerous and can cause errors.
ABORTED
@@ -83,11 +86,7 @@
cd "modules\rosapps"
dir /b 2>nul | findstr "." >nul
if errorlevel 1 (
- if "%ROS_ARCH%" == "amd64" (
- svn.exe checkout -r %2
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rosapps .
- ) else (
- svn.exe checkout -r %2
http://svn.reactos.org/reactos/trunk/rosapps
.
- )
+ svn.exe checkout -r %2
http://svn.reactos.org/reactos/%_ROS_BRANCH%/rosapps .
) else (
echo ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED
)
@@ -105,11 +104,7 @@
cd "modules\rosapps"
dir /b 2>nul | findstr "." >nul
if errorlevel 1 (
- if "%ROS_ARCH%" == "amd64" (
- svn.exe checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rosapps .
- ) else (
- svn.exe checkout
http://svn.reactos.org/reactos/trunk/rosapps .
- )
+ svn.exe checkout
http://svn.reactos.org/reactos/%_ROS_BRANCH%/rosapps .
) else (
echo ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED
)
@@ -134,11 +129,7 @@
cd "modules\rostests"
dir /b 2>nul | findstr "." >nul
if errorlevel 1 (
- if "%ROS_ARCH%" == "amd64" (
- svn.exe checkout -r %2
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rostests .
- ) else (
- svn.exe checkout -r %2
http://svn.reactos.org/reactos/trunk/rostests
.
- )
+ svn.exe checkout -r %2
http://svn.reactos.org/reactos/%_ROS_BRANCH%/rostests .
) else (
echo ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED
)
@@ -156,11 +147,7 @@
cd "modules\rostests"
dir /b 2>nul | findstr "." >nul
if errorlevel 1 (
- if "%ROS_ARCH%" == "amd64" (
- svn.exe checkout
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/rostests .
- ) else (
- svn.exe checkout
http://svn.reactos.org/reactos/trunk/rostests .
- )
+ svn.exe checkout
http://svn.reactos.org/reactos/%_ROS_BRANCH/rostests .
) else (
echo ERROR: Folder is not empty. Continuing is dangerous and can cause
errors. ABORTED
)
@@ -186,12 +173,8 @@
goto EOC
:UP
- for /f "usebackq tokens=2" %%i in (`"svn.exe info | find
"Revision:""`) do set OFFSVN=%%i
- if "%ROS_ARCH%" == "amd64" (
- for /f "usebackq tokens=2" %%j in (`"svn.exe info
http://svn.reactos.org/reactos/branches/ros-amd64-bringup/reactos | find
"Revision:""`) do set ONSVN=%%j
- ) else (
- for /f "usebackq tokens=2" %%j in (`"svn.exe info
http://svn.reactos.org/reactos/trunk/reactos | find "Revision:""`) do set
ONSVN=%%j
- )
+ for /f "usebackq tokens=4" %%i in (`"svn.exe info | find "Last
Changed Rev:""`) do set OFFSVN=%%i
+ for /f "usebackq tokens=4" %%j in (`"svn.exe info
http://svn.reactos.org/reactos/%_ROS_BRANCH%/reactos | find "Last Changed
Rev:""`) do set ONSVN=%%j
echo Local Revision: !OFFSVN!
echo Online HEAD Revision: !ONSVN!
@@ -206,54 +189,54 @@
)
if !OFFSVN! equ !ONSVN! (
echo Your tree is up to date.
+ goto EOC
)
if "!_ROSBE_SSVN_JOB!" == "update" (
- if not "%2" == "" (
- if "%2" == "!OFFSVN!" (
- echo Your Local Repository is currently %2
- )
- if "%2" LSS "!OFFSVN!" (
- echo Downgrading to %2 ...
- )
- if "%2" GTR "!OFFSVN!" (
- echo Updating to %2 ...
- )
- if not "%_BUILDBOT_SVNSKIPMAINTRUNK%" == "1" (
- svn.exe update -r %2
- ) else (
- echo Skipping ReactOS Trunk update.
- )
- if exist "modules\rosapps\." (
- cd "modules\rosapps"
- echo Updating RosApps...
- svn.exe update -r %2
- cd "%_ROSBE_SSVNSOURCEDIR%"
- )
- if exist "modules\rostests\." (
- cd "modules\rostests"
- echo Updating RosTests...
- svn.exe update -r %2
- cd "%_ROSBE_SSVNSOURCEDIR%"
- )
- ) else (
- if not "%_BUILDBOT_SVNSKIPMAINTRUNK%" == "1" (
- svn.exe update
- ) else (
- echo Skipping ReactOS Trunk update.
- )
- if exist "modules\rosapps\." (
- cd "modules\rosapps"
- echo Updating RosApps...
- svn.exe update
- cd "%_ROSBE_SSVNSOURCEDIR%"
- )
- if exist "modules\rostests\." (
- cd "modules\rostests"
- echo Updating RosTests...
- svn.exe update
- cd "%_ROSBE_SSVNSOURCEDIR%"
- )
+ if not "%2" == "" (
+ if "%2" == "!OFFSVN!" (
+ echo Your Local Repository is currently %2
+ )
+ if "%2" LSS "!OFFSVN!" (
+ echo Downgrading to %2 ...
+ )
+ if "%2" GTR "!OFFSVN!" (
+ echo Updating to %2 ...
+ )
+ if not "%_BUILDBOT_SVNSKIPMAINTRUNK%" == "1" (
+ svn.exe update -r %2
+ ) else (
+ echo Skipping ReactOS Trunk update.
+ )
+ if exist "modules\rosapps\." (
+ cd "modules\rosapps"
+ echo Updating RosApps...
+ svn.exe update -r %2
+ cd "%_ROSBE_SSVNSOURCEDIR%"
+ )
+ if exist "modules\rostests\." (
+ cd "modules\rostests"
+ echo Updating RosTests...
+ svn.exe update -r %2
+ cd "%_ROSBE_SSVNSOURCEDIR%"
+ )
+ ) else (
+ if not "%_BUILDBOT_SVNSKIPMAINTRUNK%" == "1" (
+ svn.exe update
+ ) else (
+ echo Skipping ReactOS Trunk update.
+ )
+ if exist "modules\rosapps\." (
+ cd "modules\rosapps"
+ echo Updating RosApps...
+ svn.exe update
+ cd "%_ROSBE_SSVNSOURCEDIR%"
+ )
+ if exist "modules\rostests\." (
+ cd "modules\rostests"
+ echo Updating RosTests...
+ svn.exe update
+ cd "%_ROSBE_SSVNSOURCEDIR%"
)
)
echo Do you want to see the changelog?