Skip to contentSkip to conversation

classes/sstate: avoid traceback when no files have been staged

PATCH New Paul Eggleton 1 participant 1 message Apr 3, 2013

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 classes/sstate: avoid traceback when no files have been staged

If no files have been staged we want to continue without error instead of showing a traceback.

Fixes [YOCTO #4056].

---
 meta/classes/sstate.bbclass |    5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
meta/classes/sstate.bbclass +4 -1
index 3f4f43d..67ddc46 100644
@@ -197,7 +197,8 @@ def sstate_install(ss, d):
 
     # Run the actual file install
     for state in ss['dirs']:
-        oe.path.copytree(state[1], state[2])
+        if os.path.exists(state[1]):
+            oe.path.copytree(state[1], state[2])
 
     for postinst in (d.getVar('SSTATEPOSTINSTFUNCS', True) or '').split():
         bb.build.exec_func(postinst, d)
@@ -448,6 +449,8 @@ def sstate_package(ss, d):
     bb.mkdirhier(sstatebuild)
     bb.mkdirhier(os.path.dirname(sstatepkg))
     for state in ss['dirs']:
+        if not os.path.exists(state[1]):
+            continue
         srcbase = state[0].rstrip("/").rsplit('/', 1)[0]
         for walkroot, dirs, files in os.walk(state[1]):
             for file in files:
Signature · 1 line
1.7.10.4