diff options
author | Lianhao Lu <lianhao.lu@intel.com> | 2011-08-16 16:26:49 +0800 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2011-08-16 22:54:04 -0700 |
commit | b774bf44ef004276da12a83ebd69715c00b596ac (patch) | |
tree | 320290988559a45b0688fd0c51b768cef4585ec5 /meta/classes/package_ipk.bbclass | |
parent | 110ca8dcaee263bc3c8380bcb91f6ada20655c14 (diff) | |
download | openembedded-core-b774bf44ef004276da12a83ebd69715c00b596ac.tar.gz openembedded-core-b774bf44ef004276da12a83ebd69715c00b596ac.tar.bz2 openembedded-core-b774bf44ef004276da12a83ebd69715c00b596ac.zip |
package(_ipk).bbclass: opkg using ALL_MULTILIB_PACKAGE_ARCHS
[YOCTO #1345]
The new variable ALL_MULTILIB_PACKAGE_ARCHS contains all the values of
PACKAGE_ARCHS for each multilib variants. The opkg backend now uses this
new value insteald of the PACKAGE_ARCHS to update the opkg indexes and
to generate the opkg configuration files. This allows the normal
packages and multilib packages may be installed into the same rootfs.
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Diffstat (limited to 'meta/classes/package_ipk.bbclass')
-rw-r--r-- | meta/classes/package_ipk.bbclass | 30 |
1 files changed, 8 insertions, 22 deletions
diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass index 8ecf5111a8..e83aff8fe9 100644 --- a/meta/classes/package_ipk.bbclass +++ b/meta/classes/package_ipk.bbclass @@ -64,14 +64,13 @@ python package_ipk_install () { package_tryout_install_multilib_ipk() { #try install multilib multilib_tryout_dirs="" - for arch in ${MULTILIB_ARCHS}; do - local target_rootfs="${MULTILIB_TEMP_ROOTFS}/${arch}" + for item in ${MULTILIB_VARIANTS}; do + local target_rootfs="${MULTILIB_TEMP_ROOTFS}/${item}" local ipkg_args="-f ${INSTALL_CONF_IPK} -o ${target_rootfs} --force_overwrite" local selected_pkg="" - #strip the "ml" from package_arch - local pkgarch_prefix="${arch:2}-" - for pkg in "${INSTALL_PACKAGES_MULTILIB_IPK}"; do - if [ ${pkg:0:${#pkgarch_prefix}} == ${pkgarch_prefix} ]; then + local pkgname_prefix="${item}-" + for pkg in ${INSTALL_PACKAGES_MULTILIB_IPK}; do + if [ ${pkg:0:${#pkgname_prefix}} == ${pkgname_prefix} ]; then selected_pkg="${selected_pkg} ${pkg}" fi done @@ -163,7 +162,7 @@ ipk_log_check() { package_update_index_ipk () { set -x - ipkgarchs="${PACKAGE_ARCHS} ${SDK_PACKAGE_ARCHS}" + ipkgarchs="${ALL_MULTILIB_PACKAGE_ARCHS} ${SDK_PACKAGE_ARCHS}" if [ ! -z "${DEPLOY_KEEP_PACKAGES}" ]; then return @@ -203,19 +202,12 @@ package_generate_ipkg_conf () { done echo "src oe file:${DEPLOY_DIR_IPK}" >> ${IPKGCONF_TARGET} - ipkgarchs="${PACKAGE_ARCHS}" + ipkgarchs="${ALL_MULTILIB_PACKAGE_ARCHS}" for arch in $ipkgarchs; do if [ -e ${DEPLOY_DIR_IPK}/$arch/Packages ] ; then echo "src oe-$arch file:${DEPLOY_DIR_IPK}/$arch" >> ${IPKGCONF_TARGET} fi done - - multilib_archs="${MULTILIB_ARCHS}" - for arch in $multilib_archs; do - if [ -e ${DEPLOY_DIR_IPK}/$arch/Packages ] ; then - echo "src oe-$arch file:${DEPLOY_DIR_IPK}/$arch" >> ${IPKGCONF_TARGET} - fi - done } package_generate_archlist () { @@ -226,18 +218,12 @@ package_generate_archlist () { priority=$(expr $priority + 5) done - ipkgarchs="${PACKAGE_ARCHS}" + ipkgarchs="${ALL_MULTILIB_PACKAGE_ARCHS}" priority=1 for arch in $ipkgarchs; do echo "arch $arch $priority" >> ${IPKGCONF_TARGET} priority=$(expr $priority + 5) done - - multilib_archs="${MULTILIB_ARCHS}" - for arch in $multilib_archs; do - echo "arch $arch $priority" >> ${IPKGCONF_TARGET} - priority=$(expr $priority + 5) - done } python do_package_ipk () { |