diff options
Diffstat (limited to 'build/workspace-hack')
-rw-r--r-- | build/workspace-hack/Cargo.toml | 118 | ||||
-rw-r--r-- | build/workspace-hack/src/lib.rs | 11 |
2 files changed, 129 insertions, 0 deletions
diff --git a/build/workspace-hack/Cargo.toml b/build/workspace-hack/Cargo.toml new file mode 100644 index 0000000000..fe68dc42e9 --- /dev/null +++ b/build/workspace-hack/Cargo.toml @@ -0,0 +1,118 @@ +[package] +name = "mozilla-central-workspace-hack" +version = "0.1.0" +license = "MPL-2.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.64" } + +[target."cfg(windows)".dependencies.winapi] +version = "0.3.6" +features = [ + "avrt", + "basetsd", + "bits", + "bits2_5", + "bitsmsg", + "combaseapi", + "consoleapi", + "d3d11", + "d3d11_1", + "d3d11sdklayers", + "d3d12", + "d3d12sdklayers", + "d3d12shader", + "d3dcommon", + "d3dcompiler", + "dwrite", + "dwrite_1", + "dwrite_3", + "dxgi1_2", + "dxgi1_3", + "dxgi1_4", + "dxgi1_5", + "dxgi1_6", + "dxgidebug", + "dxgiformat", + "dxgitype", + "errhandlingapi", + "fileapi", + "guiddef", + "handleapi", + "hidclass", + "hidpi", + "hidusage", + "impl-default", + "ioapiset", + "libloaderapi", + "knownfolders", + "memoryapi", + "minwinbase", + "minwindef", + "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", + "winnls", + "winnt", + "winreg", + "winsock2", + "winuser", + "ws2def", + "ws2ipdef", + "ws2tcpip", + "wtypes", + "wtypesbase", +] diff --git a/build/workspace-hack/src/lib.rs b/build/workspace-hack/src/lib.rs new file mode 100644 index 0000000000..b15e83eb00 --- /dev/null +++ b/build/workspace-hack/src/lib.rs @@ -0,0 +1,11 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#[cfg(test)] +mod tests { + #[test] + fn it_works() { + assert_eq!(2 + 2, 4); + } +} |