support/dependencies: check that PATH does not contain CWD
authorYann E. MORIN <yann.morin.1998@free.fr>
Wed, 9 May 2018 17:59:24 +0000 (19:59 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Wed, 9 May 2018 21:26:18 +0000 (23:26 +0200)
commit72703d02b96bb1f7f94f705d3a7199599b1bc980
treefbf7eacf8a7e3e24e977fff8b9102372ee30b3bd
parentb73e9e3d21426d5029044a4c53665917c2342c41
support/dependencies: check that PATH does not contain CWD

A person on IRC reported a build failure with the util-linux package,
looking like this:

for I in uname26 linux32 linux64        ; do \
cd /home/aep/consulting/chargery/tracker/output/target/usr/bin && ln -sf setarch $I ; \
done
[...]
/bin/sh: line 1: ./ln: cannot execute binary file: Exec format error
/bin/sh: line 1: ./ln: cannot execute binary file: Exec format error
/bin/sh: line 1: ./ln: cannot execute binary file: Exec format error

The issue was an empty path in the PATH variable, which means "current
working directory", causing a "ln" binary built by util-linux for the
target to be used instead of the system-provided "ln".

We already check a number of things in the PATH and LD_LIBRARY_PATH
variables in support/dependencies/dependencies.sh, but we were not
checking that PATH did not contain an empty path.

This commit fixes that and takes this opportunity to simplify the test
code for PATH and LD_LIBRARY_PATH.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
[Thomas: improve commit log.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
support/dependencies/dependencies.sh