Jesse Vincent
5bea41f630
reduce a bit of code duplication
4 years ago
Jesse Vincent
6e8d1d020a
Switch to a less verbose way to set defaults for environment variables
...
By reducing duplication, we improve readability and reduce errors
4 years ago
Jesse Vincent
a91c6a556e
refactor config file list to all be in one place
4 years ago
Jesse Vincent
25c8a8a180
Refactor the "SKETCH" environment variable and friends.
...
Functionality should be the same, but code should be clearer.
4 years ago
Jesse Vincent
e96902a9df
Switch from locally defining a "DIR" for every bin, to setting a global Kaleidoscope bin directory var
4 years ago
Jesse Vincent
660747c916
Rename ROOT to KALEIDOSCOPE_DIR, which is what it appears to actually be.
4 years ago
Jesse Vincent
ea0abc8833
inline a single-use cunction
4 years ago
Jesse Vincent
19f728ca56
lift find_bootloader_path' out of the config file into the program.
...
as it isn't something that's platform specific
'
4 years ago
Jesse Vincent
52a5265b9b
ROOT is defined automatically and not overridable. Remove the lines in the comments and docs
4 years ago
Jesse Vincent
12e59b8684
lift up BUILD_FILE_PATH to somewhere reusable.
4 years ago
Jesse Vincent
45bafe9bf5
SOURCEDIR was not actually used or honored. It was always set to pwd
4 years ago
Jesse Vincent
dfadd32400
Removeo outdated and unused 'LIBRARY' env variable
4 years ago
Jesse Vincent
a278efc21e
Absolute path to sized elf
4 years ago
Jesse Vincent
afc8388cd1
Move a bunch of makefile targets from the generic sketch makefile
4 years ago
Jesse Vincent
383a29d3e3
move run-tests out to the Makefile
4 years ago
Jesse Vincent
bbc84f6f33
move build-gtest-gmock into the Makefile
4 years ago
Jesse Vincent
1865e33426
Lift duplication of command to a var
4 years ago
Jesse Vincent
08bb9c5a14
Our previous conditional building was really wrong. It never built if any .hex existed.
...
This new version is still wrong, but less so. It at least checks the timestamp on the sketch
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
4 years ago
Jesse Vincent
6d00c6d7af
add "prepare-ccache" as a tool for travis
...
also bullet-proof setting up ccache against parallelization race conditions
4 years ago
Jesse Vincent
919f7753ff
We no longer need this, since we do it above. (But also, this was always a repeated call)
4 years ago
Jesse Vincent
d4a14fa7c9
expose the function that finds all the buildable sketches as "find_all_sketches"
4 years ago
Jesse Vincent
6bf70a2fdc
Don't strip out the path from the sketch before we can make use of it
4 years ago
Jesse Vincent
e378f9cd17
Switch find_sketch to set an env variable, rather than return a value, to reduce the number of times we need to call it. Also, begin to add better support for:
...
kaleidoscope-builder examples/Foo/Bar compile
4 years ago
Jesse Vincent
8150eec669
Switch from naming our cache directories based on inode to naming them based on the absolute path, so we don't blow the cache 100% of the time on travis
4 years ago
Jesse Vincent
b9bca2cf7f
remove a bit of unused info from the compilation step reporting
4 years ago
Eric Paniagua
fad1b7e051
Add a googletest-based test harness & tests
...
This adds a googletest-based test harness (with googletest pulled into
`testing/googletest`, so we have a fixed state of it), and a few test
cases that demonstrate its use.
Original work by Eric Paniagua in #898 , with minor cleanups by Gergely
Nagy.
Signed-off-by: Eric Paniagua <epaniagua@google.com>
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Gergely Nagy
57814671a5
kaleidoscope-builder: Support building lib-only variants of the sketch
...
Originally by Eric Paniagua <epaniagua@google.com>.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Gergely Nagy
352a3fe547
kaleidoscope-builder: Allow overriding CXX, CC, AR, etc
...
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Gergely Nagy
fff5dce199
kaleidoscope-builder: Whitespace cleanup
...
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago
Jesse Vincent
63fa886d9b
symlink generation for hex file with bootloader wasn't quite right. It added an extra output path
5 years ago
Jason Koh
476cbe1785
Add a new MANUAL_RESET feature to Kaleidoscope builder
...
Some devices, like those coming from QMK don't have an automated reset
feature
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
5 years ago
Les Aker
e997d8c495
allow overriding filename paths
...
Signed-off-by: Les Aker <me@lesaker.org>
5 years ago
Andre Arko
c0163c83f2
make sure SKETCH_DIR is set before we use it
5 years ago
Andre Arko
0264e77396
bash warns on -gt, demanding two brackets
5 years ago
Andre Arko
bb00c27de1
maybe_bulid depends on filling the hex path first
5 years ago
Jesse Vincent
680aac9818
refactor kaleidoscope-builder to make shellcheck happy
5 years ago
Jesse Vincent
16b2404ab9
Attempt to simplify output of the build and flash process, along with
...
more verbose verbose output
5 years ago
Jesse Vincent
559d210eed
slightly tweak sleep times and reformat our avrdude command to flash the
...
keyboard
5 years ago
Jesse Vincent
9a41d1cfa9
Make avrdude more verbose to help make sure customers can tell whether
...
their keyboards got flashed
5 years ago
Jesse Vincent
56a9b60d27
On linux (and possibly other operating systems), detect when the
...
keyboard is in bootloader mode already and skip the prompt to get to
bootloader mode.
5 years ago
Jesse Vincent
1b117b9eb0
Extract the compilation step from the flashing preparation step
5 years ago
Jesse Vincent
09da0477d9
Fix typo in flashing message
5 years ago
Jesse Vincent
b2977894f9
Move the build instructions into the arduino boards.txt file
5 years ago
Florian Fleissner
1a721f190e
Moved build flags and C++ language version setting to platform.txt
...
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
5 years ago
Florian Fleissner
12876f9a90
Fixed builds on msys2
...
This adds some quotes to various paths used in Kaleidoscope's build system.
This fixes builds on msys2 that failed due to whitespaces in system paths.
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
5 years ago
Jesse Vincent
bab32fcc9d
Shellcheck flags -n as a better replacement -f ! -z
...
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
5 years ago
Florian Fleissner
c0e0ca1034
Enable compiler specification via env. var. CC/CXX
...
Many build systems allow C and C++ compilers to be specified
via environment variables C and CXX.
This commit enables this for kaleidoscope-builder.
Furtheron, on unixoid systems virtual builds are possible through a
command line similar to
CXX=<path to C++ compiler> C=<path to C compiler> ARCH=virtual make
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
5 years ago
Dan Bjorge
0462230060
Fix whitespace inconsistencies
...
Signed-off-by: Dan Bjorge <dan@dbjorge.net>
5 years ago
Dan Bjorge
d33bdf53e3
Add Windows+Cygwin support for kaleidoscope-builder
...
Signed-off-by: Dan Bjorge <dan@dbjorge.net>
5 years ago
Gergely Nagy
1672f55945
kaleidoscope-builder: Pull the bootloader file from boards.txt
...
Fixes #697 .
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
5 years ago