Commit graph

185 commits

Author SHA1 Message Date
Scott Anderson
653ea512c2 Use current_source_dir instead of source_root
This is so that log messages are printed properly when wlroots is build
as a subproject.
2018-08-23 14:19:59 +12:00
Scott Anderson
51892e0d74 Install headers explicitly 2018-08-22 21:16:16 +12:00
Scott Anderson
a2bbf2c1f7 Make style more consistent 2018-08-22 21:16:16 +12:00
Scott Anderson
869dca1bce Remove unnecessary project arguments
Meson handles rpath properly, and we don't need to use -I ourselves by
using include_directories with '.'.
2018-08-22 21:16:16 +12:00
Scott Anderson
1358d80ab9 Add link dependency on symbols file
So the library is rebuilt properly when it's updated.
2018-08-22 21:16:16 +12:00
Scott Anderson
584a3f8b6e Update examples to use new option
We use a dictionary to remove some code duplication.
2018-08-22 21:15:34 +12:00
Scott Anderson
560e96aa57 Update rootston to use new option 2018-08-22 20:41:25 +12:00
Scott Anderson
784c20c82f Use new options for X11 backend and Xwayland 2018-08-22 20:27:37 +12:00
Scott Anderson
94ed2fc7bb Use feature options for libcap/logind
We now use a combo choice between systemd/elogind as they are mutually
exclusive anyway.
2018-08-22 19:53:00 +12:00
Scott Anderson
3fa3dca6d5 Add new feature options
Bump minimum meson version to 0.47 for the feature.
2018-08-22 19:41:53 +12:00
Guido Günther
570970db64 ctags: use -f instead of -o
The later does not exist on FreeBSD

See #725
2018-08-16 12:01:06 +02:00
Drew DeVault
5642c5cc8f
Merge pull request #1053 from emersion/xdg-decoration
Add xdg-decoration-unstable-v1 support
2018-08-02 09:33:10 -04:00
Drew DeVault
211ae764fd Initial pass on API stability guarantees
This introduces -DWLR_USE_UNSTABLE and adds information regarding the
stability status to all headers. I started with a conservative set of
headers to mark as stable:

- types/wlr_matrix.h
- util/edges.h
- util/log.h
- util/region.h
- xcursor.h
2018-07-29 19:20:34 -04:00
emersion
555721f714 Add xdg-decoration-unstable-v1 support 2018-07-28 22:48:07 +01:00
Drew DeVault
4b096fc114 Revert "Merge pull request #1153 from emersion/include-config"
This reverts commit ef0a6ea4d2, reversing
changes made to 8d03bc9178.
2018-07-21 09:44:20 -04:00
emersion
e02c486b60 Use posix_fallocate when available 2018-07-21 13:30:49 +01:00
emersion
41094a7df5 Always include config.h 2018-07-21 13:08:23 +01:00
Scott Anderson
86942d8a6a Check for libavutil/hwcontext_drm.h
This is an optional feature of libavutil, so this will cause a build
failure if it's not present (e.g. on Debian/Ubuntu).
2018-06-26 17:25:29 +12:00
emersion
f9ad63c5cb
rootston: use wl_display_destroy_clients 2018-05-29 22:50:26 +01:00
emersion
63fd2203fe
Add support for version 2 of the xdg-output protocol 2018-05-17 08:42:59 +01:00
florian.weigelt
d68a27fd79 Add option to disable examples build
Compiling the examples is useful for testing and development, but less
useful for actual users of wlroots.
This commit adds the option --enable-examples to set weather to include
the examples at compilation or not. The default value is True, so the
current behaviour remains unchanged.
2018-05-05 09:50:10 +02:00
florian.weigelt
34be87a3f6 Add option to disable rootston build
Compiling the rootston example compositor is useful for testing and
development, but less useful for actual users of wlroots, who might
prefer sway or other compositors.
This commit adds the option --enable-rootston to set weather to include
rootston at compilation or not. The default value is True, so the
current compilation behaviour remains unchanged.
2018-05-05 09:40:02 +02:00
Danilo Spinella
f83ad3f3ef Install include directory into includedir
Follow includedir parameter when installing include directory.
2018-04-03 16:56:32 +02:00
Danilo Spinella
046d909e7a Change meson option names to use hypen
Replace underscore with hypen in meson option names, following style
recommendations.

