On Sun, 29 Nov 2015 00:35:37 +0100
Björn Persson <Bjorn(a)xn--rombobjrn-67a.se> wrote:
Is there a way to deal with the following situation in Koji?
· Build tool B has a build-time dependency on itself.
· B is linked to library L version 1.
· L gets upgraded to version 2, which changes its soname.
B needs to be rebuilt to link to libL.so.2, but building B requires a
working B, which requires libL.so.1 because it hasn't been rebuilt
yet.
As I understand it, when the L-2 package goes into the buildroot it
immediately replaces L-1. Is there a way to keep L-1 available until B
has been rebuilt?
Nope.
Is the answer to link B statically?
Nope.
The usual way to handle this is to add a compat version of the library
(so.1) to L, rebuild B, then drop the compat library, ie just keep it
for one build to rebuild B.
I think for example libpng has used this in the past if you want an
example.
kevin