Bug 95272 - freedesktop-sdk-base: Don't prefer RPM 4
Summary: freedesktop-sdk-base: Don't prefer RPM 4
Status: RESOLVED FIXED
Alias: None
Product: xdg-app
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Alexander Larsson
QA Contact: Alexander Larsson
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-04 22:49 UTC by Tristan Van Berkom
Modified: 2016-05-09 07:10 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Dont prefer old rpm (1.22 KB, text/plain)
2016-05-04 22:49 UTC, Tristan Van Berkom
Details
This patch removes the 4.11 configurations completely (1.18 KB, patch)
2016-05-06 18:46 UTC, Tristan Van Berkom
Details | Splinter Review

Description Tristan Van Berkom 2016-05-04 22:49:32 UTC
Created attachment 123479 [details]
Dont prefer old rpm

Current yocto distro.conf seems to prefer RPM 4.11 over the more recent packages, this seems to be an artifact inherited from gnome-continuous.

However, older rpm does not recognize the arm-unknown-linux-gnueabi triples for the armv7a builds. Removing this preference allows the yocto build scripts to successfully create and extract packages with rpm when building for armv7a on an aarch64 host.
Comment 1 Alexander Larsson 2016-05-06 09:32:21 UTC
rpm 5 is not just "the latest". Its a crazy fork that most of the rpm-using distros are not using.
Comment 2 Tristan Van Berkom 2016-05-06 18:35:24 UTC
(In reply to Alexander Larsson from comment #1)
> rpm 5 is not just "the latest". Its a crazy fork that most of the rpm-using
> distros are not using.

rpm 4 is not well supported in poky and obviously has some issues, note that
support for rpm 4 is removed completely in this commit:

https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/meta/recipes-devtools/rpm?id=1e9de52ca0d3765ca47ec18fc9e71172257ff3c1

Citing:
 "RPM4 support is buggy and incomplete. As we don't have the resources or 
  interest to maintain it this patch removes it."

FWIW to be more specific about the exact problem: rpm 4.11 as built in yocto
has a bug when creating the packages for the target, it ends up encoding
'gnueabi' as the %{OS} tag in the package metadata instead of 'linux'
(it presumably interprets the arm-unknown-linux-gnueabi triple incorrectly), 
this breaks when trying to extract the packages later in the target sysroot, 
with a problem like: "package was intended for another operating system".

Seeing as generating rpms is not really even a feature/output of this build but 
rather just an implementation detail of creating a rootfs with the bitbake 
scripts; I think that:
 a.) its not worth the energy to try to fix the rpm 4.11 build in yocto while
     the default 5.x build works fine for our purposes
 b.) we're actually better off just using whatever is well supported by
     upstream yocto anyway (4.11 will be gone in the next poky release
     branch anyway)

Thoughts ?
Comment 3 Tristan Van Berkom 2016-05-06 18:46:17 UTC
Created attachment 123526 [details] [review]
This patch removes the 4.11 configurations completely

This is another version of the same patch which I forgot to update here the other day after testing that the whole build works after removing these few lines entirely instead of just changing the preferred version.
Comment 4 Alexander Larsson 2016-05-09 07:10:01 UTC
Makes sense, pushed.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.