- Caveat: This won't work out of the box until virtual/platform.txt is
updated in the bundle repo to force the appropriate include and linker
paths.
- arduino-builder fails if it can't find a library for any included
header. fake-gtest is a library designed to fake out this detection
mechanism.
- Add a gtest test that exercises the simulator. This is
hello-simulator_test.h. It has to be a .h or else arduino-builder will
fail to compile it with one excuse or another.
- Add run-simulator-googletest "target" to the build system. It will
take care of running cmake and building googletest and googlemock. Of
course, this requires that cmake be installed on your system.
Signed-off-by: Eric Paniagua <epaniagua@google.com>
This will build a Docker image with all dependencies installed, then run the
simulator tests within it, using the current bundle as a volume.
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
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>
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>
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>
1. Better matches other _PATH env variables
2. Since it's something that might reasonably get set in the
environment, prefix it with KALEIDOSCOPE
Signed-off-by: Jesse Vincent <jesse@keyboard.io>
This is particularly important for in-kaleidoscope-tree artifacts like
the examples.
If we build the examples and move the compiled artifacts into the
Kaleidoscope tree, even under examples, it busts arduino's core
compilation cache, adding an extra 10s to the next compilation.
Signed-off-by: Jesse Vincent <jesse@keyboard.io>