[OE-core] [PATCH V2] dnf, libdnf: Ignore if PACKAGE_CLASSES does not have rpm

Khem Raj raj.khem at gmail.com
Thu Feb 13 06:01:07 UTC 2020


On Wed, Feb 12, 2020 at 8:49 PM Alexander Kanavin
<alex.kanavin at gmail.com> wrote:
>
> But you do not need to fix or touch dnf at all. You only need to adjust rpm packaging and split it in two parts instead of bundling everything into a single package.
>

when we do world builds without package_rpm, dnf and related packages
get compiled which is unnecessary and moreover wrong and when we mark
libsolv to enable rpmdb only for package_rpm, this becomes even more evident.

Perhaps, I am missing what you intend to convey, in that case maybe you can send
code changes to support what you are intending here.

> Alex
>
> On Wed 12. Feb 2020 at 23.16, Khem Raj <raj.khem at gmail.com> wrote:
>>
>> On Wed, Feb 12, 2020 at 2:00 PM Alexander Kanavin
>> <alex.kanavin at gmail.com> wrote:
>> >
>> > I would still prefer to just split rpm packaging into binaries and libraries, and avoid the need to blacklist and tweak recipes based on what PACKAGE_CLASSES is set to altogether. That setting should not leak into recipes, and should only matter from do_package onwards. Can you look into the rpm recipe please?
>> >
>>
>>  dnf and dnf related packages expecting rpmdb support in libresolv. I
>> do not know dnf well enough to fix it and moreover it has no direct
>> use for my usecase either. I also don't see a point of entertaining
>> dnf for non-rpm backends. Its not intended for that either even if we
>> were to make dnf not want rpmdb what good will it do to build for
>> distros who do not use rpm. These changes do not change poky defaults
>> which use rpm as default. OE-core does not and I dont know of any
>> opkg user who also has rpmdb needed.
>>
>> > Alex
>> >
>> > On Wed, 12 Feb 2020 at 20:19, Khem Raj <raj.khem at gmail.com> wrote:
>> >>
>> >> dnf does not work with opkg or dpkg/apt anyway
>> >>
>> >> Signed-off-by: Khem Raj <raj.khem at gmail.com>
>> >> ---
>> >> v2: Use PNBLACKLIST instead of anon python
>> >>
>> >>  meta/recipes-devtools/dnf/dnf_4.2.2.bb        | 2 ++
>> >>  meta/recipes-devtools/libdnf/libdnf_0.28.1.bb | 1 +
>> >>  2 files changed, 3 insertions(+)
>> >>
>> >> diff --git a/meta/recipes-devtools/dnf/dnf_4.2.2.bb b/meta/recipes-devtools/dnf/dnf_4.2.2.bb
>> >> index f38167f1ad..220f1aabbd 100644
>> >> --- a/meta/recipes-devtools/dnf/dnf_4.2.2.bb
>> >> +++ b/meta/recipes-devtools/dnf/dnf_4.2.2.bb
>> >> @@ -84,3 +84,5 @@ SYSTEMD_SERVICE_${PN} = "dnf-makecache.service dnf-makecache.timer \
>> >>                           dnf-automatic-notifyonly.service dnf-automatic-notifyonly.timer \
>> >>  "
>> >>  SYSTEMD_AUTO_ENABLE ?= "disable"
>> >> +
>> >> +PNBLACKLIST[dnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'does not build correctly without package_rpm in PACKAGE_CLASSES', d)}"
>> >> diff --git a/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb b/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb
>> >> index 882c435b32..49afa04812 100644
>> >> --- a/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb
>> >> +++ b/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb
>> >> @@ -26,4 +26,5 @@ EXTRA_OECMAKE_append_class-native = " -DWITH_GIR=OFF"
>> >>  EXTRA_OECMAKE_append_class-nativesdk = " -DWITH_GIR=OFF"
>> >>
>> >>  BBCLASSEXTEND = "native nativesdk"
>> >> +PNBLACKLIST[libdnf] ?= "${@bb.utils.contains('PACKAGE_CLASSES', 'package_rpm', '', 'does not build correctly without package_rpm in PACKAGE_CLASSES', d)}"
>> >>
>> >> --
>> >> 2.25.0
>> >>
>> >> --
>> >> _______________________________________________
>> >> Openembedded-core mailing list
>> >> Openembedded-core at lists.openembedded.org
>> >> http://lists.openembedded.org/mailman/listinfo/openembedded-core


More information about the Openembedded-core mailing list