Skip to content

Missing deps discovered in per-recipe builds

Martin Jansa openembedded-core 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest8 patches 5 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/8(lib)telepathy*: add missing dependency on libxslt-nativemeta/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb meta/recipes-connectivity/telepathy/telepathy-glib_0.20.1.bb meta/recipes-connectivity/telepathy/telepathy-idle_0.1.14.bb +2 more+5 -80 replies
2/8gst-plugins-bad: inherit gsettingsmeta/recipes-multimedia/gstreamer/gst-plugins-bad_0.10.23.bb+1 -10 replies
3/8gst-plugins-base: add missing dependency on glib-2.0-nativemeta/recipes-multimedia/gstreamer/gst-plugins-base_0.10.36.bb+1 -10 replies
4/8taglib: add missing dependency on zlibmeta/recipes-support/taglib/taglib_1.8.bb+2 -00 replies
5/8quota: inherit pkgconfigmeta/recipes-extended/quota/quota_4.01.bb+1 -10 replies
6/8libpam: inherit pkgconfigmeta/recipes-extended/pam/libpam_1.1.6.bb+1 -10 replies
7/8systemtap: inherit pkgconfigmeta/recipes-kernel/systemtap/systemtap_git.bb+1 -10 replies
8/8eglibc-locale: add missing dependency on virtual/${TARGET_PREFIX}binutilsmeta/recipes-core/eglibc/eglibc-locale.inc+5 -013 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/8] Missing deps discovered in per-recipe builds

I was using simple script to build each component alone:

#!/bin/bash

rm -rf tmp-eglibc/abi_version tmp-eglibc/buildstats tmp-eglibc/cache tmp-eglibc/deploy tmp-eglibc/log tmp-eglibc/pkgdata pseudodone tmp-eglibc/saved_tmpdir tmp-eglibc/sstate-control tmp-eglibc/stamps tmp-eglibc/sysroots tmp-eglibc/work-shared tmp-eglibc/work/* rm -rf log.*

ls -d buildhistory/packages/*/* | xargs -n 1 basename | sort -u > component.list
ncomponents=cat component.list | wc -l
i=1
for component in cat component.list; do
echo "Building component: ${component} ($i/$ncomponents)"
bitbake -c cleansstate ${component} | tee log.${component};
bitbake ${component} | tee -a log.${component};
rm -rf tmp-eglibc/abi_version tmp-eglibc/buildstats tmp-eglibc/cache tmp-eglibc/deploy tmp-eglibc/log tmp-eglibc/pkgdata pseudodone tmp-eglibc/saved_tmpdir tmp-eglibc/sstate-control tmp-eglibc/stamps tmp-eglibc/sysroots tmp-eglibc/work-shared tmp-eglibc/work/* i=expr $i + 1
done
grep "NOTE: Tasks Summary: Attempted.*failed.$" log.*

That should cover missing mandatory dependencies.
Comparing depends.dot files in buildhistory between incremental build and this per-component build should detect at least some autodetected dependencies. In per-component builds it can find only libraries already included in dependency tree, so dependencies lost in buildhistory aren't deterministic. Even better would be to run per-component build once after building world without removing tmp-eglibc, that will allow components to autodetect all possible libraries and then run another per-component build with removing tmp-eglibc which allows to detect libraries from dependency-tree.

The following changes since commit 3e1dbabbf33a2e461abc92ff10cd970fe604ee38:

sysstat: backport a patch to fix a parallel building error (2013-07-02 07:58:10 -0700)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib jansa/deps
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=jansa/deps

Martin Jansa (8):
(lib)telepathy*: add missing dependency on libxslt-native
gst-plugins-bad: inherit gsettings
gst-plugins-base: add missing dependency on glib-2.0-native
taglib: add missing dependency on zlib
quota: inherit pkgconfig
libpam: inherit pkgconfig
systemtap: inherit pkgconfig
eglibc-locale: add missing dependency on

    virtual/${TARGET_PREFIX}binutils
 meta/recipes-connectivity/telepathy/libtelepathy_0.3.3.bb            | 2 +-
 meta/recipes-connectivity/telepathy/telepathy-glib_0.20.1.bb         | 3 +--
 meta/recipes-connectivity/telepathy/telepathy-idle_0.1.14.bb         | 3 +--
 .../telepathy/telepathy-mission-control_5.14.0.bb                    | 4 +---
 meta/recipes-connectivity/telepathy/telepathy-python_0.15.19.bb      | 1 +
 meta/recipes-core/eglibc/eglibc-locale.inc                           | 5 +++++
 meta/recipes-extended/pam/libpam_1.1.6.bb                            | 2 +-
 meta/recipes-extended/quota/quota_4.01.bb                            | 2 +-
 meta/recipes-kernel/systemtap/systemtap_git.bb                       | 2 +-
 meta/recipes-multimedia/gstreamer/gst-plugins-bad_0.10.23.bb         | 2 +-
 meta/recipes-multimedia/gstreamer/gst-plugins-base_0.10.36.bb        | 2 +-
 meta/recipes-support/taglib/taglib_1.8.bb                            | 2 ++
 12 files changed, 17 insertions(+), 13 deletions(-)
Signature · 1 line
1.8.2.1