http://mesonbuild.com/Style-guide.html#naming-options
2018-04-02 23:35:03 +02:00
emersion
f033f717a2
backend/x11: make xcb-xkb optional, remove global state 2018-03-28 00:26:15 -04:00
emersion
8d1b5c7600
backend/x11: correctly update keyboard modifiers 2018-03-28 00:04:32 -04:00
Drew DeVault
b1c4f01bad
Merge pull request #713 from ManDay/master
Make X11 fully optional
2018-03-26 23:20:46 -04:00
Cedric Sodhi
51141dd11e Minor corrections 2018-03-23 10:28:36 +01:00
emersion
375e1bdf2b
meson: use current_source_dir instead of source_root
Use source_root breaks the build when used as a subproject.
2018-03-12 12:15:26 +01:00
Cedric Sodhi
ebdabc2030 Make X11 fully optional
Make X11 Backend (in addition to XWayland) optional and small bug fix on XWayland includes.
2018-03-09 15:17:15 +01:00
Dominique Martinet
7d1870c6f1 move xwm.h out of include/wlr
xwm.h was meant to be private, so move it to include/xwayland/xwm.h
We had an ifdef WLR_HAS_XCB_ICCCM in xwayland.h which was easy to move
to xwm, it is not safe to use the WLR_HAS_* in the public headers.

I checked a few of our current users and none rely on xwm.h being
public as expected (rootston, sway, hsroots)
2018-03-03 17:03:21 +01:00
Dominique Martinet
f8428d1063 xcb errors: optional dependency with improved messages
Now message can look like:
[xwayland/xwm.c:991] xcb error: op ChangeProperty (no minor), code Window (no extension), value 6291465

instead of this one when the lib is not available:
[xwayland/xwm.c:999] xcb error: op 18:0, code 3, sequence 103, value 6291465

The value in case of Window is the window id, so we can tell what
function applied on which window which is a good start.
The sequence ought to be able to tell us more precisely which
invocation it was, but we never log it when calling functions
so is useless in practice and no longer logged.
2018-03-03 11:46:04 +01:00
Guido Günther
6ba1128a72 Add symbols file
to only export symbols matching wlr_* from the wlroots library
2018-02-23 09:51:23 +01:00
Drew DeVault
1d9be89e2d
Revert "ELF Visibility" 2018-02-19 18:01:27 -05:00
Scott Anderson
86269052eb Explicitly export EFL symbols 2018-02-19 14:26:40 +13:00
Dominique Martinet
db9c2c11f6 meson: require wayland-protocols >=1.12 for xdg-shell stable 2018-02-14 19:02:45 +01:00
emersion
c2e1474010
Reformat all #include directives 2018-02-12 21:29:23 +01:00
Dominique Martinet
435aec0033 meson build: only link with deps when required by options 2018-02-10 11:30:47 +01:00
Dominique Martinet
161ae2fcb4 meson build: make enable options work as auto/true/false
This makes meson fail if -Denable_systemd=true was set but not found
The default is now auto which is the old behaviour
2018-02-10 10:46:27 +01:00
Dominique Martinet
19d7edb430 meson.build status: print actual build options in message
We were printing the option intent (true by default for all), but
some are disabled when a component is not found and this was not
reflected.
2018-02-10 10:44:42 +01:00
Guido Günther
c5aac77692 Fix some typos
Prefer initialize over initialise since used more often in the sources.
2018-01-30 16:10:07 +01:00
Guido Günther
e5dacbae5d meson: add ctags and etags targets
to create tag files. Idea taken from systemd.

