mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-11 19:07:15 +03:00
8d680dd1ad
We currently have 16 endpoints. The IDs are typed by a human at creation time. This check will detect with we ever use an endpoint ID twice. Since the large irrelevant directories are ignored, this should be quick enough.
60 lines
1.8 KiB
YAML
60 lines
1.8 KiB
YAML
os: linux
|
|
dist: bionic
|
|
|
|
language: cpp
|
|
|
|
compiler:
|
|
- gcc
|
|
|
|
cache:
|
|
ccache: true
|
|
directories:
|
|
- /var/cache/apt/archives/*.deb
|
|
- Toolchain/Cache/
|
|
|
|
notifications:
|
|
irc:
|
|
if: repo = SerenityOS/serenity
|
|
channels:
|
|
- "chat.freenode.net#serenityos"
|
|
template:
|
|
- "%{repository_slug}#%{build_number} (%{branch} - %{commit} : %{author}): %{message}"
|
|
- "Subject: %{commit_subject}"
|
|
- "Details: %{build_url}"
|
|
|
|
before_install:
|
|
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
|
- sudo apt-get update -qq
|
|
- sudo apt-get install -y g++-8 libstdc++-8-dev shellcheck libmpfr-dev libmpc-dev libgmp-dev e2fsprogs qemu-system-i386 qemu-utils
|
|
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90
|
|
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 90
|
|
# Travis ships an old cmake 3.12.4. We need cmake >= 3.16.
|
|
# Why would you put binaries there?!
|
|
- sudo rm -rf /usr/local/cmake-*
|
|
- which cmake || true
|
|
- curl -sSf --proto =https --retry 3 --retry-delay 60 https://cmake.org/files/v3.18/cmake-3.18.1-Linux-x86_64.sh > /tmp/cmake-install.sh
|
|
- sudo sh /tmp/cmake-install.sh --skip-license --prefix=/usr
|
|
- cmake --version
|
|
|
|
script:
|
|
- export SERENITY_ROOT="$(pwd)"
|
|
- Meta/lint-shell-scripts.sh
|
|
- Meta/lint-executable-resources.sh
|
|
- Meta/lint-ipc-ids.sh
|
|
- Meta/check-style.sh
|
|
- cd Toolchain
|
|
- TRY_USE_LOCAL_TOOLCHAIN=y ./BuildIt.sh
|
|
- cd "$SERENITY_ROOT"
|
|
- mkdir -p Build
|
|
- cd Build
|
|
- cmake .. -DBUILD_LAGOM=1
|
|
- make -j2
|
|
- CTEST_OUTPUT_ON_FAILURE=1 make test
|
|
- cd Meta/Lagom
|
|
- ./test-js
|
|
# These feel like they should go into a script. However, that would be a Travis-specific script, and this is *the* right place for travis-specific stuff.
|
|
- cd "$SERENITY_ROOT"/Toolchain/Cache
|
|
- du -ch * || true
|
|
- du -sch /home/travis/.ccache/* || true
|
|
- du -sch /var/cache/apt/archives/*.deb || true
|