New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

travis: sanitize=address,undefined,signed-integer-overflow #3190

Closed
wants to merge 1 commit into
base: master
from

Conversation

Projects
None yet
2 participants
@bagder
Member

bagder commented Oct 29, 2018

... using clang

@bagder bagder added the build label Oct 29, 2018

@bagder bagder changed the title from travis: add build doing sanitize=address,undefined,signed-integer-ove… to travis: sanitize=address,undefined,signed-integer-overflow Oct 29, 2018

@bagder

This comment has been minimized.

Member

bagder commented Oct 31, 2018

I don't understand this error, nor do I understand why it build nghttp2 again here since it is supposed to be cached... :-/

@MarcelRaad

This comment has been minimized.

Member

MarcelRaad commented Oct 31, 2018

Mixing clang and GCC also doesn't look right, does it?

      C compiler:     clang
      CFLAGS:         -fsanitize=address,undefined,signed-integer-overflow -fno-sanitize-recover=undefined,integer -Wformat -Werror=format-security -Werror=array-bounds -g
      LDFLAGS:        -fsanitize=address,undefined -fno-sanitize-recover=undefined,integer
      C++ compiler:   g++-8
      CXXFLAGS:       -g -O2
      CXXCPP:         g++-8 -E
      C preprocessor: clang -E
@bagder

This comment has been minimized.

Member

bagder commented Oct 31, 2018

Exactly, that's the side-effect of nghttp2 getting built (again) with the setup that is meant only for the curl build. I tried to setup so that the nghttp2 build would remain cached and thus not having to get rebuilt so that the CFLAGS + clang settings wouldn't be used in the nghttp2 build...

@MarcelRaad

This comment has been minimized.

Member

MarcelRaad commented Oct 31, 2018

Ah, you want to reuse the build from previous jobs? Aren't the builds run in parallel on different machines? I thought any caching was only best-effort, but maybe I don't understand how Travis works well enough yet.

@bagder

This comment has been minimized.

Member

bagder commented Oct 31, 2018

right, well obviously it didn't work so I need to come up with a way that makes the sanitizer stuff only affect the curl build and not the other ones...

@MarcelRaad

This comment has been minimized.

Member

MarcelRaad commented Oct 31, 2018

CXX="g++-8" CC="gcc-8" CFLAGS="" LDFLAGS="" LIBS="" ./configure maybe for nghttp2 etc.?

@bagder bagder force-pushed the bagder/travis-san-clang branch from c2804a1 to 7df8563 Oct 31, 2018

@bagder

This comment has been minimized.

Member

bagder commented Oct 31, 2018

Excellent suggestion. Rebased and squashed to make it easier to review.

@bagder bagder closed this in 58d0425 Nov 1, 2018

@bagder bagder deleted the bagder/travis-san-clang branch Nov 1, 2018

xquery added a commit to xquery/curl that referenced this pull request Nov 1, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment