Björn 'besser82' Esser wrote:
> Am Dienstag, den 16.07.2019, 00:20 +0200 schrieb Kevin Kofler:
>> Miro Hrončok wrote:
>> > gnutls now cannot be rebuilt:
>> >
>> > nothing provides libnettle.so.6 needed by gnutls-3.6.8-
>> > 1.fc31.armv7hl
>>
>> Don't you love circular dependencies?
>>
>> This is really the biggest issue that we have: There are more and
>> more
>> circular dependencies. Each of them is a major PITA when trying to
>> upgrade a
>> library.
>
>
> Here[1] is a nice example of how to break the cycle by building both so-
> versions in a bootstrap build.
I don't like this example, at all. This puts the burden of working around
the circular dependency on the library, which is likely not even part of the
actual cycle. (It just happens to be used by something that has a circular
dependency and that hence cannot be simply rebuilt against the new version
of the library.)
The original idea of bootstrap builds was to actually break the cycle, e.g.,
to find a way to build gnutls without requiring gnutls itself. This is
usually done by disabling some optional functionality in some library. But
of course, it only works if upstream did think of the bootstrap issue and
actually made the circular dependency optional. If all dependencies in the
cycle are mandatory, we are stuck.
But your approach of stuffing 2 versions of a library in a single RPM is a
really ugly hack that really should not be needed. But it is getting used
more and more often because of a lack of proper bootstrap logic (or of
upstream support for it).
Kevin Kofler
_______________________________________________
devel mailing list -- [email protected]
To unsubscribe send an email to [email protected]
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/[email protected]