Find a file
Patrick Steinhardt 91c034d164 travis: add job building wlroots without various options
Recently, the support for building rootston without XWayland was broken.
While the breakage was easily fixable, the more important problem is
that actually nobody seems to ever compile wlroots without XWayland,
causing silent breakage. This problem can easily be handled by the CI
system: in addition to the existing job which enables XWayland, add a
second job which compiles wlroots without XWayland. This will catch
breakage at a much earlier stage.

Catching broken builds without XWayland support obviously only covers
one part of a greater issue, as all the other options may cause our
builds to break, too. While we cannot test each combination, we can at
least make sure to have one build with all options enabled and one with
all options disabled.
2018-01-28 16:14:38 +00:00
backend drm: Use ptrdiff_t instead of intmax_t in format string 2018-01-27 12:29:56 +01:00
examples style: include brackets for if/while/for, even if it's a single statement 2018-01-21 16:28:21 +01:00
include rootston: fix compilation without XWayland support 2018-01-28 12:07:15 +00:00
protocol Add idle protocol 2018-01-10 14:32:41 +02:00
render rename matrix model box to project box 2018-01-21 19:03:10 -05:00
rootston rootston: move together XWayland setup code 2018-01-28 12:12:33 +00:00
types wlr_keyboard: use correct printf format string for keymap_size 2018-01-27 12:23:26 +01:00
util Allow configurable verbosity 2017-12-31 14:50:19 -07:00
xcursor move get_resize_name to xcursor 2017-12-08 06:08:06 -05:00
xwayland style: add else keywords in xwm.c 2018-01-21 17:04:23 +01:00
.build.yml Fix CI build 2017-11-02 00:19:51 +01:00
.editorconfig Add wlr_primary_selection_device_manager and wlr_primary_selection_source 2017-12-22 19:20:12 +01:00
.gitignore Remove vim stuff from .gitignore 2018-01-26 10:06:07 -05:00
.travis.yml travis: add job building wlroots without various options 2018-01-28 16:14:38 +00:00
CONTRIBUTING.md Update CONTRIBUTING.md 2017-12-27 10:39:53 -05:00
glgen.sh Change glapi.sh to generate both files 2017-11-22 14:04:29 +13:00
LICENSE Initial commit 2017-04-25 11:32:52 -04:00
meson.build meson: add ctags and etags targets 2018-01-26 17:00:43 +01:00
meson_options.txt Make xwayland compile-time optional 2017-10-06 21:50:25 +00:00
README.md readme: change running instructions 2017-11-16 15:59:12 -05:00

wlroots

Pluggable, composable modules for building a Wayland compositor.

This is a WIP: status

Contributing

See CONTRIBUTING.md

Building

Install dependencies:

  • wayland
  • wayland-protocols
  • EGL
  • GLESv2
  • DRM
  • GBM
  • libinput
  • udev
  • pixman
  • systemd (optional, for logind support)
  • elogind (optional, for logind support on systems without systemd)
  • libcap (optional, for capability support)
  • asciidoc (optional, for man pages)

Run these commands:

meson build
ninja -C build

(On FreeBSD, you need to pass an extra flag to prevent a linking error: meson build -D b_lundef=false)

Running the Reference Compositor

wlroots comes with a reference compositor called rootston that demonstrates the features of the library.

After building, run rootston from a terminal or VT with:

./build/rootston/rootston

Now you can run windows in the compositor from the command line or by configuring bindings in your rootston.ini file.