Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 00/13] Fix two regressions with RPM introduced with Pyro
@ 2017-06-09 19:34 Peter Kjellerstedt
  2017-06-09 19:34 ` [PATCH 01/13] package_manager.py: Generate correct RPM package names again Peter Kjellerstedt
                   ` (12 more replies)
  0 siblings, 13 replies; 17+ messages in thread
From: Peter Kjellerstedt @ 2017-06-09 19:34 UTC (permalink / raw)
  To: openembedded-core

Right before the release of Pyro (about a month ago), we noticed a
problem with missing automatically determined runtime file
dependencies after the transition to rpm4 and dnf. Unfortunately it
has taken me quite a while to work out all the details, but here is
the result finally.

During the search for the missing dependencies, I also stumbled on
another regression where the installed-packages.txt file that is
generated by buildhistory turned out to no longer contain the actual
package names that were used to create the image, but rather some
fictitious source RPM names... The first patch in the series addresses
that.

The following patches to the libxml2 recipe, insane.bbclass,
buildhistory.bbclass and toaster.bbclass prepare the stage for the
changes to rpm and package.bbclass so that they will not break once
the automatically generated dependencies are restored.

Then rpm is updated to make it possible to yet again access the
runtime dependencies we need, and finally package.bbclass is updated
to make use of them.

See the patches, especially the last one, for more in depth
information on what went wrong during the transition to rpm4 and dnf,
and how to solve it.

I would also like to thank Mark Hatle and Martin Jansa who set me on
the right track to find the problem.

//Peter

The following changes since commit b1d5267f0e31605b346af40778da0ac1ff298b78:

  README.hardware: update flashing instructions for MPC8315 (2017-06-09 17:13:45 +0100)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib pkj/rpm_regressions
  http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=pkj/rpm_regressions

Peter Kjellerstedt (13):
  package_manager.py: Generate correct RPM package names again
  libxml2: Make ptest run the Python tests if Python support is enabled
  insane.bbclass: Report all file-rdeps errors, not just the first
  insane.bbclass: Improve the handling of runtime file dependencies
  buildhistory.bbclass: Improve the generated depends.dot file
  toaster.bbclass: Simplify parsing of depends.dot
  toaster.bbclass: Ignore some dependencies in
    toaster_buildhistory_dump()
  rpm: Simplify the creation of wrappers for the native tools
  rpm: Create a wrapper for the native rpmdeps tool
  rpm: Do not require that ELF binaries are executable to be
    identifiable
  rpm: Use conditional to access %{_docdir} in macros.in
  rpm: Add a new option --alldeps to rpmdeps
  package.bbclass: Restore functionality to detect RPM dependencies

 meta/classes/buildhistory.bbclass                  |  15 +-
 meta/classes/insane.bbclass                        |  18 ++-
 meta/classes/package.bbclass                       |   5 +-
 meta/classes/toaster.bbclass                       |  36 +++--
 meta/lib/oe/package.py                             |  47 ++++---
 meta/lib/oe/package_manager.py                     |   6 +-
 ...run-the-python-tests-if-python-is-enabled.patch |  99 ++++++++++++++
 meta/recipes-core/libxml/libxml2_2.9.4.bb          |  11 +-
 ...ire-that-ELF-binaries-are-executable-to-b.patch |  32 +++++
 ...onditional-to-access-_docdir-in-macros.in.patch |  36 +++++
 .../0013-Add-a-new-option-alldeps-to-rpmdeps.patch | 152 +++++++++++++++++++++
 meta/recipes-devtools/rpm/rpm_git.bb               |  77 ++++-------
 12 files changed, 426 insertions(+), 108 deletions(-)
 create mode 100644 meta/recipes-core/libxml/libxml2/0001-Make-ptest-run-the-python-tests-if-python-is-enabled.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0011-Do-not-require-that-ELF-binaries-are-executable-to-b.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0012-Use-conditional-to-access-_docdir-in-macros.in.patch
 create mode 100644 meta/recipes-devtools/rpm/files/0013-Add-a-new-option-alldeps-to-rpmdeps.patch

-- 
2.12.0



^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2017-06-09 20:26 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-06-09 19:34 [PATCH 00/13] Fix two regressions with RPM introduced with Pyro Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 01/13] package_manager.py: Generate correct RPM package names again Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 02/13] libxml2: Make ptest run the Python tests if Python support is enabled Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 03/13] insane.bbclass: Report all file-rdeps errors, not just the first Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 04/13] insane.bbclass: Improve the handling of runtime file dependencies Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 05/13] buildhistory.bbclass: Improve the generated depends.dot file Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 06/13] toaster.bbclass: Simplify parsing of depends.dot Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 07/13] toaster.bbclass: Ignore some dependencies in toaster_buildhistory_dump() Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 08/13] rpm: Simplify the creation of wrappers for the native tools Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 09/13] rpm: Create a wrapper for the native rpmdeps tool Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 10/13] rpm: Do not require that ELF binaries are executable to be identifiable Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 11/13] rpm: Use conditional to access %{_docdir} in macros.in Peter Kjellerstedt
2017-06-09 20:25   ` Alexander Kanavin
2017-06-09 20:26     ` Alexander Kanavin
2017-06-09 19:34 ` [PATCH 12/13] rpm: Add a new option --alldeps to rpmdeps Peter Kjellerstedt
2017-06-09 19:34 ` [PATCH 13/13] package.bbclass: Restore functionality to detect RPM dependencies Peter Kjellerstedt
2017-06-09 20:21   ` Alexander Kanavin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox