Pavel Zhukov wrote: > Yes, that happens every year because of koji limitation. > Ada rebuild is not just mass-rebuild thing. > Because of circular dependencies: gprbuild buildrequires xmlada and > xmlada build requires gprbuild and both of them requires > gcc-gnat.so.<version> they were built with > bootstrap of gprbuild should be done which requires manual steps (pretty > straightforward process and documented in xmlada and gprbuild spec files though. thanks to Bjorn!) The bootstrap is actually needed only if something is seriously broken, or to add a new arch. GPRbuild is statically linked precisely to remain functional each time GCC or XMLada is upgraded, so that it can rebuild itself and the other Ada packages. Thus the dependency loop isn't normally a problem. A bump and a rebuild per package should be sufficient, but they must be done in the right order. A package can't be built if it requires a library that can't be installed. Therefore those libraries that depend only on Libgnat must be built first, so they become installable again. Once those packages appear in the buildroot, the packages that depend on them can be built. Then those packages in turn must be added to the buildroot before the third tier can be built. (I have now done all that for all packages I have commit access to. I rebuilt GPRbuild too, so it's now statically linked to the new Libgnat. Nobody needs to worry that the static linking will cause old code to linger.) For the mass rebuild to handle this automatically, two changes would be needed: · It would have to walk the dependency graph and build the packages in dependency order instead of alphabetical order. · It would have to make the newly built packages available to packages that depend on them, not set them aside and then tag them all in at the end. So as things stand, these rebuilds need to be done by a human who knows the dependency graph. Björn Persson
Attachment:
pgp0JP5ep2KG6.pgp
Description: OpenPGP digital signatur
_______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue