We've run into the same problem with frameworks in different projects having overlapping names, let alone symbols. So if you have an easy solution, please go for it. What we need is for not only the symbols, but the mca libs to contain the project names so they don't overlap each other.
On Jul 30, 2014, at 2:34 PM, Dave Goodell (dgoodell) <dgoodell_at_[hidden]> wrote:
> Jeff and I were talking about some namespacing issues that have come up in the recent BTL move from OMPI to OPAL. AFAIK, the current system for namespacing external symbols is to name them "mca_FRAMEWORK_COMPONENT_symbol" (e.g., "mca_btl_tcp_add_procs" in the tcp BTL). Similarly, the DSO for the component is named "mca_FRAMEWORK_COMPONENT.so" (e.g., "mca_btl_tcp.so").
> Jeff asserted that the eventual goal is to move to a system where all MCA frameworks/components are also prefixed by the project name. So the above examples become "mca_ompi_btl_tcp_add_procs" and "mca_ompi_btl_tcp.so". Does anyone actually care about pursuing this goal?
> I ask because if nobody wants to pursue the goal of adding project names to namespaces then I already have an easy solution to most of our namespacing problems. OTOH, if someone does wish to pursue that goal, then I have a namespace-related RFC that I would like to propose (in a subsequent email).
> devel mailing list
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post: http://www.open-mpi.org/community/lists/devel/2014/07/15371.php