Jesse Vincent
7e0bebaeed
Migrate build-arduino-package from the larger bundle repo.
4 years ago
Jesse Vincent
69439c46b2
Clean up astyle invocations based on @gendankenexperimenter's KeyboardioHID cleanups
4 years ago
Jesse Vincent
3e54120f36
Add a deprecation warning to the "old" kaleidoscope-builder
4 years ago
Jesse Vincent
8f604facd9
Update our docker config to use a layout that better matches arduino-cli
4 years ago
Jesse Vincent
d94c3d5234
Replace kaleidoscope-builder with makefiles using arduino-cli
...
This is a complete rework of how Kaleidoscope is built, but should be largely transparent to most developers and completely invisible to folks using the Arduino IDE.
Some advanced features of kaleidoscope-builder config files have gone away, but it’s likely that @algernon was the only person using them. The tradeoff is that we’re now using a much better maintained build tool under the hood and that we’re no longer as tied to a single specific directory structure.
4 years ago
Jesse Vincent
ef244715a5
try again with shellcheck
4 years ago
Jesse Vincent
9b208d5cd3
Accidentally butchered my cut command
4 years ago
Jesse Vincent
4536fd5190
appease shellcheck
4 years ago
Jesse Vincent
047a5b7c04
first pass at getting our examples into readthedocs
4 years ago
Jesse Vincent
4c421277a7
make a comment in run-docker shellcheck friendlier
4 years ago
Jesse Vincent
b70b851321
Teach docker-run to run interactively or to be able to run from a non-interactive process like a git hook
...
Fixes #959
4 years ago
Michael Richters
26f4ef498a
Set BOARD_HARDWARE_PATH correctly for run-docker on macOS
...
Because ARDUINO_LOCAL_LIB_PATH was being set to a default value for other
operating systems before checking the OS version, it would never get set
correctly for macOS (unless it was already set externally). This change fixes
that problem so that it's no longer necessary to set BOARD_HARDWARE_PATH
externally when executing `run-docker`.
Signed-off-by: Michael Richters <gedankenexperimenter@gmail.com>
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
Gergely Nagy
ba7b496af5
Rework our Docker config for performance
...
* never try to write anything to the host's disks
* read as little as possible from the host's disks
* keep source in ram
* cache build artifacts and intermediate content persistently
Most of these hacks are only necessary because Docker disk performance on macOS is...not performant
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
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
d7a45afdb5
Update the timestamp setting script ti make shellcheck happy
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
5774054d61
try to make shellcheck happy
4 years ago
Jesse Vincent
1b804a6d0f
make the timestmap-editor executable
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
beb963d341
Add a tool to be able to set file timestamps to git commit dates.
...
This will eventually be used to help improve arduino caching behavior
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
Gergely Nagy
0f7ff140fc
docker: Simplify the Dockerfile a little
...
We can pass arguments to the entrypoint from the `docker run` commandline, so we
do not need to do that via an environment variable. This way, we're an
environment variable and an `eval` shorter.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
4 years ago