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.

(From OE-Core rev: 2db14eaa0fcc080bc20fa9da985ffc05c3b21e2a)

Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Mark Hatle 2013-08-13 10:50:55 -05:00 committed by Richard Purdie
parent 7ba54b91f8
commit dc5f6c3898
1 changed files with 10 additions and 7 deletions

View File

@ -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