Update to build against wlroots 0.17.x #3454
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
jobs: | |
test_musl_gcc: | |
name: "Test with GCC/musl/libstdc++/BFD on Alpine Linux" | |
runs-on: ubuntu-latest | |
container: alpine:edge | |
steps: | |
- run: apk --no-cache add curl git gcc g++ binutils pkgconf make meson ninja musl-dev wayland-dev wayland-protocols libinput-dev libevdev-dev libxkbcommon-dev pixman-dev glm-dev libdrm-dev mesa-dev cairo-dev pango-dev eudev-dev libxml2-dev libseat-dev libxcb-dev xcb-util-wm-dev xwayland doctest doctest-dev cmake | |
- uses: actions/checkout@v1 | |
- run: git config --global --add safe.directory /__w/wayfire/wayfire | |
- run: git submodule sync --recursive && git submodule update --init --force --recursive | |
- run: (git clone https://github.com/vcrhonek/hwdata && cd hwdata && ./configure --prefix=/usr && curl http://ix.io/4Gui | git apply && make && make install) | |
- run: (git clone https://gitlab.freedesktop.org/emersion/libdisplay-info && cd libdisplay-info && meson build --prefix=/usr && ninja -C build install) | |
- run: (cd subprojects/wlroots && meson build --prefix=/usr && ninja -C build install) | |
- run: meson build -Dtests=enabled -Db_pch=true -Duse_system_wlroots=enabled --unity on | |
- run: ninja -v -Cbuild | |
- run: ninja -v -Cbuild test | |
test_glibc_llvm: | |
name: "Test with clang/glibc/libc++/lld on Arch Linux" | |
runs-on: ubuntu-latest | |
container: | |
image: archlinux:latest | |
steps: | |
- run: sed -i 's/SigLevel = Required DatabaseOptional/SigLevel = Optional TrustAll/' /etc/pacman.conf | |
- run: pacman --noconfirm --noprogressbar -Syyu | |
- run: pacman --noconfirm --noprogressbar -Sy git clang lld libc++ pkgconf meson ninja wayland wayland-protocols libinput libxkbcommon pixman glm libdrm libglvnd cairo pango systemd scdoc base-devel seatd | |
# Build Wayfire | |
- uses: actions/checkout@v1 | |
- run: git config --global --add safe.directory /__w/wayfire/wayfire | |
- run: git submodule sync --recursive && git submodule update --init --force --recursive | |
- run: (git clone https://github.com/vcrhonek/hwdata && cd hwdata && ./configure --prefix=/usr && make && make install) | |
- run: (git clone https://gitlab.freedesktop.org/emersion/libdisplay-info && cd libdisplay-info && meson build --prefix=/usr && ninja -C build install) | |
- run: (cd subprojects/wlroots && env CC=clang CXX=clang++ CXXFLAGS="-stdlib=libc++" LDFLAGS="-fuse-ld=lld -stdlib=libc++" meson build --prefix=/usr && ninja -C build install) | |
- run: env CC=clang CXX=clang++ CXXFLAGS="-stdlib=libc++" LDFLAGS="-fuse-ld=lld -stdlib=libc++" meson build -Db_pch=true -Duse_system_wlroots=enabled --unity on | |
- run: ninja -v -Cbuild | |
- run: ninja -v -Cbuild test | |
test_code_style: | |
name: "Check code style with uncrustify" | |
runs-on: ubuntu-latest | |
steps: | |
- run: sudo apt-get update | |
- run: sudo apt-get install -y git cmake gcc make | |
- uses: actions/checkout@v1 | |
- run: git clone http://github.com/ammen99/uncrustify | |
- run: cd uncrustify && mkdir build && cd build && cmake ../ && make && cd ../../ | |
- run: git ls-files | grep "hpp$\|cpp$" | xargs ./uncrustify/build/uncrustify -c uncrustify.ini --no-backup --replace | |
- run: git diff | |
- run: git diff | diff - /dev/null &> /dev/null |