On 01/11/2011 12:31 PM, Brian Anderson wrote:

To clarify, I looked up the proposed naming scheme and it's
'libname-hash-version.so' where the hash is a hash of the exported
metadata (type hashes don't come into play here).

Yes, this is the way the compiler *should* be producing libraries by default. Even with the recent changes to "emitting proper library names" (eg. bug #744) I don't think we're quite doing it right yet. Better though!

And I *think* it was probably safe to keep "std" as "std", not "ruststd", since there's unlikely to be a collision with any normal C-ABI stuff on libstd-<hash>-0.1.so

(or, I suppose, libstd-<hash>.so.0.1 on linux, as is their style)

The idea here is that <libname> gives us a fast name-based scanning set of libraries to inspect while resolving a "use" directive, <hash> gives us the ability to dodge all (or all likely) name collisions in the field, and <version> hooks us into whatever OS package-versioning primitives and conventions exist.

-Graydon
_______________________________________________
Rust-dev mailing list
Rust-dev@mozilla.org
https://mail.mozilla.org/listinfo/rust-dev

Reply via email to