diff options
Diffstat (limited to '.travis.yml')
-rw-r--r-- | .travis.yml | 33 |
1 files changed, 18 insertions, 15 deletions
diff --git a/.travis.yml b/.travis.yml index 7f0e785876..7f7e7a5723 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,6 +29,9 @@ env: - HARDENING_OPTIONS="--enable-expensive-hardening" ## We turn off asciidoc by default, because it's slow - ASCIIDOC_OPTIONS="--disable-asciidoc" + ## Turn off tor's sandbox in chutney, until we fix sandbox errors that are + ## triggered by Ubuntu Xenial and Bionic. See #32722. + - CHUTNEY_TOR_SANDBOX="0" matrix: ## This matrix entry is required, but it doesn't actually create any jobs - @@ -39,16 +42,16 @@ matrix: ## We run basic tests on macOS - compiler: clang os: osx + ## Turn off some newer features, turn on clang's -Wtypedef-redefinition + env: C_DIALECT_OPTIONS="-std=gnu99" ## We check NSS - ## NSS is a fast job, clang is slower on Linux, so we do NSS clang - - env: NSS_OPTIONS="--enable-nss" - compiler: clang + ## Use -std=gnu99 to turn off some newer features, and maybe turn on some + ## extra gcc warnings? + - env: NSS_OPTIONS="--enable-nss" C_DIALECT_OPTIONS="-std=gnu99" ## We run chutney on Linux, because it's faster than chutney on macOS + ## Chutney is a fast job, clang is slower on Linux, so we do Chutney clang - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" - ## (Linux only) Use an older Linux image (Ubuntu Trusty) - ## The Xenial and Bionic images cause permissions issues for chutney, - ## this is a workaround, until we fix #32240. - dist: trusty + compiler: clang ## We check asciidoc with distcheck, to make sure we remove doc products ## We use Linux clang, because there are no other Linux clang jobs - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes" @@ -62,15 +65,16 @@ matrix: - env: DISTCHECK="yes" ASCIIDOC_OPTIONS="" SKIP_MAKE_CHECK="yes" ## We check disable module dirauth - env: MODULES_OPTIONS="--disable-module-dirauth" + ## macOS builds are very slow, and we have a limited number of + ## concurrent macOS jobs. We're not actively developing Rust, so it is + ## the lowest priority. ## We run rust on macOS, because we have seen macOS rust failures before - # Disabled due to slow Travis macOS builds, see #32177 #- env: RUST_OPTIONS="--enable-rust --enable-cargo-online-mode" # compiler: clang # os: osx ## We run chutney on macOS, because macOS Travis has IPv6 - # Disabled due to slow Travis macOS builds, see #32177 - #- env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" - # os: osx + - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" + os: osx ## We clone our stem repo and run `make test-stem` - env: TEST_STEM="yes" SKIP_MAKE_CHECK="yes" @@ -111,8 +115,7 @@ addons: - libnss3-dev - libscrypt-dev - libseccomp-dev - ## zstd doesn't exist in Ubuntu Trusty - #- libzstd + - libzstd-dev ## Conditional build dependencies ## Always installed, so we don't need sudo - asciidoc @@ -203,8 +206,8 @@ script: - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export TOR_SKIP_TEST_REBIND=true; fi - ./autogen.sh - CONFIGURE_FLAGS="$ASCIIDOC_OPTIONS $COVERAGE_OPTIONS $HARDENING_OPTIONS $MODULES_OPTIONS $NSS_OPTIONS $OPENSSL_OPTIONS $RUST_OPTIONS --enable-fatal-warnings --disable-silent-rules" - - echo "Configure flags are $CONFIGURE_FLAGS" - - ./configure $CONFIGURE_FLAGS + - echo "Configure flags are $CONFIGURE_FLAGS CC=\"$CC $C_DIALECT_OPTIONS\"" + - ./configure $CONFIGURE_FLAGS CC="$CC $C_DIALECT_OPTIONS" ## We run `make check` because that's what https://jenkins.torproject.org does. - if [[ "$SKIP_MAKE_CHECK" == "" ]]; then make check; fi - if [[ "$DISTCHECK" != "" ]]; then make distcheck DISTCHECK_CONFIGURE_FLAGS="$CONFIGURE_FLAGS"; fi |