Hi, Ralph! On Tue, Sep 7, 2010 at 11:04 AM, Ralph Castain <r...@open-mpi.org> wrote: [...] > (b) we need to modify it somewhat to get things working correctly across the > broad range of our installed base.
Any chances of getting the patches here upstreamed? "Working correctly across a broad install base" sounds like a feature worth merging into the main distribution. ;) > It is my understanding that quite a few software packages also embed libevent > in their distributions, so this is a fairly common problem. It would make > life much easier, therefore, if you only declared the true public APIs as > public symbols, defining all internal-only functions as "static". Pretty much every symbol that's used only in a single module *is* declared static right now. (If we missed some, that's worth fixing: just send in a patch.) The remaining non-static symbols are ones shared between modules, and of course C doesn't let you make those static. The right solution here is probably to manually tell the linker about what symbols to export and what symbols not to export. On windows, this is the dllexport/dllimport stuff stuff. With gcc4 on other platforms, this is the __attribute__((visibility(...))) stuff. ( http://gcc.gnu.org/wiki/Visibility ) I'd like to move this way in Libevent 2.1, but I'm not sure on the timeframe, since it's a fair amount of work. If somebody commits to writing up and testing the code here, that'll improve the odds of it getting done. peace, -- Nick *********************************************************************** To unsubscribe, send an e-mail to majord...@freehaven.net with unsubscribe libevent-users in the body.