cleaning up

stable
penguin 4 years ago
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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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 @@
{"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}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save