From d950ef40a3eae4b54cc62828e66d84a62d78c447 Mon Sep 17 00:00:00 2001 From: Laurentiu Palcu Date: Mon, 13 Jan 2014 10:16:43 +0200 Subject: Cleanup image,rootfs_ipk,package_ipk bbclass files This commit cleans up the functions that were ported to python. Signed-off-by: Laurentiu Palcu --- meta/classes/package_ipk.bbclass | 197 +-------------------------------------- 1 file changed, 1 insertion(+), 196 deletions(-) (limited to 'meta/classes/package_ipk.bbclass') diff --git a/meta/classes/package_ipk.bbclass b/meta/classes/package_ipk.bbclass index 73446d6c59..68c8580761 100644 --- a/meta/classes/package_ipk.bbclass +++ b/meta/classes/package_ipk.bbclass @@ -10,207 +10,12 @@ PKGWRITEDIRIPK = "${WORKDIR}/deploy-ipks" # Program to be used to build opkg packages OPKGBUILDCMD ??= "opkg-build" -OPKG_ARGS = "-f $INSTALL_CONF_IPK -o $INSTALL_ROOTFS_IPK --force_postinstall --prefer-arch-to-version" +OPKG_ARGS = "--force_postinstall --prefer-arch-to-version" OPKG_ARGS += "${@['', '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS", True) == "1"]}" OPKG_ARGS += "${@['', '--add-exclude ' + ' --add-exclude '.join((d.getVar('PACKAGE_EXCLUDE', True) or "").split())][(d.getVar("PACKAGE_EXCLUDE", True) or "") != ""]}" OPKGLIBDIR = "${localstatedir}/lib" -package_tryout_install_multilib_ipk() { - #try install multilib - multilib_tryout_dirs="" - for item in ${MULTILIB_VARIANTS}; do - local target_rootfs="${MULTILIB_TEMP_ROOTFS}/${item}" - local ipkg_args="${OPKG_ARGS}" - local selected_pkg="" - local pkgname_prefix="${item}-" - local pkgname_len=${#pkgname_prefix} - for pkg in ${INSTALL_PACKAGES_MULTILIB_IPK}; do - local pkgname=$(echo $pkg | awk -v var=$pkgname_len '{ pkgname=substr($1, 1, var); print pkgname; }' ) - if [ ${pkgname} = ${pkgname_prefix} ]; then - selected_pkg="${selected_pkg} ${pkg}" - fi - done - if [ ! -z "${selected_pkg}" ]; then - rm -f ${target_rootfs} - mkdir -p ${target_rootfs}/${opkglibdir} - opkg-cl ${ipkg_args} update - opkg-cl ${ipkg_args} install ${selected_pkg} - multilib_tryout_dirs="${multilib_tryout_dirs} ${target_rootfs}" - fi - done -} - -split_multilib_packages() { - INSTALL_PACKAGES_NORMAL_IPK="" - INSTALL_PACKAGES_MULTILIB_IPK="" - for pkg in ${INSTALL_PACKAGES_IPK}; do - is_multilib=0 - for item in ${MULTILIB_VARIANTS}; do - local pkgname_prefix="${item}-" - local pkgname_len=${#pkgname_prefix} - local pkgname=$(echo $pkg | awk -v var=$pkgname_len '{ pkgname=substr($1, 1, var); print pkgname; }' ) - if [ ${pkgname} = ${pkgname_prefix} ]; then - is_multilib=1 - break - fi - done - - if [ ${is_multilib} = 0 ]; then - INSTALL_PACKAGES_NORMAL_IPK="${INSTALL_PACKAGES_NORMAL_IPK} ${pkg}" - else - INSTALL_PACKAGES_MULTILIB_IPK="${INSTALL_PACKAGES_MULTILIB_IPK} ${pkg}" - fi - done -} - -# -# install a bunch of packages using opkg -# the following shell variables needs to be set before calling this func: -# INSTALL_ROOTFS_IPK - install root dir -# INSTALL_CONF_IPK - configuration file -# INSTALL_PACKAGES_IPK - packages to be installed -# INSTALL_PACKAGES_ATTEMPTONLY_IPK - packages attemped to be installed only -# INSTALL_PACKAGES_LINGUAS_IPK - additional packages for uclibc -# INSTALL_TASK_IPK - task name - -package_install_internal_ipk() { - - local target_rootfs="${INSTALL_ROOTFS_IPK}" - local package_attemptonly="${INSTALL_PACKAGES_ATTEMPTONLY_IPK}" - local package_linguas="${INSTALL_PACKAGES_LINGUAS_IPK}" - local task="${INSTALL_TASK_IPK}" - - split_multilib_packages - - local package_to_install="${INSTALL_PACKAGES_NORMAL_IPK}" - local package_multilib="${INSTALL_PACKAGES_MULTILIB_IPK}" - - mkdir -p ${target_rootfs}${OPKGLIBDIR}/opkg - touch ${target_rootfs}${OPKGLIBDIR}/opkg/status - - local ipkg_args="${OPKG_ARGS}" - - opkg-cl ${ipkg_args} update - - for i in ${package_linguas}; do - opkg-cl ${ipkg_args} install $i - done - - if [ ! -z "${package_to_install}" ]; then - opkg-cl ${ipkg_args} install ${package_to_install} - fi - - if [ ! -z "${package_attemptonly}" ]; then - opkg-cl ${ipkg_args} install ${package_attemptonly} > "`dirname ${BB_LOGFILE}`/log.do_${task}_attemptonly.${PID}" || true - fi - - package_tryout_install_multilib_ipk - if [ ! -z "${MULTILIB_CHECK_FILE}" ]; then - #sanity check - multilib_sanity_check ${target_rootfs} ${multilib_tryout_dirs} || exit 1 - fi - - if [ ! -z "${package_multilib}" ]; then - opkg-cl ${ipkg_args} install ${package_multilib} - fi -} - -ipk_log_check() { - target="$1" - lf_path="$2" - - lf_txt="`cat $lf_path`" - for keyword_die in "exit 1" "Collected errors" ERR Fail - do - if (echo "$lf_txt" | grep -v log_check | grep "$keyword_die") >/dev/null 2>&1 - then - echo "log_check: There were error messages in the logfile" - printf "log_check: Matched keyword: [$keyword_die]\n\n" - echo "$lf_txt" | grep -v log_check | grep -C 5 "$keyword_die" - echo "" - do_exit=1 - fi - done - test "$do_exit" = 1 && exit 1 - true -} - -# -# Update the Packages index files in ${DEPLOY_DIR_IPK} -# -package_update_index_ipk () { - #set -x - - ipkgarchs="${ALL_MULTILIB_PACKAGE_ARCHS} ${SDK_PACKAGE_ARCHS}" - - if [ ! -z "${DEPLOY_KEEP_PACKAGES}" ]; then - return - fi - - packagedirs="${DEPLOY_DIR_IPK}" - for arch in $ipkgarchs; do - packagedirs="$packagedirs ${DEPLOY_DIR_IPK}/$arch" - done - - multilib_archs="${MULTILIB_ARCHS}" - for arch in $multilib_archs; do - packagedirs="$packagedirs ${DEPLOY_DIR_IPK}/$arch" - done - - found=0 - for pkgdir in $packagedirs; do - if [ -e $pkgdir/ ]; then - found=1 - touch $pkgdir/Packages - flock $pkgdir/Packages.flock -c "opkg-make-index -r $pkgdir/Packages -p $pkgdir/Packages -m $pkgdir/" - fi - done - if [ "$found" != "1" ]; then - bbfatal "There are no packages in ${DEPLOY_DIR_IPK}!" - fi -} - -# -# Generate an ipkg conf file ${IPKGCONF_TARGET} suitable for use against -# the target system and an ipkg conf file ${IPKGCONF_SDK} suitable for -# use against the host system in sdk builds -# -package_generate_ipkg_conf () { - package_generate_archlist - echo "src oe file:${DEPLOY_DIR_IPK}" >> ${IPKGCONF_SDK} - ipkgarchs="${SDK_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_SDK} - fi - done - - echo "src oe file:${DEPLOY_DIR_IPK}" >> ${IPKGCONF_TARGET} - 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 -} - -package_generate_archlist () { - ipkgarchs="${SDK_PACKAGE_ARCHS}" - priority=1 - for arch in $ipkgarchs; do - echo "arch $arch $priority" >> ${IPKGCONF_SDK} - priority=$(expr $priority + 5) - done - - ipkgarchs="${ALL_MULTILIB_PACKAGE_ARCHS}" - priority=1 - for arch in $ipkgarchs; do - echo "arch $arch $priority" >> ${IPKGCONF_TARGET} - priority=$(expr $priority + 5) - done -} - python do_package_ipk () { import re, copy import textwrap -- cgit 1.2.3-korg