configure.ac: Don't link weston to cairo or image libraries

We were pulling in cairo and the image loading libraries through libshared.
Split out libshared into a core libshared and a libshared-cairo that
pulls in the extra libraries.
dev
Kristian Høgsberg 12 years ago
parent 0ea7333392
commit 6006ecb497
  1. 2
      clients/Makefile.am
  2. 13
      configure.ac
  3. 27
      shared/Makefile.am
  4. 5
      shared/cairo-util.h
  5. 5
      shared/config-parser.h
  6. 2
      src/Makefile.am
  7. 2
      src/xwayland/Makefile.am

@ -89,7 +89,7 @@ libtoytoolkit_a_SOURCES = \
toolkit_libs = \ toolkit_libs = \
libtoytoolkit.a \ libtoytoolkit.a \
../shared/libshared.la \ ../shared/libshared-cairo.la \
$(CLIENT_LIBS) $(CAIRO_EGL_LIBS) -lrt -lm $(CLIENT_LIBS) $(CAIRO_EGL_LIBS) -lrt -lm
flower_SOURCES = flower.c flower_SOURCES = flower.c

@ -164,19 +164,13 @@ AS_IF([test "x$have_webp" = "xyes"],
AC_CHECK_LIB([jpeg], [jpeg_CreateDecompress], have_jpeglib=yes) AC_CHECK_LIB([jpeg], [jpeg_CreateDecompress], have_jpeglib=yes)
if test x$have_jpeglib = xyes; then if test x$have_jpeglib = xyes; then
IMAGE_LIBS="$IMAGE_LIBS -ljpeg" JPEG_LIBS="-ljpeg"
else else
AC_ERROR([libjpeg not found]) AC_ERROR([libjpeg not found])
fi fi
AC_SUBST(JPEG_LIBS)
PKG_CHECK_MODULES(CAIRO, [cairo]) PKG_CHECK_MODULES(CAIRO, [cairo])
SHARED_LIBS="$CAIRO_LIBS $PIXMAN_LIBS $PNG_LIBS $WEBP_LIBS $IMAGE_LIBS"
SHARED_CFLAGS="$CAIRO_CFLAGS $PIXMAN_CFLAGS $PNG_CFLAGS $WEBP_CFLAGS"
AC_SUBST(SHARED_LIBS)
AC_SUBST(SHARED_CFLAGS)
COMPOSITOR_LIBS="$COMPOSITOR_LIBS $IMAGE_LIBS"
COMPOSITOR_CFLAGS="$COMPOSITOR_CFLAGS $IMAGE_CFLAGS"
AC_ARG_ENABLE(simple-clients, AC_ARG_ENABLE(simple-clients,
AS_HELP_STRING([--disable-simple-clients], AS_HELP_STRING([--disable-simple-clients],
@ -205,9 +199,6 @@ if test x$enable_clients = xyes; then
PKG_CHECK_MODULES(CLIENT, [wayland-client cairo >= 1.10.0 xkbcommon wayland-cursor]) PKG_CHECK_MODULES(CLIENT, [wayland-client cairo >= 1.10.0 xkbcommon wayland-cursor])
PKG_CHECK_MODULES(WESTON_INFO, [wayland-client]) PKG_CHECK_MODULES(WESTON_INFO, [wayland-client])
CLIENT_CFLAGS="$CLIENT_CFLAGS $IMAGE_CFLAGS"
CLIENT_LIBS="$CLIENT_LIBS $IMAGE_LIBS"
PKG_CHECK_MODULES(POPPLER, [poppler-glib glib-2.0 gobject-2.0 gio-2.0 ], PKG_CHECK_MODULES(POPPLER, [poppler-glib glib-2.0 gobject-2.0 gio-2.0 ],
[have_poppler=yes], [have_poppler=no]) [have_poppler=yes], [have_poppler=no])
PKG_CHECK_MODULES(CAIRO_EGL, [wayland-egl egl >= 7.10 cairo-egl >= 1.11.3 $cairo_modules], PKG_CHECK_MODULES(CAIRO_EGL, [wayland-egl egl >= 7.10 cairo-egl >= 1.11.3 $cairo_modules],

@ -1,15 +1,30 @@
noinst_LTLIBRARIES = libshared.la noinst_LTLIBRARIES = libshared.la libshared-cairo.la
libshared_la_LIBADD = $(SHARED_LIBS) libshared_la_CFLAGS = $(GCC_CFLAGS)
AM_CPPFLAGS = $(SHARED_CFLAGS)
AM_CFLAGS = $(GCC_CFLAGS)
libshared_la_SOURCES = \ libshared_la_SOURCES = \
config-parser.c \ config-parser.c \
option-parser.c \ option-parser.c \
image-loader.c \
config-parser.h \ config-parser.h \
os-compatibility.c \ os-compatibility.c \
os-compatibility.h \ os-compatibility.h
libshared_cairo_la_CFLAGS = \
$(GCC_CFLAGS) \
$(PIXMAN_CFLAGS) \
$(CAIRO_CFLAGS) \
$(PNG_CFLAGS) \
$(WEBP_CFLAGS)
libshared_cairo_la_LIBADD = \
$(PIXMAN_LIBS) \
$(CAIRO_LIBS) \
$(PNG_LIBS) \
$(WEBP_LIBS) \
$(JPEG_LIBS)
libshared_cairo_la_SOURCES = \
$(libshared_la_SOURCES) \
image-loader.c \
cairo-util.c \ cairo-util.c \
cairo-util.h cairo-util.h

@ -23,6 +23,8 @@
#ifndef _CAIRO_UTIL_H #ifndef _CAIRO_UTIL_H
#define _CAIRO_UTIL_H #define _CAIRO_UTIL_H
#include <pixman.h>
void void
surface_flush_device(cairo_surface_t *surface); surface_flush_device(cairo_surface_t *surface);
@ -87,4 +89,7 @@ enum theme_location {
enum theme_location enum theme_location
theme_get_location(struct theme *t, int x, int y, int width, int height, int flags); theme_get_location(struct theme *t, int x, int y, int width, int height, int flags);
pixman_image_t *
load_image(const char *filename);
#endif #endif

@ -23,8 +23,6 @@
#ifndef CONFIGPARSER_H #ifndef CONFIGPARSER_H
#define CONFIGPARSER_H #define CONFIGPARSER_H
#include <pixman.h>
enum config_key_type { enum config_key_type {
CONFIG_KEY_INTEGER, /* typeof data = int */ CONFIG_KEY_INTEGER, /* typeof data = int */
CONFIG_KEY_UNSIGNED_INTEGER, /* typeof data = unsigned int */ CONFIG_KEY_UNSIGNED_INTEGER, /* typeof data = unsigned int */
@ -71,8 +69,5 @@ int
parse_options(const struct weston_option *options, parse_options(const struct weston_option *options,
int count, int argc, char *argv[]); int count, int argc, char *argv[]);
pixman_image_t *
load_image(const char *filename);
#endif /* CONFIGPARSER_H */ #endif /* CONFIGPARSER_H */

@ -126,7 +126,7 @@ if ENABLE_WAYLAND_COMPOSITOR
wayland_backend = wayland-backend.la wayland_backend = wayland-backend.la
wayland_backend_la_LDFLAGS = -module -avoid-version wayland_backend_la_LDFLAGS = -module -avoid-version
wayland_backend_la_LIBADD = $(COMPOSITOR_LIBS) $(WAYLAND_COMPOSITOR_LIBS) \ wayland_backend_la_LIBADD = $(COMPOSITOR_LIBS) $(WAYLAND_COMPOSITOR_LIBS) \
../shared/libshared.la ../shared/libshared-cairo.la
wayland_backend_la_CFLAGS = \ wayland_backend_la_CFLAGS = \
$(COMPOSITOR_CFLAGS) \ $(COMPOSITOR_CFLAGS) \
$(WAYLAND_COMPOSITOR_CFLAGS) \ $(WAYLAND_COMPOSITOR_CFLAGS) \

@ -11,7 +11,7 @@ xwayland = xwayland.la
xwayland_la_LDFLAGS = -module -avoid-version xwayland_la_LDFLAGS = -module -avoid-version
xwayland_la_LIBADD = \ xwayland_la_LIBADD = \
$(XWAYLAND_LIBS) \ $(XWAYLAND_LIBS) \
$(top_builddir)/shared/libshared.la $(top_builddir)/shared/libshared-cairo.la
xwayland_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS) xwayland_la_CFLAGS = $(GCC_CFLAGS) $(COMPOSITOR_CFLAGS)
xwayland_la_SOURCES = \ xwayland_la_SOURCES = \
xwayland.h \ xwayland.h \

Loading…
Cancel
Save