diff options
Diffstat (limited to 'src/seastar/.travis.yml')
-rw-r--r-- | src/seastar/.travis.yml | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src/seastar/.travis.yml b/src/seastar/.travis.yml new file mode 100644 index 00000000..ba3f89b3 --- /dev/null +++ b/src/seastar/.travis.yml @@ -0,0 +1,70 @@ +dist: trusty +# While 'sudo' is not used explicity, setting it to 'required' enforces full virtualization. +# This is needed as container-based images fail to build Seastar due to insufficient memory. +sudo: required +language: cpp +compiler: gcc +dependencies: + &seastar_deps [ + "libaio-dev", + "ninja-build", + "ragel", + "libhwloc-dev", + "libnuma-dev", + "libpciaccess-dev", + "libcrypto++-dev", + "scylla-libboost165-all-dev", + "libxml2-dev", + "xfslibs-dev", + "libgnutls28-dev", + "liblz4-dev", + "libsctp-dev", + "make", + "libprotobuf-dev", + "protobuf-compiler", + "python3", + "systemtap-sdt-dev", + "libtool", + "cmake", + "libc-ares-dev", + "libyaml-cpp-dev", + "stow", + "realpath" + ] +matrix: + include: + # GCC 7, DPDK enabled + - env: DPDK_MODE="--enable-dpdk" COMPILER="g++-7" C_COMPILER="gcc-7" + addons: &gcc7 + apt: + sources: + - ubuntu-toolchain-r-test + - sourceline: 'ppa:scylladb/ppa' + packages: + - *seastar_deps + - g++-7 + # GCC 7, DPDK disabled + - env: DPDK_MODE="" COMPILER="g++-7" C_COMPILER="gcc-7" + addons: *gcc7 + # Clang 5.0, DPDK disabled + # Suppress unused lambda capture warning due to a Clang bug (see https://reviews.llvm.org/rL296602) + # Suppress missing braces warning due to a Clang bug (see https://bugs.llvm.org/show_bug.cgi?id=21629) + # Need g++-7 to bring up-to-date libstdc++ in + - env: DPDK_MODE="" COMPILER="clang++-5.0" C_COMPILER="clang-5.0" CFLAGS="-Wno-unused-lambda-capture -Wno-missing-braces" + compiler: clang + addons: &clang50 + apt: + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-trusty-5.0 + - sourceline: 'ppa:scylladb/ppa' + packages: + - *seastar_deps + - clang-5.0 + - g++-7 + +before_script: + - ./configure.py --mode=release ${DPDK_MODE} --compiler=${COMPILER} --c-compiler=${C_COMPILER} --c++-dialect="gnu++17" --cflags="-I/opt/scylladb/include/ $CFLAGS" --ldflags="-L/opt/scylladb/lib/x86_64-linux-gnu/" + +script: + - ninja -j`nproc --all` |