# This crate exists to allow rustc to link certain crates from crates.io into
# the distribution. This doesn't work normally because:
#
# - Cargo always builds dependencies as rlibs:
#   https://github.com/rust-lang/cargo/issues/629
# - rustc wants to avoid multiple definitions of the same symbol, so it refuses
#   to link multiple dylibs containing the same rlib
# - multiple dylibs depend on the same crates.io crates
#
# This solution works by including all the conflicting rlibs in a single dylib,
# which is then linked into all dylibs that depend on these crates.io crates.
# The result is that each rlib only appears once, and things work!

[package]
authors = ["The Rust Project Developers"]
name = "rustc_cratesio_shim"
version = "0.0.0"
edition = "2018"

[lib]
crate-type = ["dylib"]

[dependencies]
bitflags = "1.0"
log = "0.4"
unicode-width = "0.1.4"
