From: Mark Hatle Date: Tue, 13 Aug 2013 15:50:55 +0000 (-0500) Subject: package_deb.bbclass: Use the WORKDIR not SYSROOT for temp files X-Git-Tag: 2015-4~5488 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=2db14eaa0fcc080bc20fa9da985ffc05c3b21e2a;p=openembedded-core.git package_deb.bbclass: Use the WORKDIR not SYSROOT for temp files Previous debian APT configuration was using the sysroot directory. This not only polluted the sysroot, but violates the expectation that the sysroot is not modified by the rootfs installation. Signed-off-by: Mark Hatle Signed-off-by: Saul Wold --- diff --git a/meta/classes/package_deb.bbclass b/meta/classes/package_deb.bbclass index 663f6461c8..4980555764 100644 --- a/meta/classes/package_deb.bbclass +++ b/meta/classes/package_deb.bbclass @@ -10,6 +10,8 @@ DPKG_ARCH ?= "${TARGET_ARCH}" PKGWRITEDIRDEB = "${WORKDIR}/deploy-debs" +APTCONF_TARGET = "${WORKDIR}" + # # Update the Packages index files in ${DEPLOY_DIR_DEB} # @@ -63,8 +65,9 @@ package_install_internal_deb () { local package_linguas="${INSTALL_PACKAGES_LINGUAS_DEB}" local task="${INSTALL_TASK_DEB}" - rm -f ${STAGING_ETCDIR_NATIVE}/apt/sources.list.rev - rm -f ${STAGING_ETCDIR_NATIVE}/apt/preferences + mkdir -p ${APTCONF_TARGET}/apt + rm -f ${APTCONF_TARGET}/apt/sources.list.rev + rm -f ${APTCONF_TARGET}/apt/preferences priority=1 for arch in $archs; do @@ -72,15 +75,15 @@ package_install_internal_deb () { continue; fi - echo "deb file:${DEPLOY_DIR_DEB}/$arch/ ./" >> ${STAGING_ETCDIR_NATIVE}/apt/sources.list.rev + echo "deb file:${DEPLOY_DIR_DEB}/$arch/ ./" >> ${APTCONF_TARGET}/apt/sources.list.rev (echo "Package: *" echo "Pin: release l=$arch" echo "Pin-Priority: $(expr 800 + $priority)" - echo) >> ${STAGING_ETCDIR_NATIVE}/apt/preferences + echo) >> ${APTCONF_TARGET}/apt/preferences priority=$(expr $priority + 5) done - tac ${STAGING_ETCDIR_NATIVE}/apt/sources.list.rev > ${STAGING_ETCDIR_NATIVE}/apt/sources.list + tac ${APTCONF_TARGET}/apt/sources.list.rev > ${APTCONF_TARGET}/apt/sources.list # The params in deb package control don't allow character `_', so # change the arch's `_' to `-' in it. @@ -88,9 +91,9 @@ package_install_internal_deb () { cat "${STAGING_ETCDIR_NATIVE}/apt/apt.conf.sample" \ | sed -e "s#Architecture \".*\";#Architecture \"${dpkg_arch}\";#" \ | sed -e "s:#ROOTFS#:${target_rootfs}:g" \ - > "${STAGING_ETCDIR_NATIVE}/apt/apt-${task}.conf" + > "${APTCONF_TARGET}/apt/apt.conf" - export APT_CONFIG="${STAGING_ETCDIR_NATIVE}/apt/apt-${task}.conf" + export APT_CONFIG="${APTCONF_TARGET}/apt/apt.conf" mkdir -p ${target_rootfs}/var/lib/dpkg/info mkdir -p ${target_rootfs}/var/lib/dpkg/updates