mirror of
https://git.yoctoproject.org/poky
synced 2026-09-19 00:49:33 +02:00
opkg: finalize the change to var directory
commit 1d0757f16b changes opkg run state from
/usr/lib/opkg to /var/lib/opkg, which however is incomplete and still many
important information is kept under old directory including postinst methods.
This makes latest boot into a mess.
So finalize this movement to /var here. Fix [BUGID #229]
Signed-off-by: Kevin Tian <kevin.tian@intel.com>
This commit is contained in:
@@ -8,6 +8,8 @@ ROOTFS_PKGMANAGE_BOOTSTRAP = "run-postinsts"
|
|||||||
do_rootfs[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
|
do_rootfs[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
|
||||||
do_rootfs[recrdeptask] += "do_package_write_deb"
|
do_rootfs[recrdeptask] += "do_package_write_deb"
|
||||||
|
|
||||||
|
opkglibdir = "${localstatedir}/lib/opkg"
|
||||||
|
|
||||||
fakeroot rootfs_deb_do_rootfs () {
|
fakeroot rootfs_deb_do_rootfs () {
|
||||||
set +e
|
set +e
|
||||||
mkdir -p ${IMAGE_ROOTFS}/var/dpkg/info
|
mkdir -p ${IMAGE_ROOTFS}/var/dpkg/info
|
||||||
@@ -120,13 +122,13 @@ fakeroot rootfs_deb_do_rootfs () {
|
|||||||
set -e
|
set -e
|
||||||
|
|
||||||
# Hacks to allow opkg's update-alternatives and opkg to coexist for now
|
# Hacks to allow opkg's update-alternatives and opkg to coexist for now
|
||||||
mkdir -p ${IMAGE_ROOTFS}/usr/lib/opkg
|
mkdir -p ${IMAGE_ROOTFS}${opkglibdir}
|
||||||
if [ -e ${IMAGE_ROOTFS}/var/dpkg/alternatives ]; then
|
if [ -e ${IMAGE_ROOTFS}/var/dpkg/alternatives ]; then
|
||||||
rmdir ${IMAGE_ROOTFS}/var/dpkg/alternatives
|
rmdir ${IMAGE_ROOTFS}/var/dpkg/alternatives
|
||||||
fi
|
fi
|
||||||
ln -s /usr/lib/opkg/alternatives ${IMAGE_ROOTFS}/var/dpkg/alternatives
|
ln -s ${opkglibdir}/alternatives ${IMAGE_ROOTFS}/var/dpkg/alternatives
|
||||||
ln -s /var/dpkg/info ${IMAGE_ROOTFS}/usr/lib/opkg/info
|
ln -s /var/dpkg/info ${IMAGE_ROOTFS}${opkglibdir}/info
|
||||||
ln -s /var/dpkg/status ${IMAGE_ROOTFS}/usr/lib/opkg/status
|
ln -s /var/dpkg/status ${IMAGE_ROOTFS}${opkglibdir}/status
|
||||||
|
|
||||||
${ROOTFS_POSTPROCESS_COMMAND}
|
${ROOTFS_POSTPROCESS_COMMAND}
|
||||||
|
|
||||||
@@ -154,6 +156,6 @@ rootfs_deb_log_check() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
remove_packaging_data_files() {
|
remove_packaging_data_files() {
|
||||||
rm -rf ${IMAGE_ROOTFS}/usr/lib/opkg/
|
rm -rf ${IMAGE_ROOTFS}${opkglibdir}
|
||||||
rm -rf ${IMAGE_ROOTFS}/usr/dpkg/
|
rm -rf ${IMAGE_ROOTFS}/usr/dpkg/
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -18,6 +18,8 @@ OPKG_PREPROCESS_COMMANDS = "package_update_index_ipk; package_generate_ipkg_conf
|
|||||||
|
|
||||||
OPKG_POSTPROCESS_COMMANDS = "ipk_insert_feed_uris"
|
OPKG_POSTPROCESS_COMMANDS = "ipk_insert_feed_uris"
|
||||||
|
|
||||||
|
opkglibdir = "${localstatedir}/lib/opkg"
|
||||||
|
|
||||||
fakeroot rootfs_ipk_do_rootfs () {
|
fakeroot rootfs_ipk_do_rootfs () {
|
||||||
set -x
|
set -x
|
||||||
|
|
||||||
@@ -27,7 +29,7 @@ fakeroot rootfs_ipk_do_rootfs () {
|
|||||||
${OPKG_PREPROCESS_COMMANDS}
|
${OPKG_PREPROCESS_COMMANDS}
|
||||||
|
|
||||||
mkdir -p ${T}/
|
mkdir -p ${T}/
|
||||||
mkdir -p ${IMAGE_ROOTFS}/usr/lib/opkg/
|
mkdir -p ${IMAGE_ROOTFS}${opkglibdir}
|
||||||
|
|
||||||
opkg-cl ${IPKG_ARGS} update
|
opkg-cl ${IPKG_ARGS} update
|
||||||
|
|
||||||
@@ -59,12 +61,12 @@ fakeroot rootfs_ipk_do_rootfs () {
|
|||||||
${OPKG_POSTPROCESS_COMMANDS}
|
${OPKG_POSTPROCESS_COMMANDS}
|
||||||
${ROOTFS_POSTINSTALL_COMMAND}
|
${ROOTFS_POSTINSTALL_COMMAND}
|
||||||
|
|
||||||
for i in ${IMAGE_ROOTFS}${libdir}/opkg/info/*.preinst; do
|
for i in ${IMAGE_ROOTFS}${opkglibdir}/info/*.preinst; do
|
||||||
if [ -f $i ] && ! sh $i; then
|
if [ -f $i ] && ! sh $i; then
|
||||||
opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .preinst`
|
opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .preinst`
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
for i in ${IMAGE_ROOTFS}${libdir}/opkg/info/*.postinst; do
|
for i in ${IMAGE_ROOTFS}${opkglibdir}/info/*.postinst; do
|
||||||
if [ -f $i ] && ! sh $i configure; then
|
if [ -f $i ] && ! sh $i configure; then
|
||||||
opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .postinst`
|
opkg-cl ${IPKG_ARGS} flag unpacked `basename $i .postinst`
|
||||||
fi
|
fi
|
||||||
@@ -75,7 +77,7 @@ fakeroot rootfs_ipk_do_rootfs () {
|
|||||||
|
|
||||||
${ROOTFS_POSTPROCESS_COMMAND}
|
${ROOTFS_POSTPROCESS_COMMAND}
|
||||||
|
|
||||||
rm -f ${IMAGE_ROOTFS}${libdir}/opkg/lists/*
|
rm -f ${IMAGE_ROOTFS}${opkglibdir}/lists/*
|
||||||
|
|
||||||
log_check rootfs
|
log_check rootfs
|
||||||
}
|
}
|
||||||
@@ -102,7 +104,7 @@ rootfs_ipk_log_check() {
|
|||||||
|
|
||||||
rootfs_ipk_write_manifest() {
|
rootfs_ipk_write_manifest() {
|
||||||
manifest=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.manifest
|
manifest=${DEPLOY_DIR_IMAGE}/${IMAGE_NAME}.rootfs.manifest
|
||||||
cp ${IMAGE_ROOTFS}/usr/lib/opkg/status $manifest
|
cp ${IMAGE_ROOTFS}${opkglibdir}/status $manifest
|
||||||
|
|
||||||
sed '/Depends/d' -i $manifest
|
sed '/Depends/d' -i $manifest
|
||||||
sed '/Status/d' -i $manifest
|
sed '/Status/d' -i $manifest
|
||||||
@@ -115,16 +117,16 @@ rootfs_ipk_write_manifest() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
remove_packaging_data_files() {
|
remove_packaging_data_files() {
|
||||||
rm -rf ${IMAGE_ROOTFS}/usr/lib/opkg/
|
rm -rf ${IMAGE_ROOTFS}${opkglibdir}
|
||||||
# We need the directory for the package manager lock
|
# We need the directory for the package manager lock
|
||||||
mkdir ${IMAGE_ROOTFS}/usr/lib/opkg
|
mkdir ${IMAGE_ROOTFS}${opkglibdir}
|
||||||
}
|
}
|
||||||
|
|
||||||
install_all_locales() {
|
install_all_locales() {
|
||||||
|
|
||||||
PACKAGES_TO_INSTALL=""
|
PACKAGES_TO_INSTALL=""
|
||||||
|
|
||||||
INSTALLED_PACKAGES=`grep ^Package: ${IMAGE_ROOTFS}${libdir}/opkg/status |sed "s/^Package: //"|egrep -v -- "(-locale-|-dev$|-doc$|^kernel|^glibc|^ttf|^task|^perl|^python)"`
|
INSTALLED_PACKAGES=`grep ^Package: ${IMAGE_ROOTFS}${opkglibdir}/status |sed "s/^Package: //"|egrep -v -- "(-locale-|-dev$|-doc$|^kernel|^glibc|^ttf|^task|^perl|^python)"`
|
||||||
|
|
||||||
for pkg in $INSTALLED_PACKAGES
|
for pkg in $INSTALLED_PACKAGES
|
||||||
do
|
do
|
||||||
|
|||||||
@@ -20,6 +20,8 @@ AWKPOSTINSTSCRIPT = "${POKYBASE}/scripts/rootfs_rpm-extract-postinst.awk"
|
|||||||
RPM_PREPROCESS_COMMANDS = "package_update_index_rpm; package_generate_rpm_conf"
|
RPM_PREPROCESS_COMMANDS = "package_update_index_rpm; package_generate_rpm_conf"
|
||||||
RPM_POSTPROCESS_COMMANDS = ""
|
RPM_POSTPROCESS_COMMANDS = ""
|
||||||
|
|
||||||
|
opkglibdir = "${localstatedir}/lib/opkg"
|
||||||
|
|
||||||
fakeroot rootfs_rpm_do_rootfs () {
|
fakeroot rootfs_rpm_do_rootfs () {
|
||||||
set +x
|
set +x
|
||||||
|
|
||||||
@@ -164,7 +166,7 @@ rootfs_rpm_log_check() {
|
|||||||
|
|
||||||
remove_packaging_data_files() {
|
remove_packaging_data_files() {
|
||||||
exit 1
|
exit 1
|
||||||
rm -rf ${IMAGE_ROOTFS}/usr/lib/opkg/
|
rm -rf ${IMAGE_ROOTFS}${opkglibdir}
|
||||||
}
|
}
|
||||||
|
|
||||||
install_all_locales() {
|
install_all_locales() {
|
||||||
@@ -172,7 +174,7 @@ install_all_locales() {
|
|||||||
|
|
||||||
PACKAGES_TO_INSTALL=""
|
PACKAGES_TO_INSTALL=""
|
||||||
|
|
||||||
INSTALLED_PACKAGES=`grep ^Package: ${IMAGE_ROOTFS}${libdir}/opkg/status |sed "s/^Package: //"|egrep -v -- "(-locale-|-dev$|-doc$|^kernel|^glibc|^ttf|^task|^perl|^python)"`
|
INSTALLED_PACKAGES=`grep ^Package: ${IMAGE_ROOTFS}${opkglibdir}/status |sed "s/^Package: //"|egrep -v -- "(-locale-|-dev$|-doc$|^kernel|^glibc|^ttf|^task|^perl|^python)"`
|
||||||
|
|
||||||
for pkg in $INSTALLED_PACKAGES
|
for pkg in $INSTALLED_PACKAGES
|
||||||
do
|
do
|
||||||
|
|||||||
@@ -22,10 +22,10 @@ do_configure_prepend() {
|
|||||||
|
|
||||||
inherit autotools pkgconfig
|
inherit autotools pkgconfig
|
||||||
|
|
||||||
target_libdir := "${libdir}"
|
target_localstatedir := "${localstatedir}"
|
||||||
EXTRA_OECONF = "--with-opkglibdir=${localstatedir}/lib"
|
EXTRA_OECONF = "--with-opkglibdir=${localstatedir}/lib"
|
||||||
EXTRA_OECONF_virtclass-native = "--with-opkglibdir=${target_libdir} --disable-gpg --disable-curl --disable-openssl"
|
EXTRA_OECONF_virtclass-native = "--with-opkglibdir=${target_localstatedir}/lib --disable-gpg --disable-curl --disable-openssl"
|
||||||
EXTRA_OECONF_virtclass-nativesdk = "--with-opkglibdir=${target_libdir} --disable-gpg --disable-curl --disable-openssl"
|
EXTRA_OECONF_virtclass-nativesdk = "--with-opkglibdir=${target_localstatedir}/lib --disable-gpg --disable-curl --disable-openssl"
|
||||||
|
|
||||||
#PROVIDES_append_virtclass-native = "virtual/update-alternatives-native"
|
#PROVIDES_append_virtclass-native = "virtual/update-alternatives-native"
|
||||||
#RPROVIDES_${PN} += "update-alternatives-native"
|
#RPROVIDES_${PN} += "update-alternatives-native"
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ SRC_URI = "http://opkg.googlecode.com/files/opkg-${PV}.tar.gz \
|
|||||||
file://headerfix.patch \
|
file://headerfix.patch \
|
||||||
"
|
"
|
||||||
|
|
||||||
PR = "r2"
|
PR = "r3"
|
||||||
|
|
||||||
PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth"
|
PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth"
|
||||||
|
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ SRC_URI = "svn://opkg.googlecode.com/svn;module=trunk;proto=http \
|
|||||||
S = "${WORKDIR}/trunk"
|
S = "${WORKDIR}/trunk"
|
||||||
|
|
||||||
PV = "0.0+svnr${SRCREV}"
|
PV = "0.0+svnr${SRCREV}"
|
||||||
PR = "r14"
|
PR = "r15"
|
||||||
|
|
||||||
PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth"
|
PACKAGES =+ "libopkg-dev libopkg update-alternatives-cworth"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user