| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| language: cpp |
| |
| sudo: required |
| |
| compiler: |
| - clang |
| - gcc |
| |
| env: |
| - PURPOSE=compile-with-make |
| - PURPOSE=compile-with-cmake |
| - PURPOSE=compile-with-bazel |
| - PURPOSE=unittest |
| - PURPOSE=compile-with-make-all-options |
| - PURPOSE=compile-with-cmake-all-options |
| - PURPOSE=compile-with-bazel-all-options |
| |
| before_script: |
| - ulimit -c unlimited -S # enable core dumps |
| # The real command should be put into another "bash -c" otherwise it |
| # would cause a permission issue. The reason may be that the 'sudo' |
| # only promote the 'echo' part but not the whole command. |
| - sudo bash -c "echo 'core.%e.%p' > /proc/sys/kernel/core_pattern" |
| |
| before_install: |
| - wget --no-clobber https://github.com/bazelbuild/bazel/releases/download/0.25.1/bazel_0.25.1-linux-x86_64.deb && sudo dpkg -i bazel_0.25.1-linux-x86_64.deb |
| - sudo apt-get install automake bison flex g++ git libboost-all-dev libevent-dev libssl-dev libtool make pkg-config # thrift dependencies |
| - wget https://archive.apache.org/dist/thrift/0.11.0/thrift-0.11.0.tar.gz && tar -xf thrift-0.11.0.tar.gz && cd thrift-0.11.0/ && ./configure --prefix=/usr --with-rs=no --with-ruby=no --with-python=no --with-java=no --with-go=no --with-perl=no --with-php=no --with-csharp=no --with-erlang=no --with-lua=no --with-nodejs=no CXXFLAGS="-Wno-unused-variable" && make -j4 && sudo make install && cd - |
| |
| install: |
| - sudo apt-get install -qq realpath libgflags-dev libprotobuf-dev libprotoc-dev protobuf-compiler libleveldb-dev libgoogle-perftools-dev libboost-dev libssl-dev libevent-dev libboost-test-dev libgoogle-glog-dev |
| - sudo apt-get install libgtest-dev && cd /usr/src/gtest && sudo env "PATH=$PATH" cmake . && sudo make && sudo mv libgtest* /usr/lib/ && cd - |
| - sudo apt-get install -y gdb # install gdb |
| |
| script: |
| - sh build_in_travis_ci.sh |