diff options
Diffstat (limited to 'classes/package_deb.bbclass')
-rw-r--r-- | classes/package_deb.bbclass | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/classes/package_deb.bbclass b/classes/package_deb.bbclass index f94771c6a3..d1e7f73e2a 100644 --- a/classes/package_deb.bbclass +++ b/classes/package_deb.bbclass @@ -9,7 +9,7 @@ DISTRO_EXTRA_RDEPENDS += "apt" IMAGE_PKGTYPE ?= "deb" # Map TARGET_ARCH to Debian's ideas about architectures -DPKG_ARCH ?= "${TARGET_ARCH}" +DPKG_ARCH ?= "${TARGET_ARCH}" DPKG_ARCH_x86 ?= "i386" DPKG_ARCH_i486 ?= "i386" DPKG_ARCH_i586 ?= "i386" @@ -276,3 +276,31 @@ python do_package_write_deb () { do_package_write_deb[dirs] = "${D}" addtask package_write_deb before do_package_write after do_package +do_package_update_index_deb[lockfiles] = "${DEPLOY_DIR_DEB}.lock" +do_package_update_index_deb[nostamp] = "1" +do_package_update_index_deb[recrdeptask] += "do_package_write_deb" +do_package_update_index_deb[depends] += "dpkg-native:do_populate_sysroot" + +do_package_update_index_deb () { + set -x + + if [ ! -z "${DEPLOY_KEEP_PACKAGES}" ]; then + return + fi + + cd "${DEPLOY_DIR_DEB}" + for arch in ${PACKAGE_ARCHS}; do + if [ -e "$arch" ] ; then + dpkg-scanpackages "$arch" | gzip > "$arch/Packages.gz" + fi + if [ -e "${BUILD_ARCH}-$arch-sdk" ] ; then + dpkg-scanpackages "${BUILD_ARCH}-$arch-sdk" | gzip > "${BUILD_ARCH}-$arch-sdk/Packages.gz" + fi + if [ -e "${SDK_SYS}-sdk-$arch" ] ; then + dpkg-scanpackages "${SDK_SYS}-sdk-$arch" | gzip > "${SDK_SYS}-sdk-$arch/Packages.gz" + fi + done + cd - +} + +addtask package_update_index_deb before do_rootfs |