Author: cfinck
Date: Wed Feb 11 08:37:48 2009
New Revision: 39550
URL: http://svn.reactos.org/svn/reactos?rev=39550&view=rev
Log:
- Update the tools to the versions of RosBE-Windows 1.4
- Add general multi-architecture support to RosBE-Unix
This includes moving all architecture-dependent stuff into an "i386" directory.
Additional target architectures can now be easily added with extra RosBE-Unix packages.
- Make most of the environment variable names compatible to RosBE-Windows
- Add "rosbelibrary.sh" for avoiding duplicated code in several scripts
- Implemented the "charch" and "chdefdir" commands from RosBE-Windows
- Change the default installation path to /usr/local/RosBE, provide an update option for the old path
- Compile and name "make" without the mingw32 target, that tool isn't target-dependent
- Strip debugging symbols from the bundled tools in .c files right away
Added:
trunk/tools/RosBE/RosBE-Unix/scripts/charch.sh (with props)
trunk/tools/RosBE/RosBE-Unix/scripts/chdefdir.sh (with props)
trunk/tools/RosBE/RosBE-Unix/scripts/i386/
trunk/tools/RosBE/RosBE-Unix/scripts/i386/clean.sh (with props)
trunk/tools/RosBE/RosBE-Unix/scripts/i386/version.sh (with props)
trunk/tools/RosBE/RosBE-Unix/scripts/rosbelibrary.sh (with props)
Modified:
trunk/tools/RosBE/RosBE-Unix/README
trunk/tools/RosBE/RosBE-Unix/README.odt
trunk/tools/RosBE/RosBE-Unix/RosBE-Builder.sh
trunk/tools/RosBE/RosBE-Unix/scripts/RosBE-rc
trunk/tools/RosBE/RosBE-Unix/scripts/RosBE.sh
trunk/tools/RosBE/RosBE-Unix/scripts/basedir.sh
trunk/tools/RosBE/RosBE-Unix/scripts/build-multi.sh
trunk/tools/RosBE/RosBE-Unix/scripts/build-shared.sh
trunk/tools/RosBE/RosBE-Unix/scripts/build.sh
trunk/tools/RosBE/RosBE-Unix/scripts/clean.sh
trunk/tools/RosBE/RosBE-Unix/scripts/createshortcut.sh
trunk/tools/RosBE/RosBE-Unix/scripts/help.sh
trunk/tools/RosBE/RosBE-Unix/scripts/scut.sh
trunk/tools/RosBE/RosBE-Unix/scripts/version.sh
Modified: trunk/tools/RosBE/RosBE-Unix/README
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/README?rev=…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/README [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/README [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,5 +1,6 @@
ReactOS Build Environment
- Version 1.1 for Unix-based operating systems
+ Version 1.4 for Unix-based operating systems
+ Base package and i386 build tools
by Colin Finck (mail(a)colinfinck.de)
Introduction
@@ -73,13 +74,16 @@
your used operating system:
1. Open a Terminal window and type "su" to become "root" user.
+ NOTE: Becoming a root user is only required for installing RosBE into the
+ default directory ("/usr/local/RosBE"). If you want to install it into a
+ personal directory, you don't need superuser privileges.
2. Call the "RosBE-Builder.sh" script in the directory of the unpacked
RosBE files.
3. Follow the directions on the screen until the script ends with "Finished
successfully!"
4. Type "exit" to switch back to your normal user account. Then call the
"createshortcut.sh" script in the installation directory (usually this
- is "/usr/RosBE").
+ is "/usr/local/RosBE").
5. Follow the directions on the screen to create a shortcut for the Build
Environment.
@@ -92,12 +96,14 @@
This version of RosBE for Unix-based operating systems uses the following
components:
- * GNU Binutils v2.18.50-20071015 (snapshot)
+ * GNU Binutils v2.19.51-20090127 (snapshot)
+ compiled for i386-pc-mingw32
patched with:
- binutils-2.18.50.10-15-2007-snapshot-hpoussin.patch
(http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/Patches/binutils-2.18.…)
* GCC, The GNU Compiler Collection v4.1.3-20071015 (snapshot)
+ compiled for i386-pc-mingw32
patched with:
- GCC-v4.1-r129382-prerelease-w3seek.patch
(http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/Patches/GCC-v4.1-r1293…)
@@ -109,24 +115,20 @@
NOTE: This GCC version only supports C and C++
* Make 20071219 (CVS version)
- * MinGW-Runtime 3.13
- * NASM, The Netwide assembler v2.00
+ * MinGW-Runtime 3.15.2
+ * NASM, The Netwide assembler v2.05.01
* W32api 3.10
Tested Operating Systems
-------------------------
- Although the Build Environment is designed to work on all Unix-based
-operating systems, it was only tested under the following systems:
-
- * Debian GNU/Linux 4.0
- * Fedora 8
- * FreeBSD 6.2
- * Mac OS X 10.5
- * openSUSE 10.2
- * Ubuntu 7.04 and 7.10
-
-You should be able to compile the build tools on both i386 (32-bit) and
+ The Build Environment was designed to work on all Unix-based operating
+systems. Nevertheless, it is impossible to test it on all possible systems out
+there.
+ The current primary development and test system is Ubuntu 8.10. But users
+also reported that it works well under other Linux systems such as Fedora or
+openSUSE and Unix derivates like FreeBSD or Mac OS X.
+ You should be able to compile the build tools on both i386 (32-bit) and
x86_64 (64-bit) systems.
Modified: trunk/tools/RosBE/RosBE-Unix/README.odt
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/README.odt?…
==============================================================================
Binary files - no diff available.
Modified: trunk/tools/RosBE/RosBE-Unix/RosBE-Builder.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/RosBE-Build…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/RosBE-Builder.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/RosBE-Builder.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,15 +1,16 @@
#!/bin/bash
#
-# RosBE-Builder
-# Copyright 2007-2008 Colin Finck <mail(a)colinfinck.de>
+# ReactOS Build Environment for Unix-based Operating Systems - Basic Builder Tool
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
# partially based on the BuildMingwCross script (http://www.mingw.org/MinGWiki/index.php/BuildMingwCross)
#
# Released under GNU GPL v2 or any later version.
# Constants
-ROSBE_VERSION="1.1"
-KNOWN_ROSBE_VERSIONS="0.3.6 1.1"
-DEFAULT_INSTALL_DIR="/usr/RosBE"
+ROSBE_VERSION="1.4"
+TARGET_ARCH="i386"
+KNOWN_ROSBE_VERSIONS="0.3.6 1.1 1.4"
+DEFAULT_INSTALL_DIR="/usr/local/RosBE"
NEEDED_TOOLS="bison flex gcc g++ grep makeinfo" # GNU Make has a special check
# Get the absolute path to the script directory
@@ -17,78 +18,12 @@
SCRIPTDIR="$PWD"
SOURCEDIR="$SCRIPTDIR/sources"
-# Functions
-boldmsg()
-{
- echo -e "\e[1m$1\e[0m"
-}
-
-greenmsg()
-{
- echo -e "\e[32m$1\e[0m"
-}
-
-redmsg()
-{
- echo -e "\e[31m$1\e[0m"
-}
-
-checkrun()
-{
- if [ $? -ne 0 ]; then
- redmsg "FAILED"
-
- if [ "$1" = "" ]; then
- echo "If you did not do something wrong, please contact the ReactOS Team."
- else
- echo "Please take a look at the log file \"$SCRIPTDIR/$1.log\""
- echo "If you did not do something wrong, please save the log file and contact the ReactOS Team."
- fi
-
- echo "Aborted!"
- exit 1
- else
- greenmsg "OK"
-
- if [ "$1" != "" ]; then
- rm "$SCRIPTDIR/$1.log"
- fi
- fi
-}
-
-showchoice()
-{
- default_value="$1"
- valid_choices="$2"
-
- breakloop=false
- choice=""
-
- while true; do
- read -p "Your choice [$default_value]: " choice
-
- if [ "$choice" = "" ]; then
- choice="$default_value"
- break
- fi
-
- for valid_choice in $valid_choices; do
- if [ "$choice" = "$valid_choice" ]; then
- breakloop=true
- break
- fi
- done
-
- if $breakloop; then
- break
- fi
- done
-}
+source "$SCRIPTDIR/scripts/rosbelibrary.sh"
echo "*******************************************************************************"
echo "* ReactOS Build Environment for Unix-based Operating Systems *"
-echo "* Builder Tool *"
+echo "* Basic Builder Tool *"
echo "* by Colin Finck <mail(a)colinfinck.de> *"
echo "* *"
echo "* Version $ROSBE_VERSION *"
@@ -98,82 +33,21 @@
echo "This script compiles and installs a complete Build Environment for building ReactOS."
echo
-# Check if we're running as root
-if [ ! "`whoami`" = "root" ]; then
- boldmsg "User is not \"root\""
-
- echo "The default installation path for the Build Environment is \"$DEFAULT_INSTALL_DIR\"."
- echo "Therefore it is recommended to run this script as the \"root\" user. Otherwise you probably cannot create the necessary directories."
- echo "An alternative is to specify another installation directory at the installation process."
- echo "Do you really want to continue? (yes/no)"
- read -p "[no] " answer
-
- if [ "$answer" = "yes" ]; then
- echo
- else
- exit 1
- fi
-fi
-
-# Test if the script directory is writeable
-if [ ! -w "$SCRIPTDIR" ]; then
- redmsg "The script directory \"$SCRIPTDIR\" is not writeable, aborted!"
- exit 1
-fi
-
-# Test if the script directory contains spaces
-case "$SCRIPTDIR" in
-*" "*)
- redmsg "The script directory \"$SCRIPTDIR\" contains spaces!"
- redmsg "Therefore some build tools cannot be compiled properly."
- echo
- redmsg "Please move \"$SCRIPTDIR\" to a directory, which does not contain spaces."
-
- exit 1;;
-esac
-
-# Check if all necessary tools exist
-boldmsg "Checking for the needed tools..."
-
-toolmissing=false
-for tool in $NEEDED_TOOLS; do
- echo -n "Checking for $tool... "
-
- if which "$tool" >& /dev/null; then
- greenmsg "OK"
- else
- redmsg "MISSING"
- toolmissing=true
- fi
-done
-
-# Special check for GNU Make
-# For example FreeBSD's "make" is not GNU Make, so we have to define a variable
-echo -n "Checking for GNU Make... "
-
-if make -v 2>&1 | grep "GNU Make" >& /dev/null; then
- makecmd="make"
- greenmsg "OK"
-elif gmake -v 2>&1 | grep "GNU Make" >& /dev/null; then
- makecmd="gmake"
- greenmsg "OK"
-else
- redmsg "MISSING"
- toolmissing=true
-fi
-
-if $toolmissing; then
- echo "At least one needed tool is missing, aborted!"
- exit 1
-fi
-
-echo
+setup_check_requirements
# Select the installation directory
boldmsg "Installation Directory"
echo "In which directory do you want to install it?"
echo "Enter the path to the directory here or simply press ENTER to install it into the default directory."
+
+# RosBE-Unix 1.4 switched from /usr/RosBE to /usr/local/RosBE, show a message for the people who might want to update
+if [ -f "/usr/RosBE/RosBE-Version" ]; then
+ echo
+ redmsg "Warning: " "-n"
+ echo "The default installation path /usr/RosBE was changed to /usr/local/RosBE starting with version 1.4."
+ echo "If you want to update a previous installation, enter /usr/RosBE here."
+fi
createdir=false
installdir=""
@@ -300,6 +174,24 @@
process_make=true
process_nasm=true
process_scut=true
+ ;;
+
+ "1.1")
+ # Updated components from 1.1 to 1.4
+ process_binutils=true
+ process_mingwruntime=true
+ process_nasm=true
+
+ # Reorganize the existing files
+ mkdir -p "$installdir/$TARGET_ARCH/bin"
+ mv "$installdir/bin/mingw32-"* "$installdir/$TARGET_ARCH/bin"
+ mv "$installdir/$TARGET_ARCH/bin/mingw32-make" "$installdir/bin/make"
+ mv "$installdir/bin/nasm" "$installdir/$TARGET_ARCH/bin/nasm"
+ mv "$installdir/bin/ndisasm" "$installdir/$TARGET_ARCH/bin/ndisasm"
+ mv "$installdir/include" "$installdir/$TARGET_ARCH/include"
+ mv "$installdir/lib" "$installdir/$TARGET_ARCH/lib"
+ mv "$installdir/libexec" "$installdir/$TARGET_ARCH/libexec"
+ mv "$installdir/mingw32" "$installdir/$TARGET_ARCH/mingw32"
;;
esac
fi
@@ -319,7 +211,7 @@
if $createdir; then
if ! mkdir -p "$installdir"; then
redmsg "Could not create \"$installdir\", aborted!"
- exit 1
+ return 1
fi
fi
fi
@@ -327,39 +219,38 @@
# Test if the installation directory is writeable
if [ ! -w "$installdir" ]; then
redmsg "Installation directory \"$installdir\" is not writeable, aborted!"
- exit 1
+ return 1
fi
#
# Build the tools
#
boldmsg "Building..."
-PATH="$installdir/bin:$PATH"
-mkdir -p "$installdir/bin" >& /dev/null
-mkdir -p "$installdir/mingw32" >& /dev/null
+mkdir "$installdir/bin" >& /dev/null
+mkdir -p "$installdir/$TARGET_ARCH/mingw32" >& /dev/null
# cpucount
if $process_cpucount; then
echo -n "Compiling cpucount... "
- gcc -o "$installdir/bin/cpucount" "$SCRIPTDIR/tools/cpucount.c"
- checkrun
+ gcc -s -o "$installdir/bin/cpucount" "$SCRIPTDIR/tools/cpucount.c"
+ setup_check_run
fi
CPUCOUNT=`$installdir/bin/cpucount -x1`
-cd "$installdir/mingw32"
+cd "$installdir/$TARGET_ARCH/mingw32"
# mingw-runtime
if $process_mingwruntime; then
echo -n "Extracting mingw-runtime... "
tar -xjf "$SOURCEDIR/mingw-runtime.tar.bz2" >& "$SCRIPTDIR/tar.log"
- checkrun "tar"
+ setup_check_run "tar"
fi
# w32api
if $process_w32api; then
echo -n "Extracting w32api... "
tar -xjf "$SOURCEDIR/w32api.tar.bz2" >& "$SCRIPTDIR/tar.log"
- checkrun "tar"
+ setup_check_run "tar"
fi
cd "$SOURCEDIR"
@@ -371,28 +262,28 @@
echo -n "Extracting binutils... "
tar -xjf "binutils.tar.bz2" >& "$SCRIPTDIR/tar.log"
- checkrun "tar"
+ setup_check_run "tar"
echo -n "Configuring binutils... "
mkdir "binutils-build"
cd "binutils-build"
- ../binutils/configure --prefix="$installdir" --target=mingw32 --disable-nls --with-gcc \
+ ../binutils/configure --prefix="$installdir/$TARGET_ARCH" --target=mingw32 --disable-nls --with-gcc \
--with-gnu-as --with-gnu-ld --disable-shared >& "$SCRIPTDIR/configure.log"
- checkrun "configure"
+ setup_check_run "configure"
echo -n "Building binutils... "
$makecmd -j $CPUCOUNT CFLAGS="-O2 -fno-exceptions" LDFLAGS="-s" >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Installing binutils... "
$makecmd install >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Cleaning up binutils... "
cd "$SOURCEDIR"
rm -rf "binutils-build"
rm -rf "binutils"
- checkrun
+ setup_check_run
fi
# gcc
@@ -402,31 +293,31 @@
echo -n "Extracting gcc... "
tar -xjf "gcc.tar.bz2" >& "$SCRIPTDIR/tar.log"
- checkrun "tar"
+ setup_check_run "tar"
echo -n "Configuring gcc... "
mkdir "gcc-build"
cd "gcc-build"
- ../gcc/configure --prefix="$installdir" --target=mingw32 \
- --with-headers="$installdir/mingw32/include"--with-gcc --with-gnu-ld \
+ ../gcc/configure --prefix="$installdir/$TARGET_ARCH" --target=mingw32 \
+ --with-headers="$installdir/$TARGET_ARCH/mingw32/include"--with-gcc --with-gnu-ld \
--with-gnu-as --enable-languages=c,c++ --enable-checking=release \
--enable-threads=win32 --disable-win32-registry --disable-nls \
--disable-shared >& "$SCRIPTDIR/configure.log"
- checkrun "configure"
+ setup_check_run "configure"
echo -n "Building gcc... "
$makecmd -j $CPUCOUNT CFLAGS="-O2" CXXFLAGS="-O2" LDFLAGS="-s" >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Installing gcc... "
$makecmd install >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Cleaning up gcc... "
cd "$SOURCEDIR"
rm -rf "gcc-build"
rm -rf "gcc"
- checkrun
+ setup_check_run
fi
# make
@@ -436,30 +327,29 @@
echo -n "Extracting make... "
tar -xjf "make.tar.bz2" >& "$SCRIPTDIR/tar.log"
- checkrun "tar"
+ setup_check_run "tar"
echo -n "Configuring make... "
mkdir "make-build"
cd "make-build"
- ../make/configure --prefix="$installdir" --target=mingw32 \
- --disable-dependency-tracking --disable-nls \
- --enable-case-insensitive-file-system --disable-job-server --disable-rpath \
- --program-prefix=mingw32- >& "$SCRIPTDIR/configure.log"
- checkrun "configure"
+ ../make/configure --prefix="$installdir" --disable-dependency-tracking \
+ --disable-nls --enable-case-insensitive-file-system
+ --disable-job-server --disable-rpath >& "$SCRIPTDIR/configure.log"
+ setup_check_run "configure"
echo -n "Building make... "
$makecmd -j $CPUCOUNT CFLAGS="-s -O2 -mms-bitfields" >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Installing make... "
$makecmd install >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Cleaning up make... "
cd "$SOURCEDIR"
rm -rf "make-build"
rm -rf "make"
- checkrun
+ setup_check_run
fi
# nasm
@@ -468,64 +358,75 @@
echo -n "Extracting nasm... "
tar -xjf "nasm.tar.bz2" >& "$SCRIPTDIR/tar.log"
- checkrun "tar"
+ setup_check_run "tar"
echo -n "Configuring nasm... "
cd "nasm"
- ./configure --prefix="$installdir" --target=mingw32 >& "$SCRIPTDIR/configure.log"
- checkrun "configure"
+ ./configure --prefix="$installdir/$TARGET_ARCH" >& "$SCRIPTDIR/configure.log"
+ setup_check_run "configure"
echo -n "Building nasm... "
$makecmd -j $CPUCOUNT >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Installing nasm... "
$makecmd install >& "$SCRIPTDIR/make.log"
- checkrun "make"
+ setup_check_run "make"
echo -n "Cleaning up nasm... "
cd "$SOURCEDIR"
rm -rf "nasm"
- checkrun
+ setup_check_run
fi
# Final actions
echo
boldmsg "Final actions"
+
+if [ "$installdir" = "/usr/RosBE" ] && $update; then
+ # Changed default installation directory starting with RosBE-Unix 1.4
+ echo "Do you want to move /usr/RosBE to /usr/local/RosBE? (yes/no)"
+ read -p "[yes] " answer
+
+ if [ "$answer" = "" ] || [ "$answer" = "yes" ]; then
+ mv "/usr/RosBE" "/usr/local/RosBE"
+ installdir="/usr/local/RosBE"
+ fi
+fi
if $process_buildtime; then
echo -n "Compiling buildtime... "
- gcc -o "$installdir/bin/buildtime" "$SCRIPTDIR/tools/buildtime.c"
- checkrun
+ gcc -s -o "$installdir/bin/buildtime" "$SCRIPTDIR/tools/buildtime.c"
+ setup_check_run
fi
if $process_scut; then
echo -n "Compiling scut..."
- gcc -o "$installdir/bin/scut" "$SCRIPTDIR/tools/scut.c"
- checkrun
+ gcc -s -o "$installdir/bin/scut" "$SCRIPTDIR/tools/scut.c"
+ setup_check_run
fi
echo -n "Removing unneeded files... "
-rm -rf "$installdir/mingw32/sys-include"
-rm -rf "$installdir/info"
-rm -rf "$installdir/man"
-rm -rf "$installdir/share"
-checkrun
+rm -rf "$installdir/$TARGET_ARCH/mingw32/sys-include"
+rm -rf "$installdir/$TARGET_ARCH/info"
+rm -rf "$installdir/$TARGET_ARCH/man"
+rm -rf "$installdir/$TARGET_ARCH/share"
+setup_check_run
echo -n "Removing debugging symbols... "
-ls "$installdir"/bin/* "$installdir"/mingw32/bin/* | grep -v "gccbug" |
+ls "$installdir/$TARGET_ARCH/bin/"* "$installdir/$TARGET_ARCH/mingw32/bin/"* | grep -v "gccbug" |
while read file; do
strip "$file"
done
-checkrun
+setup_check_run
echo -n "Copying scripts... "
-cp "$SCRIPTDIR"/scripts/* "$installdir"
-checkrun
+cp -R "$SCRIPTDIR/scripts/"* "$installdir"
+setup_check_run
echo -n "Writing version... "
echo "$ROSBE_VERSION" > "$installdir/RosBE-Version"
-checkrun
+setup_check_run
echo
# Finish
@@ -539,7 +440,10 @@
echo "If you just want to start the Build Environment without using a shortcut, execute the"
echo "following command:"
echo
-echo " $installdir/RosBE.sh <path/to/your/ReactOS/source/directory> [optional color code]"
-echo
-
-exit 0
+echo " $installdir/RosBE.sh [source directory] [color code] [architecture]"
+echo
+echo "All parameters for that script are optional."
+echo
+
+return 0
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/RosBE-rc
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/Ros…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/RosBE-rc [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/RosBE-rc [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,17 +1,18 @@
# Set path
-PATH="$_ROSSCRIPTDIR/bin:$PATH"
+source "$_ROSBE_ROSSCRIPTDIR/rosbelibrary.sh"
+set_path_variable
# Set aliases
-alias basedir="source $_ROSSCRIPTDIR/basedir.sh"
-alias clean="$_ROSSCRIPTDIR/clean.sh"
-alias help="$_ROSSCRIPTDIR/help.sh"
-alias make="$_ROSSCRIPTDIR/build.sh"
-alias makex="$_ROSSCRIPTDIR/build-multi.sh"
-alias scut="source $_ROSSCRIPTDIR/scut.sh"
-alias version="$_ROSSCRIPTDIR/version.sh"
-
-# Display the available commands
-source "$_ROSSCRIPTDIR/help.sh"
+alias basedir="source $_ROSBE_ROSSCRIPTDIR/basedir.sh"
+alias charch="source $_ROSBE_ROSSCRIPTDIR/charch.sh"
+alias chdefdir="source $_ROSBE_ROSSCRIPTDIR/chdefdir.sh"
+alias clean="$_ROSBE_ROSSCRIPTDIR/clean.sh"
+alias help="$_ROSBE_ROSSCRIPTDIR/help.sh"
+alias make="$_ROSBE_ROSSCRIPTDIR/build.sh"
+alias makex="$_ROSBE_ROSSCRIPTDIR/build-multi.sh"
+alias scut="source $_ROSBE_ROSSCRIPTDIR/scut.sh"
+alias version="$_ROSBE_ROSSCRIPTDIR/version.sh"
# Change the current directory to the ReactOS source directory
basedir
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/RosBE.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/Ros…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/RosBE.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/RosBE.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,18 +2,25 @@
#
# Script for initializing RosBE
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007-2008 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
+# Save the ReactOS source directory
+if [ "$1" = "" ]; then
+ _ROSBE_ROSSOURCEDIR="$PWD"
+else
+ _ROSBE_ROSSOURCEDIR="$1"
+fi
+
+export _ROSBE_ROSSOURCEDIR
+
# Get the absolute path to the script directory
cd `dirname $0`
-_ROSSCRIPTDIR="$PWD"
-export _ROSSCRIPTDIR
+export _ROSBE_ROSSCRIPTDIR="$PWD"
-# Save the ReactOS source directory
-_ROSSOURCEDIR="$1"
-export _ROSSOURCEDIR
+# Save the current PATH variable
+export _ROSBE_OLDPATH="$PATH"
# Make sure that some important variables are clean
export HOST=
@@ -23,11 +30,22 @@
# Read the RosBE version
# The file "RosBE-Version" has been created by the RosBE-Builder.sh script
-ROSBE_VERSION=`cat "$_ROSSCRIPTDIR/RosBE-Version"`
+export _ROSBE_VERSION=`cat "$_ROSBE_ROSSCRIPTDIR/RosBE-Version"`
# Set the text color
if [ "$2" != "" ]; then
echo -e "\e[$2m"
+fi
+
+# Set the architecture to build for
+source "$_ROSBE_ROSSCRIPTDIR/rosbelibrary.sh"
+
+if [ "$3" = "" ]; then
+ # No architecture specified, fall back to i386 without any message
+ export _ROSBE_ARCH="i386"
+else
+ # Try to set the architecture to the one specified
+ change_architecture $3
fi
# Display banner
@@ -35,7 +53,12 @@
echo "* ReactOS Build Environment for Unix-based Operating Systems *"
echo "* by Colin Finck <mail(a)colinfinck.de> *"
echo "* *"
-echo "* Version $ROSBE_VERSION *"
+echo "* Version $_ROSBE_VERSION *"
echo "*******************************************************************************"
+echo
+echo "For a list of all included commands, type: \"help\""
+echo "-------------------------------------------------"
+echo
-bash --rcfile "$_ROSSCRIPTDIR/RosBE-rc"
+bash --rcfile "$_ROSBE_ROSSCRIPTDIR/RosBE-rc"
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/basedir.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/bas…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/basedir.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/basedir.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,10 +1,11 @@
#!/bin/bash
#
-# Script for changing the current directory to $_ROSSOURCEDIR
+# Script for changing the current directory to $_ROSBE_ROSSOURCEDIR
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
-# An alias just to "cd $_ROSSOURCEDIR" won't work as bash only expands when executing the shell and then never again
-cd "$_ROSSOURCEDIR"
+# An alias just to "cd $_ROSBE_ROSSOURCEDIR" won't work as bash only expands when executing the shell and then never again
+cd "$_ROSBE_ROSSOURCEDIR"
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/build-multi.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/bui…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/build-multi.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/build-multi.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,11 +2,12 @@
#
# Detects the CPU cores in your system and builds ReactOS with this number of threads
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
-source "$_ROSSCRIPTDIR/build-shared.sh"
+source "$_ROSBE_ROSSCRIPTDIR/build-shared.sh"
CPUCOUNT=`cpucount -x1`
-buildtime mingw32-make -j $CPUCOUNT $*
+buildtime make -j $CPUCOUNT $*
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/build-shared.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/bui…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/build-shared.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/build-shared.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,13 +1,13 @@
# Shared functions for build.sh and build-multi.sh
-# Part of Generic RosBE
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Part of RosBE for Unix-based Operating Systems
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
# Check if config.template.rbuild is newer than config.rbuild
# If it is then abort the build and inform the user.
-if [ -f "$_ROSSOURCEDIR/config.rbuild" ]; then
- if [ "$_ROSSOURCEDIR/config.template.rbuild" -nt "$_ROSSOURCEDIR/config.rbuild" ]; then
+if [ -f "$_ROSBE_ROSSOURCEDIR/config.rbuild" ]; then
+ if [ "$_ROSBE_ROSSOURCEDIR/config.template.rbuild" -nt "$_ROSBE_ROSSOURCEDIR/config.rbuild" ]; then
echo
echo "*** config.template.rbuild is newer than config.rbuild ***"
echo "*** aborting build. Please check for changes and ***"
@@ -16,3 +16,4 @@
exit 1
fi
fi
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/build.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/bui…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/build.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/build.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,10 +2,11 @@
#
# Builds ReactOS with one thread
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
-source "$_ROSSCRIPTDIR/build-shared.sh"
+source "$_ROSBE_ROSSCRIPTDIR/build-shared.sh"
-buildtime mingw32-make $*
+buildtime make $*
+
Added: trunk/tools/RosBE/RosBE-Unix/scripts/charch.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/cha…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/charch.sh (added)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/charch.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,0 +1,25 @@
+#!/bin/bash
+#
+# Change the current target build tools to an architecture to build for
+# Part of RosBE for Unix-based Operating Systems
+# Copyright 2009 Colin Finck <mail(a)colinfinck.de>
+#
+# Released under GNU GPL v2 or any later version.
+
+if [ "$1" = "" ]; then
+ echo "charch: Changes the architecture to build for."
+ echo "The appropriate build tools for this architecture need to be installed by a"
+ echo "RosBE-Unix package."
+ echo
+ echo "Syntax: charch <architecture>"
+ return 0
+fi
+
+# Change the architecture
+source "$_ROSBE_ROSSCRIPTDIR/rosbelibrary.sh"
+change_architecture $1
+set_path_variable
+
+# Display tool versions
+source "$_ROSBE_ROSSCRIPTDIR/$_ROSBE_ARCH/version.sh"
+
Propchange: trunk/tools/RosBE/RosBE-Unix/scripts/charch.sh
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/tools/RosBE/RosBE-Unix/scripts/chdefdir.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/chd…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/chdefdir.sh (added)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/chdefdir.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,0 +1,18 @@
+#!/bin/bash
+#
+# Change the ReactOS source directory for the current session
+# Part of RosBE for Unix-based Operating Systems
+# Copyright 2009 Colin Finck <mail(a)colinfinck.de>
+#
+# Released under GNU GPL v2 or any later version.
+
+if [ "$1" = "" ]; then
+ echo "chdefdir: Change the ReactOS source directory for the current RosBE session"
+ echo
+ echo "Syntax: chdefdir <directory>"
+ return 0
+fi
+
+export _ROSBE_ROSSOURCEDIR="$1"
+basedir
+
Propchange: trunk/tools/RosBE/RosBE-Unix/scripts/chdefdir.sh
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/clean.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/cle…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/clean.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/clean.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,23 +2,11 @@
#
# Script for cleaning the ReactOS source directory
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
-pushd "$_ROSSOURCEDIR" >& /dev/null
+pushd "$_ROSBE_ROSSOURCEDIR" >& /dev/null
+source "$_ROSBE_ROSSCRIPTDIR/$_ROSBE_ARCH/clean.sh"
+popd >& /dev/null
-if [ -d "obj-i386" ]; then
- echo "Cleaning ReactOS source directory..."
-
- rm -rf "obj-i386"
- rm -rf "output-i386"
- rm -rf "reactos."
- rm -f "makefile.auto"
-
- echo "Done cleaning ReactOS source directory."
-else
- echo "There is nothing to clean."
-fi
-
-popd >& /dev/null
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/createshortcut.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/cre…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/createshortcut.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/createshortcut.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,27 +2,19 @@
#
# Script for creating shortcuts
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
# Constants
DEFAULT_SHORTCUT_DIR="$HOME/Desktop"
-# Functions
-greenmsg()
-{
- echo -e "\e[32m$1\e[0m"
-}
-
-boldmsg()
-{
- echo -e "\e[1m$1\e[0m"
-}
-
# Get the absolute path to the script directory
cd `dirname $0`
SCRIPTDIR="$PWD"
+
+source "$SCRIPTDIR/rosbelibrary.sh"
+
# Read the RosBE version
# The file "RosBE-Version" has been created by the RosBE-Builder.sh script
@@ -85,3 +77,4 @@
echo "Terminal=true" >> "$shortcut"
greenmsg "OK"
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/help.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/hel…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/help.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/help.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,23 +2,28 @@
#
# Script for displaying the help
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
echo
echo "Available Commands:"
-echo " make [OPTIONS] - make, without options does a standard build of"
-echo " ReactOS. OPTIONS are the standard ReactOS build"
-echo " options, i.e. bootcd."
-echo " makex [OPTIONS] - Same as 'make' but automatically determines the"
-echo " number of CPUs in the system and uses -j with"
-echo " the appropriate number."
-echo " basedir - Switch back to the ReactOS source directory."
-echo " clean - Fully clean the ReactOS source directory."
-echo " help - Display the available commands."
-echo " scut [OPTIONS] - List, add, edit, remove, switch and default to"
-echo " shortcutted ReactOS source directories."
-echo " version - Show information about the tool versions."
+echo " make [OPTIONS] - make, without options does a standard build of"
+echo " ReactOS. OPTIONS are the standard ReactOS build"
+echo " options, i.e. bootcd."
+echo " makex [OPTIONS] - Same as 'make' but automatically determines the"
+echo " number of CPUs in the system and uses -j with"
+echo " the appropriate number."
+echo " basedir - Switch back to the ReactOS source directory."
+echo " charch [OPTIONS] - Change the Architecture to build ReactOS for"
+echo " for the current RosBE session."
+echo " chdefdir [OPTIONS] - Change the ReactOS source directory for the"
+echo " current RosBE session."
+echo " clean - Fully clean the ReactOS source directory."
+echo " help - Display the available commands."
+echo " scut [OPTIONS] - List, add, edit, remove, switch and default to"
+echo " shortcutted ReactOS source directories."
+echo " version - Show information about the tool versions."
echo
+
Added: trunk/tools/RosBE/RosBE-Unix/scripts/i386/clean.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/i38…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/i386/clean.sh (added)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/i386/clean.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,0 +1,19 @@
+# Clean i386 source directories
+# Part of RosBE for Unix-based Operating Systems
+# Copyright 2009 Colin Finck <mail(a)colinfinck.de>
+#
+# Released under GNU GPL v2 or any later version.
+
+if [ -d "obj-i386" ]; then
+ echo "Cleaning ReactOS i386 source directory..."
+
+ rm -rf "obj-i386"
+ rm -rf "output-i386"
+ rm -rf "reactos."
+ rm -f "makefile.auto"
+
+ echo "Done cleaning ReactOS i386 source directory."
+else
+ echo "ERROR: There is no i386 compiler output to clean."
+fi
+
Propchange: trunk/tools/RosBE/RosBE-Unix/scripts/i386/clean.sh
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/tools/RosBE/RosBE-Unix/scripts/i386/version.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/i38…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/i386/version.sh (added)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/i386/version.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,0 +1,10 @@
+# Show the i386 tool versions
+# Part of RosBE for Unix-based Operating Systems
+# Copyright 2009 Colin Finck <mail(a)colinfinck.de>
+#
+# Released under GNU GPL v2 or any later version.
+
+mingw32-gcc -v 2>&1 | grep "gcc version"
+nasm -v
+mingw32-ld -v
+
Propchange: trunk/tools/RosBE/RosBE-Unix/scripts/i386/version.sh
------------------------------------------------------------------------------
svn:eol-style = native
Added: trunk/tools/RosBE/RosBE-Unix/scripts/rosbelibrary.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/ros…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/rosbelibrary.sh (added)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/rosbelibrary.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,0 +1,188 @@
+# Shared functions for RosBE-Unix components
+# Part of RosBE for Unix-based Operating Systems
+# Copyright 2009 Colin Finck <mail(a)colinfinck.de>
+#
+# Released under GNU GPL v2 or any later version.
+
+# Print a message in a bold font
+# Parameter 1: The message
+# Parameter 2: Optional additional parameters for "echo"
+boldmsg()
+{
+ echo -e $2 "\e[1m$1\e[0m"
+}
+
+# Print a message in green color
+# Parameter 1: The message
+# Parameter 2: Optional additional parameters for "echo"
+greenmsg()
+{
+ echo -e $2 "\e[32m$1\e[0m"
+}
+
+# Print a message in red color
+# Parameter 1: The message
+# Parameter 2: Optional additional parameters for "echo"
+redmsg()
+{
+ echo -e $2 "\e[31m$1\e[0m"
+}
+
+# Allow a choice between several options
+# If a valid choice was done, the result is stored in $choice
+# Parameter 1 - The default value
+# Parameter 2 - All possible values
+showchoice()
+{
+ default_value="$1"
+ valid_choices="$2"
+
+ breakloop=false
+ choice=""
+
+ while true; do
+ read -p "Your choice [$default_value]: " choice
+
+ if [ "$choice" = "" ]; then
+ choice="$default_value"
+ break
+ fi
+
+ for valid_choice in $valid_choices; do
+ if [ "$choice" = "$valid_choice" ]; then
+ breakloop=true
+ break
+ fi
+ done
+
+ if $breakloop; then
+ break
+ fi
+ done
+}
+
+# Change the _ROSBE_ARCH variable appropriately
+change_architecture()
+{
+ new_arch="$1"
+
+ if [ -f "$_ROSBE_ROSSCRIPTDIR/$new_arch/version.sh" ]; then
+ # Architecture parameter seems valid
+ _ROSBE_ARCH="$new_arch"
+ else
+ echo "Unsupported architecture specified, falling back to i386!"
+ echo
+ _ROSBE_ARCH="i386"
+ fi
+
+ export _ROSBE_ARCH
+}
+
+# Set the PATH variable properly for the specified architecture
+set_path_variable()
+{
+ # Set the PATH
+ PATH="$_ROSBE_ROSSCRIPTDIR/$_ROSBE_ARCH/bin:$_ROSBE_ROSSCRIPTDIR/bin:$_ROSBE_OLDPATH"
+}
+
+# Check for several requirements, which need to be met in order to run the installation script properly
+setup_check_requirements()
+{
+ # Check whether we're running as root
+ if [ ! "`whoami`" = "root" ]; then
+ boldmsg "User is not \"root\""
+
+ echo "The default installation path for the Build Environment is \"$DEFAULT_INSTALL_DIR\"."
+ echo "Therefore it is recommended to run this script as the \"root\" user. Otherwise you probably cannot create the necessary directories."
+ echo "An alternative is to specify another installation directory at the installation process."
+ echo "Do you really want to continue? (yes/no)"
+ read -p "[no] " answer
+
+ if [ "$answer" = "yes" ]; then
+ echo
+ else
+ exit 1
+ fi
+ fi
+
+ # Test if the script directory is writeable
+ if [ ! -w "$SCRIPTDIR" ]; then
+ redmsg "The script directory \"$SCRIPTDIR\" is not writeable, aborted!"
+ exit 1
+ fi
+
+ # Test if the script directory contains spaces
+ case "$SCRIPTDIR" in
+ *" "*)
+ redmsg "The script directory \"$SCRIPTDIR\" contains spaces!"
+ redmsg "Therefore some build tools cannot be compiled properly."
+ echo
+ redmsg "Please move \"$SCRIPTDIR\" to a directory, which does not contain spaces."
+
+ exit 1;;
+ esac
+
+ # Check if all necessary tools exist
+ boldmsg "Checking for the needed tools..."
+
+ toolmissing=false
+ for tool in $NEEDED_TOOLS; do
+ echo -n "Checking for $tool... "
+
+ if which "$tool" >& /dev/null; then
+ greenmsg "OK"
+ else
+ redmsg "MISSING"
+ toolmissing=true
+ fi
+ done
+
+ # Special check for GNU Make
+ # For example FreeBSD's "make" is not GNU Make, so we have to define a variable
+ echo -n "Checking for GNU Make... "
+
+ if make -v 2>&1 | grep "GNU Make" >& /dev/null; then
+ makecmd="make"
+ greenmsg "OK"
+ elif gmake -v 2>&1 | grep "GNU Make" >& /dev/null; then
+ makecmd="gmake"
+ greenmsg "OK"
+ else
+ redmsg "MISSING"
+ toolmissing=true
+ fi
+
+ if $toolmissing; then
+ echo "At least one needed tool is missing, aborted!"
+ exit 1
+ fi
+
+ echo
+}
+
+# Check whether the previous command finished with errorlevel 0
+# If it did so, print a green "OK" and delete the debug logfile for the command.
+# If that wasn't the case, print a red "FAILED" and give information about the debug logfile.
+setup_check_run()
+{
+ if [ $? -ne 0 ]; then
+ redmsg "FAILED"
+
+ if [ "$1" = "" ]; then
+ echo "If you did not do something wrong, please contact the ReactOS Team."
+ else
+ echo "Please take a look at the log file \"$SCRIPTDIR/$1.log\""
+ echo "If you did not do something wrong, please save the log file and contact the ReactOS Team."
+ fi
+
+ echo "Aborted!"
+ exit 1
+ else
+ greenmsg "OK"
+
+ if [ "$1" != "" ]; then
+ rm "$SCRIPTDIR/$1.log"
+ fi
+ fi
+}
+
Propchange: trunk/tools/RosBE/RosBE-Unix/scripts/rosbelibrary.sh
------------------------------------------------------------------------------
svn:eol-style = native
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/scut.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/scu…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/scut.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/scut.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -2,24 +2,25 @@
#
# Script for launching scut and changing the current directory appropriately
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
case "$1" in
add|rem|edit|def|list|/?|-h|--help)
# It's an scut parameter, which can just be passed to the program
- "$_ROSSCRIPTDIR/bin/scut" $*
+ "$_ROSBE_ROSSCRIPTDIR/bin/scut" $*
;;
*)
# It's probably the name of a shortcut
- _ROSSOURCEDIR=`"$_ROSSCRIPTDIR/bin/scut" $*`
+ _ROSBE_ROSSOURCEDIR=`"$_ROSBE_ROSSCRIPTDIR/bin/scut" $*`
- if [ "$_ROSSOURCEDIR" != "Default" ] && [ -d "$_ROSSOURCEDIR" ]; then
- export _ROSSOURCEDIR
+ if [ "$_ROSBE_ROSSOURCEDIR" != "Default" ] && [ -d "$_ROSBE_ROSSOURCEDIR" ]; then
+ export _ROSBE_ROSSOURCEDIR
basedir
fi
;;
esac
+
Modified: trunk/tools/RosBE/RosBE-Unix/scripts/version.sh
URL: http://svn.reactos.org/svn/reactos/trunk/tools/RosBE/RosBE-Unix/scripts/ver…
==============================================================================
--- trunk/tools/RosBE/RosBE-Unix/scripts/version.sh [iso-8859-1] (original)
+++ trunk/tools/RosBE/RosBE-Unix/scripts/version.sh [iso-8859-1] Wed Feb 11 08:37:48 2009
@@ -1,20 +1,16 @@
#!/bin/bash
#
-# Build with
+# Show the tool versions
# Part of RosBE for Unix-based Operating Systems
-# Copyright 2007 Colin Finck <mail(a)colinfinck.de>
+# Copyright 2007-2009 Colin Finck <mail(a)colinfinck.de>
#
# Released under GNU GPL v2 or any later version.
# Display RosBE version
-ROSBE_VERSION=`cat "$_ROSSCRIPTDIR/RosBE-Version"`
-
echo "This is the ReactOS Build Environment for Unix-based Operating Systems"
-echo "Version $ROSBE_VERSION, containing the following components:"
+echo "Version $_ROSBE_VERSION, currently running with these components:"
echo
# Display tool versions
-mingw32-gcc -v 2>&1 | grep "gcc version"
-nasm -v
-mingw32-ld -v
-mingw32-make -v | grep "GNU Make"
+source "$_ROSBE_ROSSCRIPTDIR/$_ROSBE_ARCH/version.sh"
+