[package]
name = "rustc-workspace-hack"
version = "1.0.0"
license = 'MIT OR Apache-2.0'
description = """
Hack for the compiler's own build system
"""
edition = "2021"

[lib]
path = "lib.rs"

# For documentation about what this is and why in the world these dependencies
# are appearing, see `README.md`.

[target.'cfg(windows)'.dependencies.winapi]
version = "0.3"
features = [
  "accctrl",
  "aclapi",
  "basetsd",
  "cfg",
  "consoleapi",
  "errhandlingapi",
  "evntrace",
  "fibersapi",
  "handleapi",
  "in6addr",
  "inaddr",
  "ioapiset",
  "jobapi",
  "jobapi2",
  "knownfolders",
  "libloaderapi",
  "lmcons",
  "memoryapi",
  "minschannel",
  "minwinbase",
  "mstcpip",
  "mswsock",
  "namedpipeapi",
  "ntdef",
  "ntsecapi",
  "ntstatus",
  "objbase",
  "processenv",
  "processthreadsapi",
  "profileapi",
  "psapi",
  "schannel",
  "securitybaseapi",
  "shellapi",
  "shlobj",
  "sspi",
  "synchapi",
  "sysinfoapi",
  "threadpoollegacyapiset",
  "timezoneapi",
  "userenv",
  "winbase",
  "wincon",
  "wincrypt",
  "windef",
  "winioctl",
  "winnt",
  "winreg",
  "winsock2",
  "winuser",
  "ws2def",
  "ws2ipdef",
  "ws2tcpip",
]

[dependencies]
bstr = { version = "0.2.17", features = ["default"] }
clap = { version = "3.1.1", features = ["derive", "clap_derive"]}
curl-sys = { version = "0.4.13", features = ["http2", "libnghttp2-sys"], optional = true }
# Ensure `extra_traits` of libc, which is used transitively by Cargo.
libc = { version = "0.2", features = ["extra_traits"] }
# Ensure `js` of getrandom, which is (unfortunately) used transitively by Cargo.
getrandom = { version = "0.2", features = ["js"] }
# Ensure default features of libz-sys, which are disabled in some scenarios.
libz-sys = { version = "1.1.2" }
# Ensure default features of regex, which are disabled in some scenarios.
regex = { version = "1.5.6" }
serde_json = { version = "1.0.31", features = ["raw_value", "unbounded_depth"] }
syn = { version = "1", features = ['full', 'visit', 'visit-mut'] } # `visit-mut` required by Cargo via `gix`
url = { version = "2.0", features = ['serde'] }
# Ensure default features of rand, which are disabled in some scenarios.
rand = { version = "0.8.5" }

# Ensure features of `hashbrown`, `smallvec`, and `once_cell`,
# which are used transitively by Cargo (via `gix`).
hashbrown = { version = "0.12.3", default-features = false, features = ["inline-more"] }
once_cell = { version = "1.16.0", default-features = false, features = ["unstable"] }
smallvec = { version = "1.10.0", features = ["write"] }

[target.'cfg(not(windows))'.dependencies]
openssl = { version = "0.10.35", optional = true }

[features]
all-static = ['openssl/vendored', 'curl-sys/static-curl', 'curl-sys/force-system-lib-on-osx']
