aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorteor <teor@torproject.org>2019-12-03 12:46:47 +1000
committerteor <teor@torproject.org>2019-12-03 12:46:47 +1000
commit03dc0e19a1a498c7df390899e01b7830e3186b85 (patch)
treeb4b7939846f5e076f78020f3b2142d4c70b6fa6e
parentc88fce1323205db4809bf2a69fa9a29c71ffb4c1 (diff)
parentfebbc236d4a813bf086c5cc3dcd0fa93c7f3eab1 (diff)
downloadtor-03dc0e19a1a498c7df390899e01b7830e3186b85.tar.gz
tor-03dc0e19a1a498c7df390899e01b7830e3186b85.zip
Merge branch 'maint-0.4.0' into release-0.4.0
-rw-r--r--.travis.yml14
-rw-r--r--changes/ticket325005
2 files changed, 14 insertions, 5 deletions
diff --git a/.travis.yml b/.travis.yml
index 26cb8824a4..1bb14da8ee 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -39,12 +39,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"
+ compiler: clang
## (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.
@@ -205,8 +209,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
diff --git a/changes/ticket32500 b/changes/ticket32500
new file mode 100644
index 0000000000..2c0f35df72
--- /dev/null
+++ b/changes/ticket32500
@@ -0,0 +1,5 @@
+ o Testing:
+ - Require C99 standards-conforming code in Travis CI, but allow GNU gcc
+ extensions. Also activates clang's -Wtypedef-redefinition warnings.
+ Build some jobs with -std=gnu99, and some jobs without.
+ Closes ticket 32500.