From 42d94b6f15987ecaae03c639300d38e0b5c4afd4 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Mon, 15 Jun 2015 11:24:55 +0200 Subject: Barf on non-existant build inputs Previously saying buildInputs = [ "bla" ]; was quietly ignored. Now it's a fatal error. --- pkgs/stdenv/generic/setup.sh | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh index fb79d8832886..75cc86934806 100644 --- a/pkgs/stdenv/generic/setup.sh +++ b/pkgs/stdenv/generic/setup.sh @@ -222,7 +222,7 @@ runHook addInputsHook # Recursively find all build inputs. findInputs() { - local pkg=$1 + local pkg="$1" local var=$2 local propagatedBuildInputsFile=$3 @@ -234,17 +234,22 @@ findInputs() { eval $var="'${!var} $pkg '" - if [ -f $pkg ]; then - source $pkg + if ! [ -e "$pkg" ]; then + echo "build input $pkg does not exist" >&2 + exit 1 + fi + + if [ -f "$pkg" ]; then + source "$pkg" fi - if [ -f $pkg/nix-support/setup-hook ]; then - source $pkg/nix-support/setup-hook + if [ -f "$pkg/nix-support/setup-hook" ]; then + source "$pkg/nix-support/setup-hook" fi - if [ -f $pkg/nix-support/$propagatedBuildInputsFile ]; then - for i in $(cat $pkg/nix-support/$propagatedBuildInputsFile); do - findInputs $i $var $propagatedBuildInputsFile + if [ -f "$pkg/nix-support/$propagatedBuildInputsFile" ]; then + for i in $(cat "$pkg/nix-support/$propagatedBuildInputsFile"); do + findInputs "$i" $var $propagatedBuildInputsFile done fi } -- cgit 1.4.1