image: alpine/edge
packages:
  - cairo-dev
  - eudev-dev
  - gdk-pixbuf-dev
  - json-c-dev
  - lcms2-dev
  - libdisplay-info-dev
  - libevdev-dev
  - libinput-dev
  - libseat-dev
  - libxcb-dev
  - libxkbcommon-dev
  - mesa-dev
  - meson
  - pango-dev
  - pcre2-dev
  - pixman-dev
  - scdoc
  - wayland-dev
  - wayland-protocols
  - xcb-util-image-dev
  - xcb-util-wm-dev
  - xwayland-dev
  - hwdata-dev
sources:
  - https://github.com/swaywm/sway
  - https://gitlab.freedesktop.org/wlroots/wlroots.git
tasks:
  - wlroots: |
      cd wlroots
      meson setup --prefix=/usr build -Dexamples=false
      ninja -C build
      sudo ninja -C build install
  - setup: |
      cd sway
      meson setup build --fatal-meson-warnings -Dauto_features=enabled -Dtray=disabled
  - build: |
      cd sway
      ninja -C build
  - build-no-xwayland: |
      cd wlroots
      meson configure build -Dxwayland=disabled
      ninja -C build
      sudo ninja -C build install

      cd ../sway
      meson configure build --clearcache
      ninja -C build
  - build-static: |
      cd sway
      mkdir subprojects
      ln -s ../../wlroots subprojects/wlroots
      rm -rf build
      meson setup build --fatal-meson-warnings --default-library=static --force-fallback-for=wlroots
      ninja -C build
