mirror of
https://github.com/denoland/deno.git
synced 2024-11-14 16:33:45 -05:00
27ecfc1617
- Running repl from js side. - Add tests for repl behavior. - Handle ctrl-C and ctrl-D.
1069 lines
23 KiB
Text
1069 lines
23 KiB
Text
# Copyright 2018 the Deno authors. All rights reserved. MIT license.
|
|
|
|
# Dependencies between third party crates is mapped out here manually. This is
|
|
# not so difficult and having it be tedious to add dependencies might help us
|
|
# avoid dependency hell later on. Always try to minimize dependencies.
|
|
# Versioning for third party rust crates is controlled in //Cargo.toml
|
|
# Use //tools/sync_third_party.py instead of running "cargo install".
|
|
|
|
import("rust.gni")
|
|
|
|
crates = "//third_party/rust_crates"
|
|
registry_github = "$crates/registry/src/github.com-1ecc6299db9ec823/"
|
|
|
|
rust_crate("nix") {
|
|
source_root = "$registry_github/nix-0.11.0/src/lib.rs"
|
|
extern = [
|
|
":cfg_if",
|
|
":libc",
|
|
":void",
|
|
":bitflags",
|
|
]
|
|
}
|
|
|
|
rust_crate("rustyline") {
|
|
source_root = "$registry_github/rustyline-2.1.0/src/lib.rs"
|
|
extern = [
|
|
":dirs",
|
|
":libc",
|
|
":log",
|
|
":memchr",
|
|
":nix",
|
|
":unicode_segmentation",
|
|
":unicode_width",
|
|
":utf8parse",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("bitflags") {
|
|
source_root = "$registry_github/bitflags-1.0.4/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("unicode_segmentation") {
|
|
source_root = "$registry_github/unicode-segmentation-1.2.1/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("memchr") {
|
|
source_root = "$registry_github/memchr-2.1.0/src/lib.rs"
|
|
extern = [
|
|
":cfg_if",
|
|
":libc",
|
|
]
|
|
}
|
|
|
|
rust_crate("utf8parse") {
|
|
source_root = "$registry_github/utf8parse-0.1.1/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("libc") {
|
|
source_root = "$registry_github/libc-0.2.43/src/lib.rs"
|
|
features = [ "use_std" ]
|
|
args = [ "-Aunused_macros" ] # Unused macro `f` in macros.rs:51.
|
|
}
|
|
|
|
rust_crate("url") {
|
|
source_root = "$registry_github/url-1.7.1/src/lib.rs"
|
|
extern = [
|
|
":matches",
|
|
":idna",
|
|
":percent_encoding",
|
|
]
|
|
}
|
|
|
|
rust_crate("percent_encoding") {
|
|
source_root = "$registry_github/percent-encoding-1.0.1/lib.rs"
|
|
args = [
|
|
# TODO: Suppress some warnings at this moment
|
|
# This should be removed when it's fixed in servo/rust-url repository
|
|
# https://github.com/servo/rust-url/issues/455
|
|
"-Aunused-imports",
|
|
"-Adeprecated",
|
|
]
|
|
}
|
|
|
|
rust_crate("matches") {
|
|
source_root = "$registry_github/matches-0.1.8/lib.rs"
|
|
}
|
|
|
|
rust_crate("idna") {
|
|
source_root = "$registry_github/idna-0.1.5/src/lib.rs"
|
|
extern = [
|
|
":matches",
|
|
":unicode_bidi",
|
|
":unicode_normalization",
|
|
]
|
|
}
|
|
|
|
rust_crate("unicode_bidi") {
|
|
source_root = "$registry_github/unicode-bidi-0.3.4/src/lib.rs"
|
|
extern = [ ":matches" ]
|
|
}
|
|
|
|
rust_crate("unicode_normalization") {
|
|
source_root = "$registry_github/unicode-normalization-0.1.7/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("log") {
|
|
source_root = "$registry_github/log-0.4.6/src/lib.rs"
|
|
extern = [ ":cfg_if" ]
|
|
}
|
|
|
|
rust_crate("cfg_if") {
|
|
source_root = "$registry_github/cfg-if-0.1.6/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("tempfile") {
|
|
source_root = "$registry_github/tempfile-3.0.4/src/lib.rs"
|
|
extern = [
|
|
":cfg_if",
|
|
":libc",
|
|
":rand",
|
|
":remove_dir_all",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("rand") {
|
|
source_root = "$registry_github/rand-0.5.5/src/lib.rs"
|
|
features = [
|
|
"std",
|
|
"alloc",
|
|
]
|
|
extern = [
|
|
":libc",
|
|
":winapi",
|
|
":rand_core",
|
|
]
|
|
}
|
|
|
|
rust_crate("rand_core") {
|
|
source_root = "$registry_github/rand_core-0.3.0/src/lib.rs"
|
|
features = [
|
|
"std",
|
|
"alloc",
|
|
]
|
|
if (is_mac) {
|
|
libs = [ "Security.framework" ]
|
|
}
|
|
}
|
|
|
|
rust_crate("remove_dir_all") {
|
|
source_root = "$registry_github/remove_dir_all-0.5.1/src/lib.rs"
|
|
extern = [ ":winapi" ]
|
|
}
|
|
|
|
rust_crate("winapi") {
|
|
source_root = "$registry_github/winapi-0.3.6/src/lib.rs"
|
|
features = [
|
|
"basetsd",
|
|
"cfg",
|
|
"cfgmgr32",
|
|
"combaseapi",
|
|
"consoleapi",
|
|
"errhandlingapi",
|
|
"excpt",
|
|
"fileapi",
|
|
"guiddef",
|
|
"handleapi",
|
|
"in6addr",
|
|
"inaddr",
|
|
"ioapiset",
|
|
"knownfolders",
|
|
"ktmtypes",
|
|
"libloaderapi",
|
|
"limits",
|
|
"lsalookup",
|
|
"minwinbase",
|
|
"minwindef",
|
|
"mstcpip",
|
|
"namedpipeapi",
|
|
"ntdef",
|
|
"ntsecapi",
|
|
"ntstatus",
|
|
"objbase",
|
|
"objidl",
|
|
"objidlbase",
|
|
"processenv",
|
|
"processthreadsapi",
|
|
"profileapi",
|
|
"propidl",
|
|
"qos",
|
|
"rpc",
|
|
"rpcdce",
|
|
"rpcndr",
|
|
"shlobj",
|
|
"shtypes",
|
|
"sspi",
|
|
"std",
|
|
"subauth",
|
|
"synchapi",
|
|
"sysinfoapi",
|
|
"threadpoollegacyapiset",
|
|
"timezoneapi",
|
|
"unknwnbase",
|
|
"vadefs",
|
|
"vcruntime",
|
|
"winbase",
|
|
"wincon",
|
|
"wincred",
|
|
"windef",
|
|
"winerror",
|
|
"wingdi",
|
|
"winnt",
|
|
"winreg",
|
|
"winsock2",
|
|
"winuser",
|
|
"ws2def",
|
|
"ws2ipdef",
|
|
"ws2tcpip",
|
|
"wtypes",
|
|
"wtypesbase",
|
|
]
|
|
}
|
|
|
|
# Old version of the 'winapi' crate, required by 'mio', 'miow', and 'iovec'.
|
|
# This exceptional! Generally we don't allow multiple versions of a crate.
|
|
# TODO: Remove this dependency. https://github.com/denoland/deno/issues/484
|
|
rust_crate("winapi-0.2") {
|
|
crate_name = "winapi"
|
|
crate_version = "0.2"
|
|
source_root = "$registry_github/winapi-0.2.8/src/lib.rs"
|
|
args = [
|
|
"-Asafe_packed_borrows",
|
|
"-Awarnings",
|
|
]
|
|
|
|
# The winapi-0.2 crate contains an unused type alias, but it also specifically
|
|
# sets the lint level to warn about this, so we can't suppress that warning
|
|
# with a command line argument, other than by using "-Awarnings", which has no
|
|
# effect if we also pass "-Dwarnings" to treat all warnings as errors.
|
|
# Since this crate is outdated and this will never be fixed, just override
|
|
# the global 'rust_treat_warnings_as_errors' setting for this crate.
|
|
treat_warnings_as_errors = false
|
|
}
|
|
|
|
# TODO: Remove this crate together with crate 'winapi-0.2'.
|
|
rust_crate("kernel32") {
|
|
source_root = "$registry_github/kernel32-sys-0.2.2/src/lib.rs"
|
|
extern_version = [
|
|
{
|
|
crate_name = "winapi"
|
|
crate_version = "0.2"
|
|
},
|
|
]
|
|
}
|
|
|
|
# TODO: Remove this crate together with crate 'winapi-0.2'.
|
|
rust_crate("ws2_32") {
|
|
source_root = "$registry_github/ws2_32-sys-0.2.1/src/lib.rs"
|
|
extern_version = [
|
|
{
|
|
crate_name = "winapi"
|
|
crate_version = "0.2"
|
|
},
|
|
]
|
|
}
|
|
|
|
rust_crate("futures") {
|
|
source_root = "$registry_github/futures-0.1.25/src/lib.rs"
|
|
features = [
|
|
"use_std",
|
|
"with-deprecated",
|
|
]
|
|
}
|
|
|
|
# TODO: 'mio' currently pulls in dozen of outdated winapi related dependencies.
|
|
# 'miow' has already moved beyond that, and 'mio' itself has been upgraded on
|
|
# the v0.7 branch some time ago. However there are no signs that version 0.7 is
|
|
# going to be released any time soon. We should consider floating these patches.
|
|
rust_crate("mio") {
|
|
source_root = "$registry_github/mio-0.6.16/src/lib.rs"
|
|
features = [
|
|
"default",
|
|
"with-deprecated",
|
|
]
|
|
extern = [
|
|
":iovec",
|
|
":kernel32",
|
|
":lazycell",
|
|
":libc",
|
|
":log",
|
|
":net2",
|
|
":slab",
|
|
]
|
|
extern_version = [
|
|
{
|
|
crate_name = "miow"
|
|
crate_version = "0.2"
|
|
},
|
|
{
|
|
crate_name = "winapi"
|
|
crate_version = "0.2"
|
|
},
|
|
]
|
|
}
|
|
|
|
rust_crate("mio_uds") {
|
|
source_root = "$registry_github/mio-uds-0.6.7/src/lib.rs"
|
|
extern = [
|
|
":iovec",
|
|
":libc",
|
|
":mio",
|
|
]
|
|
}
|
|
|
|
# Outdated version of 'miow' - see comments by the 'mio' crate.
|
|
rust_crate("miow-0.2") {
|
|
crate_name = "miow"
|
|
crate_version = "0.2"
|
|
source_root = "$registry_github/miow-0.2.1/src/lib.rs"
|
|
extern = [
|
|
":kernel32",
|
|
":net2",
|
|
":ws2_32",
|
|
]
|
|
extern_version = [
|
|
{
|
|
crate_name = "winapi"
|
|
crate_version = "0.2"
|
|
},
|
|
]
|
|
args = [ "-Aunused_macros" ] # Unused macro `t` in lib.rs:21.
|
|
}
|
|
|
|
rust_crate("iovec") {
|
|
source_root = "$registry_github/iovec-0.1.2/src/lib.rs"
|
|
extern = [ ":libc" ]
|
|
|
|
# TODO: Upgrade to a current version of the 'winapi' crate.
|
|
# See https://github.com/denoland/deno/issues/484.
|
|
extern_version = [
|
|
{
|
|
crate_name = "winapi"
|
|
crate_version = "0.2"
|
|
},
|
|
]
|
|
}
|
|
|
|
rust_crate("lazycell") {
|
|
source_root = "$registry_github/lazycell-1.2.0/src/lib.rs"
|
|
args = [
|
|
# TODO Remove these:
|
|
"-Aunused_unsafe",
|
|
"-Aunused_mut",
|
|
]
|
|
}
|
|
|
|
rust_crate("net2") {
|
|
source_root = "$registry_github/net2-0.2.33/src/lib.rs"
|
|
features = [
|
|
"default",
|
|
"duration",
|
|
]
|
|
extern = [
|
|
":cfg_if",
|
|
":libc",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("slab") {
|
|
source_root = "$registry_github/slab-0.4.1/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("bytes") {
|
|
source_root = "$registry_github/bytes-0.4.10/src/lib.rs"
|
|
extern = [
|
|
":byteorder",
|
|
":iovec",
|
|
]
|
|
}
|
|
|
|
rust_crate("byteorder") {
|
|
source_root = "$registry_github/byteorder-1.2.7/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("crossbeam_deque") {
|
|
source_root = "$registry_github/crossbeam-deque-0.6.1/src/lib.rs"
|
|
features = [ "use_std" ]
|
|
extern = [
|
|
":crossbeam_epoch",
|
|
":crossbeam_utils",
|
|
]
|
|
}
|
|
|
|
rust_crate("crossbeam_epoch") {
|
|
source_root = "$registry_github/crossbeam-epoch-0.5.2/src/lib.rs"
|
|
features = [
|
|
"use_std",
|
|
"lazy_static",
|
|
"default",
|
|
"crossbeam-utils",
|
|
]
|
|
extern = [
|
|
":arrayvec",
|
|
":cfg_if",
|
|
":crossbeam_utils",
|
|
":lazy_static",
|
|
":memoffset",
|
|
":scopeguard",
|
|
]
|
|
}
|
|
|
|
rust_crate("crossbeam_utils") {
|
|
source_root = "$registry_github/crossbeam-utils-0.5.0/src/lib.rs"
|
|
features = [
|
|
"use_std",
|
|
"default",
|
|
]
|
|
extern = [ ":cfg_if" ]
|
|
}
|
|
|
|
rust_crate("arrayvec") {
|
|
source_root = "$registry_github/arrayvec-0.4.7/src/lib.rs"
|
|
extern = [ ":nodrop" ]
|
|
}
|
|
|
|
rust_crate("nodrop") {
|
|
source_root = "$registry_github/nodrop-0.1.12/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("lazy_static") {
|
|
source_root = "$registry_github/lazy_static-1.1.0/src/lib.rs"
|
|
args = [
|
|
"--cfg",
|
|
"lazy_static_inline_impl",
|
|
]
|
|
}
|
|
|
|
rust_crate("memoffset") {
|
|
source_root = "$registry_github/memoffset-0.2.1/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("scopeguard") {
|
|
source_root = "$registry_github/scopeguard-0.3.3/src/lib.rs"
|
|
features = [ "use_std" ]
|
|
}
|
|
|
|
rust_crate("num_cpus") {
|
|
source_root = "$registry_github/num_cpus-1.8.0/src/lib.rs"
|
|
extern = [ ":libc" ]
|
|
}
|
|
|
|
rust_crate("hyper") {
|
|
source_root = "$registry_github/hyper-0.12.13/src/lib.rs"
|
|
features = [ "runtime" ]
|
|
extern = [
|
|
":bytes",
|
|
":futures",
|
|
":futures_cpupool",
|
|
":h2",
|
|
":http",
|
|
":httparse",
|
|
":iovec",
|
|
":itoa",
|
|
":log",
|
|
":net2",
|
|
":time",
|
|
":tokio",
|
|
":tokio_executor",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
":tokio_tcp",
|
|
":tokio_threadpool",
|
|
":tokio_timer",
|
|
":want",
|
|
]
|
|
args = [
|
|
# TODO Remove these.
|
|
"-Adeprecated",
|
|
"-Aunused_imports",
|
|
]
|
|
}
|
|
|
|
rust_crate("h2") {
|
|
source_root = "$registry_github/h2-0.1.13/src/lib.rs"
|
|
extern = [
|
|
":byteorder",
|
|
":bytes",
|
|
":fnv",
|
|
":futures",
|
|
":http",
|
|
":indexmap",
|
|
":log",
|
|
":slab",
|
|
":string",
|
|
":tokio_io",
|
|
]
|
|
}
|
|
|
|
rust_crate("http") {
|
|
source_root = "$registry_github/http-0.1.13/src/lib.rs"
|
|
extern = [
|
|
":bytes",
|
|
":fnv",
|
|
":itoa",
|
|
]
|
|
}
|
|
|
|
rust_crate("httparse") {
|
|
source_root = "$registry_github/httparse-1.3.3/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("fnv") {
|
|
source_root = "$registry_github/fnv-1.0.6/lib.rs"
|
|
}
|
|
|
|
rust_crate("futures_cpupool") {
|
|
source_root = "$registry_github/futures-cpupool-0.1.8/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":num_cpus",
|
|
]
|
|
args = [ "-Adeprecated" ] # futures::Run
|
|
}
|
|
|
|
rust_crate("indexmap") {
|
|
source_root = "$registry_github/indexmap-1.0.2/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("itoa") {
|
|
source_root = "$registry_github/itoa-0.4.3/src/lib.rs"
|
|
features = [ "std" ]
|
|
}
|
|
|
|
rust_crate("string") {
|
|
source_root = "$registry_github/string-0.1.1/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("time") {
|
|
source_root = "$registry_github/time-0.1.40/src/lib.rs"
|
|
extern = [
|
|
":libc",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("try_lock") {
|
|
source_root = "$registry_github/try-lock-0.2.2/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("want") {
|
|
source_root = "$registry_github/want-0.0.6/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":try_lock",
|
|
":log",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio") {
|
|
source_root = "$registry_github/tokio-0.1.11/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":mio",
|
|
":bytes",
|
|
":tokio_codec",
|
|
":tokio_executor",
|
|
":tokio_fs",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
":tokio_tcp",
|
|
":tokio_threadpool",
|
|
":tokio_current_thread",
|
|
":tokio_timer",
|
|
":tokio_udp",
|
|
":tokio_uds",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_executor") {
|
|
source_root = "$registry_github/tokio-executor-0.1.5/src/lib.rs"
|
|
extern = [ ":futures" ]
|
|
}
|
|
|
|
rust_crate("tokio_fs") {
|
|
source_root = "$registry_github/tokio-fs-0.1.4/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":tokio_io",
|
|
":tokio_threadpool",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_io") {
|
|
source_root = "$registry_github/tokio-io-0.1.10/src/lib.rs"
|
|
extern = [
|
|
":bytes",
|
|
":futures",
|
|
":log",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_timer") {
|
|
source_root = "$registry_github/tokio-timer-0.2.7/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":tokio_executor",
|
|
":slab",
|
|
":crossbeam_utils",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_udp") {
|
|
source_root = "$registry_github/tokio-udp-0.1.2/src/lib.rs"
|
|
extern = [
|
|
":bytes",
|
|
":futures",
|
|
":log",
|
|
":mio",
|
|
":tokio_codec",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_uds") {
|
|
source_root = "$registry_github/tokio-uds-0.2.3/src/lib.rs"
|
|
extern = [
|
|
":bytes",
|
|
":futures",
|
|
":iovec",
|
|
":libc",
|
|
":log",
|
|
":mio",
|
|
":mio_uds",
|
|
":tokio_reactor",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_codec") {
|
|
source_root = "$registry_github/tokio-codec-0.1.1/src/lib.rs"
|
|
extern = [
|
|
":bytes",
|
|
":futures",
|
|
":tokio_io",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_reactor") {
|
|
source_root = "$registry_github/tokio-reactor-0.1.6/src/lib.rs"
|
|
extern = [
|
|
":crossbeam_utils",
|
|
":futures",
|
|
":lazy_static",
|
|
":log",
|
|
":mio",
|
|
":num_cpus",
|
|
":parking_lot",
|
|
":slab",
|
|
":tokio_executor",
|
|
":tokio_io",
|
|
":tokio_io",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_tcp") {
|
|
source_root = "$registry_github/tokio-tcp-0.1.2/src/lib.rs"
|
|
extern = [
|
|
":bytes",
|
|
":futures",
|
|
":iovec",
|
|
":mio",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_threadpool") {
|
|
source_root = "$registry_github/tokio-threadpool-0.1.8/src/lib.rs"
|
|
extern = [
|
|
":crossbeam_deque",
|
|
":crossbeam_utils",
|
|
":futures",
|
|
":log",
|
|
":num_cpus",
|
|
":rand",
|
|
":tokio_executor",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_current_thread") {
|
|
source_root = "$registry_github/tokio-current-thread-0.1.3/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":tokio_executor",
|
|
]
|
|
}
|
|
|
|
rust_crate("hyper_rustls") {
|
|
source_root =
|
|
"$crates/git/checkouts/hyper-rustls-d4ca51501db57c63/2c536d5/src/lib.rs"
|
|
extern = [
|
|
":ct_logs",
|
|
":futures",
|
|
":http",
|
|
":hyper",
|
|
":rustls",
|
|
":tokio_io",
|
|
":tokio_rustls",
|
|
":tokio_tcp",
|
|
":webpki",
|
|
":webpki_roots",
|
|
]
|
|
}
|
|
|
|
rust_crate("dirs") {
|
|
source_root = "$registry_github/dirs-1.0.4/src/lib.rs"
|
|
extern = [
|
|
":libc",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
ring_root = "$registry_github/ring-0.13.2/"
|
|
|
|
component("ring_primitives") {
|
|
sources = [
|
|
"$ring_root/crypto/constant_time_test.c",
|
|
"$ring_root/crypto/cpu-aarch64-linux.c",
|
|
"$ring_root/crypto/cpu-arm-linux.c",
|
|
"$ring_root/crypto/cpu-arm.c",
|
|
"$ring_root/crypto/cpu-intel.c",
|
|
"$ring_root/crypto/crypto.c",
|
|
"$ring_root/crypto/fipsmodule/aes/aes.c",
|
|
"$ring_root/crypto/fipsmodule/aes/internal.h",
|
|
"$ring_root/crypto/fipsmodule/bn/exponentiation.c",
|
|
"$ring_root/crypto/fipsmodule/bn/generic.c",
|
|
"$ring_root/crypto/fipsmodule/bn/internal.h",
|
|
"$ring_root/crypto/fipsmodule/bn/montgomery.c",
|
|
"$ring_root/crypto/fipsmodule/bn/montgomery_inv.c",
|
|
"$ring_root/crypto/fipsmodule/bn/shift.c",
|
|
"$ring_root/crypto/fipsmodule/cipher/e_aes.c",
|
|
"$ring_root/crypto/fipsmodule/cipher/internal.h",
|
|
"$ring_root/crypto/fipsmodule/ec",
|
|
"$ring_root/crypto/fipsmodule/ec/ecp_nistz.c",
|
|
"$ring_root/crypto/fipsmodule/ec/ecp_nistz.h",
|
|
"$ring_root/crypto/fipsmodule/ec/ecp_nistz256.c",
|
|
"$ring_root/crypto/fipsmodule/ec/ecp_nistz256.h",
|
|
"$ring_root/crypto/fipsmodule/ec/ecp_nistz384.h",
|
|
"$ring_root/crypto/fipsmodule/ec/gfp_p256.c",
|
|
"$ring_root/crypto/fipsmodule/ec/gfp_p384.c",
|
|
"$ring_root/crypto/fipsmodule/modes/gcm.c",
|
|
"$ring_root/crypto/fipsmodule/modes/internal.h",
|
|
"$ring_root/crypto/internal.h",
|
|
"$ring_root/crypto/limbs/limbs.c",
|
|
"$ring_root/crypto/limbs/limbs.h",
|
|
"$ring_root/crypto/mem.c",
|
|
"$ring_root/include/GFp/aes.h",
|
|
"$ring_root/include/GFp/arm_arch.h",
|
|
"$ring_root/include/GFp/base.h",
|
|
"$ring_root/include/GFp/cpu.h",
|
|
"$ring_root/include/GFp/mem.h",
|
|
"$ring_root/include/GFp/type_check.h",
|
|
"$ring_root/third_party/fiat/curve25519.c",
|
|
"$ring_root/third_party/fiat/curve25519_tables.h",
|
|
"$ring_root/third_party/fiat/internal.h",
|
|
|
|
#"$ring_root/crypto/fipsmodule/modes/polyval.c",
|
|
]
|
|
if (is_mac) {
|
|
sources += [
|
|
"$ring_root/pregenerated/aes-586-macosx.S",
|
|
"$ring_root/pregenerated/aes-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/aesni-gcm-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/aesni-x86-macosx.S",
|
|
"$ring_root/pregenerated/aesni-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/chacha-x86-macosx.S",
|
|
"$ring_root/pregenerated/chacha-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/ecp_nistz256-x86-macosx.S",
|
|
"$ring_root/pregenerated/ghash-x86-macosx.S",
|
|
"$ring_root/pregenerated/ghash-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/p256-x86_64-asm-macosx.S",
|
|
"$ring_root/pregenerated/poly1305-x86-macosx.S",
|
|
"$ring_root/pregenerated/poly1305-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/sha256-586-macosx.S",
|
|
"$ring_root/pregenerated/sha256-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/sha512-586-macosx.S",
|
|
"$ring_root/pregenerated/sha512-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/vpaes-x86-macosx.S",
|
|
"$ring_root/pregenerated/vpaes-x86_64-macosx.S",
|
|
"$ring_root/pregenerated/x86-mont-macosx.S",
|
|
"$ring_root/pregenerated/x86_64-mont-macosx.S",
|
|
"$ring_root/pregenerated/x86_64-mont5-macosx.S",
|
|
]
|
|
}
|
|
if (is_linux) {
|
|
sources += [
|
|
"$ring_root/pregenerated/aes-x86_64-elf.S",
|
|
"$ring_root/pregenerated/aesni-gcm-x86_64-elf.S",
|
|
"$ring_root/pregenerated/aesni-x86_64-elf.S",
|
|
"$ring_root/pregenerated/aesv8-armx-linux64.S",
|
|
"$ring_root/pregenerated/chacha-x86_64-elf.S",
|
|
"$ring_root/pregenerated/ghash-x86_64-elf.S",
|
|
"$ring_root/pregenerated/ghashv8-armx-linux64.S",
|
|
"$ring_root/pregenerated/p256-x86_64-asm-elf.S",
|
|
"$ring_root/pregenerated/poly1305-x86_64-elf.S",
|
|
"$ring_root/pregenerated/sha256-x86_64-elf.S",
|
|
"$ring_root/pregenerated/sha512-x86_64-elf.S",
|
|
"$ring_root/pregenerated/vpaes-x86_64-elf.S",
|
|
"$ring_root/pregenerated/x86_64-mont-elf.S",
|
|
"$ring_root/pregenerated/x86_64-mont5-elf.S",
|
|
]
|
|
|
|
# Disable warning: '_GNU_SOURCE' macro redefined
|
|
cflags = [ "-Wno-macro-redefined" ]
|
|
}
|
|
if (is_win) {
|
|
libs = [
|
|
"$ring_root/pregenerated/aes-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/aesni-gcm-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/aesni-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/chacha-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/ghash-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/p256-x86_64-asm-nasm.obj",
|
|
"$ring_root/pregenerated/poly1305-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/sha256-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/sha512-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/vpaes-x86_64-nasm.obj",
|
|
"$ring_root/pregenerated/x86_64-mont-nasm.obj",
|
|
"$ring_root/pregenerated/x86_64-mont5-nasm.obj",
|
|
]
|
|
|
|
# Disable warning: '_addcarry_u64' is not a recognized builtin
|
|
cflags = [ "-Wno-ignored-pragma-intrinsic" ]
|
|
}
|
|
include_dirs = [ "$ring_root/include/" ]
|
|
}
|
|
|
|
rust_crate("ring") {
|
|
source_root = "$ring_root/src/lib.rs"
|
|
features = [
|
|
"use_heap",
|
|
"rsa_signing",
|
|
]
|
|
extern = [
|
|
":libc",
|
|
":untrusted",
|
|
":lazy_static",
|
|
]
|
|
deps = [
|
|
":ring_primitives",
|
|
]
|
|
}
|
|
|
|
rust_crate("rustls") {
|
|
source_root = "$registry_github/rustls-0.13.1/src/lib.rs"
|
|
extern = [
|
|
":untrusted",
|
|
":base64",
|
|
":log",
|
|
":ring",
|
|
":webpki",
|
|
":sct",
|
|
]
|
|
args = [ "-Aunused_variables" ] # TODO Remove.
|
|
}
|
|
|
|
rust_crate("ct_logs") {
|
|
source_root = "$registry_github/ct-logs-0.4.0/src/lib.rs"
|
|
extern = [ ":sct" ]
|
|
}
|
|
|
|
rust_crate("tokio_rustls") {
|
|
source_root = "$registry_github/tokio-rustls-0.7.2/src/lib.rs"
|
|
extern = [
|
|
":rustls",
|
|
":webpki",
|
|
":tokio",
|
|
]
|
|
features = [
|
|
"default",
|
|
"tokio",
|
|
"tokio-support",
|
|
]
|
|
args = [ "-Adead_code" ] # TODO Remove.
|
|
}
|
|
|
|
rust_crate("untrusted") {
|
|
source_root = "$registry_github/untrusted-0.6.2/src/untrusted.rs"
|
|
extern = []
|
|
}
|
|
|
|
rust_crate("webpki") {
|
|
source_root = "$registry_github/webpki-0.18.1/src/webpki.rs"
|
|
features = [
|
|
"std",
|
|
"trust_anchor_util",
|
|
]
|
|
extern = [
|
|
":ring",
|
|
":untrusted",
|
|
]
|
|
}
|
|
|
|
rust_crate("webpki_roots") {
|
|
source_root = "$registry_github/webpki-roots-0.15.0/src/lib.rs"
|
|
extern = [
|
|
":webpki",
|
|
":untrusted",
|
|
]
|
|
}
|
|
|
|
rust_crate("sct") {
|
|
source_root = "$registry_github/sct-0.4.0/src/lib.rs"
|
|
extern = [
|
|
":ring",
|
|
":untrusted",
|
|
]
|
|
}
|
|
|
|
rust_crate("atty") {
|
|
source_root = "$registry_github/atty-0.2.11/src/lib.rs"
|
|
extern = [
|
|
":libc",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("base64") {
|
|
source_root = "$registry_github/base64-0.9.3/src/lib.rs"
|
|
extern = [
|
|
":byteorder",
|
|
":safemem",
|
|
]
|
|
}
|
|
|
|
rust_crate("safemem") {
|
|
source_root = "$registry_github/safemem-0.3.0/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("scoped_tls") {
|
|
source_root = "$registry_github/scoped-tls-0.1.2/src/lib.rs"
|
|
extern = [
|
|
":ring",
|
|
":untrusted",
|
|
]
|
|
}
|
|
|
|
rust_crate("smallvec") {
|
|
source_root = "$registry_github/smallvec-0.6.5/lib.rs"
|
|
extern = [ ":unreachable" ]
|
|
features = [ "std" ]
|
|
}
|
|
|
|
rust_crate("unreachable") {
|
|
source_root = "$registry_github/unreachable-1.0.0/src/lib.rs"
|
|
extern = [ ":void" ]
|
|
}
|
|
|
|
rust_crate("void") {
|
|
source_root = "$registry_github/void-1.0.2/src/lib.rs"
|
|
features = [ "default" ]
|
|
}
|
|
|
|
rust_crate("parking_lot") {
|
|
source_root = "$registry_github/parking_lot-0.6.4/src/lib.rs"
|
|
extern = [
|
|
":parking_lot_core",
|
|
":lock_api",
|
|
]
|
|
}
|
|
|
|
rust_crate("parking_lot_core") {
|
|
source_root = "$registry_github/parking_lot_core-0.3.1/src/lib.rs"
|
|
extern = [
|
|
":smallvec",
|
|
":rand",
|
|
":libc",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("lock_api") {
|
|
source_root = "$registry_github/lock_api-0.1.4/src/lib.rs"
|
|
extern = [ ":scopeguard" ]
|
|
}
|
|
|
|
rust_crate("unicode_width") {
|
|
source_root = "$registry_github/unicode-width-0.1.5/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("getopts") {
|
|
source_root = "$registry_github/getopts-0.2.18/src/lib.rs"
|
|
extern = [ ":unicode_width" ]
|
|
}
|
|
|
|
rust_crate("arc_swap") {
|
|
source_root = "$registry_github/arc-swap-0.3.4/src/lib.rs"
|
|
}
|
|
|
|
rust_crate("mio_named_pipes") {
|
|
source_root = "$registry_github/mio-named-pipes-0.1.6/src/lib.rs"
|
|
extern = [
|
|
":log",
|
|
":mio",
|
|
":miow",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("miow") {
|
|
source_root = "$registry_github/miow-0.3.3/src/lib.rs"
|
|
extern = [
|
|
":socket2",
|
|
":winapi",
|
|
]
|
|
}
|
|
|
|
rust_crate("signal_hook") {
|
|
source_root = "$registry_github/signal-hook-0.1.5/src/lib.rs"
|
|
extern = [
|
|
":arc_swap",
|
|
":libc",
|
|
]
|
|
}
|
|
|
|
rust_crate("socket2") {
|
|
source_root = "$registry_github/socket2-0.3.8/src/lib.rs"
|
|
extern = [ ":winapi" ]
|
|
}
|
|
|
|
rust_crate("tokio_signal") {
|
|
source_root = "$registry_github/tokio-signal-0.2.6/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":libc",
|
|
":mio",
|
|
":mio_uds",
|
|
":signal_hook",
|
|
":tokio_executor",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
]
|
|
}
|
|
|
|
rust_crate("tokio_process") {
|
|
source_root = "$registry_github/tokio-process-0.2.3/src/lib.rs"
|
|
extern = [
|
|
":futures",
|
|
":mio",
|
|
":tokio_io",
|
|
":tokio_reactor",
|
|
]
|
|
|
|
if (is_win) {
|
|
extern += [
|
|
":mio_named_pipes",
|
|
":winapi",
|
|
]
|
|
} else {
|
|
extern += [
|
|
":libc",
|
|
":tokio_signal",
|
|
]
|
|
}
|
|
}
|