On 3/8/2012 2:15 PM, Jeff Schultz wrote:
On Thu, Mar 08, 2012 at 12:48:27PM -0800, Graydon Hoare wrote:- Pass an explicit output filename. Mangling the hash and version string into the filename is something rustc does as a convenience to avoid name collision in installation directories. Multiple libsCouldn't that be viewed as back-to-front? Wouldn't it work better to not mangle the output filename during build, but mangle it during some form of "install" process instead?
Plausibly. But this makes versioning and collision-avoidance an extra step that can be omitted, and omitting it will cause problems. Generally I've tried to guide "rustc foo.rc" (with no other options or environment prerequisites) to do the most useful possible thing by default, and require options to select less-useful or less-common behavior.
Having it on by default also helps to make sure the versioning and collision-avoidance mechanisms get solid and ongoing field use, and keep working. Similar to why we version all symbols by default. Such things are horribly delicate, and IME when not in the default-behavior path, they quickly bitrot and get abandoned as "too much effort".
-Graydon _______________________________________________ Rust-dev mailing list [email protected] https://mail.mozilla.org/listinfo/rust-dev
