Feature #6114
factor out dladm walking into its own library
0%
Description
libdladm has a few dependencies that create dependency chains that are quite nasty at both build time and run time. This is due to the dependency on libdevinfo by libdladm. It causes dependency chains in the build from libuuid through the following circuit:
libuuid->libdlpi->libdladm->libdevinfo->libsec->libidmap->libldap5->libsasl->pcks11
In addition, this blocks the work of getifaddrs() being able to support AF_LINK.
Related issues
Updated by Yuri Pankov over 5 years ago
- Has duplicate Bug #6184: Circular library dependency added
Updated by Yuri Pankov over 5 years ago
- Status changed from New to Feedback
Honestly, I don't see how the libidmap->libldap5 dependency is introduced - looks like it was removed in c5866007 5 years ago. Probably we just need to fix dependency record for libidmap in usr/src/lib/Makefile? Or am I missing something here?
Updated by Robert Mustacchi over 5 years ago
Yes, looking at it, it does seem a bit vestigial. Same with the adutils dependency as well.
Updated by Gary Mills over 5 years ago
If you just add all the dynamic libraries to the dependancy list, you get a circular dependancy.
Are you saying that some of the dynamic libraries are not needed on the link line?
Part of the problem is that it's difficult to know when some libraries are found from the build host, and not from the prototype area.
Updated by Yuri Pankov over 5 years ago
Gary Mills wrote:
If you just add all the dynamic libraries to the dependancy list, you get a circular dependancy.
Are you saying that some of the dynamic libraries are not needed on the link line?
It depends on what you mean by "link line" - if it's the dependency records in usr/src/lib/Makefile, then yes, libidmap lists a lot of unneeded dependencies.
Part of the problem is that it's difficult to know when some libraries are found from the build host, and not from the prototype area.
Getting the dependency records right should solve this.
Updated by Yuri Pankov over 5 years ago
- Status changed from Feedback to Closed
Should be fixed in #5468.