diff options
Diffstat (limited to 'build/workspace-hack/Cargo.toml')
-rw-r--r-- | build/workspace-hack/Cargo.toml | 192 |
1 files changed, 192 insertions, 0 deletions
diff --git a/build/workspace-hack/Cargo.toml b/build/workspace-hack/Cargo.toml new file mode 100644 index 0000000000..6e3243d211 --- /dev/null +++ b/build/workspace-hack/Cargo.toml @@ -0,0 +1,192 @@ +[package] +name = "mozilla-central-workspace-hack" +version = "0.1.0" +license = "MPL-2.0" +description = "Workspace hack for mozilla-central" + +# This is a hack to help rust code in the tree that are built by different +# invocations of cargo share dependencies rather than rebuilding them. This is +# based on the "rustc-workspace-hack" used by the rustc build system to achieve +# the same. From the description of the issue given there: +# +# "Each time Cargo runs a build it will re-resolve the dependency graph, " +# "notably selecting different features sometimes for each build." +# +# We work around this by specifying the union of the set of features selected +# by dependencies in each cargo invocation for each instance they would differ. + +[dependencies] +arrayvec = { version = "0.7", features = ["serde"], optional = true } +bitflags = { version = "2", features = ["serde", "std"], optional = true } +bytes = { version = "1", optional = true } +chrono = { version = "0.4", features = ["serde"], optional = true } +env_logger = { version = "0.10", default-features = false, features = ["color"], optional = true } +flate2 = { version = "1", optional = true } +futures-channel = { version = "0.3", features = ["sink"], optional = true } +futures-sink = { version = "0.3", optional = true } +futures-core = { version = "0.3", optional = true } +futures-util = { version = "0.3", features = ["channel", "io", "sink"], optional = true } +getrandom = { version = "0.2", default-features = false, features = ["std"], optional = true } +hashbrown = { version = "0.12", optional = true } +hyper = { version = "0.14", features = ["full"], optional = true } +indexmap = { version = "1", default-features = false, features = ["serde-1", "std"], optional = true } +libc = { version = "0.2", features = ["extra_traits"] } +log = { version = "0.4", features = ["release_max_level_info"], optional = true } +mio = { version = "0.8", features = ["log"], optional = true } +num-integer = { version = "0.1", optional = true } +num-traits = { version = "0.2", features = ["i128", "libm"], optional = true } +once_cell = { version = "1", optional = true } +regex = { version = "1", optional = true } +semver = { version = "1", features = ["serde"], optional = true } +serde = { version = "1", features = ["derive", "rc"] } +serde_json = { version = "1", features = ["preserve_order", "unbounded_depth"], optional = true } +smallvec = { version = "1", features = ["const_new", "serde", "union"], optional = true } +time = { version = "0.3", features = ["macros", "parsing"], optional = true } +tokio = { version = "1", features = ["fs", "num_cpus", "rt-multi-thread"], optional = true } +tokio-util = { version = "0.7", features = ["io"], optional = true } +tracing = { version = "0.1", features = ["log"], optional = true } +url = { version = "2", features = ["serde"], optional = true } +uuid = { version = "1", features = ["serde", "v4"], optional = true } + +[target."cfg(windows)".dependencies] +scopeguard = { version = "1", optional = true } + +[build-dependencies] +bindgen = { version = "0.69", default-features = false, features = ["runtime"], optional = true } +cc = { version = "1.0", features = ["parallel"], optional = true } +libc = "0.2" +memchr = { version = "2", optional = true } +nom = { version = "7", optional = true } +proc-macro2 = "1" +quote = "1" +regex = { version = "1", default-features = false, features = ["perf"], optional = true } +semver = { version = "1", features = ["serde"], optional = true } +serde = { version = "1", features = ["derive"] } +syn = { version = "2", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } + +[target."cfg(windows)".dependencies.winapi] +version = "0.3.6" +features = [ + "avrt", + "basetsd", + "bits", + "bits2_5", + "bitsmsg", + "cfg", + "combaseapi", + "consoleapi", + "d3d11", + "d3d11_1", + "d3d11_2", + "d3d11sdklayers", + "d3d12", + "d3d12sdklayers", + "d3d12shader", + "d3dcommon", + "d3dcompiler", + "dcomp", + "dwrite", + "dwrite_1", + "dwrite_3", + "dxgi1_2", + "dxgi1_3", + "dxgi1_4", + "dxgi1_5", + "dxgi1_6", + "dxgidebug", + "dxgiformat", + "errhandlingapi", + "evntrace", + "fileapi", + "guiddef", + "handleapi", + "hidclass", + "hidpi", + "hidusage", + "impl-debug", + "impl-default", + "in6addr", + "inaddr", + "ioapiset", + "knownfolders", + "libloaderapi", + "memoryapi", + "minwinbase", + "minwindef", + "mmeapi", + "mmsystem", + "mswsock", + "namedpipeapi", + "ntdef", + "ntsecapi", + "ntstatus", + "oaidl", + "objbase", + "oleauto", + "processenv", + "processthreadsapi", + "profileapi", + "psapi", + "rpcndr", + "setupapi", + "shlobj", + "std", + "synchapi", + "sysinfoapi", + "taskschd", + "timeapi", + "timezoneapi", + "unknwnbase", + "winbase", + "wincon", + "wincrypt", + "windef", + "winerror", + "wininet", + "winioctl", + "winnls", + "winnt", + "winreg", + "winsock2", + "winuser", + "ws2def", + "ws2ipdef", + "ws2tcpip", + "wtypes", + "wtypesbase", +] + +[target."cfg(windows)".dependencies.windows-sys] +version = "0.52" +optional = true +features = [ + "Wdk_System_Threading", + "Win32_Foundation", + "Win32_Security", + "Win32_Storage_FileSystem", + "Win32_System_Com", + "Win32_System_Diagnostics_Debug", + "Win32_System_ErrorReporting", + "Win32_System_Kernel", + "Win32_System_LibraryLoader", + "Win32_System_Memory", + "Win32_System_Pipes", + "Win32_System_ProcessStatus", + "Win32_System_SystemInformation", + "Win32_System_SystemServices", + "Win32_System_Threading", + "Win32_UI_Shell", + "Win32_UI_WindowsAndMessaging", +] + + +[features] +builtins-static = ["dep:bindgen", "dep:bitflags", "dep:memchr", "dep:nom", "dep:regex", "dep:smallvec"] +geckodriver = ["dep:bitflags", "dep:bytes", "dep:cc", "dep:chrono", "dep:flate2", "dep:futures-channel", "dep:futures-core", "dep:futures-sink", "dep:futures-util", "dep:getrandom", "dep:hashbrown", "dep:hyper", "dep:indexmap", "dep:log", "dep:memchr", "dep:mio", "dep:num-integer", "dep:num-traits", "dep:once_cell", "dep:regex", "dep:semver", "dep:serde_json", "dep:smallvec", "dep:time", "dep:tokio", "dep:tokio-util", "dep:tracing", "dep:url", "dep:uuid", "dep:windows-sys"] +gkrust = ["dep:arrayvec", "dep:bindgen", "dep:bitflags", "dep:bytes", "dep:cc", "dep:chrono", "dep:env_logger", "dep:flate2", "dep:futures-channel", "dep:futures-core", "dep:futures-sink", "dep:futures-util", "dep:getrandom", "dep:hashbrown", "dep:indexmap", "dep:log", "dep:memchr", "dep:nom", "dep:num-integer", "dep:num-traits", "dep:once_cell", "dep:regex", "dep:scopeguard", "dep:semver", "dep:serde_json", "dep:smallvec", "dep:time", "dep:url", "dep:uuid", "dep:windows-sys"] +gkrust-gtest = ["gkrust"] +http3server = ["dep:arrayvec", "dep:bindgen", "dep:bitflags", "dep:bytes", "dep:chrono", "dep:env_logger", "dep:futures-channel", "dep:futures-core", "dep:futures-sink", "dep:futures-util", "dep:getrandom", "dep:hashbrown", "dep:hyper", "dep:indexmap", "dep:log", "dep:memchr", "dep:mio", "dep:nom", "dep:num-integer", "dep:num-traits", "dep:once_cell", "dep:regex", "dep:serde_json", "dep:smallvec", "dep:time", "dep:tokio", "dep:tokio-util", "dep:tracing", "dep:url", "dep:windows-sys"] +ipcclientcerts-static = ["dep:bindgen", "dep:bitflags", "dep:memchr", "dep:nom", "dep:regex"] +jsrust = ["dep:arrayvec", "dep:cc", "dep:env_logger", "dep:getrandom", "dep:hashbrown", "dep:indexmap", "dep:log", "dep:memchr", "dep:num-traits", "dep:once_cell", "dep:semver", "dep:smallvec", "dep:url"] +mozwer_s = ["dep:getrandom", "dep:hashbrown", "dep:indexmap", "dep:once_cell", "dep:serde_json", "dep:uuid", "dep:windows-sys"] +osclientcerts-static = ["dep:bindgen", "dep:bitflags", "dep:env_logger", "dep:log", "dep:memchr", "dep:nom", "dep:regex"] |