On Apr 25, 2012, at 10:58 AM, Samuel Thibault wrote:
> It already adapts itself, here. The issue is that the user has to
> install an X version to get potential for X support. Which brings X.
> If you do this with plugins, and you want automatic adaptation to
> whether X is there, you'll have to install the plugin (it can't install
> itself magically). And then that brings X too...
Yes, understood, but my point here is that there could be multiple hwloc packages -- one that installs the core and some base set of lstopo plugins (probably not cairo and X). And then secondary packages install lstopo's cairo and X plugins.
Hence, a sysadmin can choose whether to have cairo/X support (because presumably they will both pull in bunches of dependencies).
But the user always runs "lstopo" and gets the choice of whatever outputs the sysadmin has chosen to install.
>> But if I'm in the minority, no problem...
>> If I'm not, I can work on a patch to see if it would be horribly disruptive...
> It would most probably not be, we already use a backend style, so it's a
> matter of putting the code in separate plugins.
That was my assumption. I am guessing/assuming that it's a matter of:
- adjusting configury to use libltdl
- building the back-ends as DSOs, installing them
- adapting the back-ends to advertise their function pointers neutrally
- adding a bit of dlopen-based logic to find/load all available backends
For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/