package/matchbox: forcibly disable support for compositing
authorYann E. MORIN <yann.morin.1998@free.fr>
Wed, 3 Jun 2015 20:41:38 +0000 (22:41 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 9 Jun 2015 21:05:56 +0000 (23:05 +0200)
Building with the experimental support for compositing is broken:

    /home/ymorin/dev/buildroot/O/host/usr/bin/arm-linux-gnueabihf-gcc
    -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
    -Os -o matchbox-window-manager main.o wm.o base_client.o main_client.o
    toolbar_client.o toolbar_client_alt.o dockbar_client.o dialog_client.o
    select_client.o desktop_client.o ewmh.o misc.o client_common.o keys.o
    list.o stack.o composite-engine.o session.o mbtheme.o xml.o
    -lmb -lX11
    -L/home/ymorin/dev/buildroot/O/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
    -lXext -lXcomposite -lXdamage -lXfixes -lXrender
    -L/home/ymorin/dev/buildroot/O/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
    -lX11 -lexpat
    -L/home/ymorin/dev/buildroot/O/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
    -lXfixes
    composite-engine.o: In function `gaussian':
    /home/ymorin/dev/buildroot/O/build/matchbox-1.2/src/composite-engine.c:65:
    undefined reference to `exp'

That's because it forgets to link with -lm.

However, adding "MATCHBOX_CONF_ENV = -lm" does not solve the issue, as
it still does not link with -lm at all.

Furthermore, the package does not autoreconf, since it is missing the
gconf m4 macros, and Buildroot does not have a package for gconf, hence
we can not even patch Makefile.am and autoreconf.

Patching Makefile.in (in addition to .am) could be a solution, but
support for compositing is explicitly marked as being experimental.

So, just forcibly disable it altogether.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/matchbox/Config.in
package/matchbox/matchbox.mk

index 344635cc972efd28b75bb919fc008211a623faf2..d850a39d9d6c575a0f90fbef62740d099d0b2369 100644 (file)
@@ -5,7 +5,6 @@ config BR2_PACKAGE_MATCHBOX
        select BR2_PACKAGE_FONTCONFIG
        select BR2_PACKAGE_EXPAT
        select BR2_PACKAGE_XLIB_LIBXEXT
-       select BR2_PACKAGE_XLIB_LIBXDAMAGE
        select BR2_PACKAGE_XLIB_LIBXCURSOR
        select BR2_PACKAGE_MATCHBOX_LIB
        help
index 0899208c68dabc0413037dc65d474013937a7324..43f6b4b1df57af53afe8ab6a93e2f2bbaf3f1e73 100644 (file)
@@ -11,19 +11,11 @@ MATCHBOX_LICENSE = GPLv2+
 MATCHBOX_LICENSE_FILES = COPYING
 
 MATCHBOX_DEPENDENCIES = matchbox-lib
-MATCHBOX_CONF_OPTS = --enable-expat --disable-gconf
+MATCHBOX_CONF_OPTS = --enable-expat --disable-gconf --disable-composite
 
 # Workaround bug in configure script
 MATCHBOX_CONF_ENV = expat=yes
 
-ifeq ($(BR2_PACKAGE_X11R7_LIBXCOMPOSITE),y)
-ifeq ($(BR2_PACKAGE_X11R7_LIBXPM),y)
-MATCHBOX_CONF_OPTS += --enable-composite
-MATCHBOX_DEPENDENCIES += xlib_libXcomposite
-MATCHBOX_DEPENDENCIES += xlib_libXpm
-endif
-endif
-
 ifeq ($(BR2_PACKAGE_XLIB_LIBXFT),y)
 MATCHBOX_DEPENDENCIES += xlib_libXft
 endif