dependencies: check that . is not in the PATH
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fri, 21 May 2010 22:53:08 +0000 (00:53 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fri, 21 May 2010 22:56:14 +0000 (00:56 +0200)
Having . in the PATH makes the toolchain build process fail because it
confuses host tools and target tools.

This fixes bug #75.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
toolchain/dependencies/dependencies.sh

index f5d9163cc4fec605933a86f5ff1cc36368d78c1a..34149c1a363b32a268281442c29c0caf2ce4d678 100755 (executable)
@@ -34,6 +34,21 @@ if test -n "$LD_LIBRARY_PATH" ; then
        fi
 fi;
 
+# sanity check for CWD in PATH. Having the current working directory
+# in the PATH makes the toolchain build process break.
+# try not to rely on egrep..
+if test -n "$PATH" ; then
+       /bin/echo TRiGGER_start"$PATH"TRiGGER_end | /bin/grep ':\.:' >/dev/null 2>&1 ||
+       /bin/echo TRiGGER_start"$PATH"TRiGGER_end | /bin/grep 'TRiGGER_start\.:' >/dev/null 2>&1 ||
+       /bin/echo TRiGGER_start"$PATH"TRiGGER_end | /bin/grep ':\.TRiGGER_end' >/dev/null 2>&1 ||
+       /bin/echo TRiGGER_start"$PATH"TRiGGER_end | /bin/grep 'TRIGGER_start\.TRIGGER_end' >/dev/null 2>&1
+       if test $? = 0; then
+               /bin/echo -e "\nYou seem to have the current working directory in your"
+               /bin/echo -e "PATH environment variable. This doesn't work.\n"
+               exit 1;
+       fi
+fi;
+
 # Verify that which is installed
 if ! which which > /dev/null ; then
        /bin/echo -e "\nYou must install 'which' on your build machine\n";