- Fix up chdefdir.cmd a bit and more cleanup.

svn path=/trunk/tools/RosBE-Windows/; revision=424
This commit is contained in:
Peter Ward 2007-10-22 08:07:34 +00:00
parent 70d22f545d
commit 7bca70acc9
9 changed files with 179 additions and 168 deletions

View File

@ -103,7 +103,6 @@ if "%1" == "" (
) else (
echo ERROR: There is nothing to clean.
)
title ReactOS Build Environment %_ROSBE_VERSION%
goto :EOC
)
if "%1" == "logs" (

View File

@ -16,9 +16,9 @@ title ReactOS Build Configurator
if "%1" == "delete" (
echo config.rbuild will be permanently deleted. All your settings will be gone.
echo Continue?
set /P XY="(yes), (no)"
if /I "%XY%"=="yes" goto :CONT
if /I "%XY%"=="no" goto :NOK
set /p XY="(yes), (no)"
if /i "%XY%"=="yes" goto :CONT
if /i "%XY%"=="no" goto :NOK
goto :NOK
:CONT
@ -40,9 +40,9 @@ if "%1" == "update" (
echo old config.rbuild will be deleted and will be updated with a recent,
echo default one. You will need to reconfigure it to your wishes later.
echo Continue?
set /P XY="(yes), (no)"
if /I "%XY%"=="yes" goto :CONT2
if /I "%XY%"=="no" goto :NOK
set /p XY="(yes), (no)"
if /i "%XY%"=="yes" goto :CONT2
if /i "%XY%"=="no" goto :NOK
:CONT2
del "%_ROSBE_BASEDIR%\*.rbuild"
del "config.rbuild"
@ -71,10 +71,10 @@ echo Bugzilla or asking quesions about in Forum/Chat!
echo.
echo DID YOU UNDERSTAND?
set /P XY="(yes), (no)"
set /p XY="(yes), (no)"
if /I "%XY%"=="yes" goto :OK
if /I "%XY%"=="no" goto :NOK
if /i "%XY%"=="yes" goto :OK
if /i "%XY%"=="no" goto :NOK
goto :NOK
:OK
@ -92,9 +92,9 @@ if exist "%_ROSBE_BASEDIR%\config.rbuild" (
echo *** update to the most recent one? You need to reset all your ***
echo *** previously made settings. ***
echo.
set /P XY="(yes), (no)"
if /I "%XY%"=="yes" del "%_ROSBE_BASEDIR%\*.rbuild" | del "config.rbuild" | copy "config.template.rbuild" "%_ROSBE_BASEDIR%\config.rbuild" | goto :OK
if /I "%XY%"=="no" goto :NOK
set /p XY="(yes), (no)"
if /i "%XY%"=="yes" del "%_ROSBE_BASEDIR%\*.rbuild" | del "config.rbuild" | copy "config.template.rbuild" "%_ROSBE_BASEDIR%\config.rbuild" | goto :OK
if /i "%XY%"=="no" goto :NOK
goto :NOK
)
)
@ -107,7 +107,7 @@ echo Default is: none
echo.
echo Right now:
grep \"SARCH\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P X="(), (xbox)"
set /p X="(), (xbox)"
sed "s/\"SARCH\" value=\"\"/\"SARCH\" value=\"%X%\"/g;s/\"SARCH\" value=\"xbox\"/\"SARCH\" value=\"%X%\"/g" "%_ROSBE_BASEDIR%\config.rbuild" > "%_ROSBE_BASEDIR%\config2.rbuild"
cls
@ -120,7 +120,7 @@ echo Default is: pentium
echo.
echo Right now:
grep \"OARCH\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P XX=
set /p XX=
if "%XX%" == "" (
set XX=pentium
)
@ -136,7 +136,7 @@ echo warning : 2,3,4,5 is not tested on ReactOS. Change at own risk.
echo.
echo Right now:
grep \"OPTIMIZE\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P Y="(0), (1), (2), (3), (4), (5)"
set /p Y="(0), (1), (2), (3), (4), (5)"
if "%Y%" == "" (
set Y=1
)
@ -148,7 +148,7 @@ echo Default is: 0
echo.
echo Right now:
grep \"MP\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P Z="(0), (1)"
set /p Z="(0), (1)"
if "%Z%" == "" (
set Z=0
)
@ -160,7 +160,7 @@ echo Default is: 0
echo.
echo Right now:
grep \"KDBG\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P A="(0), (1)"
set /p A="(0), (1)"
if "%A%" == "" (
set A=0
)
@ -173,7 +173,7 @@ echo Default is: 1
echo.
echo Right now:
grep \"DBG\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P B="(0), (1)"
set /p B="(0), (1)"
if "%B%" == "" (
set B=1
)
@ -186,7 +186,7 @@ echo Default is: 0
echo.
echo Right now:
grep \"GDB\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P C="(0), (1)"
set /p C="(0), (1)"
if "%C%" == "" (
set C=0
)
@ -201,7 +201,7 @@ echo Default is: 0
echo.
echo Right now:
grep \"NSWPAT\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P D="(0), (1)"
set /p D="(0), (1)"
if "%D%" == "" (
set D=0
)
@ -218,7 +218,7 @@ echo Default is: 0
echo.
echo Right now:
grep \"_WINKD_\" "%_ROSBE_BASEDIR%\config.rbuild"|cut -d "\"" -f 4
set /P F="(0), (1)"
set /p F="(0), (1)"
if "%F%" == "" (
set F=0
)

View File

@ -9,54 +9,40 @@
::
@echo off
title ReactOS Build Environment %_ROSBE_VERSION%
::
:: Receive the first Parameter and decide what to do.
:: Check if we are displaying help on all commands, if so, display it.
::
if "%1" == "" (
echo.
echo Available Commands:
if exist "%_ROSBE_BASEDIR%\build.cmd" (
echo make [OPTIONS] - Without options it does a standard build of
echo ReactOS. OPTIONS are the standard ReactOS build
echo options ie. "bootcd"
echo makex [OPTIONS] - Same as 'make' but automatically determines the
echo number of CPU Cores in the system and uses -j
echo with the appropriate number.
)
echo make [OPTIONS] - Without options it does a standard build of
echo ReactOS. OPTIONS are the standard ReactOS build
echo options ie. "bootcd"
echo makex [OPTIONS] - Same as 'make' but automatically determines the
echo number of CPU Cores in the system and uses -j
echo with the appropriate number.
echo basedir - Switch back to the ReactOS source directory.
echo.
if exist "%_ROSBE_BASEDIR%\chdefdir.cmd" (
echo chdefdir [OPTIONS] - Reconfigures the Default Source Folder for one
echo Session.
echo chdefdir [OPTIONS] - Change the ReactOS source directory for the
echo current RosBE session.
)
if exist "%_ROSBE_BASEDIR%\clean.cmd" (
echo clean [logs] - Fully clean the ReactOS source directory and/or
echo the RosBE build logs.
)
if exist "%_ROSBE_BASEDIR%\config.cmd" (
echo config [OPTIONS] - Configures the way, ReactOS will be built.
echo.
if exist "%_ROSBE_BASEDIR%\Config.cmd" (
echo config [OPTIONS] - Configures the way, ReactOS will be built.
echo.
)
echo help [COMMAND] - Display the available commands or help on a
echo specific command.
if exist "%_ROSBE_BASEDIR%\options.cmd" (
echo options - Starts options.exe and restarts RosBE to make
echo the changes effective at the end.
)
if exist "%_ROSBE_BASEDIR%\reladdr2line.cmd" (
echo raddr2line [OPTIONS] - Translates program addresses into file names and
echo line numbers to assist Developers to find
echo specific Bugs in ReactOS.
echo raddr2line [OPTIONS] - Translates program addresses into file names and
echo line numbers to assist Developers to find
echo specific Bugs in ReactOS.
)
if exist "%_ROSBE_BASEDIR%\scut.cmd" (
@ -65,18 +51,29 @@ if "%1" == "" (
)
if exist "%_ROSBE_BASEDIR%\sSVN.cmd" (
echo ssvn [OPTIONS] - Create, Update or Clean-up your ReactOS Source
echo Tree or show the Revision Number of the Offline
echo Tree and Online HEAD Revision.
echo ssvn [OPTIONS] - Create, Update or Clean-up your ReactOS Source
echo Tree or show the Revision Number of the Offline
echo Tree and Online HEAD Revision.
)
goto :EOF
if exist "%_ROSBE_BASEDIR%\options.cmd" (
echo options - Starts options.exe and restarts RosBE to make
echo the changes effective at the end.
)
echo.
goto :EOC
)
::
:: Now check if we are displaying help on individual commands, if so,
:: display the help for that command.
::
if "%1" == "make" (
echo Usage: make [OPTIONS]
echo Without options it does a standard build of ReactOS. OPTIONS are the
echo standard ReactOS build options ie. "bootcd", "livecd", etc.
goto :EOF
goto :EOC
)
if "%1" == "makex" (
echo Usage: makex [OPTIONS]
@ -85,92 +82,105 @@ if "%1" == "makex" (
echo NOTE: The number makex uses can be modified by editing Build.cmd
echo located in the RosBE directory, instructions for doing so are
echo contained within the file.
goto :EOF
goto :EOC
)
if "%1" == "basedir" (
echo Usage: basedir
echo Switches back to the ReactOS source directory.
goto :EOC
)
if exist "%_ROSBE_BASEDIR%\chdefdir.cmd" (
if "%1" == "chdefdir" (
echo Usage: chdefdir [OPTIONS]
echo Change the ReactOS source directory for the current RosBE session.
echo.
echo previous - Switch to the previous ReactOS source directory.
goto :EOC
)
)
if "%1" == "clean" (
echo Usage: clean [logs]
echo Fully clean the ReactOS source directory.
echo.
echo logs - Removes all build logs in the RosBE-Logs directory.
goto :EOF
goto :EOC
)
if "%1" == "chdefdir" (
echo Usage: chdefdir [OPTIONS]
echo Reconfigures the Default Source Folder for one Session. Exiting
echo sets RosBE back to the Default.
echo.
echo default - Sets back to the Default Source Folder without a restart
echo of RosBE.
goto :EOF
if exist "%_ROSBE_BASEDIR%\Config.cmd" (
if "%1" == "config" (
echo Usage: config [OPTIONS]
echo Creates a Configuration File, which tells RosBE how to build the Tree.
echo.
echo delete - Deletes the created configuration File and so sets back
echo to default settings.
echo update - Deletes the old created configuration File and updats
echo with a new, default one.
goto :EOC
)
)
if "%1" == "help" (
echo Usage: help [COMMAND]
echo Shows help for the specified command or lists all available commands.
goto :EOF
goto :EOC
)
if "%1" == "ssvn" (
echo Usage: ssvn [OPTIONS]
echo Creates, Updates or cleans up your ReactOS Source Tree or shows the
echo Revision Number of the Offline Tree and Online HEAD Revision.
echo.
echo update - Updates to HEAD Revision or to a specific one when
echo second parameter specifies one.
echo create - Creates a new ReactOS Source Tree.
echo cleanup - Cleans up and fixes errors in the Source Tree.
echo status - Shows Actual offline Revision Number and online HEAD
echo Revision Number.
goto :EOF
if exist "%_ROSBE_BASEDIR%\reladdr2line.cmd" (
if "%1" == "raddr2line" (
echo Usage: raddr2line [OPTIONS]
echo Translates program addresses into file names and line numbers to
echo assist Developers to find specific Bugs in ReactOS.
echo.
echo USAGE: - The first parameter has to be the Executable to be analyzed.
echo - The second one has to be the address to be translated.
echo.
echo If you don't set the needed Parameters, you will be asked for them.
goto :EOC
)
)
if "%1" == "config" (
echo Usage: config [OPTIONS]
echo Creates a Configuration File, which tells RosBE how to build the Tree.
echo.
echo delete - Deletes the created configuration File and so sets back
echo to default settings.
echo update - Deletes the old created configuration File and updats
echo with a new, default one.
goto :EOF
if exist "%_ROSBE_BASEDIR%\scut.cmd" (
if "%1" == "scut" (
echo Usage: scut [OPTIONS]
echo Defines, Edits, Removes, Switches and Defaults to Shortcutted Source
echo Directories. scut started without a parameter or with the name of a
echo Shortcut as parameter sets this Shortcut active.
echo.
echo add - Adds a Shortcut.
echo (Optional: "Shortcut" "Directory" as second and third parameter)
echo rem - Removes a shortcut.
echo (Optional: "Shortcut" as second parameter)
echo edit - Edits a shortcut.
echo (Optional: "Shortcut" "Directory" as second and third parameter)
echo def - Chooses Default Shortcut which is enabled on
echo every start of RosBE. "Default" is the Source
echo Directory as you know it from previous Versions
goto :EOC
)
)
if "%1" == "raddr2line" (
echo Usage: raddr2line [OPTIONS]
echo Translates program addresses into file names and line numbers to
echo assist Developers to find specific Bugs in ReactOS.
echo.
echo USAGE: - The first parameter has to be the Executable to be analyzed.
echo - The second one has to be the address to be translated.
echo.
echo If you don't set the needed Parameters, you will be asked for them.
goto :EOF
if exist "%_ROSBE_BASEDIR%\sSVN.cmd" (
if "%1" == "ssvn" (
echo Usage: ssvn [OPTIONS]
echo Creates, Updates or cleans up your ReactOS Source Tree or shows the
echo Revision Number of the Offline Tree and Online HEAD Revision.
echo.
echo update - Updates to HEAD Revision or to a specific one when
echo second parameter specifies one.
echo create - Creates a new ReactOS Source Tree.
echo cleanup - Cleans up and fixes errors in the Source Tree.
echo status - Shows Actual offline Revision Number and online HEAD
echo Revision Number.
goto :EOC
)
)
if "%1" == "basedir" (
echo Usage: basedir
echo Switches back to the ReactOS source directory.
goto :EOF
)
if "%1" == "options" (
echo Usage: options
echo Starts RosBE Configurator and restarts RosBE afterwards to make the
echo changes effective at the end.
goto :EOF
)
if "%1" == "scut" (
echo Usage: scut [OPTIONS]
echo Defines, Edits, Removes, Switches and Defaults to Shortcutted Source
echo Directories. scut started without a parameter or with the name of a
echo Shortcut as parameter sets this Shortcut active.
echo.
echo add - Adds a Shortcut.
echo (Optional: "Shortcut" "Directory" as second and third parameter)
echo rem - Removes a shortcut.
echo (Optional: "Shortcut" as second parameter)
echo edit - Edits a shortcut.
echo (Optional: "Shortcut" "Directory" as second and third parameter)
echo def - Chooses Default Shortcut which is enabled on
echo every start of RosBE. "Default" is the Source
echo Directory as you know it from previous Versions
goto :EOF
if exist "%_ROSBE_BASEDIR%\options.cmd" (
if "%1" == "options" (
echo Usage: options
echo Starts RosBE Configurator and restarts RosBE afterwards to make the
echo changes effective at the end.
goto :EOC
)
)
if not "%1" == "" (
echo Unknown parameter specified. Try 'help [COMMAND]'.
goto :EOF
echo Unknown command specified. No help available for %1.
goto :EOC
)
:EOC
title ReactOS Build Environment %_ROSBE_VERSION%

View File

@ -19,6 +19,7 @@ set _ROSBE_VERSION=1.0
set _ROSBE_BASEDIR=%~dp0
for /f "usebackq" %%i in (`"echo %_ROSBE_BASEDIR%|%_ROSBE_BASEDIR%Tools\sed s/.$//g"`) do set _ROSBE_BASEDIR=%%i
set _ROSBE_ROSSOURCEDIR=%CD%
set _ROSBE_PREVIOUSSOURCEDIR=""
set _ROSBE_SHOWTIME=1
set _ROSBE_WRITELOG=1
set _ROSBE_USECCACHE=0
@ -87,7 +88,7 @@ doskey /macrofile="%_ROSBE_BASEDIR%\RosBE.mac"
::
:: Look if the Source Folder is empty. If so, ask for using "ssvn create".
::
dir /b "%_ROSBE_ROSSOURCEDIR%" 2>nul|findstr "." >nul
dir /b "%_ROSBE_ROSSOURCEDIR%" 2>nul | findstr "." >nul
if errorlevel 1 (
echo No ReactOS Source detected. Please use "ssvn create" to download it.
)

View File

@ -1,4 +1,5 @@
BASEDIR = cd /d "%_ROSBE_ROSSOURCEDIR%"
CHDEFDIR = "%_ROSBE_BASEDIR%\chdefdir.cmd" $*
CLEAN = "%_ROSBE_BASEDIR%\Clean.cmd" $*
CONFIG = "%_ROSBE_BASEDIR%\Config.cmd" $*
HELP = "%_ROSBE_BASEDIR%\Help.cmd" $*
@ -8,4 +9,3 @@ RADDR2LINE = "%_ROSBE_BASEDIR%\reladdr2line.cmd" $*
SCUT = "%_ROSBE_BASEDIR%\scut.cmd" $*
SSVN = "%_ROSBE_BASEDIR%\sSVN.cmd" $*
OPTIONS = "%_ROSBE_BASEDIR%\options.cmd" $*
CHDEFDIR = "%_ROSBE_BASEDIR%\chdefdir.cmd" $*

View File

@ -2,48 +2,57 @@
:: PROJECT: RosBE - ReactOS Build Environment for Windows
:: LICENSE: GPL - See LICENSE.txt in the top level directory
:: FILE: Root/chdefdir.cmd
:: PURPOSE: Tool to change the Default Work Dir in RosBE.
:: PURPOSE: Tool to change the current working ReactOS source directory
:: in RosBE.
:: COPYRIGHT: Copyright 2007 Daniel Reimer <reimer.daniel@freenet.de>
::
::
@echo off
title Change the Default Dir...
title Change the current working ReactOS source directory...
::
:: Create a Backup Variable to revert to Default if wanted.
:: Check if we already have a previous ReactOS source directory and
:: if we don't, save it.
::
if not defined _ROSBE_ROSSOURCEDIRBCK (
set _ROSBE_ROSSOURCEDIRBCK=%_ROSBE_ROSSOURCEDIR%
if not %_ROSBE_PREVIOUSSOURCEDIR% == %_ROSBE_ROSSOURCEDIR% (
set _ROSBE_PREVIOUSSOURCEDIR=%_ROSBE_ROSSOURCEDIR%
)
::
:: Parse the commands.
:: Parse the command line arguments.
::
if /i "%1" == "" (
goto :INTERACTIVE
)
if /i "%1" == "default" (
set _ROSBE_ROSSOURCEDIR=%_ROSBE_ROSSOURCEDIRBCK%
if /i "%1" == "previous" (
set _ROSBE_ROSSOURCEDIR=%_ROSBE_PREVIOUSSOURCEDIR%
) else (
if not exist "%1\." (
echo The path specified doesn't seem to exist.
goto :EOC
)
set _ROSBE_ROSSOURCEDIR=%1
)
goto :END
goto :EOC
:INTERACTIVE
echo Type in a Path to use RosBE in or "default" to revert to Default Dir:
set /p XY=
set /p XY="Please enter a ReactOS source directory, or 'previous': "
if /i "%XY%" == "" (
goto :END
echo You must either enter a directory or "previous".
goto :EOC
)
if /i "%XY%"=="default" (
set _ROSBE_ROSSOURCEDIR=%_ROSBE_ROSSOURCEDIR%
if /i "%XY%"=="previous" (
set _ROSBE_ROSSOURCEDIR=%_ROSBE_PREVIOUSSOURCEDIR%
) else (
if not exist "%XY%\." (
echo The path specified doesn't seem to exist.
goto :EOC
)
set _ROSBE_ROSSOURCEDIR=%XY%
)
goto :END
:END
:EOC
title ReactOS Build Environment %_ROSBE_VERSION%
cd /d "%_ROSBE_ROSSOURCEDIR%"

View File

@ -32,11 +32,9 @@ if not "%1" == "" (
:: If Parameters were set, parse them, if not, ask the user to add them.
::
:MAN
echo Set the Path to the Executable to be examined.
SET /P _1=
set /p _1="Please enter the path to the executable to be examined: "
:AUTO1
echo Set the Address you wanna analyze inside the Executable.
SET /P _2=
set /p _2="Please enter the address you would like to analyze: "
:EOC
::
@ -46,11 +44,12 @@ SET /P _2=
:: give the result to raddr2line.
::
for /f "tokens=2" %%i in ('"objdump -p %_1% 2>NUL | findstr ImageBase"') do set baseaddr=0x%%i
if %%i LSS %_2% (
if %%i lss %_2% (
raddr2line "%_1%" "%_2%" 2>NUL
) else (
set /a baseaddr+=0x%_2%
for /f %%i in ('"echoh %baseaddr%"') do set relbase=%%i
raddr2line "%_1%" "%relbase%" 2>NUL
)
title ReactOS Build Environment %_ROSBE_VERSION%

View File

@ -1,7 +1,7 @@
::
:: PROJECT: RosBE - ReactOS Build Environment for Windows
:: LICENSE: GPL - See LICENSE.txt in the top level directory.
:: FILE: Root/SVN.cmd
:: FILE: Root/sSVN.cmd
:: PURPOSE: Integrated SVN Client.
:: COPYRIGHT: Copyright 2007 Daniel Reimer <reimer.daniel@freenet.de>
::
@ -81,9 +81,9 @@ if %OFFSVN% equ %ONSVN% (
)
:UP2
set /P XY="(yes), (no)"
if /I "%XY%"=="yes" %_ROSBE_BASEDIR%\ssvn update
if /I "%XY%"=="no" goto :ExitSVN
set /p XY="(yes), (no)"
if /i "%XY%"=="yes" %_ROSBE_BASEDIR%\ssvn update
if /i "%XY%"=="no" goto :ExitSVN
:ExitSVN
title ReactOS Build Environment %_ROSBE_VERSION%

View File

@ -52,8 +52,7 @@ goto :END
:: Load Shortcut from txt and set it active.
::
:DEF
echo Choose your Source Folder:
set /p XY=
set /p XY="Choose your Source Folder: "
:RUN
for /f "usebackq tokens=1-2 delims=, skip=1" %%i in (`type "%_ROSBE_BASEDIR%\srclist.txt"`) do (
if %%i == %XY% (
@ -82,11 +81,9 @@ if not "%2" == "" (
)
:ADD1
echo Choose your Shortcut:
set /p CUT=
set /p CUT="Choose your Shortcut: "
:ADD2
echo Choose your Source Folder:
set /p DIR=
set /p DIR="Choose your Source Folder: "
:ADD23
for /f "usebackq tokens=1-2 delims=, skip=1" %%i in (`type "%_ROSBE_BASEDIR%\srclist.txt"`) do (
if %%i == %CUT% (
@ -107,8 +104,7 @@ if not "%2" == "" (
set CUTREM=%2
goto :REM1
)
echo Choose your Shortcut:
set /p CUTREM=
set /p CUTREM="Choose your Shortcut: "
:REM1
set _ROSBE_REM=0
for /f "usebackq tokens=1-2 delims=," %%i in (`type "%_ROSBE_BASEDIR%\srclist.txt"`) do (
@ -136,8 +132,7 @@ if not "%2" == "" (
set DIR=%2
goto :DEF1
)
echo Choose your new Default Shortcut:
set /p DIR=
set /p DIR="Choose your new Default Shortcut: "
:DEF1
call "%_ROSBE_BASEDIR%\scut.cmd" edit Base %DIR%
@ -159,11 +154,9 @@ if not "%2" == "" (
)
:EDIT1
echo Choose your Shortcut:
set /p CUT=
set /p CUT="Choose your Shortcut: "
:EDIT2
echo Choose your Source Folder:
set /p DIR=
set /p DIR="Choose your Source Folder: "
:EDIT23
set _ROSBE_EDIT=0
for /f "usebackq tokens=1-2 delims=," %%i in (`type "%_ROSBE_BASEDIR%\srclist.txt"`) do (