From 5fc5e69f026bccc43cb5e5a46da63e3dd148be3d Mon Sep 17 00:00:00 2001 From: Michael Smith Date: Fri, 24 Sep 2010 12:50:00 -0400 Subject: package.bbclass: copy dotfiles in root D to PKGD Use shutil.copytree() to copy D ("image") to PKGD ("package"). The previous system("cp %s/* ...") missed dotfiles/dirs at the top-level. Signed-off-by: Michael Smith Acked-by: Chris Larson --- classes/package.bbclass | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'classes/package.bbclass') diff --git a/classes/package.bbclass b/classes/package.bbclass index e2a61bf3a7..6a290eea5e 100644 --- a/classes/package.bbclass +++ b/classes/package.bbclass @@ -356,15 +356,20 @@ python package_do_split_locales() { } python perform_packagecopy () { - dest = bb.data.getVar('D', d, True) - dvar = bb.data.getVar('PKGD', d, True) + import shutil + + installdest = bb.data.getVar('D', d, True) + pkgcopy = bb.data.getVar('PKGD', d, True) - bb.mkdirhier(dvar) + # Start package population by taking a copy of the installed + # files to operate on. Create missing parent directories of + # pkgcopy first (shutil.copytree() does this automatically but only + # in Python 2.5+). + bb.mkdirhier(pkgcopy) + shutil.rmtree(pkgcopy, True) - # Start by package population by taking a copy of the installed - # files to operate on - os.system('rm -rf %s/*' % (dvar)) - os.system('cp -pPR %s/* %s/' % (dest, dvar)) + # Preserve symlinks. + shutil.copytree(installdest, pkgcopy, symlinks=True) } python populate_packages () { -- cgit 1.2.3-korg