Patchwork Add sanity checks for eglibc locale

login
register
mail settings
Submitter Ken Werner
Date Feb. 15, 2012, 8:49 a.m.
Message ID <1329295747-25855-1-git-send-email-ken.werner@linaro.org>
Download mbox | patch
Permalink /patch/21279/
State Accepted
Commit e39c6027d5b86eb94ed74e19ef708828fb547082
Headers show

Comments

Ken Werner - Feb. 15, 2012, 8:49 a.m.
Add sanity checks that test for the existance of folders. This allows to use
an external binary toolchain that doesn't have localization support.
---
 meta/recipes-core/eglibc/eglibc-locale.inc  |   20 +++++++++++++++-----
 meta/recipes-core/eglibc/eglibc-package.inc |    4 +++-
 2 files changed, 18 insertions(+), 6 deletions(-)
Saul Wold - Feb. 21, 2012, 6:58 p.m.
On 02/15/2012 12:49 AM, Ken Werner wrote:
> Add sanity checks that test for the existance of folders. This allows to use
> an external binary toolchain that doesn't have localization support.
> ---
>   meta/recipes-core/eglibc/eglibc-locale.inc  |   20 +++++++++++++++-----
>   meta/recipes-core/eglibc/eglibc-package.inc |    4 +++-
>   2 files changed, 18 insertions(+), 6 deletions(-)
>
> diff --git a/meta/recipes-core/eglibc/eglibc-locale.inc b/meta/recipes-core/eglibc/eglibc-locale.inc
> index b4646fa..2e9b4d4 100644
> --- a/meta/recipes-core/eglibc/eglibc-locale.inc
> +++ b/meta/recipes-core/eglibc/eglibc-locale.inc
> @@ -72,11 +72,21 @@ LOCALETREESRC = "${STAGING_INCDIR}/eglibc-locale-internal-${MULTIMACH_TARGET_SYS
>
>   do_install () {
>   	mkdir -p ${D}${bindir} ${D}${datadir} ${D}${libdir}
> -	cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
> -	cp -fpPR ${LOCALETREESRC}/${libdir}/locale ${D}${libdir}
> -	cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
> -	cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
> -	cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
> +	if [ -n "$(ls ${LOCALETREESRC}/${bindir})" ]; then
> +		cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
> +	fi
> +	if [ -e ${LOCALETREESRC}/${libdir}/locale ]; then
> +		cp -fpPR ${LOCALETREESRC}/${libdir}/locale ${D}${libdir}
> +	fi
> +	if [ -e ${LOCALETREESRC}/${libdir}/gconv ]; then
> +		cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
> +	fi
> +	if [ -e ${LOCALETREESRC}/${datadir}/i18n ]; then
> +		cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
> +	fi
> +	if [ -e ${LOCALETREESRC}/${datadir}/locale ]; then
> +		cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
> +	fi
>   	cp -fpPR ${LOCALETREESRC}/SUPPORTED ${WORKDIR}
>   }
>
> diff --git a/meta/recipes-core/eglibc/eglibc-package.inc b/meta/recipes-core/eglibc/eglibc-package.inc
> index 870b95d..2a1d939 100644
> --- a/meta/recipes-core/eglibc/eglibc-package.inc
> +++ b/meta/recipes-core/eglibc/eglibc-package.inc
> @@ -91,7 +91,9 @@ do_install_locale () {
>   		mv -f ${D}${libdir}/gconv ${dest}${libdir}
>   	fi
>   	cp -fpPR ${D}${libdir}/* ${dest}${libdir}
> -        mv ${D}${datadir}/i18n ${dest}${datadir}
> +	if [ -e ${D}${datadir}/i18n ]; then
> +		mv ${D}${datadir}/i18n ${dest}${datadir}
> +	fi
>   	cp -fpPR ${D}${datadir}/* ${dest}${datadir}
>   	cp -fpPR ${WORKDIR}/SUPPORTED ${dest}
>   }

Merged into OE-core

Thanks
	Sau!

Patch

diff --git a/meta/recipes-core/eglibc/eglibc-locale.inc b/meta/recipes-core/eglibc/eglibc-locale.inc
index b4646fa..2e9b4d4 100644
--- a/meta/recipes-core/eglibc/eglibc-locale.inc
+++ b/meta/recipes-core/eglibc/eglibc-locale.inc
@@ -72,11 +72,21 @@  LOCALETREESRC = "${STAGING_INCDIR}/eglibc-locale-internal-${MULTIMACH_TARGET_SYS
 
 do_install () {
 	mkdir -p ${D}${bindir} ${D}${datadir} ${D}${libdir}
-	cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
-	cp -fpPR ${LOCALETREESRC}/${libdir}/locale ${D}${libdir}
-	cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
-	cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
-	cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
+	if [ -n "$(ls ${LOCALETREESRC}/${bindir})" ]; then
+		cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
+	fi
+	if [ -e ${LOCALETREESRC}/${libdir}/locale ]; then
+		cp -fpPR ${LOCALETREESRC}/${libdir}/locale ${D}${libdir}
+	fi
+	if [ -e ${LOCALETREESRC}/${libdir}/gconv ]; then
+		cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
+	fi
+	if [ -e ${LOCALETREESRC}/${datadir}/i18n ]; then
+		cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
+	fi
+	if [ -e ${LOCALETREESRC}/${datadir}/locale ]; then
+		cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
+	fi
 	cp -fpPR ${LOCALETREESRC}/SUPPORTED ${WORKDIR}
 }
 
diff --git a/meta/recipes-core/eglibc/eglibc-package.inc b/meta/recipes-core/eglibc/eglibc-package.inc
index 870b95d..2a1d939 100644
--- a/meta/recipes-core/eglibc/eglibc-package.inc
+++ b/meta/recipes-core/eglibc/eglibc-package.inc
@@ -91,7 +91,9 @@  do_install_locale () {
 		mv -f ${D}${libdir}/gconv ${dest}${libdir}
 	fi
 	cp -fpPR ${D}${libdir}/* ${dest}${libdir}
-        mv ${D}${datadir}/i18n ${dest}${datadir}
+	if [ -e ${D}${datadir}/i18n ]; then
+		mv ${D}${datadir}/i18n ${dest}${datadir}
+	fi
 	cp -fpPR ${D}${datadir}/* ${dest}${datadir}
 	cp -fpPR ${WORKDIR}/SUPPORTED ${dest}
 }