Re: [PATCH 2/4] opkg-utils: add update-alternatives PACKAGECONFIG

Christopher Larson
2016-01-15T20:07:28Z

[-- Attachment #1: Type: text/plain, Size: 3385 bytes --]

On Fri, Jan 15, 2016 at 2:23 AM, Robert Yang <liezhi.yang@windriver.com>
wrote:

>
> I've afraid this patch can't work well, when opkg-utils doesn't provide
> virtual/update-alternatives, then chkconfig would be built and there would
> be dependency loops for example,
>
> PACKAGECONFIG = "python"
> $ bitbake core-image-minimal
>
> [snip]
> ERROR:
> Dependency loop #1 found:
> Task 747 (/buildarea/lyang1/poky/meta/recipes-support/libpcre/
> libpcre_8.38.bb, do_packagedata) (dependent Tasks ['libpcre, do_package'])
> Task 2067 (/buildarea/lyang1/poky/meta/recipes-extended/slang/
> slang_2.2.4.bb, do_package) (dependent Tasks ['gcc-runtime,
> do_packagedata', 'pseudo, do_populate_sysroot', 'slang, do_install',
> 'libpcre, do_packagedata', 'libtool-cross, do_packagedata', 'glibc,
> do_packagedata', 'rpm, do_populate_sysroot'])
> Task 2064 (/buildarea/lyang1/poky/meta/recipes-extended/slang/
> slang_2.2.4.bb, do_packagedata) (dependent Tasks ['slang, do_package'])
> Task 1876 (/buildarea/lyang1/poky/meta/recipes-extended/newt/
> libnewt_0.52.18.bb, do_package) (dependent Tasks ['slang,
> do_packagedata', 'gcc-runtime, do_packagedata', 'pseudo,
> do_populate_sysroot', 'libnewt, do_install', 'libtool-cross,
> do_packagedata', 'glibc, do_packagedata', 'popt, do_packagedata', 'rpm,
> do_populate_sysroot'])
> Task 1873 (/buildarea/lyang1/poky/meta/recipes-extended/newt/
> libnewt_0.52.18.bb, do_packagedata) (dependent Tasks ['libnewt,
> do_package'])
> Task 1405 (/buildarea/lyang1/poky/meta/recipes-extended/chkconfig/
> chkconfig_1.3.58.bb, do_package) (dependent Tasks ['gcc-runtime,
> do_packagedata', 'pseudo, do_populate_sysroot', 'glibc, do_packagedata',
> 'libnewt, do_packagedata', 'chkconfig, do_install', 'popt, do_packagedata',
> 'gettext, do_packagedata', 'rpm, do_populate_sysroot'])
> Task 1402 (/buildarea/lyang1/poky/meta/recipes-extended/chkconfig/
> chkconfig_1.3.58.bb, do_packagedata) (dependent Tasks ['chkconfig,
> do_package'])
> Task 853 (/buildarea/lyang1/poky/meta/recipes-extended/bzip2/
> bzip2_1.0.6.bb, do_package) (dependent Tasks ['gcc-runtime,
> do_packagedata', 'bzip2, do_install_ptest_base', 'bzip2, do_install',
> 'libtool-cross, do_packagedata', 'glibc, do_packagedata', 'pseudo,
> do_populate_sysroot', 'chkconfig, do_packagedata', 'rpm,
> do_populate_sysroot'])
> Task 850 (/buildarea/lyang1/poky/meta/recipes-extended/bzip2/
> bzip2_1.0.6.bb, do_packagedata) (dependent Tasks ['bzip2, do_package'])
> Task 750 (/buildarea/lyang1/poky/meta/recipes-support/libpcre/
> libpcre_8.38.bb, do_package) (dependent Tasks ['libpcre,
> do_install_ptest_base', 'libpcre, do_install', 'gcc-runtime,
> do_packagedata', 'pseudo, do_populate_sysroot', 'libtool-cross,
> do_packagedata', 'glibc, do_packagedata', 'bzip2, do_packagedata', 'zlib,
> do_packagedata', 'rpm, do_populate_sysroot'])

Afaict it should work for the native case, just not target, if you use the
chkconfig-alternatives-native recipe. In meta-mentor we have that recipe
for target as well, to cover both cases, I'll see about submitting that.
We've been using the chkconfig update-alternatives implementation for a few
releases now.
--
Christopher Larson
kergoth at gmail dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics

[-- Attachment #2: Type: text/html, Size: 4800 bytes --]