diff options
author | teor <teor@torproject.org> | 2019-11-15 10:17:32 +1000 |
---|---|---|
committer | teor <teor@torproject.org> | 2019-12-03 12:42:39 +1000 |
commit | 792c15fde24a7ae35085d086b66da4f3d867ea4e (patch) | |
tree | 985c88a5b088aa28e689fe50c3928ee5c81246aa | |
parent | 853b6ad0950e8014784109879fa058fb0cb90dc8 (diff) | |
download | tor-792c15fde24a7ae35085d086b66da4f3d867ea4e.tar.gz tor-792c15fde24a7ae35085d086b66da4f3d867ea4e.zip |
Travis: use -std=gnu99 in some jobs
Require C99 standards-conforming code in Travis CI, but allow GNU gcc
extensions. Also activates clang's -Wtypedef-redefinition warnings.
Builds some jobs with -std=gnu99, and some jobs without.
Closes ticket 32500.
-rw-r--r-- | .travis.yml | 10 | ||||
-rw-r--r-- | changes/ticket32500 | 5 |
2 files changed, 12 insertions, 3 deletions
diff --git a/.travis.yml b/.travis.yml index 4ea9400b88..51368ea512 100644 --- a/.travis.yml +++ b/.travis.yml @@ -32,8 +32,12 @@ 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 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. @@ -136,8 +140,8 @@ install: script: - ./autogen.sh - CONFIGURE_FLAGS="$ASCIIDOC_OPTIONS $COVERAGE_OPTIONS $HARDENING_OPTIONS $OPENSSL_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. |