If the nativelsb argument is not used, then create_locked_sstate_cache()
can get collisions when moving the files from the input_sstate_cache
to the output_sstate_cache.
The specific case where this was encountered was when a "universal"
nativelsb directory already existed in the input_sstate_cache.
Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
if fixedlsbstring:
nativedir = output_sstate_cache + '/' + nativelsbstring
if os.path.isdir(nativedir):
- os.rename(nativedir, output_sstate_cache + '/' + fixedlsbstring)
+ destdir = os.path.join(output_sstate_cache, fixedlsbstring)
+ bb.utils.mkdirhier(destdir)
+
+ dirlist = os.listdir(nativedir)
+ for i in dirlist:
+ src = os.path.join(nativedir, i)
+ dest = os.path.join(destdir, i)
+ os.rename(src, dest)