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

svn path=/trunk/tools/RosBE/; revision=995
This commit is contained in:
Daniel Reimer 2009-05-16 22:46:12 +00:00
parent f9da5ec3e2
commit aca418bf76
12 changed files with 205 additions and 10 deletions

View File

@ -0,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@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
}

View File

@ -19,7 +19,10 @@ if ("$args" -eq "") {
" 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 @@ if ("$args" -eq "") {
} 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]"

View File

@ -30,7 +30,7 @@ if ("$ENV:ROS_ARCH" -eq "") {
$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 LoadAliases {
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
}

View File

@ -0,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@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%

View File

@ -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 @@ RosBE-Windows spring cleaning:
- 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

View File

@ -27,6 +27,11 @@ if "%1" == "" (
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 @@ if "%1" == "" (
) 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]

View File

@ -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)

Binary file not shown.

View File

@ -30,7 +30,7 @@ if "%ROS_ARCH%" == "" (
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

View File

@ -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" $*

View File

@ -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 @@ ShowUnInstDetails show
;;
;; 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 "CompanyName" "ReactOS Team"
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 @@ Section -BaseFiles SEC01
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 @@ Section -BaseFiles SEC01
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 @@ SetShellVarContext current
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 @@ SetShellVarContext current
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 @@ Section Uninstall
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"

View File

@ -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.