summaryrefslogtreecommitdiffstats
path: root/build/workspace-hack/Cargo.toml
diff options
context:
space:
mode:
Diffstat (limited to 'build/workspace-hack/Cargo.toml')
-rw-r--r--build/workspace-hack/Cargo.toml76
1 files changed, 76 insertions, 0 deletions
diff --git a/build/workspace-hack/Cargo.toml b/build/workspace-hack/Cargo.toml
new file mode 100644
index 0000000000..2c50d2b2b8
--- /dev/null
+++ b/build/workspace-hack/Cargo.toml
@@ -0,0 +1,76 @@
+[package]
+name = "mozilla-central-workspace-hack"
+version = "0.1.0"
+
+# 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.
+
+[build-dependencies]
+void = { features = ["std", "default"], version = "1.0.2" }
+syn = { features = ["clone-impls", "default", "derive", "extra-traits", "fold", "full", "parsing", "printing", "proc-macro", "quote", "visit"], version = "1.0" }
+serde = { features = ["default", "derive", "rc", "serde_derive", "std"], version = "1.0.66" }
+serde_derive = { features = ["default", "deserialize_in_place"], version = "1.0.66" }
+quote = { features = ["default", "proc-macro"], version = "1.0" }
+libc = { features = ["default", "std", "use_std"], version = "0.2" }
+bindgen = { default-features = false, features = ["runtime"], version = "0.56" }
+
+[target."cfg(windows)".dependencies.winapi]
+version = "0.3.6"
+features = [
+ "avrt",
+ "basetsd",
+ "bits",
+ "bits2_5",
+ "bitsmsg",
+ "combaseapi",
+ "consoleapi",
+ "dwrite",
+ "dwrite_1",
+ "dwrite_3",
+ "errhandlingapi",
+ "fileapi",
+ "guiddef",
+ "handleapi",
+ "hidclass",
+ "hidpi",
+ "hidusage",
+ "impl-default",
+ "ioapiset",
+ "libloaderapi",
+ "memoryapi",
+ "minwinbase",
+ "minwindef",
+ "namedpipeapi",
+ "ntdef",
+ "ntsecapi",
+ "ntstatus",
+ "objbase",
+ "processenv",
+ "profileapi",
+ "rpcndr",
+ "setupapi",
+ "std",
+ "synchapi",
+ "sysinfoapi",
+ "timezoneapi",
+ "unknwnbase",
+ "winbase",
+ "wincon",
+ "winerror",
+ "winnls",
+ "winnt",
+ "winsock2",
+ "ws2def",
+ "ws2ipdef",
+ "ws2tcpip",
+ "wtypes",
+ "wtypesbase"
+]