405 Commits

Author SHA1 Message Date
Brian Smith
cd2c7cc1cc armv7-linux-androideabi: Re-enable CI/CD except for running tests in the emulator. 2020-01-29 17:31:44 -06:00
Brian Smith
8b4ea6a596 Temporarily disable armv7-linux-androideabi on Travis CI.
Thigns are failing with an "Illegal instruction" error. I initially thought
it was specific to Rust 1.40 but it is now happening with Rust 1.39 too, so
I'm assuming something changed in the emulator or NDK, since the Android SDK
isn't locked in CI/CD yet.
2020-01-29 14:13:07 -06:00
Brian Smith
e0a2c2d017 Fix code coverage by expanding options and using Nightly Rust.
Only Nightly Rust supports `-Zprofile`.
2019-12-27 02:53:59 -06:00
Brian Smith
0ec0e152a4 Remove redundant cargo build in travis.sh.
See https://users.rust-lang.org/t/is-it-safe-to-do-only-cargo-test-in-my-travis-jobs/16369/16.
2019-07-11 13:14:20 -10:00
Brian Smith
904cad656c Add aarch64-linux-android build; restore armv7-linux-androideabi testing. 2019-07-11 13:03:16 -10:00
Benjamin
b14031c000 download binary from tortall.net with HTTPS instead of HTTP 2019-07-03 11:30:48 -10:00
Brian Smith
680570f823 Temporarily disable armv7-linux-androideabi testing due to CI failures. 2019-06-13 10:26:26 -10:00
Brian Smith
ab0726d0cd Embed test data into test executables.
Embed test data files into test executables so that file I/O isn't
necessary during tests. This allows the tests to run on platforms that
don't have file I/O. It also makes it easier to run the tests on a
separate (virtual) machine from the build machine since the test
automation no longer needs to keep track of the test files.
2019-02-02 13:21:02 -10:00
Brian Smith
b64f347424 Revert "Enable Kcov on macOS builds."
This reverts commit 8f8b74e2c84cf406f941e28c40710f59f776bece due to
frequent build breakage on Travis CI for macOS debug builds.
2019-01-31 08:44:21 -10:00
Pietro Monteiro
8f8b74e2c8 Enable Kcov on macOS builds.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2019-01-30 23:15:35 -10:00
Pietro Monteiro
49ec4809b6 Build Android targeting API 26 and test with API 24 system image.
Testing with API 24 images because there are no API 26 ARM images available.

I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2019-01-30 16:42:31 -10:00
Pietro Monteiro
0f246702f1 Re-enable and update Kcov.
Run on Rust stable.
Install C++ compiler and other Kcov dependencies.
Don't install sources and packages that are not needed.
Update Kcov to the latest version.

I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2019-01-19 17:15:50 -10:00
Pietro Monteiro
59b550c074 Travis CI changed its defaults to sudo enabled Ubuntu Trusty.
Removed unnecessary `sudo` entries.
Make `distro` explicit in case we want to mix Linux build environments.
Adjust compiler packages to the correct defaults.

I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2019-01-19 17:15:42 -10:00
Brian Smith
81d5662da6 Start running kcov in CI again.
Restrict code coverage to X86_64 for now.

We need to investigate the build faliures for 32-bit x86 before we can
enable it for that architecture.
2019-01-18 15:38:29 -10:00
Brian Smith
4a1a843d96 Remove dead code in build script for "default clang" on Linux.
This code was a no-op, which can be seen by running
mk/update-travis-yml.py and observing that it didn't change anything.
2019-01-18 15:35:05 -10:00
Brian Smith
c5fdcacc45 Use osx_image: xcode10.1 in Travis CI for macOS. 2018-12-15 18:10:05 -10:00
Brian Smith
67425b7463 Enable RSA signign by default; remove rsa_signing feature. 2018-12-12 20:09:46 -10:00
Brian Smith
0664405705 Fix license typo. 2018-11-13 11:54:20 -10:00
Dylan MacKenzie
b88587a465 Use %USERPROFILE% instead of hardcoded path to .cargo/bin.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2018-10-17 09:10:22 -10:00
Dylan MacKenzie
8731391a9f Update AppVeyor build script to use rustup.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2018-10-17 09:10:22 -10:00
Brian Smith
1670080572 Upgrade Travis CI toolchains: Clang 5.0, GCC 7, xcode 9.3. 2018-05-18 13:41:14 -10:00
Brian Smith
56f0683e9a Remove C++ cruft from Travis CI script.
There is no C++ now.
2018-05-18 13:40:32 -10:00
Pierre Krieger
22a5605417 Try upgrade the NDK version 2018-05-18 08:21:27 -10:00
Pierre Krieger
72d3b9d3ba Use clang on travis with Android 2018-05-18 08:21:27 -10:00
Brian Smith
51f3a983cc Update out-of-date comment in mk/update-travis-yml. 2018-05-17 11:35:03 -10:00
Brian Smith
eee3a2fb12 Drop C++ stuff from Travis CI.
There is no C++ code in *ring* any more.
2018-05-17 11:33:13 -10:00
Brian Smith
9e2bcb60c6 Disable tests using the Android emulator on Travis CI.
The Travis CI testing using the Android emulator was broken a while
back. See https://github.com/briansmith/ring/issues/603. Until that
is fixed, just don't run the tests on Android. This is unfortunate,
however it is necessary to make progress on improvements for higher-
priority platforms.
2018-04-04 16:31:44 -10:00
Brian Smith
7e81996a5f Android CI: Fix the copying of the ring test executable.
Newer versions of rustc generate a "ring-$something.d" file that was
matched by the old pattern. Update the pattern to be more picky to
unbreak this part of the Android CI.

Now the Android stuff is at least built again. Running the tests in the
emulator still fails due to an unrelated issue.

Thanks to andrewtj for proposing this.
2018-01-25 14:16:22 -10:00
Brian Smith
f1541156b2 Use XCode 9.2 on Travis CI for macOS builds. 2017-12-23 12:19:42 -10:00
Brian Smith
67c526b532 Revert "Don't install unnecessary packages on Travis CI Android builds."
This reverts commit 52c645b7a006d3cecba50871ec42ce2109daab78.
2017-06-12 11:15:58 -10:00
Brian Smith
c822406036 Revert "Cache Android NDK, tools and platform tools on Travis CI."
This reverts commit b7073f4177cf87859b1d45950c5afca9f0b16ced.
2017-06-12 11:03:35 -10:00
Brian Smith
7cf7fd1b62 Revert "Add support to install different Android system images on Travis CI."
This reverts commit 06da374f661df435abbc216f554da38e49d47e4f.
2017-06-12 11:03:34 -10:00
Brian Smith
b78b536285 Revert "Add AArch64 to Travis CI builds."
This reverts commit cd011b39e3a9e75885473a2b51661e41e2c9974f.
2017-06-12 11:03:33 -10:00
Pietro Monteiro
cd011b39e3 Add AArch64 to Travis CI builds. 2017-06-08 10:12:59 -10:00
Pietro Monteiro
06da374f66 Add support to install different Android system images on Travis CI. 2017-06-08 10:12:58 -10:00
Pietro Monteiro
b7073f4177 Cache Android NDK, tools and platform tools on Travis CI. 2017-06-08 10:12:58 -10:00
Pietro Monteiro
52c645b7a0 Don't install unnecessary packages on Travis CI Android builds. 2017-06-08 10:12:58 -10:00
Brian Smith
e712f54010 Run all tests on Android in Travis CI.
Only the unit tests were being run, which was correct when we only had
unit testes, but isn't correct now that we have integration &
functional tests.
2017-05-13 22:37:24 -10:00
Brian Smith
2f4c6ea86e Fix code coverage reports.
Integration tests are compiled into separate executables and each
executable needs to be run under kcov.
2017-05-01 09:16:21 -10:00
Brian Smith
dab5305b30 Add integration tests to the coverage report. 2017-04-30 15:25:05 -10:00
Brian Smith
e3581da4fe Add support for deserializing RSA keys from PKCS#8. 2017-04-30 11:52:45 -10:00
Brian Smith
efb4b0e1ee Travis CI: Document why we build the Android AVD after building code. 2017-04-14 19:07:02 -10:00
Pietro Monteiro
4a13608536 Create Android AVD after test build and use more RAM on the emulator. 2017-04-14 19:07:02 -10:00
Brian Smith
e2c234d449 Use rustup to install target toolchain on Travis CI.
It seems that the old way of installing the libraries for the target
doesn't work any more. Using `rustup` is better anyway since that is
how most people are installing Rust.
2017-03-25 17:10:05 -10:00
Pietro Monteiro
d048e1e818 Use armv7 for android build on travis.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2017-03-19 09:38:26 -10:00
Brian Smith
25add85a54 Use pregenerated asm files when not building from Git. 2017-03-18 15:31:12 -10:00
Pietro Monteiro
70ca967455 Remove option that breaks newer android emulators.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2017-03-14 10:00:45 -10:00
Brian Smith
e6f97fa1f5 Revert "Revert "Fix Android NDK caching. This is a directory.""
This reverts commit 39982f81c761595b57945cd9b75181b687251e4f, i.e.
it re-applies the fix from 2ca8cba8795091c2bcd6945f99b2036807a6883b.
This change can be made independently of the switch to clang.
2017-03-14 09:44:54 -10:00
Brian Smith
63691d4245 Revert "Use clang on android."
This reverts commit de8a1636a13f45aaff159ebf041c08e46fb16fd1 because
switching to clang broke something.
2017-03-14 09:36:15 -10:00
Brian Smith
39982f81c7 Revert "Fix Android NDK caching. This is a directory."
This reverts commit 2ca8cba8795091c2bcd6945f99b2036807a6883b, as part
of rolling back the switch to clang.
2017-03-14 09:34:58 -10:00