forked from M-Labs/humpback-dds
nix: migrated
This commit is contained in:
parent
6a1aee7c8e
commit
30f1085e67
15080
nix/channel-rust-nightly.toml
Normal file
15080
nix/channel-rust-nightly.toml
Normal file
File diff suppressed because it is too large
Load Diff
703
nix/itm-cargo-lock.patch
Normal file
703
nix/itm-cargo-lock.patch
Normal file
@ -0,0 +1,703 @@
|
||||
diff --git a/Cargo.lock b/Cargo.lock
|
||||
index d18dbe7..c19483d 100644
|
||||
--- a/Cargo.lock
|
||||
+++ b/Cargo.lock
|
||||
@@ -1,441 +1,450 @@
|
||||
+# This file is automatically @generated by Cargo.
|
||||
+# It is not intended for manual editing.
|
||||
[[package]]
|
||||
-name = "aho-corasick"
|
||||
-version = "0.6.4"
|
||||
+name = "addr2line"
|
||||
+version = "0.12.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "602d785912f476e480434627e8732e6766b760c045bbf897d9dfaa9f4fbd399c"
|
||||
dependencies = [
|
||||
- "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "gimli",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "ansi_term"
|
||||
-version = "0.10.2"
|
||||
+name = "adler32"
|
||||
+version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "567b077b825e468cc974f0020d4082ee6e03132512f207ef1a02fd5d00d1f32d"
|
||||
|
||||
[[package]]
|
||||
-name = "atty"
|
||||
-version = "0.2.3"
|
||||
+name = "aho-corasick"
|
||||
+version = "0.6.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
|
||||
dependencies = [
|
||||
- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "memchr",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "backtrace"
|
||||
-version = "0.3.4"
|
||||
+name = "ansi_term"
|
||||
+version = "0.11.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"
|
||||
dependencies = [
|
||||
- "backtrace-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "rustc-demangle 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "backtrace-sys"
|
||||
-version = "0.1.16"
|
||||
+name = "atty"
|
||||
+version = "0.2.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
|
||||
dependencies = [
|
||||
- "cc 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "hermit-abi",
|
||||
+ "libc",
|
||||
+ "winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "bitflags"
|
||||
-version = "0.7.0"
|
||||
+name = "autocfg"
|
||||
+version = "1.0.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d"
|
||||
|
||||
[[package]]
|
||||
-name = "bitflags"
|
||||
-version = "1.0.1"
|
||||
+name = "backtrace"
|
||||
+version = "0.3.49"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "05100821de9e028f12ae3d189176b41ee198341eb8f369956407fea2f5cc666c"
|
||||
+dependencies = [
|
||||
+ "addr2line",
|
||||
+ "cfg-if",
|
||||
+ "libc",
|
||||
+ "miniz_oxide",
|
||||
+ "object",
|
||||
+ "rustc-demangle",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
-name = "cc"
|
||||
-version = "1.0.3"
|
||||
+name = "bitflags"
|
||||
+version = "1.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693"
|
||||
|
||||
[[package]]
|
||||
name = "cfg-if"
|
||||
-version = "0.1.2"
|
||||
+version = "0.1.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
|
||||
|
||||
[[package]]
|
||||
name = "chrono"
|
||||
-version = "0.4.0"
|
||||
+version = "0.4.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "80094f509cf8b5ae86a4966a39b3ff66cd7e2a3e594accec3743ff3fabeab5b2"
|
||||
dependencies = [
|
||||
- "num 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "time 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "num-integer",
|
||||
+ "num-traits",
|
||||
+ "time",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "clap"
|
||||
-version = "2.29.0"
|
||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-dependencies = [
|
||||
- "ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "atty 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "strsim 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "textwrap 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "unicode-width 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "vec_map 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
-]
|
||||
-
|
||||
-[[package]]
|
||||
-name = "dbghelp-sys"
|
||||
-version = "0.2.0"
|
||||
+version = "2.33.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "bdfa80d47f954d53a35a64987ca1422f495b8d6483c0fe9f7117b36c2a792129"
|
||||
dependencies = [
|
||||
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "ansi_term",
|
||||
+ "atty",
|
||||
+ "bitflags",
|
||||
+ "strsim",
|
||||
+ "textwrap",
|
||||
+ "unicode-width",
|
||||
+ "vec_map",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "env_logger"
|
||||
version = "0.4.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b"
|
||||
dependencies = [
|
||||
- "log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "regex 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "log 0.3.9",
|
||||
+ "regex",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "failure"
|
||||
-version = "0.1.1"
|
||||
+version = "0.1.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "d32e9bd16cc02eae7db7ef620b392808b89f6a5e16bb3497d159c6b92a0f4f86"
|
||||
dependencies = [
|
||||
- "backtrace 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "failure_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "backtrace",
|
||||
+ "failure_derive",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "failure_derive"
|
||||
-version = "0.1.1"
|
||||
+version = "0.1.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4"
|
||||
dependencies = [
|
||||
- "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "synstructure 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "proc-macro2",
|
||||
+ "quote",
|
||||
+ "syn",
|
||||
+ "synstructure",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "fuchsia-zircon"
|
||||
-version = "0.2.1"
|
||||
+name = "fuchsia-cprng"
|
||||
+version = "0.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-dependencies = [
|
||||
- "fuchsia-zircon-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
-]
|
||||
+checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
|
||||
|
||||
[[package]]
|
||||
-name = "fuchsia-zircon-sys"
|
||||
-version = "0.2.0"
|
||||
+name = "gimli"
|
||||
+version = "0.21.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-dependencies = [
|
||||
- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
-]
|
||||
+checksum = "bcc8e0c9bce37868955864dbecd2b1ab2bdf967e6f28066d65aaac620444b65c"
|
||||
|
||||
[[package]]
|
||||
-name = "itm"
|
||||
-version = "0.3.0"
|
||||
+name = "hermit-abi"
|
||||
+version = "0.1.14"
|
||||
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "b9586eedd4ce6b3c498bc3b4dd92fc9f11166aa908a914071953768066c67909"
|
||||
dependencies = [
|
||||
- "chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "clap 2.29.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "failure_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "kernel32-sys"
|
||||
-version = "0.2.2"
|
||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+name = "itm"
|
||||
+version = "0.3.1"
|
||||
dependencies = [
|
||||
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "chrono",
|
||||
+ "clap",
|
||||
+ "env_logger",
|
||||
+ "failure",
|
||||
+ "failure_derive",
|
||||
+ "log 0.3.9",
|
||||
+ "tempdir",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "lazy_static"
|
||||
-version = "1.0.0"
|
||||
+version = "1.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
-version = "0.2.34"
|
||||
+version = "0.2.71"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "9457b06509d27052635f90d6466700c65095fdf75409b3fbdd903e988b886f49"
|
||||
|
||||
[[package]]
|
||||
name = "log"
|
||||
-version = "0.3.8"
|
||||
+version = "0.3.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
|
||||
+dependencies = [
|
||||
+ "log 0.4.8",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
-name = "memchr"
|
||||
-version = "2.0.1"
|
||||
+name = "log"
|
||||
+version = "0.4.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7"
|
||||
dependencies = [
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "cfg-if",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "num"
|
||||
-version = "0.1.41"
|
||||
+name = "memchr"
|
||||
+version = "2.3.3"
|
||||
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
|
||||
+
|
||||
+[[package]]
|
||||
+name = "miniz_oxide"
|
||||
+version = "0.3.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "791daaae1ed6889560f8c4359194f56648355540573244a5448a83ba1ecc7435"
|
||||
dependencies = [
|
||||
- "num-integer 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "num-iter 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "num-traits 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "adler32",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "num-integer"
|
||||
-version = "0.1.35"
|
||||
+version = "0.1.43"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "8d59457e662d541ba17869cf51cf177c0b5f0cbf476c66bdc90bf1edac4f875b"
|
||||
dependencies = [
|
||||
- "num-traits 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "autocfg",
|
||||
+ "num-traits",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "num-iter"
|
||||
-version = "0.1.34"
|
||||
+name = "num-traits"
|
||||
+version = "0.2.12"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
|
||||
dependencies = [
|
||||
- "num-integer 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "num-traits 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "autocfg",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "num-traits"
|
||||
-version = "0.1.41"
|
||||
+name = "object"
|
||||
+version = "0.20.0"
|
||||
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "1ab52be62400ca80aa00285d25253d7f7c437b7375c4de678f5405d3afe82ca5"
|
||||
+
|
||||
+[[package]]
|
||||
+name = "proc-macro2"
|
||||
+version = "1.0.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "beae6331a816b1f65d04c45b078fd8e6c93e8071771f41b8163255bbd8d7c8fa"
|
||||
+dependencies = [
|
||||
+ "unicode-xid",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
name = "quote"
|
||||
-version = "0.3.15"
|
||||
+version = "1.0.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "aa563d17ecb180e500da1cfd2b028310ac758de548efdd203e18f283af693f37"
|
||||
+dependencies = [
|
||||
+ "proc-macro2",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
name = "rand"
|
||||
-version = "0.3.18"
|
||||
+version = "0.4.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
|
||||
dependencies = [
|
||||
- "fuchsia-zircon 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "fuchsia-cprng",
|
||||
+ "libc",
|
||||
+ "rand_core 0.3.1",
|
||||
+ "rdrand",
|
||||
+ "winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "redox_syscall"
|
||||
-version = "0.1.32"
|
||||
+name = "rand_core"
|
||||
+version = "0.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
|
||||
+dependencies = [
|
||||
+ "rand_core 0.4.2",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
-name = "redox_termios"
|
||||
-version = "0.1.1"
|
||||
+name = "rand_core"
|
||||
+version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc"
|
||||
+
|
||||
+[[package]]
|
||||
+name = "rdrand"
|
||||
+version = "0.4.0"
|
||||
+source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
|
||||
dependencies = [
|
||||
- "redox_syscall 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "rand_core 0.3.1",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex"
|
||||
-version = "0.2.3"
|
||||
+version = "0.2.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384"
|
||||
dependencies = [
|
||||
- "aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "aho-corasick",
|
||||
+ "memchr",
|
||||
+ "regex-syntax",
|
||||
+ "thread_local",
|
||||
+ "utf8-ranges",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex-syntax"
|
||||
-version = "0.4.1"
|
||||
+version = "0.5.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7"
|
||||
+dependencies = [
|
||||
+ "ucd-util",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
-name = "rustc-demangle"
|
||||
-version = "0.1.5"
|
||||
+name = "remove_dir_all"
|
||||
+version = "0.5.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
|
||||
+dependencies = [
|
||||
+ "winapi",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
-name = "strsim"
|
||||
-version = "0.6.0"
|
||||
+name = "rustc-demangle"
|
||||
+version = "0.1.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "4c691c0e608126e00913e33f0ccf3727d5fc84573623b8d65b2df340b5201783"
|
||||
|
||||
[[package]]
|
||||
-name = "syn"
|
||||
-version = "0.11.11"
|
||||
+name = "strsim"
|
||||
+version = "0.8.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-dependencies = [
|
||||
- "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
-]
|
||||
+checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a"
|
||||
|
||||
[[package]]
|
||||
-name = "synom"
|
||||
-version = "0.11.3"
|
||||
+name = "syn"
|
||||
+version = "1.0.33"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "e8d5d96e8cbb005d6959f119f773bfaebb5684296108fb32600c00cde305b2cd"
|
||||
dependencies = [
|
||||
- "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "proc-macro2",
|
||||
+ "quote",
|
||||
+ "unicode-xid",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "synstructure"
|
||||
-version = "0.6.1"
|
||||
+version = "0.12.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "b834f2d66f734cb897113e34aaff2f1ab4719ca946f9a7358dba8f8064148701"
|
||||
dependencies = [
|
||||
- "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "proc-macro2",
|
||||
+ "quote",
|
||||
+ "syn",
|
||||
+ "unicode-xid",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tempdir"
|
||||
-version = "0.3.5"
|
||||
+version = "0.3.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
|
||||
dependencies = [
|
||||
- "rand 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
-]
|
||||
-
|
||||
-[[package]]
|
||||
-name = "termion"
|
||||
-version = "1.5.1"
|
||||
-source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-dependencies = [
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "redox_syscall 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "rand",
|
||||
+ "remove_dir_all",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "textwrap"
|
||||
-version = "0.9.0"
|
||||
+version = "0.11.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060"
|
||||
dependencies = [
|
||||
- "unicode-width 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "unicode-width",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thread_local"
|
||||
-version = "0.3.5"
|
||||
+version = "0.3.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
|
||||
dependencies = [
|
||||
- "lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "lazy_static",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "time"
|
||||
-version = "0.1.38"
|
||||
+version = "0.1.43"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "ca8a50ef2360fbd1eeb0ecd46795a87a19024eb4b53c5dc916ca1fd95fe62438"
|
||||
dependencies = [
|
||||
- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "redox_syscall 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
+ "libc",
|
||||
+ "winapi",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
-name = "unicode-width"
|
||||
-version = "0.1.4"
|
||||
+name = "ucd-util"
|
||||
+version = "0.1.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "c85f514e095d348c279b1e5cd76795082cf15bd59b93207832abe0b1d8fed236"
|
||||
|
||||
[[package]]
|
||||
-name = "unicode-xid"
|
||||
-version = "0.0.4"
|
||||
+name = "unicode-width"
|
||||
+version = "0.1.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "caaa9d531767d1ff2150b9332433f32a24622147e5ebb1f26409d5da67afd479"
|
||||
|
||||
[[package]]
|
||||
-name = "unreachable"
|
||||
-version = "1.0.0"
|
||||
+name = "unicode-xid"
|
||||
+version = "0.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-dependencies = [
|
||||
- "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||
-]
|
||||
+checksum = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c"
|
||||
|
||||
[[package]]
|
||||
name = "utf8-ranges"
|
||||
-version = "1.0.0"
|
||||
+version = "1.0.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "b4ae116fef2b7fea257ed6440d3cfcff7f190865f170cdad00bb6465bf18ecba"
|
||||
|
||||
[[package]]
|
||||
name = "vec_map"
|
||||
-version = "0.8.0"
|
||||
+version = "0.8.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
|
||||
|
||||
[[package]]
|
||||
-name = "void"
|
||||
-version = "1.0.2"
|
||||
+name = "winapi"
|
||||
+version = "0.3.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "8093091eeb260906a183e6ae1abdba2ef5ef2257a21801128899c3fc699229c6"
|
||||
+dependencies = [
|
||||
+ "winapi-i686-pc-windows-gnu",
|
||||
+ "winapi-x86_64-pc-windows-gnu",
|
||||
+]
|
||||
|
||||
[[package]]
|
||||
-name = "winapi"
|
||||
-version = "0.2.8"
|
||||
+name = "winapi-i686-pc-windows-gnu"
|
||||
+version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
+checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
|
||||
|
||||
[[package]]
|
||||
-name = "winapi-build"
|
||||
-version = "0.1.1"
|
||||
+name = "winapi-x86_64-pc-windows-gnu"
|
||||
+version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
-
|
||||
-[metadata]
|
||||
-"checksum aho-corasick 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "d6531d44de723825aa81398a6415283229725a00fa30713812ab9323faa82fc4"
|
||||
-"checksum ansi_term 0.10.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6b3568b48b7cefa6b8ce125f9bb4989e52fbcc29ebea88df04cc7c5f12f70455"
|
||||
-"checksum atty 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "21e50800ec991574876040fff8ee46b136a53e985286fbe6a3bdfe6421b78860"
|
||||
-"checksum backtrace 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8709cc7ec06f6f0ae6c2c7e12f6ed41540781f72b488d83734978295ceae182e"
|
||||
-"checksum backtrace-sys 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "44585761d6161b0f57afc49482ab6bd067e4edef48c12a152c237eb0203f7661"
|
||||
-"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d"
|
||||
-"checksum bitflags 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "b3c30d3802dfb7281680d6285f2ccdaa8c2d8fee41f93805dba5c4cf50dc23cf"
|
||||
-"checksum cc 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a9b13a57efd6b30ecd6598ebdb302cca617930b5470647570468a65d12ef9719"
|
||||
-"checksum cfg-if 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d4c819a1287eb618df47cc647173c5c4c66ba19d888a6e50d605672aed3140de"
|
||||
-"checksum chrono 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7c20ebe0b2b08b0aeddba49c609fe7957ba2e33449882cb186a180bc60682fa9"
|
||||
-"checksum clap 2.29.0 (registry+https://github.com/rust-lang/crates.io-index)" = "110d43e343eb29f4f51c1db31beb879d546db27998577e5715270a54bcf41d3f"
|
||||
-"checksum dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "97590ba53bcb8ac28279161ca943a924d1fd4a8fb3fa63302591647c4fc5b850"
|
||||
-"checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b"
|
||||
-"checksum failure 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "934799b6c1de475a012a02dab0ace1ace43789ee4b99bcfbf1a2e3e8ced5de82"
|
||||
-"checksum failure_derive 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "c7cdda555bb90c9bb67a3b670a0f42de8e73f5981524123ad8578aafec8ddb8b"
|
||||
-"checksum fuchsia-zircon 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f6c0581a4e363262e52b87f59ee2afe3415361c6ec35e665924eb08afe8ff159"
|
||||
-"checksum fuchsia-zircon-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "43f3795b4bae048dc6123a6b972cadde2e676f9ded08aef6bb77f5f157684a82"
|
||||
-"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
|
||||
-"checksum lazy_static 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c8f31047daa365f19be14b47c29df4f7c3b581832407daabe6ae77397619237d"
|
||||
-"checksum libc 0.2.34 (registry+https://github.com/rust-lang/crates.io-index)" = "36fbc8a8929c632868295d0178dd8f63fc423fd7537ad0738372bd010b3ac9b0"
|
||||
-"checksum log 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)" = "880f77541efa6e5cc74e76910c9884d9859683118839d6a1dc3b11e63512565b"
|
||||
-"checksum memchr 2.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "796fba70e76612589ed2ce7f45282f5af869e0fdd7cc6199fa1aa1f1d591ba9d"
|
||||
-"checksum num 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "cc4083e14b542ea3eb9b5f33ff48bd373a92d78687e74f4cc0a30caeb754f0ca"
|
||||
-"checksum num-integer 0.1.35 (registry+https://github.com/rust-lang/crates.io-index)" = "d1452e8b06e448a07f0e6ebb0bb1d92b8890eea63288c0b627331d53514d0fba"
|
||||
-"checksum num-iter 0.1.34 (registry+https://github.com/rust-lang/crates.io-index)" = "7485fcc84f85b4ecd0ea527b14189281cf27d60e583ae65ebc9c088b13dffe01"
|
||||
-"checksum num-traits 0.1.41 (registry+https://github.com/rust-lang/crates.io-index)" = "cacfcab5eb48250ee7d0c7896b51a2c5eec99c1feea5f32025635f5ae4b00070"
|
||||
-"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a"
|
||||
-"checksum rand 0.3.18 (registry+https://github.com/rust-lang/crates.io-index)" = "6475140dfd8655aeb72e1fd4b7a1cc1c202be65d71669476e392fe62532b9edd"
|
||||
-"checksum redox_syscall 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "ab105df655884ede59d45b7070c8a65002d921461ee813a024558ca16030eea0"
|
||||
-"checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
|
||||
-"checksum regex 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ac6ab4e9218ade5b423358bbd2567d1617418403c7a512603630181813316322"
|
||||
-"checksum regex-syntax 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad890a5eef7953f55427c50575c680c42841653abd2b028b68cd223d157f62db"
|
||||
-"checksum rustc-demangle 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "aee45432acc62f7b9a108cc054142dac51f979e69e71ddce7d6fc7adf29e817e"
|
||||
-"checksum strsim 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b4d15c810519a91cf877e7e36e63fe068815c678181439f2f29e2562147c3694"
|
||||
-"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad"
|
||||
-"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6"
|
||||
-"checksum synstructure 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3a761d12e6d8dcb4dcf952a7a89b475e3a9d69e4a69307e01a470977642914bd"
|
||||
-"checksum tempdir 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "87974a6f5c1dfb344d733055601650059a3363de2a6104819293baff662132d6"
|
||||
-"checksum termion 1.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "689a3bdfaab439fd92bc87df5c4c78417d3cbe537487274e9b0b2dce76e92096"
|
||||
-"checksum textwrap 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c0b59b6b4b44d867f1370ef1bd91bfb262bf07bf0ae65c202ea2fbc16153b693"
|
||||
-"checksum thread_local 0.3.5 (registry+https://github.com/rust-lang/crates.io-index)" = "279ef31c19ededf577bfd12dfae728040a21f635b06a24cd670ff510edd38963"
|
||||
-"checksum time 0.1.38 (registry+https://github.com/rust-lang/crates.io-index)" = "d5d788d3aa77bc0ef3e9621256885555368b47bd495c13dd2e7413c89f845520"
|
||||
-"checksum unicode-width 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "bf3a113775714a22dcb774d8ea3655c53a32debae63a063acc00a91cc586245f"
|
||||
-"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc"
|
||||
-"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
|
||||
-"checksum utf8-ranges 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "662fab6525a98beff2921d7f61a39e7d59e0b425ebc7d0d9e66d316e55124122"
|
||||
-"checksum vec_map 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "887b5b631c2ad01628bbbaa7dd4c869f80d3186688f8d0b6f58774fbe324988c"
|
||||
-"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
|
||||
-"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
|
||||
-"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
|
||||
+checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
diff --git a/src/bin/itmdump.rs b/src/bin/itmdump.rs
|
||||
index 455623a..a002c83 100644
|
||||
--- a/src/bin/itmdump.rs
|
||||
+++ b/src/bin/itmdump.rs
|
||||
@@ -128,13 +128,13 @@ fn run() -> Result<(), failure::Error> {
|
||||
// Unreachable.
|
||||
}
|
||||
|
||||
-fn open_read(matches: &ArgMatches) -> Result<Box<io::Read + 'static>, io::Error> {
|
||||
+fn open_read(matches: &ArgMatches) -> Result<Box<dyn io::Read + 'static>, io::Error> {
|
||||
let path = matches.value_of("file");
|
||||
Ok(match path {
|
||||
Some(path) => {
|
||||
let f = File::open(path)?;
|
||||
- Box::new(f) as Box<io::Read + 'static>
|
||||
+ Box::new(f) as Box<dyn io::Read + 'static>
|
||||
}
|
||||
- None => Box::new(io::stdin()) as Box<io::Read + 'static>,
|
||||
+ None => Box::new(io::stdin()) as Box<dyn io::Read + 'static>,
|
||||
})
|
||||
}
|
21
nix/itm.nix
Normal file
21
nix/itm.nix
Normal file
@ -0,0 +1,21 @@
|
||||
{ stdenv, fetchFromGitHub, rustPlatform, pkgconfig }:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
version = "0.3.1";
|
||||
pname = "itm";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "rust-embedded";
|
||||
repo = "itm";
|
||||
rev = "v${version}";
|
||||
sha256 = "15pa0ydm19vz8p3wairpx3vqzc55rp4lgki143ybgw44sgf8hraj";
|
||||
};
|
||||
|
||||
cargoPatches = [ ./itm-cargo-lock.patch ];
|
||||
|
||||
cargoSha256 = "1lgv8nhzbzfw9cl4rhj46a86h9jygz0ih3j4zw5nd1346xgmz7b8";
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
doCheck = false;
|
||||
}
|
23
nix/nmigen-boards.nix
Normal file
23
nix/nmigen-boards.nix
Normal file
@ -0,0 +1,23 @@
|
||||
{ stdenv, fetchgit, python3Packages, nmigen, git }:
|
||||
|
||||
python3Packages.buildPythonPackage {
|
||||
name = "nmigen-boards";
|
||||
version = "2019-10-13";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/m-labs/nmigen-boards";
|
||||
rev = "bc074915d6c67a33447d4730b720b37e3ea4bb3f";
|
||||
sha256 = "1qp32783p0bg6fxfj0wd7fd3if8az7w1r521wcbznxakdrqhrqjd";
|
||||
leaveDotGit = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ python3Packages.setuptools_scm git ];
|
||||
propagatedBuildInputs = [ nmigen ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Board and connector definition files for nMigen";
|
||||
homepage = "https://m-labs.hk";
|
||||
license = licenses.bsd2;
|
||||
maintainers = [ maintainers.sb0 ];
|
||||
};
|
||||
}
|
24
nix/nmigen.nix
Normal file
24
nix/nmigen.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ stdenv, python3Packages, yosys, symbiyosys, yices, git }:
|
||||
|
||||
python3Packages.buildPythonPackage rec {
|
||||
pname = "nmigen";
|
||||
version = "0.1";
|
||||
|
||||
src = python3Packages.fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1fhichp1flyj4f6n8dmmsj011yjibdkdikl45v7izcqfycmaqm8v";
|
||||
};
|
||||
|
||||
checkInputs = [ yosys symbiyosys yices ];
|
||||
checkPhase = "python -m unittest discover nmigen.test -v";
|
||||
|
||||
nativeBuildInputs = [ python3Packages.setuptools_scm git ];
|
||||
propagatedBuildInputs = [ python3Packages.bitarray python3Packages.pyvcd python3Packages.jinja2 python3Packages.setuptools ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A refreshed Python toolbox for building complex digital hardware";
|
||||
homepage = "https://m-labs.hk";
|
||||
license = licenses.bsd2;
|
||||
maintainers = [ maintainers.sb0 ];
|
||||
};
|
||||
}
|
66
nix/openocd.nix
Normal file
66
nix/openocd.nix
Normal file
@ -0,0 +1,66 @@
|
||||
{ stdenv, lib, fetchgit, autoreconfHook,fetchpatch, libftdi1, libusb1, pkgconfig, hidapi }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "openocd";
|
||||
version = "0.10.0-dev";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://git.code.sf.net/p/openocd/code";
|
||||
rev = "7c88e76a76588fa0e3ab645adfc46e8baff6a3e4";
|
||||
sha256 = "04ia0rjyil5353dw4mmrmwpald6lqqliaypadp467421dvp0xv97";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig autoreconfHook];
|
||||
buildInputs = [ libftdi1 libusb1 hidapi];
|
||||
|
||||
configureFlags = [
|
||||
"--enable-jtag_vpi"
|
||||
"--enable-usb_blaster_libftdi"
|
||||
(lib.enableFeature (! stdenv.isDarwin) "amtjtagaccel")
|
||||
(lib.enableFeature (! stdenv.isDarwin) "gw16012")
|
||||
"--enable-presto_libftdi"
|
||||
"--enable-openjtag_ftdi"
|
||||
(lib.enableFeature (! stdenv.isDarwin) "oocd_trace")
|
||||
"--enable-buspirate"
|
||||
(lib.enableFeature stdenv.isLinux "sysfsgpio")
|
||||
"--enable-remote-bitbang"
|
||||
];
|
||||
|
||||
NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isGNU [
|
||||
"-Wno-implicit-fallthrough"
|
||||
"-Wno-format-truncation"
|
||||
"-Wno-format-overflow"
|
||||
"-Wno-error=tautological-compare"
|
||||
"-Wno-error=array-bounds"
|
||||
"-Wno-error=cpp"
|
||||
]);
|
||||
|
||||
postInstall = lib.optionalString stdenv.isLinux ''
|
||||
mkdir -p "$out/etc/udev/rules.d"
|
||||
rules="$out/share/openocd/contrib/60-openocd.rules"
|
||||
if [ ! -f "$rules" ]; then
|
||||
echo "$rules is missing, must update the Nix file."
|
||||
exit 1
|
||||
fi
|
||||
ln -s "$rules" "$out/etc/udev/rules.d/"
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Free and Open On-Chip Debugging, In-System Programming and Boundary-Scan Testing";
|
||||
longDescription = ''
|
||||
OpenOCD provides on-chip programming and debugging support with a layered
|
||||
architecture of JTAG interface and TAP support, debug target support
|
||||
(e.g. ARM, MIPS), and flash chip drivers (e.g. CFI, NAND, etc.). Several
|
||||
network interfaces are available for interactiving with OpenOCD: HTTP,
|
||||
telnet, TCL, and GDB. The GDB server enables OpenOCD to function as a
|
||||
"remote target" for source-level debugging of embedded systems using the
|
||||
GNU GDB program.
|
||||
'';
|
||||
homepage = "http://openocd.sourceforge.net/";
|
||||
license = licenses.gpl2Plus;
|
||||
maintainers = with maintainers; [ bjornfor ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
24
nix/rustPlatform.nix
Normal file
24
nix/rustPlatform.nix
Normal file
@ -0,0 +1,24 @@
|
||||
{ recurseIntoAttrs, stdenv, lib,
|
||||
makeRustPlatform, defaultCrateOverrides,
|
||||
fetchurl, patchelf,
|
||||
rustManifest ? ./channel-rust-nightly.toml
|
||||
}:
|
||||
|
||||
let
|
||||
targets = [
|
||||
"thumbv7em-none-eabihf" # For ARM Cortex-M4 or M7 w/ FPU support
|
||||
];
|
||||
rustChannel =
|
||||
lib.rustLib.fromManifestFile rustManifest {
|
||||
inherit stdenv fetchurl patchelf;
|
||||
};
|
||||
rust =
|
||||
rustChannel.rust.override {
|
||||
inherit targets;
|
||||
};
|
||||
|
||||
in
|
||||
makeRustPlatform {
|
||||
rustc = rust;
|
||||
cargo = rust;
|
||||
}
|
122
shell.nix
Normal file
122
shell.nix
Normal file
@ -0,0 +1,122 @@
|
||||
let
|
||||
mozillaOverlay = import (builtins.fetchTarball https://github.com/mozilla/nixpkgs-mozilla/archive/master.tar.gz);
|
||||
pkgs = import <nixpkgs> {overlays = [mozillaOverlay];};
|
||||
in with pkgs;
|
||||
let
|
||||
# TODO: Dump migen when nmigen fully succeed
|
||||
migen = python3Packages.buildPythonPackage rec {
|
||||
name = "migen";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "m-labs";
|
||||
repo = "migen";
|
||||
rev = "12e7ba6a4c19ee65ff9e042747220972aecc05ac";
|
||||
sha256 = "0z76jfcvm7k6iqkmpdck3mw06hlg0kqvbpr047rgyvaw5im98wj5";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with python3Packages; [ colorama ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A Python toolbox for building complex digital hardware";
|
||||
homepage = "https://m-labs.hk/migen";
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
};
|
||||
nmigen = callPackage ./nix/nmigen.nix {};
|
||||
nmigen-boards = callPackage ./nix/nmigen-boards.nix { inherit nmigen; };
|
||||
openocd = callPackage ./nix/openocd.nix {};
|
||||
rustPlatform = callPackage ./nix/rustPlatform.nix {};
|
||||
itm = callPackage ./nix/itm.nix {inherit rustPlatform;};
|
||||
|
||||
runOpenOcd = writeShellScriptBin "run-openocd" ''
|
||||
openocd \
|
||||
-f board/st_nucleo_h743zi.cfg \
|
||||
-c init &
|
||||
sleep 1
|
||||
'';
|
||||
|
||||
runOpenOcdBlock = writeShellScriptBin "run-openocd-block" ''
|
||||
openocd -f board/st_nucleo_h743zi.cfg
|
||||
'';
|
||||
|
||||
setGDBConfigFile = writeShellScriptBin "set-gdb-config-file" ''
|
||||
if [[ $1 == "" ]]
|
||||
then
|
||||
sed -i "2s/.*/runner = \"gdb -q -x gdb_config\/openocd.gdb\"/" .cargo/config
|
||||
echo "GDB config file: openocd.gdb"
|
||||
else
|
||||
sed -i "2s/.*/runner = \"gdb -q -x gdb_config\/$1.gdb\"/" .cargo/config
|
||||
echo "GDB config file: $1.gdb"
|
||||
fi
|
||||
'';
|
||||
|
||||
runEthernetServer = writeShellScriptBin "run-ethernet-server" ''
|
||||
set-gdb-config-file && cargo run --example ethernet
|
||||
'';
|
||||
|
||||
editNMigenScript = writeShellScriptBin "edit-nmigen-script" ''
|
||||
nano -m nmigen/fpga_config.py
|
||||
'';
|
||||
|
||||
compileNMigenScript = writeShellScriptBin "compile-nmigen-script" ''
|
||||
python3 nmigen/fpga_config.py
|
||||
echo "Compiled fpga_config.py to top.bin"
|
||||
'';
|
||||
|
||||
# No longer uses generated rust array to store bitstream
|
||||
|
||||
# readyBitstream = writeShellScriptBin "ready-bitstream" ''
|
||||
# python3 nmigen/loader.py
|
||||
# '';
|
||||
|
||||
flashFPGAConfig = writeShellScriptBin "flash-fpga-config" ''
|
||||
set-gdb-config-file "fpga_config" && cargo run --example fpga_config
|
||||
'';
|
||||
|
||||
configureFPGA = writeShellScriptBin "configure-fpga" ''
|
||||
nc -zv localhost 3333 \
|
||||
&& compile-nmigen-script \
|
||||
&& flash-fpga-config \
|
||||
|| echo "Please run OpenOcd first."
|
||||
'';
|
||||
|
||||
verifyFPGAConfig = writeShellScriptBin "verify-fpga-config" ''
|
||||
gdb -x gdb_config/fpga_verify.gdb
|
||||
diff build/top.bin mem.bin
|
||||
rm mem.bin
|
||||
'';
|
||||
|
||||
resetFlash = writeShellScriptBin "reset-flash" ''
|
||||
gdb -batch -x gdb_config/reset.gdb
|
||||
echo "Reset is complete, please reset the openocd server."
|
||||
'';
|
||||
|
||||
in
|
||||
stdenv.mkDerivation {
|
||||
name = "nix-shell";
|
||||
buildInputs = with rustPlatform.rust; [
|
||||
(pkgs.python3.withPackages(ps: [migen nmigen nmigen-boards]))
|
||||
pkgs.python3Packages.pandas
|
||||
pkgs.yosys
|
||||
pkgs.nextpnr
|
||||
pkgs.icestorm
|
||||
pkgs.gdb
|
||||
openocd
|
||||
rustc
|
||||
cargo
|
||||
itm
|
||||
runOpenOcd
|
||||
runOpenOcdBlock
|
||||
setGDBConfigFile
|
||||
runEthernetServer
|
||||
editNMigenScript
|
||||
compileNMigenScript
|
||||
flashFPGAConfig
|
||||
configureFPGA
|
||||
verifyFPGAConfig
|
||||
resetFlash
|
||||
];
|
||||
|
||||
RUST_BACKTRACE = 1;
|
||||
}
|
Loading…
Reference in New Issue
Block a user