[oe-commits] Roman Khimov : package_ipk: optimize do_package_update_index_ipk
git version control
git at git.openembedded.org
Sun Jan 24 10:39:19 UTC 2010
Module: openembedded.git
Branch: holger/staging-branch
Commit: 524df43cdf5d3325e01a6091040bdf2e57ef7dfc
URL: http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=524df43cdf5d3325e01a6091040bdf2e57ef7dfc
Author: Roman Khimov <khimov at altell.ru>
Date: Wed Jun 17 09:41:59 2009 +0000
package_ipk: optimize do_package_update_index_ipk
If there are no package updates since last index update, don't re-create
indexes. Really helps when building something like 10 images.
Remove code duplication along the way.
Acked-by: Tom Rini <trini at embeddedalley.com>
---
classes/package_ipk.bbclass | 19 +++++++------------
1 files changed, 7 insertions(+), 12 deletions(-)
diff --git a/classes/package_ipk.bbclass b/classes/package_ipk.bbclass
index 420c892..9befd04 100644
--- a/classes/package_ipk.bbclass
+++ b/classes/package_ipk.bbclass
@@ -90,18 +90,13 @@ do_package_update_index_ipk () {
ipkg-make-index -r ${DEPLOY_DIR_IPK}/Packages -p ${DEPLOY_DIR_IPK}/Packages -l ${DEPLOY_DIR_IPK}/Packages.filelist -m ${DEPLOY_DIR_IPK}
for arch in $ipkgarchs; do
- if [ -e ${DEPLOY_DIR_IPK}/$arch/ ] ; then
- touch ${DEPLOY_DIR_IPK}/$arch/Packages
- ipkg-make-index -r ${DEPLOY_DIR_IPK}/$arch/Packages -p ${DEPLOY_DIR_IPK}/$arch/Packages -l ${DEPLOY_DIR_IPK}/$arch/Packages.filelist -m ${DEPLOY_DIR_IPK}/$arch/
- fi
- if [ -e ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/ ] ; then
- touch ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages
- ipkg-make-index -r ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages -p ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages -l ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/Packages.filelist -m ${DEPLOY_DIR_IPK}/${BUILD_ARCH}-$arch-sdk/
- fi
- if [ -e ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/ ] ; then
- touch ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages
- ipkg-make-index -r ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages -p ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages -l ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/Packages.filelist -m ${DEPLOY_DIR_IPK}/${SDK_SYS}-sdk-$arch/
- fi
+ for ipk_path in $arch ${BUILD_ARCH}-$arch-sdk ${SDK_SYS}-sdk-$arch; do
+ PACK_COUNT=`ls -t ${DEPLOY_DIR_IPK}/$ipk_path/ | head -n 4 | grep Packages | wc -l`
+ if [ -e ${DEPLOY_DIR_IPK}/$ipk_path/ -a "$PACK_COUNT" != "4" ] ; then
+ touch ${DEPLOY_DIR_IPK}/$ipk_path/Packages
+ ipkg-make-index -r ${DEPLOY_DIR_IPK}/$ipk_path/Packages -p ${DEPLOY_DIR_IPK}/$ipk_path/Packages -l ${DEPLOY_DIR_IPK}/$ipk_path/Packages.filelist -m ${DEPLOY_DIR_IPK}/$ipk_path/
+ fi
+ done
done
}
More information about the Openembedded-commits
mailing list