You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.2KB

  1. #!/bin/bash
  2. set -ex
  3. BUILD_DIR=${TRAVIS_BUILD_DIR}
  4. mkdir -p "${DEPENDENCY_DIR}" && cd "${DEPENDENCY_DIR}"
  5. # --- CMake
  6. CMAKE_INSTALLER=install-cmake.sh
  7. if [[ ! -f ${CMAKE_INSTALLER} ]]
  8. then
  9. curl -sSL https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.sh -o ${CMAKE_INSTALLER}
  10. chmod +x ${CMAKE_INSTALLER}
  11. fi
  12. sudo ./${CMAKE_INSTALLER} --prefix=/usr/local --skip-license
  13. cmake --version
  14. cd ${DEPENDENCY_DIR}
  15. # --- LibC++
  16. if [[ "${CXX}" = clang* ]]
  17. then
  18. if [[ ! -d "${DEPENDENCY_DIR}/llvm-source" ]]
  19. then
  20. LLVM_RELEASE=release_50
  21. git clone --depth=1 -b ${LLVM_RELEASE} https://github.com/llvm-mirror/llvm.git llvm-source
  22. git clone --depth=1 -b ${LLVM_RELEASE} https://github.com/llvm-mirror/libcxx.git llvm-source/projects/libcxx
  23. git clone --depth=1 -b ${LLVM_RELEASE} https://github.com/llvm-mirror/libcxxabi.git llvm-source/projects/libcxxabi
  24. fi
  25. mkdir -p build && cd build
  26. cmake -DCMAKE_C_COMPILER=${CC} \
  27. -DCMAKE_CXX_COMPILER=${CXX} \
  28. -DCMAKE_BUILD_TYPE=RelWithDebInfo \
  29. -DCMAKE_INSTALL_PREFIX=/usr \
  30. -DLIBCXX_ABI_UNSTABLE=ON \
  31. ../llvm-source
  32. make cxx -j4
  33. sudo make install-cxxabi install-cxx
  34. rm -rf *
  35. fi
  36. cd ${BUILD_DIR}