summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core/glibc
diff options
context:
space:
mode:
authorKoen Kooi <koen@dominion.thruhere.net>2018-03-27 09:04:16 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-03-30 00:28:37 +0100
commitd8f4c7794f15f7071ee8e621d7964cb4b4134630 (patch)
treefc3e62eed8c78ad10d03181af59a6cd36124aa17 /meta/recipes-core/glibc
parent3f203582ac646f96e6b86ec4b19721e7a78d55f8 (diff)
downloadopenembedded-core-contrib-d8f4c7794f15f7071ee8e621d7964cb4b4134630.tar.gz
openembedded-core-contrib-d8f4c7794f15f7071ee8e621d7964cb4b4134630.tar.bz2
openembedded-core-contrib-d8f4c7794f15f7071ee8e621d7964cb4b4134630.zip
glibc-package: fix locale cleanup logic
If ${libdir} is a subdirectory of ${prefix}/lib, e.g. /usr/lib/aarch64-linux, the cleanup logic will delete libc.so. This bit of code was added in 2012 (git show b744f4cc) to remove /usr/lib/locale, this commit makes it remove that directory recursively and afterwards remove /usr/lib, erroring out if it's non-empty. Tested with a plain (/usr/lib), a 64-bit (/usr/lib64) and a multiarch (/usr/lib/aarch64-linux) build. I strongly suspect this whole bit of cleanup isn't needed anymore, but my testing is too limited to be certain. Signed-off-by: Koen Kooi <koen.kooi@linaro.org> Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'meta/recipes-core/glibc')
-rw-r--r--meta/recipes-core/glibc/glibc-package.inc7
1 files changed, 5 insertions, 2 deletions
diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc
index 824b185b3a..ff45dfe35a 100644
--- a/meta/recipes-core/glibc/glibc-package.inc
+++ b/meta/recipes-core/glibc/glibc-package.inc
@@ -207,8 +207,11 @@ do_poststash_install_cleanup () {
rm -rf ${D}/${localedir}
rm -rf ${D}${datadir}/locale
if [ "${libdir}" != "${exec_prefix}/lib" ]; then
- # This dir only exists to hold locales
- rm -rf ${D}${exec_prefix}/lib
+ if [ -d ${D}${exec_prefix}/lib/locale ] ; then
+ rm -rf ${D}${exec_prefix}/lib/locale
+ # error out if directory isn't empty
+ rm -f ${D}${exec_prefix}/lib
+ fi
fi
}
addtask do_poststash_install_cleanup after do_stash_locale do_install before do_populate_sysroot do_package