Gconf backend does not accept special characters in configuration source
addresses. When populating SDK target sysroot from core-image-sato, for
example, the configuration source address contains "1.3+snapshot" in it
and '+' is an invalid character. Thus, gconftool-2 will fail and the
build will stop at do_rootfs because the log contains the "ERROR"
string.

Since failing offline will postpone the postinstall execution for
target's first boot, we can silently fail here, so the build can
complete.

[YOCTO #3893]

Signed-off-by: Laurentiu Palcu <laurentiu.pa...@intel.com>
---
 meta/classes/gconf.bbclass |   10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/meta/classes/gconf.bbclass b/meta/classes/gconf.bbclass
index e9076b2..11ad495 100644
--- a/meta/classes/gconf.bbclass
+++ b/meta/classes/gconf.bbclass
@@ -23,8 +23,14 @@ fi
 SCHEMA_LOCATION=$D/etc/gconf/schemas
 for SCHEMA in ${SCHEMA_FILES}; do
        if [ -e $SCHEMA_LOCATION/$SCHEMA ]; then
-               HOME=$D/root gconftool-2 \
-                       --makefile-install-rule $SCHEMA_LOCATION/$SCHEMA > 
/dev/null
+               export HOME=$D/root
+               if [ "x$D" != "x" ]; then
+                       gconftool-2 \
+                               --makefile-install-rule 
$SCHEMA_LOCATION/$SCHEMA > /dev/null 2>&1 || exit 1
+               else
+                       gconftool-2 \
+                               --makefile-install-rule 
$SCHEMA_LOCATION/$SCHEMA > /dev/null
+               fi
        fi
 done
 }
-- 
1.7.9.5


_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to