aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorteor <teor@torproject.org>2019-12-03 12:45:41 +1000
committerteor <teor@torproject.org>2019-12-03 12:45:41 +1000
commit145ff92d9298ff2e9913b591a91a76ea0846f361 (patch)
tree060fe2fbe0e7fa906f9dc4709868323c2aefd3eb
parent501b5174d84a121fe5932433e54b2929a5c2876d (diff)
parent792c15fde24a7ae35085d086b66da4f3d867ea4e (diff)
downloadtor-145ff92d9298ff2e9913b591a91a76ea0846f361.tar.gz
tor-145ff92d9298ff2e9913b591a91a76ea0846f361.zip
Merge branch 'maint-0.2.9' into maint-0.3.5
Merge C_DIALECT_OPTIONS from ticket32500_029 with other configure options from maint-0.3.5.
-rw-r--r--.travis.yml10
-rw-r--r--changes/ticket325005
2 files changed, 12 insertions, 3 deletions
diff --git a/.travis.yml b/.travis.yml
index 7f0e785876..f227321876 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
## We run chutney on Linux, because it's faster than chutney on macOS
- - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes"
+ ## Use -std=gnu99 to turn off some newer features, and maybe turn on some
+ ## extra gcc warnings?
+ - env: CHUTNEY="yes" CHUTNEY_ALLOW_FAILURES="2" SKIP_MAKE_CHECK="yes" C_DIALECT_OPTIONS="-std=gnu99"
## (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.
@@ -203,8 +207,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.