language: rust sudo: required cache: cargo rust: - stable - beta - nightly matrix: allow_failures: - rust: beta - rust: nightly before_script: - rustup component add rustfmt-preview - PREFIX=$TRAVIS_BUILD_DIR ./ci/build_harfbuzz.sh script: - "if [[ \"$TRAVIS_RUST_VERSION\" == \"stable\" ]] ; then cargo fmt --all -- --check ; else true ; fi" - cargo build --verbose --all - cargo test --verbose --all addons: apt: packages: - binutils-dev - cmake - gcc - libcurl4-openssl-dev - libdw-dev - libegl1-mesa-dev - libelf-dev - libfontconfig1-dev - libfreetype6-dev - libiberty-dev - libxcb-ewmh-dev - libxcb-icccm4-dev - libxcb-keysyms1-dev - ragel env: global: - PKG_CONFIG_PATH=$TRAVIS_BUILD_DIR/lib/pkgconfig # global: # - RUSTFLAGS="-C link-dead-code" after_success: | wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz && tar xzf master.tar.gz && cd kcov-master && mkdir build && cd build && cmake .. && make && make install DESTDIR=../../kcov-build && cd ../.. && rm -rf kcov-master && for file in target/debug/term-*[^\.d] target/debug/wezterm-*[^\.d]; do mkdir -p "target/cov/$(basename $file)"; ./kcov-build/usr/local/bin/kcov --exclude-pattern=/.cargo,/usr/lib --verify "target/cov/$(basename $file)" "$file"; done && bash <(curl -s https://codecov.io/bash) && echo "Uploaded code coverage"