
On Sat, 2005-06-18 at 10:34 -0500, Rene Rivera wrote:
Julio M. Merino Vidal wrote:
However, trying this same thing under NetBSD/i386 (GCC 3.3.3) resulted in the expected files; the .so.1.32.0 was not created, and the .so one was a real file, not a link.
Perhaps NetBSD doesn't support versioned shared libraries, or the Boost.Build plumbing doesn't know how to create them on that platform.
It's the later.
It does support versioned shared libraries. Unfortunately, something seems broken in this case. Will keep investigating, now that I know that the incorrect thing happens under NetBSD, not Linux.
In the boost-root/tools/build/v1/gcc-tools.jam file, current CVS state, around lines 163-188 there's a switch for specifying the needed options to get version SO names working. It's this way because SO names are a linker feature and the linker varies per platform and not per compiler. This bit of code would need to acquire a new case for NetBSD, or possibly *BSD, as there's already an OpenBSD case.
Am I correct in guessing that the linker option for specifying the soname in NetBSD is the same as for OpenBSD? Namely "-soname [libname]". If it is I can just change the "OpenBSD" case to cover all "*BSD" cases.
Yes, you are right. You'd change it to cover all the BSDs. (FWIW, I already sent a fix in a new thread, before reading this mail...) Thanks, -- Julio M. Merino Vidal <jmmv84@gmail.com> http://www.livejournal.com/users/jmmv/ The NetBSD Project - http://www.NetBSD.org/