On Friday 18 March 2016 08:29:27 Petr Pisar wrote:
> On 2016-03-18, Kamil Dudka <kdu...@redhat.com> wrote:
> > On Thursday, March 17, 2016 14:44:21 Przemek Klosowski wrote:
> > 
> > According to Fedora Packaging Guidelines, unversioned shared library files
> > should be installed by -devel packages:
> > 
> > https://fedoraproject.org/wiki/Packaging:Guidelines?rd=Packaging/Guideline
> > s#Devel_Packages
> No. The guidelines are badly written. "unversioned shared library files"
> means "shared library unversioned file name". Spliting files between
> -libs and -devel packages is not based on sonames, but on purpose of the
> file.
> 
> Dlopening unversioned file name is as bad as linking against librires
> without sonames. To express package dependencies on soanames, one has to
> dlopen the versioned file name. Of course that means to compile in the
> soname when building an application. At the end that's what linker (ld)
> does. Yes, it would mean to patch each application.
> 
> > I will not support any solution that would allow to install multiple
> > instances of libcurl on a single system.  We (as curl maintainers)
> > have no control about which packages link which libraries and it could
> > sooner or later happen that both instances of libcurl are loaded in
> > a single process through higher-level libraries, which is not
> > a scenario supported by upstream.
> 
> I think the solution is have more packages delivering the same-named
> shared library file with the same soname. Each of the packages
> conflicting each other.

Up to this point, you are describing the originally proposed solution.  
Testing packages are available in the following Copr repository if you
want to give it a try:

https://copr.fedorainfracloud.org/coprs/kdudka/curl-minimal/

> Then the non-minimal package would provide RPM
> symbols declaring compiled-in features like "Provides: libcurl(LDAP)"
> and then each application package requiring specific feature would
> explicitly run-require it ("Requied: libcurl(LDAP)"), besides
> automatically genererated dependency on the soname.

Sounds like a reasonable improvement to me.  Thanks for the suggestion!

Kamil

> The magic of prefering the minimal package over non-minimal package
> would be kept on package manager. For example it could sort the
> candidates on size or number of dependencies.
> 
> -- Petr
--
devel mailing list
devel@lists.fedoraproject.org
http://lists.fedoraproject.org/admin/lists/devel@lists.fedoraproject.org

Reply via email to