Author: dreimer
Date: Sun May 17 02:46:12 2009
New Revision: 40945
URL:
http://svn.reactos.org/svn/reactos?rev=40945&view=rev
Log:
Add the first version of a command to set the last missing rebuild flags which exist, like
Dep Checking, verbosity etc. Right now if ONLY sets one command at once. I still have no
idea how to realize it properly in Batch to set several commands.
Bump Version to 1.4.3
Added:
trunk/tools/RosBE/RosBE-Windows/Powershell/Buildflags.ps1 (with props)
trunk/tools/RosBE/RosBE-Windows/Root/Buildflags.cmd (with props)
Modified:
trunk/tools/RosBE/RosBE-Windows/Powershell/Help.ps1
trunk/tools/RosBE/RosBE-Windows/Powershell/RosBE.ps1
trunk/tools/RosBE/RosBE-Windows/Root/ChangeLog.txt
trunk/tools/RosBE/RosBE-Windows/Root/Help.cmd
trunk/tools/RosBE/RosBE-Windows/Root/LICENSE.txt
trunk/tools/RosBE/RosBE-Windows/Root/README.odt
trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd
trunk/tools/RosBE/RosBE-Windows/Root/RosBE.mac
trunk/tools/RosBE/RosBE-Windows/RosBE.nsi
trunk/tools/RosBE/RosBE-Windows/plans.txt
Added: trunk/tools/RosBE/RosBE-Windows/Powershell/Buildflags.ps1
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Powershe…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Powershell/Buildflags.ps1 (added)
+++ trunk/tools/RosBE/RosBE-Windows/Powershell/Buildflags.ps1 [iso-8859-1] Sun May 17
02:46:12 2009
@@ -1,0 +1,56 @@
+#
+# PROJECT: RosBE - ReactOS Build Environment for Windows
+# LICENSE: GNU General Public License v2. (see LICENSE.txt)
+# FILE: Root/Buildflags.cmd
+# PURPOSE: Sets the RBuild
+# COPYRIGHT: Copyright 2009 Daniel Reimer <reimer.daniel(a)freenet.de>
+#
+
+$temparg = $args[1]
+
+if ($args -eq "verbose") {
+ # Be verbose.
+ $ENV:ROS_RBUILDFLAGS = "-v"
+} elseif ($args -eq "lowhddspace") {
+ # Clean as you go. Delete generated files as soon as they are not needed anymore.
+ $ENV:ROS_RBUILDFLAGS = "-c"
+} elseif ($args -eq "noautodep") {
+ # Disable automatic dependencies.
+ $ENV:ROS_RBUILDFLAGS = "-dd"
+} elseif ($args -eq "autodep") {
+ # Enable automatic dependencies.
+ $ENV:ROS_RBUILDFLAGS = "-da"
+} elseif ($args -eq "fullautodep") {
+ # Enable full dependencies.
+ $ENV:ROS_RBUILDFLAGS = "-df"
+} elseif ($args -eq "depforx") {
+ # Check only automatic dependencies for this module.
+ $ENV:ROS_RBUILDFLAGS = "-dm{$temparg}"
+} elseif ($args -eq "noprecompheaders") {
+ # Disable precompiled headers.
+ $ENV:ROS_RBUILDFLAGS = "-hd"
+} elseif ($args -eq "makegendir") {
+ # Let make handle creation of install directories. Rbuild will not generate the
directories.
+ $ENV:ROS_RBUILDFLAGS = "-mi"
+} elseif ($args -eq "proxymakefiles") {
+ # Generate proxy makefiles in source tree instead of the output tree.
+ $ENV:ROS_RBUILDFLAGS = "-ps"
+} elseif ($args -eq "nocompunits") {
+ # Disable compilation units.
+ $ENV:ROS_RBUILDFLAGS = "-ud"
+} elseif ($args -eq "inputxml") {
+ # Input XML
+ $ENV:ROS_RBUILDFLAGS = "-r"
+} elseif ($args -eq "installpath") {
+ # This variable controls where to install output files to when using
+ # 'make install'. N.B. Don't put a path separator at the end. The
variable
+ # defaults to .\{ROS_CDOUTPUT}.
+ $ENV:ROS_INSTALL = "$temparg"
+} elseif ($args -eq "buildengine") {
+ # The Build engine to be used. The variable defaults to rbuild (RBUILD_TARGET)
+ $ENV:ROS_BUILDENGINE = "$temparg"
+} elseif ($args -eq "reset") {
+ $ENV:ROS_RBUILDFLAGS = $null
+ $ENV:ROS_INSTALL = $null
+ $ENV:ROS_BUILDENGINE = $null
+}
Propchange: trunk/tools/RosBE/RosBE-Windows/Powershell/Buildflags.ps1
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/tools/RosBE/RosBE-Windows/Powershell/Help.ps1
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Powershe…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Powershell/Help.ps1 [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Powershell/Help.ps1 [iso-8859-1] Sun May 17 02:46:12
2009
@@ -19,7 +19,10 @@
" number of CPU Cores in the system and uses -j
with"
" the appropriate number."
" basedir - Switch back to the ReactOS source directory."
-
+ if (Test-Path "$_ROSBE_BASEDIR\Buildflags.ps1") {
+ " buildflags [OPTIONS] - Change Buildflags for Rbuild, like
Dependency"
+ " Checking, other build tool usage and
more."
+ }
if (Test-Path "$_ROSBE_BASEDIR\charch.ps1") {
" charch [OPTIONS] - Change the Architecture to build ReactOS
for"
" for the current RosBE session."
@@ -122,6 +125,32 @@
} elseif ("$args" -eq "basedir") {
" Usage: basedir"
" Switches back to the ReactOS source directory."
+} elseif ("$args" -eq "buildflags") {
+ if (Test-Path "$_ROSBE_BASEDIR\Buildflags.ps1") {
+ " A tool to set rather hidden switches in rbuild. It can set Dependency
checks"
+ " or can completely replace the build engine."
+ " verbose - Be verbose."
+ " lowhddspace - Clean as you go. Delete generated files as soon as
they"
+ " are not needed anymore."
+ " noautodep - Disable automatic dependencies."
+ " autodep - Enable automatic dependencies."
+ " fullautodep - Enable full dependencies."
+ " depforx - Check only automatic dependencies for this
module."
+ " noprecompheaders - Disable precompiled headers."
+ " makegendir - Let make handle creation of install directories.
Rbuild"
+ " will not generate the directories."
+ " proxymakefiles - Generate proxy makefiles in source tree instead of
the"
+ " output tree."
+ " nocompunits - Disable compilation units."
+ " inputxml - Input XML"
+ " installpath - This variable controls where to install output files
to"
+ " when using 'make install'. N.B. Don't
put a path"
+ " separator at the end. The variable defaults
to"
+ " .\{ROS_CDOUTPUT}."
+ " buildengine - The Build engine to be used. The variable defaults
to"
+ " rbuild (RBUILD_TARGET)"
+ " reset - Set all back to default."
+ }
} elseif ("$args" -eq "charch") {
if (Test-Path "$_ROSBE_BASEDIR\charch.ps1") {
" Usage: charch [OPTIONS]"
Modified: trunk/tools/RosBE/RosBE-Windows/Powershell/RosBE.ps1
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Powershe…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Powershell/RosBE.ps1 [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Powershell/RosBE.ps1 [iso-8859-1] Sun May 17 02:46:12
2009
@@ -30,7 +30,7 @@
$global:0 = $myInvocation.MyCommand.Definition
$global:_ROSBE_BASEDIR = [System.IO.Path]::GetDirectoryName($0)
-$global:_ROSBE_VERSION = "1.4.2"
+$global:_ROSBE_VERSION = "1.4.3"
$global:_ROSBE_ROSSOURCEDIR = "$pwd"
$global:_ROSBE_SHOWTIME = 1
$global:_ROSBE_WRITELOG = 1
@@ -69,6 +69,11 @@
function global:BASEDIR {
set-location "$_ROSBE_ROSSOURCEDIR"
}
+
+ if (Test-Path "$_ROSBE_BASEDIR\Buildflags.ps1") {
+ set-alias BUILDFLAGS "$_ROSBE_BASEDIR\Buildflags.ps1" -scope Global
+ }
+
if (Test-Path "$_ROSBE_BASEDIR\chdefdir.ps1") {
set-alias CHDEFDIR "$_ROSBE_BASEDIR\chdefdir.ps1" -scope Global
}
Added: trunk/tools/RosBE/RosBE-Windows/Root/Buildflags.cmd
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Bui…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/Buildflags.cmd (added)
+++ trunk/tools/RosBE/RosBE-Windows/Root/Buildflags.cmd [iso-8859-1] Sun May 17 02:46:12
2009
@@ -1,0 +1,63 @@
+::
+:: PROJECT: RosBE - ReactOS Build Environment for Windows
+:: LICENSE: GNU General Public License v2. (see LICENSE.txt)
+:: FILE: Root/Buildflags.cmd
+:: PURPOSE: Sets the RBuild
+:: COPYRIGHT: Copyright 2009 Daniel Reimer <reimer.daniel(a)freenet.de>
+::
+
+@echo off
+if not defined _ROSBE_DEBUG set _ROSBE_DEBUG=0
+if %_ROSBE_DEBUG% == 1 (
+ @echo on
+)
+
+setlocal enabledelayedexpansion
+
+if /i "%1" == "verbose" (
+ REM Be verbose.
+ set ROS_RBUILDFLAGS=-v
+) else if /i "%1" == "lowhddspace" (
+ REM Clean as you go. Delete generated files as soon as they are not needed anymore.
+ set ROS_RBUILDFLAGS=-c
+) else if /i "%1" == "noautodep" (
+ REM Disable automatic dependencies.
+ set ROS_RBUILDFLAGS=-dd
+) else if /i "%1" == "autodep" (
+ REM Enable automatic dependencies.
+ set ROS_RBUILDFLAGS=-da
+) else if /i "%1" == "fullautodep" (
+ REM Enable full dependencies.
+ set ROS_RBUILDFLAGS=-df
+) else if /i "%1" == "depforx" (
+ REM Check only automatic dependencies for this module.
+ set ROS_RBUILDFLAGS=-dm{%2}
+) else if /i "%1" == "noprecompheaders" (
+ REM Disable precompiled headers.
+ set ROS_RBUILDFLAGS=-hd
+) else if /i "%1" == "makegendir" (
+ REM Let make handle creation of install directories. Rbuild will not generate the
directories.
+ set ROS_RBUILDFLAGS=-mi
+) else if /i "%1" == "proxymakefiles" (
+ REM Generate proxy makefiles in source tree instead of the output tree.
+ set ROS_RBUILDFLAGS=-ps
+) else if /i "%1" == "nocompunits" (
+ REM Disable compilation units.
+ set ROS_RBUILDFLAGS=-ud
+) else if /i "%1" == "inputxml" (
+ REM Input XML
+ set ROS_RBUILDFLAGS=-r
+) else if /i "%1" == "installpath" (
+ REM This variable controls where to install output files to when using
+ REM 'make install'. N.B. Don't put a path separator at the end. The
variable
+ REM defaults to .\{ROS_CDOUTPUT}.
+ set ROS_INSTALL=%2
+) else if /i "%1" == "buildengine" (
+ REM The Build engine to be used. The variable defaults to rbuild (RBUILD_TARGET)
+ set ROS_BUILDENGINE=%2
+) else if /i "%1" == "reset" (
+ set ROS_RBUILDFLAGS=
+ set ROS_INSTALL=
+ set ROS_BUILDENGINE=
+)
+endlocal & set ROS_RBUILDFLAGS=%ROS_RBUILDFLAGS%& set
ROS_INSTALL=%ROS_INSTALL%& set ROS_BUILDENGINE=%ROS_BUILDENGINE%
Propchange: trunk/tools/RosBE/RosBE-Windows/Root/Buildflags.cmd
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/tools/RosBE/RosBE-Windows/Root/ChangeLog.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Cha…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/ChangeLog.txt [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/ChangeLog.txt [iso-8859-1] Sun May 17 02:46:12
2009
@@ -1,4 +1,4 @@
-*** XXX XXth, 2009 - RosBE 1.X.X Released
+*** May XXth, 2009 - RosBE 1.4.3 Released
RosBE-Windows spring cleaning:
- Rewrite most of the RosBE-Windows CMD scripts resulting in more compact and cleaner
code. (Colin Finck)
@@ -14,6 +14,12 @@
- In PS Logs were generated, but without any warnings or errors in it. Additionally they
were not even displayed
in the console too. This is now fixed. (Daniel Reimer)
- "buildno.h not found" errors i PS were fixed now that I was able to see them
:-P (Daniel Reimer)
+- Added tool to set Buildflags of RBuild, like Dependency checking etc. (Daniel Reimer)
+- Fixed chdefgcc, charch and chdefdir for PS and Batch. (Daniel Reimer)
+- Fixed version showing when using charch and chdefdir under PS. (Daniel Reimer)
+- Fixed endless loop in update under PS. (Daniel Reimer)
+- Fixed variables to TARGET GCC under PS. (Daniel Reimer)
+
*** May 08th, 2009 - RosBE 1.4.2 Released
Modified: trunk/tools/RosBE/RosBE-Windows/Root/Help.cmd
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Hel…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/Help.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/Help.cmd [iso-8859-1] Sun May 17 02:46:12 2009
@@ -27,6 +27,11 @@
echo the appropriate number.
echo basedir - Switch back to the ReactOS source directory.
+ if exist "%_ROSBE_BASEDIR%\Buildflags.cmd" (
+ echo buildflags [OPTIONS] - Change Buildflags for Rbuild, like Dependency
+ echo Checking, other build tool usage and more.
+ )
+
if exist "%_ROSBE_BASEDIR%\charch.cmd" (
echo charch [OPTIONS] - Change the Architecture to build ReactOS for
echo for the current RosBE session.
@@ -128,6 +133,32 @@
) else if /i "%1" == "basedir" (
echo Usage: basedir
echo Switches back to the ReactOS source directory.
+) else if /i "%1" == "buildflags" (
+ if exist "%_ROSBE_BASEDIR%\buildflags.cmd" (
+ echo A tool to set rather hidden switches in rbuild. It can set Dependency checks
or
+ echo can completely replace the build engine.
+ echo verbose - Be verbose.
+ echo lowhddspace - Clean as you go. Delete generated files as soon as
they
+ echo are not needed anymore.
+ echo noautodep - Disable automatic dependencies.
+ echo autodep - Enable automatic dependencies.
+ echo fullautodep - Enable full dependencies.
+ echo depforx - Check only automatic dependencies for this module.
+ echo noprecompheaders - Disable precompiled headers.
+ echo makegendir - Let make handle creation of install directories.
Rbuild
+ echo will not generate the directories.
+ echo proxymakefiles - Generate proxy makefiles in source tree instead of
the
+ echo output tree.
+ echo nocompunits - Disable compilation units.
+ echo inputxml - Input XML
+ echo installpath - This variable controls where to install output files
to
+ echo when using 'make install'. N.B. Don't put
a path
+ echo separator at the end. The variable defaults to
+ echo .\{ROS_CDOUTPUT}.
+ echo buildengine - The Build engine to be used. The variable defaults to
+ echo rbuild
+ echo reset - Set all back to default.
+ )
) else if /i "%1" == "charch" (
if exist "%_ROSBE_BASEDIR%\charch.cmd" (
echo Usage: charch [OPTIONS]
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] Sun May 17 02:46:12
2009
@@ -1,4 +1,4 @@
-ReactOS Build Environment v1.4.2
+ReactOS Build Environment v1.4.3
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/RosBE.cmd
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Ros…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/RosBE.cmd [iso-8859-1] Sun May 17 02:46:12 2009
@@ -30,7 +30,7 @@
set _ROSBE_BASEDIR=%~dp0
set _ROSBE_BASEDIR=%_ROSBE_BASEDIR:~0,-1%
-set _ROSBE_VERSION=1.4.2
+set _ROSBE_VERSION=1.4.3
set _ROSBE_ROSSOURCEDIR=%CD%
set _ROSBE_SHOWTIME=1
set _ROSBE_WRITELOG=1
Modified: trunk/tools/RosBE/RosBE-Windows/Root/RosBE.mac
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/Root/Ros…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/Root/RosBE.mac [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/Root/RosBE.mac [iso-8859-1] Sun May 17 02:46:12 2009
@@ -1,4 +1,5 @@
BASEDIR = cd /d "%_ROSBE_ROSSOURCEDIR%"
+BUILDFLAGS = "%_ROSBE_BASEDIR%\buildflags.cmd" $*
CHDEFDIR = "%_ROSBE_BASEDIR%\chdefdir.cmd" $*
CHDEFGCC = "%_ROSBE_BASEDIR%\chdefgcc.cmd" $*
CHARCH = "%_ROSBE_BASEDIR%\charch.cmd" $*
Modified: trunk/tools/RosBE/RosBE-Windows/RosBE.nsi
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/RosBE.ns…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/RosBE.nsi [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/RosBE.nsi [iso-8859-1] Sun May 17 02:46:12 2009
@@ -1,5 +1,5 @@
!define PRODUCT_NAME "ReactOS Build Environment for Windows"
-!define PRODUCT_VERSION "1.4.2"
+!define PRODUCT_VERSION "1.4.3"
!define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App
Paths\RosBE.cmd"
!define PRODUCT_UNINST_KEY
"Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}"
!define PRODUCT_UNINST_ROOT_KEY "HKCU"
@@ -17,7 +17,7 @@
;;
;; Add version/product information metadata to the installation file.
;;
-VIAddVersionKey /LANG=1033 "FileVersion" "1.4.2.0"
+VIAddVersionKey /LANG=1033 "FileVersion" "1.4.3.0"
VIAddVersionKey /LANG=1033 "ProductVersion" "${PRODUCT_VERSION}"
VIAddVersionKey /LANG=1033 "ProductName" "${PRODUCT_NAME}"
VIAddVersionKey /LANG=1033 "Comments" "This installer was written by Peter
Ward and Daniel Reimer using Nullsoft Scriptable Install System
(
http://nsis.sourceforge.net/)"
@@ -25,7 +25,7 @@
VIAddVersionKey /LANG=1033 "LegalTrademarks" "Copyright © 2009 ReactOS
Team"
VIAddVersionKey /LANG=1033 "LegalCopyright" "Copyright © 2009 ReactOS
Team"
VIAddVersionKey /LANG=1033 "FileDescription" "${PRODUCT_NAME} Setup"
-VIProductVersion "1.4.2.0"
+VIProductVersion "1.4.3.0"
CRCCheck force
SetDatablockOptimize on
@@ -121,6 +121,7 @@
File /r Root\LICENSE.txt
${If} $R4 = '6.1'
File /r Components\Powershell\Build.ps1
+ File /r Components\Powershell\Buildflags.ps1
File /r Components\Powershell\charch.ps1
File /r Components\Powershell\chdefgcc.ps1
File /r Components\Powershell\Clean.ps1
@@ -131,6 +132,7 @@
WriteRegStr HKLM
"Software\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell"
"ExecutionPolicy" "RemoteSigned"
${else}
File /r Root\Build.cmd
+ File /r Root\Buildflags.cmd
File /r Root\Build-Multi.cmd
File /r Root\Build-Shared.cmd
File /r Root\charch.cmd
@@ -299,6 +301,7 @@
SetOutPath "$INSTDIR"
SetOverwrite try
File /r Root\Build.cmd
+ File /r Root\Buildflags.cmd
File /r Root\Build-Multi.cmd
File /r Root\Build-Shared.cmd
File /r Root\chdefgcc.cmd
@@ -330,6 +333,7 @@
SetOutPath "$INSTDIR"
SetOverwrite try
File /r Components\Powershell\Build.ps1
+ File /r Components\Powershell\Buildflags.ps1
File /r Components\Powershell\RosBE.ps1
File /r Components\Powershell\rosbe-gcc-env.ps1
File /r Components\Powershell\Help.ps1
@@ -454,6 +458,8 @@
Delete /REBOOTOK "$INSTDIR\Build-Multi.cmd"
Delete /REBOOTOK "$INSTDIR\Build-Shared.cmd"
Delete /REBOOTOK "$INSTDIR\Build.ps1"
+ Delete /REBOOTOK "$INSTDIR\Buildflags.cmd"
+ Delete /REBOOTOK "$INSTDIR\Buildflags.ps1"
Delete /REBOOTOK "$INSTDIR\chdefdir.cmd"
Delete /REBOOTOK "$INSTDIR\chdefdir.ps1"
Delete /REBOOTOK "$INSTDIR\chdefgcc.cmd"
Modified: trunk/tools/RosBE/RosBE-Windows/plans.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Windows/plans.tx…
==============================================================================
--- trunk/tools/RosBE/RosBE-Windows/plans.txt [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Windows/plans.txt [iso-8859-1] Sun May 17 02:46:12 2009
@@ -1,5 +1,3 @@
- New icons for every arch we support
- More Error catching
- support y/n and yes/no
-- Make it possible to set different obj and out folders for different arches
-- support for different dep checks.