From c7f52855f97716284de0e1a279ef121d51766d08 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Wed, 3 Apr 2013 08:10:53 +0100 Subject: 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]. (From OE-Core rev: ca36be708e54c0c86535bc8512295c76c48f6cf5) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- meta/classes/sstate.bbclass | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 3f4f43d47a..67ddc466ce 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass @@ -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: -- cgit v1.2.3-54-g00ecf