dist: trusty language: cpp os: - linux compiler: - clang - gcc sudo: required addons: apt: sources: - ubuntu-toolchain-r-test - llvm-toolchain-trusty-5.0 packages: - g++ - clang - cmake - cmake-data - libssl-dev - gdb before_install: # - $CC --version - if [ "$TRAVIS_OS_NAME" == "linux" ]; then if [ "$CXX" = "g++" ]; then export CXX="g++" CC="gcc" EXTRA_LDFLAGS="-fuse-ld=gold"; else export CXX="clang++" CC="clang"; fi; fi # - $CC --version - cmake --version before_script: # First build external lib - ./ci/build_picotls.sh - sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6' script: # Now build picotls examples and test - echo $CC - echo $CXX - if [ "$CC" == "clang" ]; then scan-build cmake -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=/usr/share/clang/scan-build/ccc-analyzer .; fi - if [ "$CC" == "clang" ]; then scan-build make; fi - cmake . - if [ "$CC" == "gcc" ]; then make clean; fi - make - ulimit -c unlimited -S - ./picoquic_ct -n && RESULT=$? # Early out if the program exited successfully - if [[ ${RESULT} == 0 ]]; then exit 0; fi; - for i in $(find ./ -maxdepth 1 -name 'core*' -print); do gdb $(pwd)/picoquic_ct core* -ex "thread apply all bt" -ex "set pagination 0" -batch; done;