All of lore.kernel.org
 help / color / mirror / Atom feed
From: <Qi.Chen@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: [PATCH 00/18] Fix the problem of implicit bash dependency
Date: Fri, 29 Nov 2013 20:48:08 +0800	[thread overview]
Message-ID: <cover.1385728901.git.Qi.Chen@windriver.com> (raw)

From: Chen Qi <Qi.Chen@windriver.com>

If package A has implicit bash dependency but there's no explicit runtime
dependency written in its recipe, the rootfs task would fail if A is intalled
onto an image which doesn't have installed.

For example, if we add nfs-utils to core-image-minimal via:
    IMAGE_INSTALL_append = " nfs-utils"
and then build the image from a clean build (no previously built bash package in
the package repo), the build would fail for the reason of lack of bash package.

This patchset is an effort to solve this problem. After this patch, there's no
such problem in oe-core. But other layers also needs to be fixed for this problem.

//Chen Qi

P.S.
The bash dependency problem is automatically detected by the following script:

#!/bin/sh

if [ $# -lt 1 ]; then
    echo "$0 <rpm repo> [report file]"
    exit 1
fi

RPM_REPO="$1"
REPORT_FILE=${2:-bash-deps.report}
echo "Analyzing packages under $RPM_REPO ... "

for pkg in `find $RPM_REPO -name "*.rpm"`; do
    echo $pkg
    result="`rpm -qp --requires $pkg 2>/dev/null | grep -w bash | sort -u | sed -e 's/[ ]*$//'`"
    if [ "$result" = "/bin/bash" ]; then
    echo "MISS: <$pkg>" >> $REPORT_FILE
    else
    echo "OK: <$pkg>" >> $REPORT_FILE
    fi
done

echo "Done. Report could be found in $REPORT_FILE"

Please refer to https://bugzilla.yoctoproject.org/show_bug.cgi?id=5555 for more info.


The following changes since commit 7b9f4b2cd0fe6dc9a536a2db98ed93ffa8c05a8f:

  base/gcc-common: Ensure umask setting is consistent for shared workdir (2013-11-29 11:24:48 +0000)

are available in the git repository at:

  git://git.pokylinux.org/poky-contrib ChenQi/bash-deps
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/bash-deps

Chen Qi (18):
  linux-firmware: de-bash scripts to remove bash dependency
  apr: make the dev package rdepend on bash
  libpam: make libpam-xtests rdepend on bash
  hdparm: make wiper appear before hdparm in PACKAGES
  lsb: de-bash scripts to remove bash dependency
  xz: rdepend on bash
  dtc: make dtc-misc rdepend on bash
  lsbtest: de-bash script to remove bash dependency
  libtool: explicitly rdepend on bash
  rpm: fix RDEPENDS for rpm-build
  nfs-utils: add bash to RDEPENDS
  apt: explicitly rdepend on bash
  gzip: explicitly rdepend on bash
  pm-utils: explicitly rdepend on bash
  ltp: explicitly rdepend on bash
  kconfig-frontends: explicitly rdepend on bash
  pax-utils: add bash runtime dependency
  kernel.bbclass: make kernel-dev explicitly rdepend on bash

 meta/classes/kernel.bbclass                        |    1 +
 meta/recipes-bsp/pm-utils/pm-utils_1.4.1.bb        |    2 +-
 .../nfs-utils/nfs-utils_1.2.9.bb                   |    2 +-
 meta/recipes-devtools/apt/apt_0.9.9.4.bb           |    2 +-
 .../kconfig-frontends_3.12.0.0.bb                  |    1 +
 meta/recipes-devtools/libtool/libtool-2.4.2.inc    |    1 +
 meta/recipes-devtools/pax-utils/pax-utils_0.7.bb   |    2 +
 meta/recipes-devtools/rpm/rpm_5.4.9.bb             |    3 +-
 meta/recipes-extended/gzip/gzip.inc                |    2 +
 meta/recipes-extended/hdparm/hdparm_9.43.bb        |    2 +-
 meta/recipes-extended/lsb/lsb/lsb_killproc         |    2 +-
 meta/recipes-extended/lsb/lsb/lsb_log_message      |    2 +-
 meta/recipes-extended/lsb/lsb/lsb_pidofproc        |    2 +-
 meta/recipes-extended/lsb/lsb/lsb_start_daemon     |    2 +-
 meta/recipes-extended/lsb/lsbtest/LSB_Test.sh      |    4 +-
 meta/recipes-extended/ltp/ltp_20130904.bb          |    2 +-
 meta/recipes-extended/pam/libpam_1.1.6.bb          |    2 +-
 meta/recipes-extended/xz/xz_5.1.3alpha.bb          |    2 +
 meta/recipes-kernel/dtc/dtc.inc                    |    1 +
 .../files/0001-linux-firmware-de-bash.patch        |   47 ++++++++++++++++++++
 .../linux-firmware/linux-firmware_git.bb           |    3 +-
 meta/recipes-support/apr/apr_1.4.8.bb              |    1 +
 22 files changed, 73 insertions(+), 15 deletions(-)
 create mode 100644 meta/recipes-kernel/linux-firmware/files/0001-linux-firmware-de-bash.patch

-- 
1.7.9.5



             reply	other threads:[~2013-11-29 12:47 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-29 12:48 Qi.Chen [this message]
2013-11-29 12:48 ` [PATCH 01/18] linux-firmware: de-bash scripts to remove bash dependency Qi.Chen
2013-11-29 13:23   ` Richard Purdie
2013-12-02  1:55     ` ChenQi
2013-11-29 12:48 ` [PATCH 02/18] apr: make the dev package rdepend on bash Qi.Chen
2013-11-29 12:48 ` [PATCH 03/18] libpam: make libpam-xtests " Qi.Chen
2013-11-29 12:48 ` [PATCH 04/18] hdparm: make wiper appear before hdparm in PACKAGES Qi.Chen
2013-11-29 12:48 ` [PATCH 05/18] lsb: de-bash scripts to remove bash dependency Qi.Chen
2013-11-29 12:48 ` [PATCH 06/18] xz: rdepend on bash Qi.Chen
2013-12-03  0:57   ` Randy MacLeod
2013-11-29 12:48 ` [PATCH 07/18] dtc: make dtc-misc " Qi.Chen
2013-11-29 12:48 ` [PATCH 08/18] lsbtest: de-bash script to remove bash dependency Qi.Chen
2013-11-29 12:48 ` [PATCH 09/18] libtool: explicitly rdepend on bash Qi.Chen
2013-11-29 12:48 ` [PATCH 10/18] rpm: fix RDEPENDS for rpm-build Qi.Chen
2013-11-29 12:48 ` [PATCH 11/18] nfs-utils: add bash to RDEPENDS Qi.Chen
2013-11-29 12:48 ` [PATCH 12/18] apt: explicitly rdepend on bash Qi.Chen
2013-11-29 12:48 ` [PATCH 13/18] gzip: " Qi.Chen
2013-12-03  0:59   ` Randy MacLeod
2013-11-29 12:48 ` [PATCH 14/18] pm-utils: " Qi.Chen
2013-11-29 12:48 ` [PATCH 15/18] ltp: " Qi.Chen
2013-11-29 12:48 ` [PATCH 16/18] kconfig-frontends: " Qi.Chen
2013-11-29 12:48 ` [PATCH 17/18] pax-utils: add bash runtime dependency Qi.Chen
2013-11-29 12:48 ` [PATCH 18/18] kernel.bbclass: make kernel-dev explicitly rdepend on bash Qi.Chen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cover.1385728901.git.Qi.Chen@windriver.com \
    --to=qi.chen@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.