Description of problem: Since the upgrade of freetds to 0.82, I'm getting these mail from the nightly rawhide push: libgda has broken dependencies in the development tree: On ppc: 1:libgda-freetds-3.1.2-3.fc9.ppc requires libtds.so.5 On x86_64: 1:libgda-freetds-3.1.2-3.fc9.x86_64 requires libtds.so.5()(64bit) On i386: 1:libgda-freetds-3.1.2-3.fc9.i386 requires libtds.so.5 On ppc64: 1:libgda-freetds-3.1.2-3.fc9.ppc64 requires libtds.so.5()(64bit) Please resolve this as soon as possible. I cannot fix these as freetds no longer includes a libtds, as needed by libgda-freetds. This is due to: http://www.freetds.org/faq.html#where.is.libtds.so As a minimum libtds.a and its headers should be added to the -devel package, it would be even better to modify the build so that it still generates a .so.X file (I can help with that if you want). Regards, Hans
Hmmm... The FreeTDS upstream have made a decision to not distribute libtds even in the static form. It seems that they want to do libtds's API/ABI changes free, and the esiest way for this is to make the library "internal only". IOW, there is no any guarantee that manually "de-privated" libtds.so will contain all needed references and will API/ABI compatible with the previous, public libtds of 0.64 . Since this issue exists now in rawhide only, we have some time. Maybe ask libgda upstream about it? Perhaps they ship some patch or corrected libgda version before F10 release? If so, we could drop libgda-freetds temporary... OTOH if you see that libtds of 0.82 is still compatible with libgda-freetds, then it could be a reason to continue the distribution of public libtds library. And yes, if it is easy for you, please, provide a patch for that :)
Created attachment 309541 [details] freetds-0.82-shared-libtds.patch Ok, this patch re-enables a shared libtds again and makes the headers install again. I've tested this with libgda-freetds and the API changes are minimal (I need to change one line in libgda-freetds). I've made the new libtds generation so that it includes the upstream version in the soname, so need to worry about ABI stability, with each new upstream release the soname will change (and I will need to rebuild libgda). I'll attach the necessary spec file differences next. If you want and your ACL's allow it I can also commit and build this for you.
Created attachment 309542 [details] spec.patch
Thanks. Regarding libtds-0.82.so -- does it mean that to link with it users should specify "-ltds-0.82" ? Maybe, while it is not gone too far from the 0.64 one, provide the ordinary "-ltds" for users? Perhaps "libtds.so.6", or even "libtds.so.82" ...
(In reply to comment #4) > Thanks. > > Regarding libtds-0.82.so -- does it mean that to link with it users should > specify "-ltds-0.82" ? > No, there is an ordinary libtds.so symlink to it so -ltds will work fine.
OK, Check it in koji: http://kojipkgs.fedoraproject.org/packages/freetds/0.82/2.fc10/