[weston] xkbcommon library is not optional.
Joaquim Duran
jduran.gm at gmail.com
Tue Oct 13 04:59:13 PDT 2015
Hello,
When configuring the Weston project, it is possible to disable (don't
include) the library libxkbcommon. To compile Weston successfully,
even if the option --disable-xkbcommon is specified, the library must
be installed because the file src/compositor.h requires it.
Some code of file src/compositor.h should only be compiled if
xkbcommon library is enabed, but this is not the case. Here I include
some lines from that file:
34 #include <stdbool.h>
35 #include <time.h>
36 #include <pixman.h>
37 #include <xkbcommon/xkbcommon.h> <--- Always included
450
451 struct weston_xkb_info { <--- Always compiled
452 struct xkb_keymap *keymap;
453 int keymap_fd;
454 size_t keymap_size;
455 char *keymap_area;
456 int32_t ref_count;
457 xkb_mod_index_t shift_mod;
458 xkb_mod_index_t caps_mod;
459 xkb_mod_index_t ctrl_mod;
460 xkb_mod_index_t alt_mod;
461 xkb_mod_index_t mod2_mod;
462 xkb_mod_index_t mod3_mod;
463 xkb_mod_index_t super_mod;
464 xkb_mod_index_t mod5_mod;
465 xkb_led_index_t num_led;
466 xkb_led_index_t caps_led;
467 xkb_led_index_t scroll_led;
468 };
469
Configuration of weston:
./autogen.sh \
--disable-devdocs \
--disable-dbus \
--disable-xwayland \
--disable-xwayland-test \
--disable-x11-compositor \
--disable-drm-compositor \
--disable-wayland-compositor \
--disable-headless-compositor \
--disable-rpi-compositor \
--enable-fbdev-compositor \
--disable-rdp-compositor \
--disable-weston-launch \
--disable-wcap-tools \
--with-cairo=image \
--disable-xkbcommon \
--enable-clients \
--disable-simple-clients \
--disable-simple-egl-clients \
--build=i686-linux --host=arm-none-linux-gnueabi
--target=arm-none-linux-gnueabi \
--prefix=$INSTALL_DIR --with-sysroot=${SYSROOT_DIR}
Error:
gem-med at gemmed-VirtualBox:~/Logic_BSPs/Linux_3.0/src/weston$ make
make all-am
make[1]: Entering directory `/home/gem-med/Logic_BSPs/Linux_3.0/src/weston'
CC src/gl_renderer_la-gl-renderer.lo
cc1: warning: include location "/usr/include/libdrm" is unsafe for
cross-compilation [-Wpoison-system-directories]
In file included from src/gl-renderer.h:28:0,
from src/gl-renderer.c:41:
src/compositor.h:37:33: fatal error: xkbcommon/xkbcommon.h: No such
file or directory
compilation terminated.
make[1]: *** [src/gl_renderer_la-gl-renderer.lo] Error 1
make[1]: Leaving directory `/home/gem-med/Logic_BSPs/Linux_3.0/src/weston'
make: *** [all] Error 2
Joaquim Duran
More information about the wayland-devel
mailing list