cleaning up
parent
6c683670d2
commit
da67d67537
@ -0,0 +1,8 @@
|
||||
[esf.links]
|
||||
common = "arch/arm/common"
|
||||
mcu = "arch/arm/SAMD21/SAMD21A/mcu/"
|
||||
ld = "arch/arm/SAMD21/SAMD21A/ld/"
|
||||
cfg = "arch/arm/SAMD21/SAMD21A/manifest/"
|
||||
|
||||
[esf.includes]
|
||||
IGLOO_INCLUDES = ["sam.h"]
|
@ -1,4 +0,0 @@
|
||||
[esf.links]
|
||||
MCU = "arch/arm/SAMD21/SAMD21A/mcu/"
|
||||
LD = "arch/arm/SAMD21/SAMD21A/ld/"
|
||||
CFG = "arch/arm/SAMD21/SAMD21A/cfg/"
|
@ -1,38 +0,0 @@
|
||||
break main
|
||||
r
|
||||
n
|
||||
n
|
||||
n
|
||||
s
|
||||
s
|
||||
s
|
||||
s
|
||||
s
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
s
|
||||
s
|
||||
s
|
||||
s
|
||||
s
|
||||
s
|
||||
n
|
||||
n
|
||||
n
|
||||
n
|
||||
q
|
@ -1,528 +0,0 @@
|
||||
# This file is automatically @generated by Cargo.
|
||||
# It is not intended for manual editing.
|
||||
[[package]]
|
||||
name = "aho-corasick"
|
||||
version = "0.7.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b476ce7103678b0c6d3d395dbbae31d48ff910bd28be979ba5d48c6351131d0d"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "arrayvec"
|
||||
version = "0.5.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cff77d8686867eceff3105329d4698d96c2391c176d5d03adc90c7389162b5b8"
|
||||
|
||||
[[package]]
|
||||
name = "autocfg"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a"
|
||||
|
||||
[[package]]
|
||||
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.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822"
|
||||
|
||||
[[package]]
|
||||
name = "config"
|
||||
version = "0.10.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "19b076e143e1d9538dde65da30f8481c2a6c44040edb8e02b9bf1351edb92ce3"
|
||||
dependencies = [
|
||||
"lazy_static 1.4.0",
|
||||
"nom",
|
||||
"rust-ini",
|
||||
"serde 1.0.117",
|
||||
"serde-hjson",
|
||||
"serde_json",
|
||||
"toml",
|
||||
"yaml-rust",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "filetime"
|
||||
version = "0.2.12"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3ed85775dcc68644b5c950ac06a2b23768d3bc9390464151aaf27136998dcf9e"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"libc",
|
||||
"redox_syscall",
|
||||
"winapi 0.3.9",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fsevent"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5ab7d1bd1bd33cc98b0889831b72da23c0aa4df9cec7e0702f46ecea04b35db6"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"fsevent-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fsevent-sys"
|
||||
version = "2.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f41b048a94555da0f42f1d632e2e19510084fb8e303b0daa2816e733fb3644a0"
|
||||
dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fuchsia-zircon"
|
||||
version = "0.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"fuchsia-zircon-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fuchsia-zircon-sys"
|
||||
version = "0.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7"
|
||||
|
||||
[[package]]
|
||||
name = "glob"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
|
||||
|
||||
[[package]]
|
||||
name = "inotify"
|
||||
version = "0.7.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4816c66d2c8ae673df83366c18341538f234a26d65a9ecea5c348b453ac1d02f"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"inotify-sys",
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "inotify-sys"
|
||||
version = "0.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e74a1aa87c59aeff6ef2cc2fa62d41bc43f54952f55652656b18a02fd5e356c0"
|
||||
dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "iovec"
|
||||
version = "0.1.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e"
|
||||
dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "itoa"
|
||||
version = "0.4.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dc6f3ad7b9d11a0c00842ff8de1b60ee58661048eb8049ed33c73594f359d7e6"
|
||||
|
||||
[[package]]
|
||||
name = "kernel32-sys"
|
||||
version = "0.2.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d"
|
||||
dependencies = [
|
||||
"winapi 0.2.8",
|
||||
"winapi-build",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "lazy_static"
|
||||
version = "0.2.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73"
|
||||
|
||||
[[package]]
|
||||
name = "lazy_static"
|
||||
version = "1.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
|
||||
[[package]]
|
||||
name = "lazycell"
|
||||
version = "1.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55"
|
||||
|
||||
[[package]]
|
||||
name = "lexical-core"
|
||||
version = "0.7.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "db65c6da02e61f55dae90a0ae427b2a5f6b3e8db09f58d10efab23af92592616"
|
||||
dependencies = [
|
||||
"arrayvec",
|
||||
"bitflags",
|
||||
"cfg-if",
|
||||
"ryu",
|
||||
"static_assertions",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.79"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2448f6066e80e3bfc792e9c98bf705b4b0fc6e8ef5b43e5889aff0eaa9c58743"
|
||||
|
||||
[[package]]
|
||||
name = "linked-hash-map"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6d262045c5b87c0861b3f004610afd0e2c851e2908d08b6c870cbb9d5f494ecd"
|
||||
dependencies = [
|
||||
"serde 0.8.23",
|
||||
"serde_test",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "linked-hash-map"
|
||||
version = "0.5.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8dd5a6d5999d9907cda8ed67bbd137d3af8085216c2ac62de5be860bd41f304a"
|
||||
|
||||
[[package]]
|
||||
name = "log"
|
||||
version = "0.4.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4fabed175da42fed1fa0746b0ea71f412aa9d35e76e95e59b192c64b9dc2bf8b"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "memchr"
|
||||
version = "2.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3728d817d99e5ac407411fa471ff9800a778d88a24685968b36824eaf4bee400"
|
||||
|
||||
[[package]]
|
||||
name = "mio"
|
||||
version = "0.6.22"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fce347092656428bc8eaf6201042cb551b8d67855af7374542a92a0fbfcac430"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"fuchsia-zircon",
|
||||
"fuchsia-zircon-sys",
|
||||
"iovec",
|
||||
"kernel32-sys",
|
||||
"libc",
|
||||
"log",
|
||||
"miow",
|
||||
"net2",
|
||||
"slab",
|
||||
"winapi 0.2.8",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "mio-extras"
|
||||
version = "2.0.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "52403fe290012ce777c4626790c8951324a2b9e3316b3143779c72b029742f19"
|
||||
dependencies = [
|
||||
"lazycell",
|
||||
"log",
|
||||
"mio",
|
||||
"slab",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "miow"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919"
|
||||
dependencies = [
|
||||
"kernel32-sys",
|
||||
"net2",
|
||||
"winapi 0.2.8",
|
||||
"ws2_32-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "net2"
|
||||
version = "0.2.35"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3ebc3ec692ed7c9a255596c67808dee269f64655d8baf7b4f0638e51ba1d6853"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"libc",
|
||||
"winapi 0.3.9",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nom"
|
||||
version = "5.1.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af"
|
||||
dependencies = [
|
||||
"lexical-core",
|
||||
"memchr",
|
||||
"version_check",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "notify"
|
||||
version = "4.0.15"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "80ae4a7688d1fab81c5bf19c64fc8db920be8d519ce6336ed4e7efe024724dbd"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"filetime",
|
||||
"fsevent",
|
||||
"fsevent-sys",
|
||||
"inotify",
|
||||
"libc",
|
||||
"mio",
|
||||
"mio-extras",
|
||||
"walkdir",
|
||||
"winapi 0.3.9",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "num-traits"
|
||||
version = "0.1.43"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
|
||||
dependencies = [
|
||||
"num-traits 0.2.12",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "num-traits"
|
||||
version = "0.2.12"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ac267bcc07f48ee5f8935ab0d24f316fb722d7a1292e2913f0cc196b29ffd611"
|
||||
dependencies = [
|
||||
"autocfg",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "redox_syscall"
|
||||
version = "0.1.57"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
|
||||
|
||||
[[package]]
|
||||
name = "regex"
|
||||
version = "1.4.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8963b85b8ce3074fecffde43b4b0dded83ce2f367dc8d363afc56679f3ee820b"
|
||||
dependencies = [
|
||||
"aho-corasick",
|
||||
"memchr",
|
||||
"regex-syntax",
|
||||
"thread_local",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex-syntax"
|
||||
version = "0.6.20"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8cab7a364d15cde1e505267766a2d3c4e22a843e1a601f0fa7564c0f82ced11c"
|
||||
|
||||
[[package]]
|
||||
name = "rust-ini"
|
||||
version = "0.13.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3e52c148ef37f8c375d49d5a73aa70713125b7f19095948a923f80afdeb22ec2"
|
||||
|
||||
[[package]]
|
||||
name = "ryu"
|
||||
version = "1.0.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e"
|
||||
|
||||
[[package]]
|
||||
name = "same-file"
|
||||
version = "1.0.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
|
||||
dependencies = [
|
||||
"winapi-util",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "0.8.23"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9dad3f759919b92c3068c696c15c3d17238234498bbdcc80f2c469606f948ac8"
|
||||
|
||||
[[package]]
|
||||
name = "serde"
|
||||
version = "1.0.117"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b88fa983de7720629c9387e9f517353ed404164b1e482c970a90c1a4aaf7dc1a"
|
||||
|
||||
[[package]]
|
||||
name = "serde-hjson"
|
||||
version = "0.9.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6a3a4e0ea8a88553209f6cc6cfe8724ecad22e1acf372793c27d995290fe74f8"
|
||||
dependencies = [
|
||||
"lazy_static 1.4.0",
|
||||
"linked-hash-map 0.3.0",
|
||||
"num-traits 0.1.43",
|
||||
"regex",
|
||||
"serde 0.8.23",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_json"
|
||||
version = "1.0.59"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dcac07dbffa1c65e7f816ab9eba78eb142c6d44410f4eeba1e26e4f5dfa56b95"
|
||||
dependencies = [
|
||||
"itoa",
|
||||
"ryu",
|
||||
"serde 1.0.117",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "serde_test"
|
||||
version = "0.8.23"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "110b3dbdf8607ec493c22d5d947753282f3bae73c0f56d322af1e8c78e4c23d5"
|
||||
dependencies = [
|
||||
"serde 0.8.23",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "slab"
|
||||
version = "0.4.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8"
|
||||
|
||||
[[package]]
|
||||
name = "static_assertions"
|
||||
version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
|
||||
|
||||
[[package]]
|
||||
name = "thread_local"
|
||||
version = "1.0.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d40c6d1b69745a6ec6fb1ca717914848da4b44ae29d9b3080cbee91d72a69b14"
|
||||
dependencies = [
|
||||
"lazy_static 1.4.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "toml"
|
||||
version = "0.5.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "75cf45bb0bef80604d001caaec0d09da99611b3c0fd39d3080468875cdb65645"
|
||||
dependencies = [
|
||||
"serde 1.0.117",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "toml_learning"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"config",
|
||||
"glob",
|
||||
"lazy_static 0.2.11",
|
||||
"notify",
|
||||
"serde 1.0.117",
|
||||
"toml",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "version_check"
|
||||
version = "0.9.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "b5a972e5669d67ba988ce3dc826706fb0a8b01471c088cb0b6110b805cc36aed"
|
||||
|
||||
[[package]]
|
||||
name = "walkdir"
|
||||
version = "2.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "777182bc735b6424e1a57516d35ed72cb8019d85c8c9bf536dccb3445c1a2f7d"
|
||||
dependencies = [
|
||||
"same-file",
|
||||
"winapi 0.3.9",
|
||||
"winapi-util",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "winapi"
|
||||
version = "0.2.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
|
||||
|
||||
[[package]]
|
||||
name = "winapi"
|
||||
version = "0.3.9"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
|
||||
dependencies = [
|
||||
"winapi-i686-pc-windows-gnu",
|
||||
"winapi-x86_64-pc-windows-gnu",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "winapi-build"
|
||||
version = "0.1.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc"
|
||||
|
||||
[[package]]
|
||||
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-util"
|
||||
version = "0.1.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
|
||||
dependencies = [
|
||||
"winapi 0.3.9",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "winapi-x86_64-pc-windows-gnu"
|
||||
version = "0.4.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
|
||||
|
||||
[[package]]
|
||||
name = "ws2_32-sys"
|
||||
version = "0.2.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e"
|
||||
dependencies = [
|
||||
"winapi 0.2.8",
|
||||
"winapi-build",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "yaml-rust"
|
||||
version = "0.4.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "39f0c922f1a334134dc2f7a8b67dc5d25f0735263feec974345ff706bcf20b0d"
|
||||
dependencies = [
|
||||
"linked-hash-map 0.5.3",
|
||||
]
|
@ -1,15 +0,0 @@
|
||||
[package]
|
||||
name = "toml_learning"
|
||||
version = "0.1.0"
|
||||
authors = ["Penguin <penguin@epenguin.net>"]
|
||||
edition = "2018"
|
||||
|
||||
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||
|
||||
[dependencies]
|
||||
config = "0.10"
|
||||
glob = "0.3.0"
|
||||
toml = "0.5"
|
||||
serde = "1.0"
|
||||
lazy_static = "^0.2.8"
|
||||
notify = "^4.0.0"
|
@ -1,194 +0,0 @@
|
||||
# ePenguin Generated Variables
|
||||
PROJECT_NAME=d21test
|
||||
TOOLCHAIN=${ESF_DIR}/toolchains/arm/bin/arm-none-eabi
|
||||
CC=${TOOLCHAIN}-gcc
|
||||
CXX=${TOOLCHAIN}-g++
|
||||
OBJCOPY=${TOOLCHAIN}-objcopy
|
||||
OBJDUMP=${TOOLCHAIN}-objdump
|
||||
GDB=${TOOLCHAIN}-gdb
|
||||
SIZE=${TOOLCHAIN}-size
|
||||
AS=${TOOLCHAIN}-as
|
||||
|
||||
|
||||
MCPU=cortex-m0plus
|
||||
MCU=__SAMD21J18A__
|
||||
LD_PATH=../ESF/ld
|
||||
LD_SCRIPT=$(LD_PATH)/samd21j18a_flash.ld
|
||||
|
||||
|
||||
CFLAGS= \
|
||||
-D$(MCU) \
|
||||
-mcpu=$(MCPU) \
|
||||
-x c \
|
||||
-DDEBUG \
|
||||
-Os \
|
||||
-g3 \
|
||||
-Wall \
|
||||
-c \
|
||||
-std=gnu99 \
|
||||
$(DIR_INCLUDES) \
|
||||
-MD -MP \
|
||||
-MF$(QUOTE)$(@:%.o=%.d)$(QUOTE) \
|
||||
-MT$(QUOTE)$(@:%.o=%.d)$(QUOTE) \
|
||||
-MT$(QUOTE)$(@:%.o=%.o)$(QUOTE)
|
||||
|
||||
ELF_FLAGS= \
|
||||
-Wl,--start-group -l m \
|
||||
-Wl,--end-group -mthumb \
|
||||
-Wl,-Map=$(QUOTE)$(PROJECT_NAME).map$(QUOTE) \
|
||||
--specs=nano.specs \
|
||||
-Wl,--gc-sections \
|
||||
-T$(QUOTE)$(LD_SCRIPT)$(QUOTE) \
|
||||
-L$(QUOTE)$(LD_PATH)$(QUOTE)
|
||||
|
||||
HEX_FLAGS= \
|
||||
-R .eeprom \
|
||||
-R .fuse \
|
||||
-R .lock \
|
||||
-R .signature
|
||||
|
||||
EEP_FLAGS= \
|
||||
-j .eeprom --set-section-flags=.eeprom=alloc,load \
|
||||
--change-section-lma \
|
||||
.eeprom=0 \
|
||||
--no-change-warnings
|
||||
|
||||
|
||||
ifdef SystemRoot
|
||||
SHELL = cmd.exe
|
||||
MK_DIR = mkdir
|
||||
else
|
||||
ifeq ($(shell uname), Linux)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), CYGWIN)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), MINGW32)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), MINGW64)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), DARWIN)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
endif
|
||||
SUB_DIRS+= \
|
||||
src \
|
||||
ESF/mcu/src
|
||||
|
||||
OBJS+= \
|
||||
ESF/mcu/src/startup_samd21j18a.o \
|
||||
ESF/mcu/src/system_samd21j18a.o \
|
||||
src/main.o
|
||||
|
||||
OBJS_AS_ARGS+= \
|
||||
$(QUOTE)ESF/mcu/src/startup_samd21j18a.o$(QUOTE) \
|
||||
$(QUOTE)ESF/mcu/src/system_samd21j18a.o$(QUOTE) \
|
||||
$(QUOTE)src/main.o$(QUOTE)
|
||||
|
||||
DIR_INCLUDES+= \
|
||||
-I$(QUOTE)../ESF/common/inc$(QUOTE) \
|
||||
-I$(QUOTE)../ESF/common/inc/cmsis$(QUOTE) \
|
||||
-I$(QUOTE)../ESF/mcu/inc$(QUOTE) \
|
||||
-I$(QUOTE)../inc$(QUOTE)
|
||||
|
||||
DEPS:=$(OBJS:%.o=%.d)
|
||||
|
||||
DEPS_AS_ARGS:=$(OBJS:%.o=%.d)
|
||||
|
||||
vpath %.c ../
|
||||
vpath %.s ../
|
||||
vpath %.S ../
|
||||
|
||||
.PHONY: debug clean
|
||||
|
||||
all:\
|
||||
$(SUB_DIRS)\
|
||||
$(PROJECT_NAME).elf\
|
||||
$(PROJECT_NAME).bin\
|
||||
$(PROJECT_NAME).hex\
|
||||
$(PROJECT_NAME).eep\
|
||||
$(PROJECT_NAME).lss
|
||||
\
|
||||
$(QUOTE)$(SIZE)$(QUOTE) $(QUOTE)$(PROJECT_NAME).elf$(QUOTE)
|
||||
|
||||
$(PROJECT_NAME).elf:\
|
||||
$(OBJS)
|
||||
\
|
||||
$(QUOTE)$(CC)$(QUOTE) -o $@ $(OBJS_AS_ARGS) $(ELF_FLAGS)
|
||||
|
||||
$(PROJECT_NAME).bin:\
|
||||
$(PROJECT_NAME).elf
|
||||
\
|
||||
$(QUOTE)$(OBJCOPY)$(QUOTE) -O binary $(QUOTE)$<$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||
|
||||
$(PROJECT_NAME).hex:\
|
||||
$(PROJECT_NAME).elf
|
||||
\
|
||||
$(QUOTE)$(OBJCOPY)$(QUOTE) -O ihex $(HEX_FLAGS) $(QUOTE)$<$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||
|
||||
$(PROJECT_NAME).eep:\
|
||||
$(PROJECT_NAME).elf
|
||||
\
|
||||
$(QUOTE)$(OBJCOPY)$(QUOTE) $(EEP_FLAGS) -O binary $(QUOTE)$<$(QUOTE)\
|
||||
$(QUOTE)$@$(QUOTE) || exit 0
|
||||
|
||||
$(PROJECT_NAME).lss:\
|
||||
$(PROJECT_NAME).elf
|
||||
\
|
||||
$(QUOTE)$(OBJDUMP)$(QUOTE) -h -S $(QUOTE)$<$(QUOTE) > $(QUOTE)$@$(QUOTE)
|
||||
|
||||
# Compiler targets
|
||||
%.o: %.c
|
||||
@echo Building file: $<
|
||||
@echo ARM/GNU C Compiler
|
||||
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||
@echo Finished building: $<
|
||||
|
||||
%.o: %.s
|
||||
@echo Building file: $<
|
||||
@echo ARM/GNU Assembler
|
||||
$(QUOTE)$(AS)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||
@echo Finished building: $<
|
||||
|
||||
%.o: %.S
|
||||
@echo Building file: $<
|
||||
@echo ARM/GNU Preprocessing Assembler
|
||||
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||
@echo Finished building: $<
|
||||
|
||||
|
||||
$(SUB_DIRS):
|
||||
$(MK_DIR) $(QUOTE)$@$(QUOTE)
|
||||
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
ifneq ($(strip $(DEPS)),)
|
||||
-include $(DEPS)
|
||||
endif
|
||||
endif
|
||||
|
||||
clean:
|
||||
\
|
||||
rm -f $(PROJECT_NAME).a \
|
||||
rm -f $(PROJECT_NAME).lss \
|
||||
rm -f $(PROJECT_NAME).srec \
|
||||
rm -f $(PROJECT_NAME).map \
|
||||
rm -f $(PROJECT_NAME).eep \
|
||||
rm -f $(OBJS_AS_ARGS) \
|
||||
rm -f $(DEPS_AS_ARGS) \
|
||||
rm -f $(PROJECT_NAME).bin \
|
||||
rm -f $(PROJECT_NAME).elf \
|
||||
rm -f $(PROJECT_NAME).hex
|
||||
|
||||
debug:\
|
||||
$(PROJECT_NAME).elf
|
||||
\
|
||||
$(QUOTE)arm-none-eabi-gdb$(QUOTE) -iex $(QUOTE)target extended-remote localhost:3333$(QUOTE) $(PROJECT_NAME).elf
|
||||
|
||||
QUOTE:="
|
@ -1,351 +0,0 @@
|
||||
use config::{Config, Environment, Value};
|
||||
use std::collections::HashMap;
|
||||
use std::io::prelude::*;
|
||||
use std::fs::File;
|
||||
use std::fs::OpenOptions;
|
||||
use std::path::Path;
|
||||
fn main()
|
||||
{
|
||||
let mut mcu_lookup_table = Config::new();
|
||||
let mut make_manifest: Config = Config::new();
|
||||
mcu_lookup_table.merge(config::File::with_name("\
|
||||
/storage/Shared/Documents/Projects/ePenguin/\
|
||||
ePenguin-Software-Framework/arch/mcu-lookup.toml")).unwrap();
|
||||
make_manifest.merge(config::File::with_name("\
|
||||
/storage/Shared/Documents/Projects/ePenguin/\
|
||||
ePenguin-Software-Framework/arch/make-manifest.toml")).unwrap();
|
||||
let mut _table_name = mcu_lookup_table.get_str("make.mcu.samd21j18a").unwrap();
|
||||
let mut table_head = &_table_name[0.._table_name.len()];
|
||||
let mut makefile: HashMap<String, config::Value> = HashMap::new();
|
||||
let mut b_quit: bool = false;
|
||||
loop
|
||||
{
|
||||
let mut _active_table = make_manifest.get_table(&table_head).unwrap();
|
||||
for (name, val) in _active_table
|
||||
{
|
||||
match val.clone().into_table()
|
||||
{
|
||||
Err(_e) =>
|
||||
{
|
||||
if !makefile.contains_key(&name)
|
||||
{
|
||||
makefile.insert(name, val);
|
||||
}
|
||||
else
|
||||
{
|
||||
let mut new_arr: std::vec::Vec<config::Value> = makefile.get_key_value(&name).unwrap().1.clone().into_array().unwrap();
|
||||
new_arr.push(val.into_array());
|
||||
makefile.insert(name, config::Value::from(new_arr));
|
||||
}
|
||||
}
|
||||
Ok(_v) => {}
|
||||
}
|
||||
}
|
||||
match table_head.rfind('.')
|
||||
{
|
||||
None => b_quit = true,
|
||||
Some(v) => table_head = &table_head[0..v],
|
||||
}
|
||||
if b_quit
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (key_id, val) in &makefile
|
||||
{
|
||||
println!("\n{}: {:?}", key_id, val);
|
||||
}
|
||||
gen_makefile(&makefile);
|
||||
}
|
||||
|
||||
fn gen_makefile(mkfile: &HashMap<String, config::Value>) -> bool
|
||||
{
|
||||
// If the Makefile already exists, trash it
|
||||
if Path::new("Makefile").exists()
|
||||
{
|
||||
std::fs::remove_file("Makefile");
|
||||
}
|
||||
|
||||
// Make our Makefile, set it to append mode
|
||||
File::create("Makefile").unwrap();
|
||||
let mut app_file = OpenOptions::new()
|
||||
.write(true)
|
||||
.append(true)
|
||||
.open("Makefile")
|
||||
.unwrap();
|
||||
//
|
||||
writeln!(app_file, "# ePenguin Generated Variables").unwrap();
|
||||
|
||||
// Get our knowns out of the way
|
||||
match mkfile.get("TOOLCHAIN")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("TOOLCHAIN Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "TOOLCHAIN=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("CC")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CC Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "CC=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("CXX")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CXX Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "CXX=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("OBJCOPY")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJCOPY Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJCOPY=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("OBJDUMP")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJDUMP Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJDUMP=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("GDB")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("GDB Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJDUMP=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("SIZE")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("SIZE Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "SIZE=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("AS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("AS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "AS=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
|
||||
// MCU Specifics now
|
||||
match mkfile.get("MCPU")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("MCPU Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "MCPU=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("MCU")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("MCU Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "MCU=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("LD_PATH")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("LD_PATH Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "LD_PATH=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("LD_SCRIPT")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("LD_SCRIPT Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "LD_SCRIPT=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
|
||||
// CFLAGS
|
||||
match mkfile.get("CFLAGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CFLAGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "CFLAGS=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
// ELF FLAGS
|
||||
match mkfile.get("EFLAGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("EFLAGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "EFLAGS=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
// Write SystemRoot config stuff for cross compatibility
|
||||
let sysroot: String = String::from("ifdef SystemRoot
|
||||
SHELL = cmd.exe\n\
|
||||
MK_DIR = mkdir\n\
|
||||
else\n\
|
||||
ifeq ($(shell uname), Linux)\n\
|
||||
MK_DIR = mkdir -p\n\
|
||||
endif\n\
|
||||
\n\
|
||||
ifeq ($(shell uname | cut -d _ -f 1), CYGWIN)\n\
|
||||
MK_DIR = mkdir -p\n\
|
||||
endif\n\
|
||||
\n\
|
||||
ifeq ($(shell uname | cut -d _ -f 1), MINGW32)\n\
|
||||
MK_DIR = mkdir -p\n\
|
||||
endif\n\
|
||||
\n\
|
||||
ifeq ($(shell uname | cut -d _ -f 1), MINGW64)\n\
|
||||
MK_DIR = mkdir -p\n\
|
||||
endif\n\
|
||||
\n\
|
||||
ifeq ($(shell uname | cut -d _ -f 1), DARWIN)\n\
|
||||
MK_DIR = mkdir -p\n\
|
||||
endif\n\
|
||||
endif\n\
|
||||
");
|
||||
|
||||
writeln!(app_file, "{}\n", sysroot).unwrap();
|
||||
match mkfile.get("SUB_DIRS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("SUB_DIRS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "SUB_DIRS+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n").unwrap();
|
||||
match mkfile.get("OBJS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJS+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n").unwrap();
|
||||
match mkfile.get("OBJS_AS_ARGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJS_AS_ARGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJS_AS_ARGS+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
true
|
||||
}
|
@ -1,773 +0,0 @@
|
||||
use config::{Config, Environment, Value};
|
||||
use std::collections::HashMap;
|
||||
use std::io::prelude::*;
|
||||
use std::fs::File;
|
||||
use std::fs::OpenOptions;
|
||||
use std::path::Path;
|
||||
fn main()
|
||||
{
|
||||
let mut mcu_lookup_table = Config::new();
|
||||
let mut make_manifest: Config = Config::new();
|
||||
mcu_lookup_table.merge(config::File::with_name("\
|
||||
/storage/Shared/Documents/Projects/ePenguin/\
|
||||
ePenguin-Software-Framework/arch/mcu-lookup.toml")).unwrap();
|
||||
make_manifest.merge(config::File::with_name("\
|
||||
/storage/Shared/Documents/Projects/ePenguin/\
|
||||
ePenguin-Software-Framework/arch/make-manifest.toml")).unwrap();
|
||||
let mut _table_name = mcu_lookup_table.get_str("make.mcu.samd21j18a").unwrap();
|
||||
let mut table_head = &_table_name[0.._table_name.len()];
|
||||
let mut makefile: HashMap<String, config::Value> = HashMap::new();
|
||||
let mut b_quit: bool = false;
|
||||
loop
|
||||
{
|
||||
let mut _active_table = make_manifest.get_table(&table_head).unwrap();
|
||||
for (name, val) in _active_table
|
||||
{
|
||||
match val.clone().into_table()
|
||||
{
|
||||
Err(_e) =>
|
||||
{
|
||||
if !makefile.contains_key(&name)
|
||||
{
|
||||
makefile.insert(name, val);
|
||||
}
|
||||
else
|
||||
{
|
||||
let mut newval = val.clone().into_array().unwrap();
|
||||
let mut newvec = makefile.get_key_value(&name).unwrap().1.clone().into_array().unwrap();
|
||||
newvec.append(&mut newval);
|
||||
makefile.insert(name, config::Value::from(newvec));
|
||||
}
|
||||
}
|
||||
Ok(_v) => {}
|
||||
}
|
||||
}
|
||||
match table_head.rfind('.')
|
||||
{
|
||||
None => b_quit = true,
|
||||
Some(v) => table_head = &table_head[0..v],
|
||||
}
|
||||
if b_quit
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// for (key_id, val) in &makefile
|
||||
// {
|
||||
// println!("\n{}: {:?}", key_id, val);
|
||||
// }
|
||||
gen_makefile(&makefile);
|
||||
}
|
||||
|
||||
fn gen_makefile(mkfile: &HashMap<String, config::Value>) -> bool
|
||||
{
|
||||
// If the Makefile already exists, trash it
|
||||
if Path::new("Makefile").exists()
|
||||
{
|
||||
std::fs::remove_file("Makefile");
|
||||
}
|
||||
|
||||
// Make our Makefile, set it to append mode
|
||||
File::create("Makefile").unwrap();
|
||||
let mut app_file = OpenOptions::new()
|
||||
.write(true)
|
||||
.append(true)
|
||||
.open("Makefile")
|
||||
.unwrap();
|
||||
//
|
||||
writeln!(app_file, "# ePenguin Generated Variables").unwrap();
|
||||
|
||||
// Get our knowns out of the way
|
||||
match mkfile.get("PROJECT_NAME")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("PROJECT_NAME not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "PROJECT_NAME=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("TOOLCHAIN")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("TOOLCHAIN Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "TOOLCHAIN=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("CC")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CC Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "CC=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("CXX")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CXX Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "CXX=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("OBJCOPY")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJCOPY Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJCOPY=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("OBJDUMP")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJDUMP Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJDUMP=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("GDB")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("GDB Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "GDB=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("SIZE")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("SIZE Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "SIZE=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("AS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("AS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "AS=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
|
||||
// MCU Specifics now
|
||||
match mkfile.get("MCPU")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("MCPU Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "MCPU=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("MCU")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("MCU Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "MCU=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("LD_PATH")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("LD_PATH Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "LD_PATH=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
match mkfile.get("LD_SCRIPT")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("LD_SCRIPT Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "LD_SCRIPT=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
|
||||
// CFLAGS
|
||||
match mkfile.get("CFLAGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CFLAGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "CFLAGS=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
// ELF FLAGS
|
||||
match mkfile.get("ELF_FLAGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("ELF_FLAGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "ELF_FLAGS=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
// HEX FLAGS
|
||||
match mkfile.get("HEX_FLAGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("HEX_FLAGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "HEX_FLAGS=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
match mkfile.get("EEP_FLAGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("EEP_FLAGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "EEP_FLAGS=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
// Write SystemRoot config stuff for cross compatibility
|
||||
let sysroot: String = String::from("
|
||||
ifdef SystemRoot
|
||||
SHELL = cmd.exe
|
||||
MK_DIR = mkdir
|
||||
else
|
||||
ifeq ($(shell uname), Linux)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), CYGWIN)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), MINGW32)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), MINGW64)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
|
||||
ifeq ($(shell uname | cut -d _ -f 1), DARWIN)
|
||||
MK_DIR = mkdir -p
|
||||
endif
|
||||
endif");
|
||||
|
||||
writeln!(app_file, "{}", sysroot).unwrap();
|
||||
match mkfile.get("SUB_DIRS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("SUB_DIRS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "SUB_DIRS+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
match mkfile.get("OBJS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJS+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
match mkfile.get("OBJS_AS_ARGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("OBJS_AS_ARGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "OBJS_AS_ARGS+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
match mkfile.get("DIR_INCLUDES")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("DIR_INCLUDES Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "DIR_INCLUDES+=").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n\n").unwrap();
|
||||
match mkfile.get("DEPS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("DEPS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "DEPS:=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n").unwrap();
|
||||
match mkfile.get("DEPS_AS_ARGS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("DEPS_AS_ARGS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "DEPS_AS_ARGS:=").unwrap();
|
||||
writeln!(app_file, "{}", v.to_string()).unwrap();
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\nvpath %.c ../").unwrap();
|
||||
writeln!(app_file, "vpath %.s ../").unwrap();
|
||||
writeln!(app_file, "vpath %.S ../\n").unwrap();
|
||||
|
||||
writeln!(app_file, ".PHONY: debug clean\n").unwrap();
|
||||
|
||||
match mkfile.get("ALL_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("ALL_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "all:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
match mkfile.get("ALL_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("ALL_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n\n").unwrap();
|
||||
match mkfile.get("ELF_TARGET_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("ELF_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "$(PROJECT_NAME).elf:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("ELF_TARGET_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("ELF_TARGET_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n\n").unwrap();
|
||||
match mkfile.get("BIN_TARGET_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("BIN_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "$(PROJECT_NAME).bin:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("BIN_TARGET_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("BIN_TARGET_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
write!(app_file, "\n\n").unwrap();
|
||||
match mkfile.get("HEX_TARGET_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("HEX_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "$(PROJECT_NAME).hex:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("HEX_TARGET_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("HEX_TARGET_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
write!(app_file, "\n\n").unwrap();
|
||||
match mkfile.get("EEP_TARGET_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("EEP_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "$(PROJECT_NAME).eep:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("EEP_TARGET_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("EEP_TARGET_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
write!(app_file, "\n\n").unwrap();
|
||||
match mkfile.get("LSS_TARGET_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("LSS_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "$(PROJECT_NAME).lss:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("LSS_TARGET_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("LSS_TARGET_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap();
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
// Compiler Targets
|
||||
writeln!(app_file, "").unwrap();
|
||||
writeln!(app_file, "
|
||||
# Compiler targets
|
||||
%.o: %.c
|
||||
@echo Building file: $<
|
||||
@echo ARM/GNU C Compiler
|
||||
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||
@echo Finished building: $<").unwrap();
|
||||
writeln!(app_file, "
|
||||
%.o: %.s
|
||||
@echo Building file: $<
|
||||
@echo ARM/GNU Assembler
|
||||
$(QUOTE)$(AS)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||
@echo Finished building: $<").unwrap();
|
||||
writeln!(app_file, "
|
||||
%.o: %.S
|
||||
@echo Building file: $<
|
||||
@echo ARM/GNU Preprocessing Assembler
|
||||
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||
@echo Finished building: $<").unwrap();
|
||||
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
writeln!(app_file, "$(SUB_DIRS):\n\t$(MK_DIR) $(QUOTE)$@$(QUOTE)").unwrap();
|
||||
writeln!(app_file, "
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
ifneq ($(strip $(DEPS)),)
|
||||
-include $(DEPS)
|
||||
endif
|
||||
endif\n").unwrap();
|
||||
|
||||
match mkfile.get("CLEAN_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CLEAN_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "clean:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
if !cflag.to_string().is_empty()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap()
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("CLEAN_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("CLEAN_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
if !cflag.to_string().is_empty()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap()
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n").unwrap();
|
||||
match mkfile.get("DEBUG_PREREQS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("DEBUG_TARGET_PREREQS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "debug:").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
if !cflag.to_string().is_empty()
|
||||
{
|
||||
writeln!(app_file, "\\").unwrap();
|
||||
write!(app_file, "{}", cflag).unwrap()
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
match mkfile.get("DEBUG_CMDS")
|
||||
{
|
||||
None =>
|
||||
{
|
||||
println!("DEBUG_CMDS Not found");
|
||||
}
|
||||
Some(v) =>
|
||||
{
|
||||
write!(app_file, "\n\t").unwrap();
|
||||
for cflag in v.clone().into_array().unwrap()
|
||||
{
|
||||
if !cflag.to_string().is_empty()
|
||||
{
|
||||
writeln!(app_file, " \\").unwrap();
|
||||
write!(app_file, "\t{}", cflag).unwrap()
|
||||
}
|
||||
}
|
||||
},
|
||||
}
|
||||
|
||||
writeln!(app_file, "\n\nQUOTE:=\"").unwrap();
|
||||
true
|
||||
}
|
File diff suppressed because one or more lines are too long
@ -1 +0,0 @@
|
||||
{"rustc_fingerprint":16872446228029688044,"outputs":{"4476964694761187371":["___\nlib___.rlib\nlib___.so\nlib___.so\nlib___.a\nlib___.so\n/home/penguin/.rustup/toolchains/stable-x86_64-unknown-linux-gnu\ndebug_assertions\nproc_macro\ntarget_arch=\"x86_64\"\ntarget_endian=\"little\"\ntarget_env=\"gnu\"\ntarget_family=\"unix\"\ntarget_feature=\"fxsr\"\ntarget_feature=\"sse\"\ntarget_feature=\"sse2\"\ntarget_os=\"linux\"\ntarget_pointer_width=\"64\"\ntarget_vendor=\"unknown\"\nunix\n",""],"1164083562126845933":["rustc 1.45.0 (5c1f21c3b 2020-07-13)\nbinary: rustc\ncommit-hash: 5c1f21c3b82297671ad3ae1e8c942d2ca92e84f2\ncommit-date: 2020-07-13\nhost: x86_64-unknown-linux-gnu\nrelease: 1.45.0\nLLVM version: 10.0\n",""],"16929990295604814582":["___\n",""]},"successes":{}}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
d42c45b9010af24b
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"default\", \"std\"]","target":9863344317402520737,"profile":11677938664258541388,"path":6072739226136109091,"deps":[[6880116618428842180,"memchr",false,17387369877625461406]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/aho-corasick-cd6189e6cf04a9b4/dep-lib-aho_corasick"}}],"rustflags":[],"metadata":13904389431191498124}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
008775983edacd98
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"array-sizes-33-128\", \"default\", \"std\"]","target":4004654919687799417,"profile":11677938664258541388,"path":193864345743813111,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/arrayvec-f0d3653fcaa6b6bd/dep-lib-arrayvec"}}],"rustflags":[],"metadata":5019420986621020735}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
1f85cda4f7a3a4dd
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":15796848007248474757,"profile":11677938664258541388,"path":14105910050624924664,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/autocfg-6d9ae5acda7ce351/dep-lib-autocfg"}}],"rustflags":[],"metadata":13102859075309379048}
|
@ -1 +0,0 @@
|
||||
7504eb66493c51b9
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"default\"]","target":10088282520713642473,"profile":11677938664258541388,"path":18108316973269007655,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/bitflags-6f2abb145bd7d89d/dep-build-script-build-script-build"}}],"rustflags":[],"metadata":14564035643000669268}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
7b544ec2a330641b
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"default\"]","target":14123478400658042508,"profile":11677938664258541388,"path":16525684902854961646,"deps":[[4117749705314174326,"build_script_build",false,14783656857868396655]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/bitflags-b0d3f50c11cb1241/dep-lib-bitflags"}}],"rustflags":[],"metadata":14564035643000669268}
|
@ -1 +0,0 @@
|
||||
6f6883c695192acd
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"","target":0,"profile":0,"path":0,"deps":[[4117749705314174326,"build_script_build",false,13353520656087188597]],"local":[{"Precalculated":"1.2.1"}],"rustflags":[],"metadata":0}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
c58b8081f1950cc6
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":834697563557903354,"profile":11677938664258541388,"path":11144075455992316700,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/cfg-if-468e43a974e02de8/dep-lib-cfg-if"}}],"rustflags":[],"metadata":8462187951337715540}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
9d05d52996099aa7
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"default\", \"hjson\", \"ini\", \"json\", \"rust-ini\", \"serde-hjson\", \"serde_json\", \"toml\", \"yaml\", \"yaml-rust\"]","target":12659230784421511525,"profile":11677938664258541388,"path":5075071221035885186,"deps":[[2050184616218628355,"serde_json",false,9224188367600941382],[4460517003373423497,"yaml_rust",false,6894272581123020569],[4517326557178989942,"nom",false,3081350639303382762],[6408936455341118370,"serde_hjson",false,2062038320646655684],[7231915146259649043,"toml",false,12188567688172400698],[8536350174477403560,"lazy_static",false,3499328162129578617],[9391121987967877039,"serde",false,13841648393061603091],[9725125109844783316,"ini",false,11955498775433094183]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/config-c6d62485a32bbaf6/dep-lib-config"}}],"rustflags":[],"metadata":18005506352503131519}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
4ac14be7862db014
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":3194576745162206706,"profile":11677938664258541388,"path":8506414418509802360,"deps":[[9354177244160890506,"libc",false,1769811338463775193],[13837234849270857574,"cfg_if",false,14270946183722601413]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/filetime-727651744b3a6fd0/dep-lib-filetime"}}],"rustflags":[],"metadata":6142837673842625563}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
c6093b865aabbc94
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":3826634923158569614,"profile":11677938664258541388,"path":9334788128529841549,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/glob-d846150b1fa17814/dep-lib-glob"}}],"rustflags":[],"metadata":17263181195404352091}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
15e3c766dc726b2c
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":10106793199706288507,"profile":11677938664258541388,"path":8373113282109897073,"deps":[[1535610106599956303,"inotify_sys",false,11452371603355365170],[4117749705314174326,"bitflags",false,1973756016592835707],[9354177244160890506,"libc",false,1769811338463775193]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/inotify-227c9a24fd07857b/dep-lib-inotify"}}],"rustflags":[],"metadata":17270876855136421480}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
326fc4c54bffee9e
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":1114463511556614207,"profile":11677938664258541388,"path":3195450586770819546,"deps":[[9354177244160890506,"libc",false,1769811338463775193]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/inotify-sys-e7b33fbf21e4ccdd/dep-lib-inotify-sys"}}],"rustflags":[],"metadata":7193815289792856449}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
071cc209dff45edd
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":9964660163749110840,"profile":11677938664258541388,"path":12880867705819710931,"deps":[[9354177244160890506,"libc",false,1769811338463775193]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/iovec-6d60102019e1348b/dep-lib-iovec"}}],"rustflags":[],"metadata":13381672237506315297}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
e7e525191c813a60
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":9124939712912617398,"profile":11677938664258541388,"path":7000161359452501631,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/itoa-7257a5c48ecd50e7/dep-lib-itoa"}}],"rustflags":[],"metadata":2285756563936990018}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
790a41586c1c9030
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":3310758268438181623,"profile":11677938664258541388,"path":5750759608404037476,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/lazy_static-1891e6413e2b3d74/dep-lib-lazy_static"}}],"rustflags":[],"metadata":111743654650316589}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
124f84b807449ec9
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":3310758268438181623,"profile":11677938664258541388,"path":16319952949464954345,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/lazy_static-c93b4732a572fb60/dep-lib-lazy_static"}}],"rustflags":[],"metadata":111743654650316589}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
30b1de58b8518c87
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[]","target":9076603029916651789,"profile":11677938664258541388,"path":8604029688242996357,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/lazycell-5309ca3a766221bf/dep-lib-lazycell"}}],"rustflags":[],"metadata":9081195101616900511}
|
@ -1 +0,0 @@
|
||||
acfe633cfb9b7fb7
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"","target":0,"profile":0,"path":0,"deps":[[6337528866793177869,"build_script_build",false,14070458924638517093]],"local":[{"Precalculated":"0.7.4"}],"rustflags":[],"metadata":0}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
e2429e87ef5cdbf3
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"arrayvec\", \"correct\", \"default\", \"ryu\", \"static_assertions\", \"std\", \"table\"]","target":15038087822964504862,"profile":11677938664258541388,"path":6314748378647186688,"deps":[[1318244780073258608,"ryu",false,3587031368554124696],[3802350819995386607,"arrayvec",false,11010696626371397376],[4117749705314174326,"bitflags",false,1973756016592835707],[6337528866793177869,"build_script_build",false,13222458534335348396],[13837234849270857574,"cfg_if",false,14270946183722601413],[14461844432851620748,"static_assertions",false,10351156664257913305]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/lexical-core-dd1751118a1ef8ea/dep-lib-lexical-core"}}],"rustflags":[],"metadata":18083135213234654780}
|
@ -1 +0,0 @@
|
||||
65b7cdedd74f44c3
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"arrayvec\", \"correct\", \"default\", \"ryu\", \"static_assertions\", \"std\", \"table\"]","target":10429514197457385088,"profile":11677938664258541388,"path":191477671258415460,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/lexical-core-f5de5db63ef3d387/dep-build-script-build-script-build"}}],"rustflags":[],"metadata":18083135213234654780}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
c6fd9d49b758d2db
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"","target":0,"profile":0,"path":0,"deps":[[9354177244160890506,"build_script_build",false,17442491153488153041]],"local":[{"Precalculated":"0.2.79"}],"rustflags":[],"metadata":0}
|
@ -1 +0,0 @@
|
||||
d1098e314a2d10f2
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"default\", \"std\"]","target":10088282520713642473,"profile":11677938664258541388,"path":4862230917885271189,"deps":[],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/libc-7623b6e835e99b3f/dep-build-script-build-script-build"}}],"rustflags":[],"metadata":14998826085014762512}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
d989971409a28f18
|
@ -1 +0,0 @@
|
||||
{"rustc":6030236523401801000,"features":"[\"default\", \"std\"]","target":1047533068072243941,"profile":11677938664258541388,"path":11060151438798720977,"deps":[[9354177244160890506,"build_script_build",false,15839820383652806086]],"local":[{"CheckDepInfo":{"dep_info":"debug/.fingerprint/libc-f957e64c74520dcc/dep-lib-libc"}}],"rustflags":[],"metadata":14998826085014762512}
|
@ -1 +0,0 @@
|
||||
This file has an mtime of when this was started.
|
@ -1 +0,0 @@
|
||||
56090e239051026a
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue