80 Commits

Author SHA1 Message Date
Pietro Monteiro
9e3fc989fb Use kcov to generate test coverage on Travis CI.
I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-04-29 10:10:46 -10:00
Pietro Monteiro
ba0003a896 Add clang 3.8 back to Travis CI.
The Travis CI team has clang 3.8 whitelisted now.
2016-04-14 14:52:15 -10:00
Brian Smith
ad266d45a9 Really disable clang 3.9.
I forgot to run mk/update-travis-yml.py on the last commit.
2016-03-29 15:42:44 -10:00
Brian Smith
566294e3ae Fix Travis CI by disabling Clang 3.8. Also enable Clang 3.9. 2016-03-29 15:29:06 -10:00
Corey Farwell
8d491bc4a8 Enable testing on 32-bit GCC 4.9 on Travis CI.
This was previously not done because `g++-4.9-multilib` was not
a whitelisted package on Travis. As of this PR, it is available:

https://github.com/travis-ci/apt-package-whitelist/pull/1117

I agree to license my contributions to each file under the terms given
at the top of each file I changed.
2016-03-29 15:35:04 -04:00
Brian Smith
5f0861e088 Use XCode 7.2 on Travis CI.
Probably nobody is interested in the old version of XCode, the old
version of Clang in particular, and that old Clang is blocking
progress.
2016-03-03 10:39:22 -10:00
Brian Smith
e238e7fa96 Fix ARM 32-bit and 64-bit release builds on Travis CI.
The release builds were getting built as debug builds. Now they should
be getting built as release builds.
2016-03-01 00:44:03 -10:00
Brian Smith
6cc1d68838 Add ARM and Aarch64 to Travis CI (build only, no tests). 2016-02-02 23:16:40 -10:00
Brian Smith
61b234ef94 Add GCC 4.6 to Travis CI matrix.
GCC 4.6 is the default compiler on Ubuntu 12.04 LTS and other LTS
distros so it isn't a complete waste of time to support it. Luckily, it
is easy to do so.
2016-01-31 20:04:13 -10:00
Brian Smith
2c9a84c637 Drop i686-apple-darwin support.
It doesn't make sense to support this configuration given that nobody
has 32-bit Macs any more.
2016-01-31 19:30:13 -10:00
Brian Smith
aae3738861 Actually build/test 32-bit configurations in Travis CI.
$TARGET_X was being ignored by mk/travis.sh, and the target strings
were wrong.
2016-01-27 23:22:57 -10:00
Brian Smith
4bdc558bd3 Remove unnecessary dependencies on yasm in Travis CI config.
*ring* doesn't actually use yasm. The yasm dependencies were
accidentally carried over from an experiment that was abandonded.
2016-01-09 16:50:34 -10:00
Brian Smith
fa01e36f83 Remove allow-failures: nightly in CI configuration.
*ring* is now using a patched version of the `num` crate that allows
the `rand`-crate-based functionality to be disabled, and Cargo.toml
was changed to remove the `rand` dependency, so *ring* works on the
Nightly channel again.
2016-01-07 19:49:15 -10:00
Brian Smith
5e6d1e34c7 Temporarily make Rust Nightly builds allow_failures.
This works around https://github.com/rust-lang/rust/issues/30713.
2016-01-05 15:58:29 -10:00
Brian Smith
a3fde42e50 Add clang 3.8 to Travis CI. 2015-12-06 14:13:43 -10:00
Brian Smith
5704f0d15b Add Clang 3.7 to the Travis CI build matrix.
Also, build with newest GCC first, instead of the oldest GCC first.
2015-12-06 13:55:58 -10:00
Brian Smith
aa48586e22 Remove duplicate targets in .travis.yml. 2015-11-08 21:09:21 -10:00
Brian Smith
8faeacc81e Run BoringSSL tests as part of the *ring* test suite.
Running the BoringSSL tests as part of the *ring* test suite
facilitates the removal of the non-Rust build options, and the
NO_ASM build option. This makes the CI loop faster by greatly
shrinking the size of hthe build matrics. It also removes the
development-time dependency on Go.
2015-10-26 18:11:04 -10:00
Brian Smith
1f7f6de150 Don't attempt NO_ASM builds on Travis CI in the Rust builds.
build.rs doesn't pass NO_ASM through to the build system so NO_ASM_X=1
is meaningless for Rust builds.
2015-08-26 21:18:40 -07:00
Brian Smith
0a372e0aef Add Rust builds to Travis CI. 2015-08-26 21:18:37 -07:00
Brian Smith
eb838e4e93 Get ARM builds working better. 2015-08-26 21:18:34 -07:00
Brian Smith
0b191d69d0 Improve multi-targetting infrastructure.
Make the Makefile require a standard
|TARGET=<arch>-<vendor>-<sys>-<abi>| variable to be set instead of
requiring |TARGET_OS| and |TARGET_ARCH_BASE|.

Also, have the Makefile generate outputs to a subdirectory of build/
that names the target and compiler. This will make it easier and less
error-prone to test multiple configurations using a single source tree,
and will make some future cross-compilation targets easier.
2015-08-26 21:18:33 -07:00
Brian Smith
bee3deff77 Add Mac OS X to Travis CI.
Only build with the default version of clang for now, since that is all
that is currently working.
2015-08-26 21:18:32 -07:00
Brian Smith
2586d07947 Rename the |ARCH| build option to |TARGET_ARCH_BASE|.
This change is being made in preparation for adding a |TARGET_OS| build
option. |TARGET_ARCH_BASE| is used to decide which assembly language
code to compile, and to set |TARGET_ARCH| (the target flags passed to
the compilers and linker) if it isn't already set.
2015-08-26 21:18:31 -07:00
Brian Smith
f6d529aae7 Add NO_ASM configuration back to Travis CI. 2015-08-26 21:18:24 -07:00
Brian Smith
05ac35a068 Verify that |make clean| works during Travis CI runs.
Verify that |make clean| deletes all the files in the build directory.
Also verify that the build doesn't generate any files into the source
tree.
2015-08-26 21:18:23 -07:00
Brian Smith
1ba9ab959b Make Travis CI script to use |make check|. 2015-08-26 21:18:23 -07:00
Brian Smith
f14ed7cf27 Work around problem retrieving the clang 3.7 package in Travis CI. 2015-08-26 21:18:18 -07:00
Brian Smith
d484b6680e Add ARCH variable to build system. 2015-08-26 21:18:17 -07:00
Brian Smith
13baebc3b5 Replace CMake with GNU Make and add Travis CI integration.
Travis CI doesn't have a new enough version of CMake readily available,
and I've been wanting to replace the CMake-based build system for other
reasons. This kills the Windows support, but I'm intending to add a
native msbuild build system for Windows soon. Also, this builds in
OPENSSL_NO_ASM mode for now.
2015-08-26 21:18:16 -07:00