* setup.sh: turn on nullglob globally.
* setup.sh: removed some obsolete features, specifically some that were only used by the old build farm. * addToSearchPath: removed some parameters that weren't used anywhere. svn path=/nixpkgs/branches/stdenv-updates/; revision=15136
This commit is contained in:
parent
ba0682330d
commit
6b9ccbaf78
|
@ -17,13 +17,13 @@ envHooks=(${envHooks[@]} addCVars)
|
||||||
# Note: these come *after* $out in the PATH (see setup.sh).
|
# Note: these come *after* $out in the PATH (see setup.sh).
|
||||||
|
|
||||||
if test -n "@gcc@"; then
|
if test -n "@gcc@"; then
|
||||||
PATH=$PATH:@gcc@/bin
|
addToSearchPath PATH @gcc@/bin
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test -n "@binutils@"; then
|
if test -n "@binutils@"; then
|
||||||
PATH=$PATH:@binutils@/bin
|
addToSearchPath PATH @binutils@/bin
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test -n "@libc@"; then
|
if test -n "@libc@"; then
|
||||||
PATH=$PATH:@libc@/bin
|
addToSearchPath PATH @libc@/bin
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
addPerlLibPath () {
|
addPerlLibPath () {
|
||||||
addToSearchPath PERL5LIB /lib/site_perl "" $1
|
addToSearchPath PERL5LIB $1/lib/site_perl
|
||||||
}
|
}
|
||||||
|
|
||||||
envHooks=(${envHooks[@]} addPerlLibPath)
|
envHooks=(${envHooks[@]} addPerlLibPath)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
addPerlLibPath () {
|
addPerlLibPath () {
|
||||||
addToSearchPath PERL5LIB /lib/site_perl "" $1
|
addToSearchPath PERL5LIB $1/lib/site_perl
|
||||||
}
|
}
|
||||||
|
|
||||||
envHooks=(${envHooks[@]} addPerlLibPath)
|
envHooks=(${envHooks[@]} addPerlLibPath)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
addPythonPath() {
|
addPythonPath() {
|
||||||
addToSearchPathWithCustomDelimiter : PYTHONPATH /lib/python2.4/site-packages "" $1
|
addToSearchPathWithCustomDelimiter : PYTHONPATH $1/lib/python2.4/site-packages
|
||||||
}
|
}
|
||||||
|
|
||||||
toPythonPath() {
|
toPythonPath() {
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
addPythonPath() {
|
addPythonPath() {
|
||||||
addToSearchPathWithCustomDelimiter : PYTHONPATH /lib/python2.5/site-packages "" $1
|
addToSearchPathWithCustomDelimiter : PYTHONPATH $1/lib/python2.5/site-packages
|
||||||
}
|
}
|
||||||
|
|
||||||
toPythonPath() {
|
toPythonPath() {
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
addCMakeParams()
|
addCMakeParams()
|
||||||
{
|
{
|
||||||
addToSearchPath CMAKE_INCLUDE_PATH /include "" $1
|
addToSearchPath CMAKE_INCLUDE_PATH $1/include
|
||||||
addToSearchPath CMAKE_LIBRARY_PATH /lib "" $1
|
addToSearchPath CMAKE_LIBRARY_PATH $1/lib
|
||||||
addToSearchPath CMAKE_MODULE_PATH /share/cmake-@majorVersion@/Modules "" $1
|
addToSearchPath CMAKE_MODULE_PATH $1/share/cmake-@majorVersion@/Modules
|
||||||
}
|
}
|
||||||
|
|
||||||
fixCmakeFiles()
|
fixCmakeFiles()
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
addAclocals () {
|
addAclocals () {
|
||||||
addToSearchPathWithCustomDelimiter : ACLOCAL_PATH /share/aclocal "" $1
|
addToSearchPathWithCustomDelimiter ACLOCAL_PATH $1/share/aclocal
|
||||||
}
|
}
|
||||||
|
|
||||||
envHooks=(${envHooks[@]} addAclocals)
|
envHooks=(${envHooks[@]} addAclocals)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
addPkgConfigPath () {
|
addPkgConfigPath () {
|
||||||
addToSearchPath PKG_CONFIG_PATH /lib/pkgconfig "" $1
|
addToSearchPath PKG_CONFIG_PATH $1/lib/pkgconfig
|
||||||
addToSearchPath PKG_CONFIG_PATH /share/pkgconfig "" $1
|
addToSearchPath PKG_CONFIG_PATH $1/share/pkgconfig
|
||||||
}
|
}
|
||||||
|
|
||||||
envHooks=(${envHooks[@]} addPkgConfigPath)
|
envHooks=(${envHooks[@]} addPkgConfigPath)
|
||||||
|
|
|
@ -60,18 +60,14 @@ trap "exitHandler" EXIT
|
||||||
addToSearchPathWithCustomDelimiter() {
|
addToSearchPathWithCustomDelimiter() {
|
||||||
local delimiter=$1
|
local delimiter=$1
|
||||||
local varName=$2
|
local varName=$2
|
||||||
local needDir=$3
|
local dir=$3
|
||||||
local addDir=${4:-$needDir}
|
if [ -d "$dir" ]; then
|
||||||
local prefix=$5
|
eval export ${varName}=${!varName}${!varName:+$delimiter}${dir}
|
||||||
if [ -d $prefix$needDir ]; then
|
|
||||||
if [ -z ${!varName} ]; then
|
|
||||||
eval export ${varName}=${prefix}$addDir
|
|
||||||
else
|
|
||||||
eval export ${varName}=${!varName}${delimiter}${prefix}$addDir
|
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PATH_DELIMITER=':'
|
||||||
|
|
||||||
addToSearchPath() {
|
addToSearchPath() {
|
||||||
addToSearchPathWithCustomDelimiter "${PATH_DELIMITER}" "$@"
|
addToSearchPathWithCustomDelimiter "${PATH_DELIMITER}" "$@"
|
||||||
}
|
}
|
||||||
|
@ -85,11 +81,17 @@ set -e
|
||||||
test -z $NIX_GCC && NIX_GCC=@gcc@
|
test -z $NIX_GCC && NIX_GCC=@gcc@
|
||||||
|
|
||||||
|
|
||||||
|
# Wildcard expansions that don't match should expand to an empty list.
|
||||||
|
# This ensures that, for instance, "for i in *; do ...; done" does the
|
||||||
|
# right thing.
|
||||||
|
shopt -s nullglob
|
||||||
|
|
||||||
|
|
||||||
# Set up the initial path.
|
# Set up the initial path.
|
||||||
PATH=
|
PATH=
|
||||||
for i in $NIX_GCC @initialPath@; do
|
for i in $NIX_GCC @initialPath@; do
|
||||||
if test "$i" = /; then i=; fi
|
if test "$i" = /; then i=; fi
|
||||||
PATH=$PATH${PATH:+:}$i/bin
|
addToSearchPath PATH $i/bin
|
||||||
done
|
done
|
||||||
|
|
||||||
if test "$NIX_DEBUG" = "1"; then
|
if test "$NIX_DEBUG" = "1"; then
|
||||||
|
@ -99,7 +101,6 @@ fi
|
||||||
|
|
||||||
# Execute the pre-hook.
|
# Execute the pre-hook.
|
||||||
export SHELL=@shell@
|
export SHELL=@shell@
|
||||||
PATH_DELIMITER=':'
|
|
||||||
if test -z "$shell"; then
|
if test -z "$shell"; then
|
||||||
export shell=@shell@
|
export shell=@shell@
|
||||||
fi
|
fi
|
||||||
|
@ -132,15 +133,8 @@ ensureDir() {
|
||||||
}
|
}
|
||||||
|
|
||||||
installBin() {
|
installBin() {
|
||||||
ensureDir $out/bin
|
ensureDir $out/bin
|
||||||
cp "$@" $out/bin
|
cp "$@" $out/bin
|
||||||
}
|
|
||||||
|
|
||||||
assertEnvExists(){
|
|
||||||
if test -z "${!1}"; then
|
|
||||||
msg=${2:-error: assertion failed: env var $1 is required}
|
|
||||||
echo $msg >&2; exit 1
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -184,15 +178,11 @@ done
|
||||||
addToEnv() {
|
addToEnv() {
|
||||||
local pkg=$1
|
local pkg=$1
|
||||||
|
|
||||||
if test "$ignoreFailedInputs" != "1" -a -e $1/nix-support/failed; then
|
|
||||||
echo "failed input $1" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test -d $1/bin; then
|
if test -d $1/bin; then
|
||||||
export _PATH=$_PATH${_PATH:+:}$1/bin
|
addToSearchPath _PATH $1/bin
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Run the package-specific hooks set by the setup-hook scripts.
|
||||||
for i in "${envHooks[@]}"; do
|
for i in "${envHooks[@]}"; do
|
||||||
$i $pkg
|
$i $pkg
|
||||||
done
|
done
|
||||||
|
@ -219,17 +209,6 @@ if test -z "$NIX_STRIP_DEBUG"; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
assertEnvExists NIX_STORE \
|
|
||||||
"Error: you have an old version of Nix that does not set the
|
|
||||||
NIX_STORE variable. This is required for purity checking.
|
|
||||||
Please upgrade."
|
|
||||||
|
|
||||||
assertEnvExists NIX_BUILD_TOP \
|
|
||||||
"Error: you have an old version of Nix that does not set the
|
|
||||||
NIX_BUILD_TOP variable. This is required for purity checking.
|
|
||||||
Please upgrade."
|
|
||||||
|
|
||||||
|
|
||||||
# Set the TZ (timezone) environment variable, otherwise commands like
|
# Set the TZ (timezone) environment variable, otherwise commands like
|
||||||
# `date' will complain (e.g., `Tue Mar 9 10:01:47 Local time zone must
|
# `date' will complain (e.g., `Tue Mar 9 10:01:47 Local time zone must
|
||||||
# be set--see zic manual page 2004').
|
# be set--see zic manual page 2004').
|
||||||
|
@ -397,58 +376,6 @@ dumpVars() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Redirect stdout/stderr to a named pipe connected to a `tee' process
|
|
||||||
# that writes the specified file (and also to our original stdout).
|
|
||||||
# The original stdout is saved in descriptor 3.
|
|
||||||
startLog() {
|
|
||||||
local logFile=${logNr}_$1
|
|
||||||
logNr=$((logNr + 1))
|
|
||||||
if test "$logPhases" = 1; then
|
|
||||||
ensureDir $logDir
|
|
||||||
|
|
||||||
exec 3>&1
|
|
||||||
|
|
||||||
if test "$dontLogThroughTee" != 1; then
|
|
||||||
# This required named pipes (fifos).
|
|
||||||
logFifo=$NIX_BUILD_TOP/log_fifo
|
|
||||||
test -p $logFifo || mkfifo $logFifo
|
|
||||||
startLogWrite "$logDir/$logFile" "$logFifo"
|
|
||||||
exec > $logFifo 2>&1
|
|
||||||
else
|
|
||||||
exec > $logDir/$logFile 2>&1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Factored into a separate function so that it can be overriden.
|
|
||||||
startLogWrite() {
|
|
||||||
tee "$1" < "$2" &
|
|
||||||
logWriterPid=$!
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
if test -z "$logDir"; then
|
|
||||||
logDir=$out/log
|
|
||||||
fi
|
|
||||||
|
|
||||||
logNr=0
|
|
||||||
|
|
||||||
# Restore the original stdout/stderr.
|
|
||||||
stopLog() {
|
|
||||||
if test "$logPhases" = 1; then
|
|
||||||
exec >&3 2>&1
|
|
||||||
|
|
||||||
# Wait until the tee process has died. Otherwise output from
|
|
||||||
# different phases may be mixed up.
|
|
||||||
if test -n "$logWriterPid"; then
|
|
||||||
wait $logWriterPid
|
|
||||||
logWriterPid=
|
|
||||||
rm $logFifo
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Utility function: return the base name of the given path, with the
|
# Utility function: return the base name of the given path, with the
|
||||||
# prefix `HASH-' removed, if present.
|
# prefix `HASH-' removed, if present.
|
||||||
stripHash() {
|
stripHash() {
|
||||||
|
@ -823,7 +750,6 @@ genericBuild() {
|
||||||
if test "$curPhase" = distPhase -a -z "$doDist"; then continue; fi
|
if test "$curPhase" = distPhase -a -z "$doDist"; then continue; fi
|
||||||
|
|
||||||
showPhaseHeader "$curPhase"
|
showPhaseHeader "$curPhase"
|
||||||
startLog "$curPhase"
|
|
||||||
dumpVars
|
dumpVars
|
||||||
|
|
||||||
# Evaluate the variable named $curPhase if it exists, otherwise the
|
# Evaluate the variable named $curPhase if it exists, otherwise the
|
||||||
|
@ -834,7 +760,6 @@ genericBuild() {
|
||||||
cd "${sourceRoot:-.}"
|
cd "${sourceRoot:-.}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
stopLog
|
|
||||||
stopNest
|
stopNest
|
||||||
done
|
done
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue