aboutsummaryrefslogtreecommitdiff
path: root/.travis.yml
AgeCommit message (Collapse)Author
2020-11-29travis: Stop using Travis for CI.Damien George
Travis now limits the amount of free minutes for open-source projects, and it does not provide enough for this project. So stop using it and instead use on GitHub Actions. Signed-off-by: Damien George <damien@micropython.org>
2020-10-29stm32: Support C++ code and user C modules written in C++.Damien George
Also build user C modules as part of the stm32 CI. Signed-off-by: Damien George <damien@micropython.org>
2020-10-29esp32,unix: Support building C++ code.stijn
Support building .cpp files and linking them into the micropython executable in a way similar to how it is done for .c files. The main incentive here is to enable user C modules to use C++ files (which are put in SRC_MOD_CXX by py.mk) since the core itself does not utilize C++. However, to verify build functionality a unix overage test is added. The esp32 port already has CXXFLAGS so just add the user modules' flags to it. For the unix port use a copy of the CFLAGS but strip the ones which are not usable for C++.
2020-09-30travis: Update zephyr build to v2.4.0.Maureen Helm
Updates CI to use the latest zephyr release tag. Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-09-18travis: Install setuptools for black code formatting.Damien George
Signed-off-by: Damien George <damien@micropython.org>
2020-08-21travis: Add zephyr build to CI.Maureen Helm
Adds a job to build the zephyr port in CI using the same docker container that the zephyr project uses for its own CI. Always make clean zephyr builds to ensure we don't just rebuild C code, but we also rebuild Kconfig and dts. This is required when switching between boards, which have different Kconfigs and device trees. Uses the tagged zephyr 2.3.0 release. Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2020-07-17travis: Change nrf pca10056 board to build with s140 SoftDevice.Glenn Ruben Bakke
It might compile fine with S132 as SoftDevice for nRF52840. However, there might be different hardware on the SoC which in turn could make it fail. SoftDevice S140 is correct BLE stack for nRF52840 SoC and would provide a more accurate test build.
2020-07-16travis: Add pca10090 build to nrf job.Glenn Ruben Bakke
2020-07-16travis: Install newer toolchain for nrf job.Glenn Ruben Bakke
Update toolchain to GNU Arm Embedded Toolchain.
2020-06-26travis: Build mboot for PYBV10 with LFS2 enabled in stm32 job.Damien George
Signed-off-by: Damien George <damien@micropython.org>
2020-06-22travis: In stm32 job, build mboot for NUCLEO_WB55.Damien George
Signed-off-by: Damien George <damien@micropython.org>
2020-06-22travis: Build qemu-arm with MP_ENDIANNESS_BIG=1 to test bigendian build.Damien George
Eventually it would be good to run the full test suite on a big-endian system, but for now this will help to catch build errors with the big-endian configuration. Signed-off-by: Damien George <damien@micropython.org>
2020-06-17travis: Change nrf pca10056 board to build with soft-device enabled.Damien George
To test building with SD which enables a lot of additional code. Signed-off-by: Damien George <damien@micropython.org>
2020-05-29travis: For powerpc job, build both UART variants.Joel Stanley
The powerpc port can be built with two different UART drivers, so build both in CI. The default compiler is now powerpc64le-linux-gnu- so it does not need to be specified on the command line.
2020-05-27travis: Set build name so it appears in the web interfaces.Joel Stanley
The env NAME="foo" syntax doesn't appear to set the name in the Travis web interface. Instead use the syntax from the docs: https://docs.travis-ci.com/user/build-stages/#naming-your-jobs-within-build-stages
2020-05-27travis: Run apt commands once, to slightly speed up the CI.Joel Stanley
2020-05-15travis: Build more boards as part of nrf job.Jim Mussared
Specifically: - pca10040: It was already the default. - microbit: It uses nRF51, has a Cortex-M0, and has additional libraries. - pca10056: It has USB CDC.
2020-04-30travis: Make sure upstream/master exists when computing size-diff check.Damien George
Explicitly add the repository as upstream and fetch the master commit. This makes this bare-arm/minimal job more robust when finding the fork-point of a PR relative to upstream/master (especially for forks of this repo).
2020-04-29unix: Add btstack to the unix submodules list.Jim Mussared
But only when bluetooth is enabled, i.e. if building the dev or coverage variants, and we have libusb available. Update travis to match, i.e. specify the variant when doing `make submodules`.
2020-04-22travis: Use tools/metrics.py to compute size diff of minimal ports.Damien George
This is to make the Travis CI size check more robust, by not relying on the saved firmware from a previous build (which may use a different compiler, environment, etc) but rather compile both master and the PR and diff them. This size check now checks both bare-arm and minimal x86-32 builds (before it just checked minimal Cortex-M build).
2020-04-18all: Enable extra conversion warnings where applicable.stijn
Add -Wdouble-promotion and -Wfloat-conversion for most ports to ban out implicit floating point conversions, and add extra Travis builds using MICROPY_FLOAT_IMPL_FLOAT to uncover warnings which weren't found previously. For the unix port -Wsign-comparison is added as well but only there since only clang supports this but gcc doesn't.
2020-04-18travis: Finish jobs early after test failure.stijn
For jobs which run tests multiple times terminate after the first run fails otherwise the next test run overwrites the previous results, making --print-failures useless.
2020-04-18travis: Decrease build duration by starting OSX build early.stijn
Looking at the recent build history the time it takes just to complete the OSX build is already 12 minutes so make it start early, which brings down the total build time from about 20 minutes to 14 minutes.
2020-04-13travis: Split esp32 ESP-IDF v3 and v4 builds to separate jobs.Thorsten von Eicken
To make it easier to see what is happening when there is a failure. This commit also fixes the ESP-IDF v4 build to use the correct GCC 8.2.0.
2020-04-07travis: Make OSX build work again by not installing pkgconfig.stijn
Recent builds are failing with the following error: Error: pkg-config 0.29.2 is already installed Assuming this will be the case form now on, we don't have to install pkgconfig anymore.
2020-04-04travis: Build GENERIC_1M board as part of esp8266 job.Damien George
2020-03-30tests/run-tests: Add commands to print and clean *.exp,out files.David Lechner
This adds a couple of commands to the run-tests script to print the diffs of failed tests and also to clean up the .exp and .out files after failed tests. (And a spelling error is fixed while we are touching nearby code.) Travis is also updated to use these new commands, including using it for more builds.
2020-03-30travis: Build full unix coverage build on osx job.David Lechner
This should help catch more compile errors with the clang compiler.
2020-03-28travis: Build NUCLEO_L073RZ instead of B_L072Z_LRWAN1 for stm32 job.Damien George
The NUCLEO_L073RZ build is slightly bigger and this MCU has only 192k flash so this helps to catch flash overflow.
2020-03-28travis: Use grep with --text on qemu-arm output.David Lechner
If the .out file contains non-text characters, grep won't show the output unless we ask nicely.
2020-03-28travis: Use custom PPA to get pre-built uncrustify.David Lechner
Use PPA so that we don't have to rebuild uncrustify from source, speeding up the job. This also requires not running this test on arm64.
2020-03-26travis: Exclude some uasyncio tests on OSX.Damien George
2020-03-26travis: Print errors out for OSX job.Damien George
2020-03-26qemu-arm: Set default board as mps2-an385 to get more flash for tests.Damien George
And use Ubuntu bionic for qemu-arm Travic CI job.
2020-03-11travis: For unix tests use Makefile target instead of explicit commands.Damien George
2020-03-10travis: Run multi_net tests as part of coverage job.Damien George
2020-03-10travis: Build stm32 PYBD_SF6 with BTstack as bluetooth stack.Damien George
2020-02-28travis: Add CI job to check code formatting.Damien George
The CI job will fail if there is any code which does not conform to the style encoded by tools/codeformat.py. And it will list any changes required. uncrustify is built from source because Ubuntu bionic has uncrustify-0.66.1 which is from 2017/11/22 and is missing many options needed here.
2020-02-21travis: Add OSX build to CI.stijn
Add a standard unix port build in an OSX environment using clang. Should help in catching build failures due to platform differences early on.
2020-02-16unix/Makefile: Remove old variant targets that are no longer needed.Damien George
To eliminate confusion about what targets to use when building.
2020-01-15esp32: Enable NimBLE support on all builds (IDF 3.3 and 4.0).Jim Mussared
This commit updates the IDFv3 version to v3.3.1, and enables the "ubluetooth" module by default on IDFv3 builds.
2020-01-12unix: Rename unix binaries to micropython-variant (not _variant).Jim Mussared
For consistency with mpy-cross, and other unix tools in general.
2020-01-12travis: Update travis to specify which unix variant to build.Jim Mussared
2019-12-27travis: Add stm32 build in nanbox mode.Damien George
2019-12-27travis: Add new job to build and test unix coverage in 32-bit mode.Damien George
2019-12-13travis: Build urandom native module in coverage job.Damien George
2019-12-12travis: Add tests for building and importing dynamic native modules.Damien George
2019-10-29travis: Add job to build and test unix minimal port.Damien George
To test that unix minimal port builds, and that test-suite can run with minimal features enabled.
2019-10-22powerpc: Add initial port to bare metal PowerPC arch.Michael Neuling
Runs in microwatt (GHDL and FPGA) and qemu. Port done initially by Michael Neuling, with help from Anton Blanchard and Jordan Niethe.
2019-10-15travis: Use "make submodules" to init required modules for each port.Damien George