diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-06-27 10:23:23 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-06-29 08:54:21 +0100 |
commit | 7d61661348cf48cbe379ae600565840ea08664b1 (patch) | |
tree | 2a92d12bb26e33c7b0972bf75a990081218f54d5 | |
parent | b4cd268cf7506a521d7800112cb775bd49e1ef09 (diff) | |
download | openembedded-core-7d61661348cf48cbe379ae600565840ea08664b1.tar.gz openembedded-core-7d61661348cf48cbe379ae600565840ea08664b1.tar.bz2 openembedded-core-7d61661348cf48cbe379ae600565840ea08664b1.zip |
distutils/distutils3: Fix bashism
read -d is a bashism. Replace with a direct exec to avoid the problem
in this case. This fixes silent build failures in do_install of
tasks on systems with dash as /bin/sh.
Also merge the fix to distutils for only changing necessary files
to disutils3 as well.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/distutils.bbclass | 8 | ||||
-rw-r--r-- | meta/classes/distutils3.bbclass | 4 |
2 files changed, 3 insertions, 9 deletions
diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass index 12f26036fa..6ed7ecc99f 100644 --- a/meta/classes/distutils.bbclass +++ b/meta/classes/distutils.bbclass @@ -42,12 +42,8 @@ distutils_do_install() { bbfatal "${PYTHON_PN} setup.py install execution failed." # support filenames with *spaces* - find ${D} -name "*.py" -print0 | while read -d $'\0' i ; do \ - # only modify file if it contains path to avoid recompilation on the target - if grep -q "${D}" "$i"; then - sed -i -e s:${D}::g "$i" - fi - done + # only modify file if it contains path to avoid recompilation on the target + find ${D} -name "*.py" -exec grep -q ${D} {} \; -exec sed -i -e s:${D}::g {} \; if test -e ${D}${bindir} ; then for i in ${D}${bindir}/* ; do \ diff --git a/meta/classes/distutils3.bbclass b/meta/classes/distutils3.bbclass index bbd645cc63..e909ef41b6 100644 --- a/meta/classes/distutils3.bbclass +++ b/meta/classes/distutils3.bbclass @@ -64,9 +64,7 @@ distutils3_do_install() { bbfatal "${PYTHON_PN} setup.py install execution failed." # support filenames with *spaces* - find ${D} -name "*.py" -print0 | while read -d $'\0' i ; do \ - sed -i -e s:${D}::g "$i" - done + find ${D} -name "*.py" -exec grep -q ${D} {} \; -exec sed -i -e s:${D}::g {} \; if test -e ${D}${bindir} ; then for i in ${D}${bindir}/* ; do \ |