Run BoringSSL tests on Travis
authorEmilia Kasper <emilia@openssl.org>
Wed, 9 Nov 2016 16:25:35 +0000 (17:25 +0100)
committerEmilia Kasper <emilia@openssl.org>
Thu, 24 Nov 2016 11:21:33 +0000 (12:21 +0100)
Reviewed-by: Richard Levitte <levitte@openssl.org>
.gitmodules [new file with mode: 0644]
.travis.yml
boringssl [new submodule]
test/recipes/90-test_external.t

diff --git a/.gitmodules b/.gitmodules
new file mode 100644 (file)
index 0000000..0800f20
--- /dev/null
@@ -0,0 +1,3 @@
+[submodule "boringssl"]
+       path = boringssl
+       url = https://boringssl.googlesource.com/boringssl
index b117f0ef74609ef11d6a650cde2b2b76a503c612..90553c734c5c2c539dd743cd1c2509204148f642 100644 (file)
@@ -12,6 +12,8 @@ addons:
             - ccache
             - clang-3.6
             - gcc-5
+            - g++-5
+            - golang
             - binutils-mingw-w64
             - gcc-mingw-w64
         sources:
@@ -39,8 +41,8 @@ matrix:
           compiler: clang-3.6
           env: CONFIG_OPTS="--strict-warnings no-deprecated" BUILDONLY="yes"
         - os: linux
-          compiler: gcc
-          env: CONFIG_OPTS="--debug --coverage no-asm enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-ssl3 enable-ssl3-method enable-nextprotoneg enable-weak-ssl-ciphers" COVERALLS="yes"
+          compiler: gcc-5
+          env: CONFIG_OPTS="--debug --coverage no-asm enable-rc5 enable-md2 enable-ec_nistp_64_gcc_128 enable-ssl3 enable-ssl3-method enable-nextprotoneg enable-weak-ssl-ciphers enable-external-tests" COVERALLS="yes" BORINGSSL_TESTS="yes" CXX="g++-5"
         - os: linux
           compiler: clang-3.6
           env: CONFIG_OPTS="enable-msan"
@@ -100,11 +102,9 @@ script:
       else
           make="make";
       fi
+    - top=${PWD}
     - if [ -n "$DESTDIR" ]; then
           cd _build;
-          top=..;
-      else
-          top=.;
       fi
     - $make update
     - $make
@@ -113,13 +113,13 @@ script:
               sudo apt-get -yq --no-install-suggests --no-install-recommends --force-yes install wine;
               export EXE_SHELL="wine" WINEPREFIX=`pwd`;
           fi;
-          HARNESS_VERBOSE=yes make test;
+          HARNESS_VERBOSE=yes BORING_RUNNER_DIR=$top/boringssl/ssl/test/runner make test;
       else
           $make build_tests;
       fi
     - if [ -n "$DESTDIR" ]; then
-          mkdir "../$DESTDIR";
-          $make install install_docs DESTDIR="../$DESTDIR";
+          mkdir "$top/$DESTDIR";
+          $make install install_docs DESTDIR="$top/$DESTDIR";
       fi
     - cd $top
 
diff --git a/boringssl b/boringssl
new file mode 160000 (submodule)
index 0000000..490469f
--- /dev/null
+++ b/boringssl
@@ -0,0 +1 @@
+Subproject commit 490469f850ec94c7ce46eb7d44fe1ccb3bdbdae6
index a3da76ccbd974679c3588cb7aa921683a2f07fef..3bdc4afe67d14793c190f29dd74c68087dcb092d 100644 (file)
@@ -9,10 +9,13 @@
 
 use OpenSSL::Test;
 use OpenSSL::Test::Utils;
-use OpenSSL::Test qw/:DEFAULT srctop_file cmdstr/;
+use OpenSSL::Test qw/:DEFAULT bldtop_file srctop_file cmdstr/;
 
 setup("test_external");
 
+plan skip_all => "No external tests in this configuration"
+    if disabled("external-tests");
+
 if (!$ENV{BORING_RUNNER_DIR}) {
     plan skip_all => "No external tests have been detected";
 }
@@ -21,7 +24,7 @@ plan tests => 1;
 
 indir $ENV{BORING_RUNNER_DIR} => sub {
     ok(filter_run(cmd(["go", "test", "-shim-path",
-                      srctop_file("test", "ossl_shim", "ossl_shim"),
+                      bldtop_file("test", "ossl_shim", "ossl_shim"),
                       "-shim-config",
                       srctop_file("test", "ossl_shim", "ossl_config.json"),
                       "-pipe", "-allow-unimplemented"])),