Signed-off-by: Guido Günther <agx@sigxcpu.org>
2018-01-26 17:00:43 +01:00
Guido Günther
66ab1a98a0 meson: print enabled options
This makes it simpler to figure out what was enabled.
2018-01-24 18:24:13 +01:00
Dominique Martinet
85b9368c48 meson: fix include path in generated .pc
The generated .pc still contained -I${prefix}/wlroots, this is no longer
needed at all as the prefix is now 'wlr' and all includes are 'wlr/foo'
2018-01-04 23:41:44 +01:00
Drew DeVault
c23bd2ab7a Further fixes to header install dir 2017-12-28 14:38:52 -05:00
Drew DeVault
45a21ca232 Install headers to /usr/include/wlr
Rather than wlroots. I should have caught this.
2017-12-28 14:18:37 -05:00
Björn Esser
8c0fc4ffe5
meson: Fix exclude_headers 2017-12-27 18:29:27 +01:00
Björn Esser
71e42dae90
libwlroots: Add shared library versioning 2017-12-27 18:00:13 +01:00
Björn Esser
892f7a5db0
include: Install headers in an isolated include-dir 2017-12-27 17:13:58 +01:00
Björn Esser
ff13849624
config: Avoid clash with other config-headers 2017-12-27 17:13:58 +01:00
Björn Esser
57a09c8ca4
config: Put all defines into config.h 2017-12-26 18:51:27 +01:00
Tony Crisci
ea4b871e16 xwm: user custom event handler 2017-12-13 17:54:19 -05:00
Scott Anderson
87258c718c Add minimum meson version 2017-11-22 12:05:44 +13:00
Drew DeVault
c3e0fbdb8f Remove meson hack 2017-11-20 08:21:02 -05:00
emersion
ddd7b7711c
Load xwm cursor from theme 2017-11-02 15:52:02 +01:00
emersion
bdaf66a292
Set xwayland root cursor 2017-11-02 00:03:55 +01:00
Tony Crisci
1dbe314937 Merge branch 'master' into feature/data-device-selection 2017-10-24 07:57:36 -04:00
Dominique Martinet
a2f5e60dea meson: fail build if libinput < 1.7.0
We need libinput >= 1.7.0 for LIBINPUT_DEVICE_CAP_SWITCH
2017-10-24 02:05:41 +09:00
Dominique Martinet
98207fda81 meson: fail build if gbm/mesa < 17.1.0
We need mesa 17.1.0 for gbm_bo_get_offset and gbm_bo_get_stride_for_plane
We need mesa 17.0.0 for EGL_TEXTURE_EXTERNAL_WL
2017-10-24 02:05:41 +09:00
Tony Crisci
fb25adae36 xwayland: use xfixes extension 2017-10-15 14:50:21 -04:00
Greg V
a5fe9aa736 Add FreeBSD compatibility 2017-10-11 00:07:21 +03:00
Drew DeVault
d0d6413772 Merge pull request #220 from versusvoid/optional-xwayland
Make Xwayland optional
2017-10-09 08:09:03 -04:00
Scott Anderson
c0e5feea37 Add GL/EGL extension loader generator 2017-10-08 13:23:41 +13:00
Versus Void
9cab66f0f9 Make xwayland compile-time optional 2017-10-06 21:50:25 +00:00
emersion
ed9796ec68
xwayland: parse normal hints 2017-10-05 19:10:23 +02:00
Scott Anderson
7ad2a57feb Open X11 Window 2017-09-29 16:12:13 +13:00
Drew DeVault
f4387b437f Merge branch 'master' into rootston 2017-09-25 08:29:51 -04:00
Scott Anderson
7288d3b2c3 Install library, headers, and pkg-config 2017-09-24 14:51:23 +13:00
Drew DeVault
550748681d Establish rootston headers & main 2017-09-22 23:30:40 -04:00
dudemanguy
175f89f4ff Add elogind support
Resolves SirCmpwn/wlroots#146
2017-09-22 12:02:55 -05:00
Tony Crisci
368f74e4df Refactor meson build files
Use tabs for indentation and break up function calls over 80 col.
2017-08-30 14:30:47 -04:00
Dominique Martinet
fa0e1015c6 xwm: fix minimal init, this gets us some events on window creations 2017-08-23 22:03:49 +02:00
Dominique Martinet
b2bab1af5c xwayland: split xwm structure out, initial xwm.c 2017-08-23 22:03:49 +02:00
Dominique Martinet
49a823d4c6 Xwayland: first draft, just start server for now 2017-08-23 22:03:49 +02:00
Scott Anderson
75978636d9 Change meson to be more configurable
We move the warning options into the project's default_options, meaning
a user can configure them with `meson configure` and not need to edit
the file.

We also make it possible to disable logind/libcap even if they're
present.
2017-08-20 22:19:47 +12:00
Drew DeVault
d4b4bfb8bc Fix #64 2017-08-13 08:26:32 -04:00
Drew DeVault
e6a7817e45 Fix build on systems without systemd 2017-08-13 08:21:57 -04:00
Drew DeVault
62d8b252c0 Refactor meson and move xdg-shell into wlroots 2017-08-11 09:37:09 -04:00
nyorain
1bea754521 Implement wlr_region using pixman 2017-08-09 17:05:55 +02:00
Drew DeVault
7486263f7e Add xcursor sublibrary 2017-08-07 21:13:04 -04:00
Scott Anderson
3373ec5fc8 Update build files 2017-08-06 13:30:18 +12:00
nyorain
fdab81e1c9 Use meson build system 2017-08-05 22:34:24 +02:00
Drew DeVault
b08aa9fd35 Revert "Merge pull request #27 from ascent12/meson"
This reverts commit 85805da021, reversing
changes made to 8189c64d7f.
2017-07-11 22:16:56 -04:00
Scott Anderson
a2ba226ba3 Use subdir 2017-07-11 09:56:54 +12:00
Scott Anderson
924bf0f669 Changed build system to meson 2017-07-11 00:28:56 +12:00