Jesse Vincent
91753fe259
when we don't need to rebuild the code, don't rebuild it
4 years ago
Jesse Vincent
30157d651b
remove commented code
4 years ago
Jesse Vincent
810eaa3fef
move the explanation of cli parsing close to the actual code
4 years ago
Jesse Vincent
068e975acb
We only used md5sum for a diag message. So kill the dep
4 years ago
Jesse Vincent
340f16dc17
refactor to extract a couple config methods
4 years ago
Jesse Vincent
0823b816fd
remove "SOURCEDIR", a generic env variable we only used to mean pwd, right after setting it
4 years ago
Jesse Vincent
d3161c003e
Clean up logic for choosing where our arduino-cli comes from
4 years ago
Jesse Vincent
ee362308d8
Fixing some of our interim back-compat for old makefiles
4 years ago
Jesse Vincent
941ab0f7d6
Get rid of MCU variable
4 years ago
Jesse Vincent
2ba10574d4
Simplify defaulting of ARCH and FQBN
4 years ago
Jesse Vincent
809f367b32
update ARDUINO_VERBOSE
4 years ago
Jesse Vincent
16a78137a2
Remove unused AVR_GCC_PREFIX
4 years ago
Jesse Vincent
f9c523ac0f
misc shellcheck fixes
4 years ago
Jesse Vincent
fea85506ec
lift find_device_pid_vid to builder
4 years ago
Jesse Vincent
1f227a0d72
move get-arduino-pref out of the config file
4 years ago
Jesse Vincent
3c7a1312c1
Revert "remove obsolete? build-all target"
...
still need it for testing
This reverts commit 237d01df9e28c51bdccb3e1e123e3662d66dcdda.
4 years ago
Jesse Vincent
bb9de38354
remove obsolete? build-all target
4 years ago
Jesse Vincent
651d0bc5b4
remove obsolete compile-all target
4 years ago
Jesse Vincent
c6ff455c12
did I break the compiler path prop?
4 years ago
Jesse Vincent
c375b8bf3f
remove a debugging echo
4 years ago
Jesse Vincent
f7995a6d9b
Remove local_LIBS which I believe to be obsolete
4 years ago
Jesse Vincent
64b989660c
turn ccache back on
4 years ago
Jesse Vincent
57a076b5e3
switch getting prefs to use arduino-cli instead of arudino-builder
4 years ago
Jesse Vincent
ea0a0c3dd6
try a hacky workaround for the fact that arduino-cli doesn't seem to let us put doublequotes in build-props
4 years ago
Jesse Vincent
1b7ff0793b
ARDUINO_CFLAGS is, as far as I can tell, historical
4 years ago
Jesse Vincent
60ac839eb4
try another compiler.cpp.extra_flags line
4 years ago
Jesse Vincent
bb3465d102
do a better job of mirrroing our older config
4 years ago
Jesse Vincent
bca9ec9625
add debugging output for test
4 years ago
Jesse Vincent
bc66579214
don't force reinstall of our kaleidoscope core
4 years ago
Jesse Vincent
b3fed574d9
turn off default verbose in builder
4 years ago
Jesse Vincent
3bf986a8ab
slightly closer to building with -cli
4 years ago
Jesse Vincent
493a10b16e
switch which to command to make shellcheck happy
4 years ago
Jesse Vincent
912118e3c1
Start to be able to use the system arduino cli
4 years ago
Jesse Vincent
0b99c52178
don't package up arduino-cli when trying to run in docker
4 years ago
Jesse Vincent
f8c297d19b
Revert "remove a pair of obsolete make targets"
...
This reverts commit d33d61d5029d03ceb20e37a7930d694e04bcf720.
4 years ago
Jesse Vincent
a93361486b
remove build-all from docs
4 years ago
Jesse Vincent
98851c0728
move more of make clean out into the makefile, leaving the "make clean" target in builder so it works for sketches
4 years ago
Jesse Vincent
2104f4db78
remove a pair of obsolete make targets
4 years ago
Jesse Vincent
5c0edd9b69
"make clean" needs to clear out build and output paths
...
It previously did not. Also, try -not- to clean out google test if the build dir doesn't even exist
4 years ago
Jesse Vincent
de45646c9d
extract out a variable for ARDUINO_BUILDER_TOOLS_PATH to make it easier to
...
get up and running on arch
4 years ago
Jesse Vincent
34b428c4a9
Simplify conditional building
4 years ago
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
4 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
Jesse Vincent
d14405541a
Without the -built-in-libraries option passed in to arduino-builder, it
...
can't find ctags. Which suggests to me that it's doing a lot more than
just finding libraries
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
5 years ago
Florian Fleissner
0ac7c191dc
Renamed virtual architecture "virtual"
...
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
5 years ago
Florian Fleissner
7326be589f
kaleidoscope-builder fixed for builds of virtual hardware
...
This commit induces the following changes:
bin/kaleidoscope-builder
* ccache dummy compiler and executables are now generated in a way
that allows using the same CCACHE_WRAPPER_PATH for virtual and
non-virtual builds
* virtual builds are now triggered by either specifying the full FQBN with x86
as architecture or by defining ARCH=x86
etc/kaleidoscope-builder.conf
* COMPILER_PREFIX and COMPILER_PATH are now determined (if not predefined)
based on ARCH or FQBN
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
5 years ago
Florian Fleissner
2cad17b07b
Fixed Kaleidoscope Builder for Arduino paths containing whitespaces
...
Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
6 years ago
Jesse Vincent
01e3793d39
Add a 'compile-all target, so that smoke output can get to a single line
...
per sucessful compile
6 years ago
Jesse Vincent
8ab5aa52dd
Slightly tighten up compilation output so that the smoke output is more readable
6 years ago
Jesse Vincent
b8d4e90f23
realpath isn't installed by default on travis' vms AND it's not
...
necessary if we're looking up by inode
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
6 years ago
Jesse Vincent
ab91a04142
More recent shellcheck doesn't like "which" for finding a binary
...
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
6 years ago
Jesse Vincent
a6a23380ab
make shellcheck happy, maybe?
...
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
6 years ago