diff --git a/Makefile.am b/Makefile.am index 088751e16..cc6a26ea4 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,5 @@ -SUBDIRS = data src po doc +SUBDIRS = cogl clutter data src po doc ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS} diff --git a/clutter/clutter/Makefile.am b/clutter/clutter/Makefile.am index 76ecfba64..ff4022c77 100644 --- a/clutter/clutter/Makefile.am +++ b/clutter/clutter/Makefile.am @@ -24,6 +24,8 @@ AM_CPPFLAGS = \ -I$(top_srcdir)/clutter/cally \ -I$(top_builddir) \ -I$(top_builddir)/clutter \ + -I$(top_srcdir)/../cogl \ + -I$(top_builddir)/../cogl \ $(CLUTTER_DEPRECATED_CFLAGS) \ $(CLUTTER_DEBUG_CFLAGS) \ $(CLUTTER_HIDDEN_VISIBILITY_CFLAGS) \ @@ -562,7 +564,13 @@ clutter_deprecated_HEADERS = $(deprecated_h) mutterlibdir = $(libdir)/mutter mutterlib_LTLIBRARIES = libmutter-clutter-@CLUTTER_API_VERSION@.la -libmutter_clutter_@CLUTTER_API_VERSION@_la_LIBADD = $(LIBM) $(CLUTTER_LIBS) +libmutter_clutter_@CLUTTER_API_VERSION@_la_LIBADD = \ + $(LIBM) \ + $(CLUTTER_LIBS) \ + $(top_builddir)/../cogl/cogl/libmutter-cogl.la \ + $(top_builddir)/../cogl/cogl-pango/libmutter-cogl-pango.la \ + $(top_builddir)/../cogl/cogl-path/libmutter-cogl-path.la \ + $(NULL) libmutter_clutter_@CLUTTER_API_VERSION@_la_SOURCES = \ $(backend_source_c) \ @@ -615,6 +623,9 @@ install-exec-local: # gobject-introspection rules -include $(INTROSPECTION_MAKEFILE) +INTROSPECTION_SCANNER_ARGS = --add-include-path=$(top_builddir)/../cogl/cogl --add-include-path=$(top_builddir)/../cogl/cogl-pango +INTROSPECTION_COMPILER_ARGS = --includedir=$(top_builddir)/../cogl/cogl --includedir=$(top_builddir)/../cogl/cogl-pango + Clutter-@CLUTTER_API_VERSION@.gir: libmutter-clutter-@CLUTTER_API_VERSION@.la Makefile Clutter_@CLUTTER_API_VERSION_AM@_gir_NAMESPACE = Clutter diff --git a/clutter/clutter/mutter-clutter.pc.in b/clutter/clutter/mutter-clutter.pc.in index 245bea766..c3e31a552 100644 --- a/clutter/clutter/mutter-clutter.pc.in +++ b/clutter/clutter/mutter-clutter.pc.in @@ -4,7 +4,7 @@ libdir=@libdir@/mutter includedir=@includedir@/mutter apiversion=@CLUTTER_API_VERSION@ -requires=@CLUTTER_REQUIRES@ +requires=@CLUTTER_REQUIRES@ mutter-cogl-1.0 requires_private=@CLUTTER_REQUIRES_PRIVATE@ backends=@CLUTTER_BACKENDS@ diff --git a/clutter/clutter/x11/clutter-x11-texture-pixmap.c b/clutter/clutter/x11/clutter-x11-texture-pixmap.c index 119fd4693..1fe92f385 100644 --- a/clutter/clutter/x11/clutter-x11-texture-pixmap.c +++ b/clutter/clutter/x11/clutter-x11-texture-pixmap.c @@ -56,7 +56,7 @@ #include -#include +#include #include diff --git a/clutter/configure.ac b/clutter/configure.ac index 4ddc28d71..c57324c5d 100644 --- a/clutter/configure.ac +++ b/clutter/configure.ac @@ -192,7 +192,7 @@ CLUTTER_INPUT_BACKENDS="" CLUTTER_CONFIG_DEFINES= # base dependencies for core -CLUTTER_BASE_PC_FILES="cogl-1.0 >= $COGL_REQ_VERSION cogl-path-1.0 cairo-gobject >= $CAIRO_REQ_VERSION gio-2.0 >= glib_req_version atk >= $ATK_REQ_VERSION pangocairo >= $PANGO_REQ_VERSION cogl-pango-1.0 json-glib-1.0 >= $JSON_GLIB_REQ_VERSION" +CLUTTER_BASE_PC_FILES="cairo-gobject >= $CAIRO_REQ_VERSION gio-2.0 >= glib_req_version atk >= $ATK_REQ_VERSION pangocairo >= $PANGO_REQ_VERSION json-glib-1.0 >= $JSON_GLIB_REQ_VERSION" # private base dependencies CLUTTER_BASE_PC_FILES_PRIVATE="" diff --git a/clutter/tests/accessibility/Makefile.am b/clutter/tests/accessibility/Makefile.am index 783e2dd80..f3531db94 100644 --- a/clutter/tests/accessibility/Makefile.am +++ b/clutter/tests/accessibility/Makefile.am @@ -9,6 +9,8 @@ AM_CPPFLAGS = \ -DPREFIXDIR=\"$(libdir)\" \ -DCLUTTER_DISABLE_DEPRECATION_WARNINGS \ -DGLIB_DISABLE_DEPRECATION_WARNINGS \ + -I$(top_srcdir)/../cogl \ + -I$(top_builddir)/../cogl \ -I$(top_srcdir) \ -I$(top_builddir) \ -I$(top_srcdir)/clutter \ diff --git a/clutter/tests/conform/Makefile.am b/clutter/tests/conform/Makefile.am index 0524d0146..61069b063 100644 --- a/clutter/tests/conform/Makefile.am +++ b/clutter/tests/conform/Makefile.am @@ -5,6 +5,8 @@ LDADD = $(top_builddir)/clutter/libmutter-clutter-1.0.la $(CLUTTER_LIBS) $(LIBM) AM_LDFLAGS = -export-dynamic AM_CPPFLAGS = \ -DG_LOG_DOMAIN=\"Clutter-Conform\" \ + -I$(top_srcdir)/../cogl \ + -I$(top_builddir)/../cogl \ -I$(top_srcdir) \ -I$(top_builddir) \ -DCOGL_DISABLE_DEPRECATION_WARNINGS \ diff --git a/clutter/tests/interactive/Makefile.am b/clutter/tests/interactive/Makefile.am index b204e6a4b..03c5c94c0 100644 --- a/clutter/tests/interactive/Makefile.am +++ b/clutter/tests/interactive/Makefile.am @@ -126,6 +126,8 @@ test_interactive_CPPFLAGS = \ -DGLIB_DISABLE_DEPRECATION_WARNINGS \ -DCOGL_DISABLE_DEPRECATION_WARNINGS \ -DCLUTTER_DISABLE_DEPRECATION_WARNINGS \ + -I$(top_srcdir)/../cogl \ + -I$(top_builddir)/../cogl \ -I$(top_srcdir) \ -I$(top_builddir) \ -I$(top_srcdir)/clutter \ diff --git a/clutter/tests/micro-bench/Makefile.am b/clutter/tests/micro-bench/Makefile.am index a981dd677..9060c383d 100644 --- a/clutter/tests/micro-bench/Makefile.am +++ b/clutter/tests/micro-bench/Makefile.am @@ -15,6 +15,8 @@ AM_CPPFLAGS = \ -DCOGL_DISABLE_DEPRECATION_WARNINGS \ -DCLUTTER_DISABLE_DEPRECATION_WARNINGS \ -DTESTS_DATA_DIR=\""$(top_srcdir)/tests/data/"\" \ + -I$(top_srcdir)/../cogl \ + -I$(top_builddir)/../cogl \ -I$(top_srcdir) \ -I$(top_builddir) \ -I$(top_srcdir)/clutter \ diff --git a/clutter/tests/performance/Makefile.am b/clutter/tests/performance/Makefile.am index 5948a5007..22579590c 100644 --- a/clutter/tests/performance/Makefile.am +++ b/clutter/tests/performance/Makefile.am @@ -19,6 +19,8 @@ AM_CPPFLAGS = \ -DCOGL_DISABLE_DEPRECATION_WARNINGS \ -DCLUTTER_DISABLE_DEPRECATION_WARNINGS \ -DTESTS_DATA_DIR=\""$(top_srcdir)/tests/data/"\" \ + -I$(top_srcdir)/../cogl \ + -I$(top_builddir)/../cogl \ -I$(top_srcdir) \ -I$(top_builddir) \ -I$(top_srcdir)/clutter \ diff --git a/cogl/configure.ac b/cogl/configure.ac index 1ec4dbf10..1a447e7ed 100644 --- a/cogl/configure.ac +++ b/cogl/configure.ac @@ -657,7 +657,7 @@ AC_ARG_ENABLE( [kms-egl-platform], [AC_HELP_STRING([--enable-kms-egl-platform=@<:@no/yes@:>@], [Enable support for the KMS egl platform @<:@default=no@:>@])], [], - enable_kms_egl_platform=no + enable_kms_egl_platform=yes ) AS_IF([test "x$enable_kms_egl_platform" = "xyes"], [ @@ -690,7 +690,7 @@ AC_ARG_ENABLE( [wayland-egl-server], [AC_HELP_STRING([--enable-wayland-egl-server=@<:@no/yes@:>@], [Enable server side wayland support @<:@default=no@:>@])], [], - enable_wayland_egl_server=no + enable_wayland_egl_server=yes ) AS_IF([test "x$enable_wayland_egl_server" = "xyes"], [ @@ -711,10 +711,7 @@ AC_ARG_ENABLE( [xlib-egl-platform], [AC_HELP_STRING([--enable-xlib-egl-platform=@<:@no/yes@:>@], [Enable support for the Xlib egl platform @<:@default=auto@:>@])], [], - AS_IF([test "x$enable_gles1" = "xyes" -o \ - "x$enable_gles2" = "xyes" && \ - test $EGL_PLATFORM_COUNT -eq 0], - [enable_xlib_egl_platform=yes], [enable_xlib_egl_platform=no]) + enable_xlib_egl_platform=yes ) AS_IF([test "x$enable_xlib_egl_platform" = "xyes"], [ diff --git a/configure.ac b/configure.ac index 24fd64926..07dc3e9bc 100644 --- a/configure.ac +++ b/configure.ac @@ -16,6 +16,7 @@ AC_CONFIG_MACRO_DIR([m4]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_SRCDIR(src/core/display.c) AC_CONFIG_HEADERS(config.h) +AC_CONFIG_SUBDIRS([cogl clutter]) AM_INIT_AUTOMAKE([1.11 foreign no-dist-gzip dist-xz tar-ustar subdir-objects]) m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],) @@ -56,16 +57,13 @@ AM_PATH_GLIB_2_0() CANBERRA_GTK=libcanberra-gtk3 CANBERRA_GTK_VERSION=0.26 -CLUTTER_PACKAGE=clutter-1.0 - MUTTER_PC_MODULES=" gtk+-3.0 >= 3.19.8 gio-unix-2.0 >= 2.35.1 pango >= 1.2.0 cairo >= 1.10.0 gsettings-desktop-schemas >= 3.19.3 - $CLUTTER_PACKAGE >= 1.25.6 - cogl-1.0 >= 1.17.1 + json-glib-1.0 upower-glib >= 0.99.0 gnome-desktop-3.0 xcomposite >= 0.2 @@ -189,7 +187,7 @@ AC_SUBST(XWAYLAND_PATH) PKG_CHECK_MODULES(MUTTER, $MUTTER_PC_MODULES) -MUTTER_NATIVE_BACKEND_MODULES="clutter-egl-1.0 libdrm libsystemd libinput gudev-1.0 gbm >= 10.3" +MUTTER_NATIVE_BACKEND_MODULES="libdrm libsystemd libinput gudev-1.0 gbm >= 10.3" AC_ARG_ENABLE(native-backend, AS_HELP_STRING([--disable-native-backend], [disable mutter native (KMS) backend]),, @@ -204,7 +202,7 @@ AS_IF([test "$have_native_backend" = "yes"], [ ]) AM_CONDITIONAL([HAVE_NATIVE_BACKEND],[test "$have_native_backend" = "yes"]) -MUTTER_WAYLAND_MODULES="clutter-wayland-1.0 clutter-wayland-compositor-1.0 wayland-server >= 1.6.90" +MUTTER_WAYLAND_MODULES="wayland-server >= 1.6.90" AC_ARG_ENABLE(wayland, AS_HELP_STRING([--disable-wayland], [disable mutter on wayland support]),, @@ -230,10 +228,6 @@ AM_CONDITIONAL([HAVE_WAYLAND],[test "$have_wayland" = "yes"]) PKG_CHECK_EXISTS([xi >= 1.6.99.1], AC_DEFINE([HAVE_XI23],[1],[Define if you have support for XInput 2.3 or greater])) -# This is used for plugins -AC_SUBST(CLUTTER_PACKAGE) -PKG_CHECK_MODULES(CLUTTER, $CLUTTER_PACKAGE) - AC_PATH_XTRA ALL_X_LIBS="$X_LIBS $X_PRE_LIBS -lX11 $X_EXTRA_LIBS" diff --git a/src/Makefile.am b/src/Makefile.am index f0d99dea1..8f6a781f1 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -23,6 +23,11 @@ AM_CPPFLAGS = \ -I$(srcdir)/core \ -I$(srcdir)/ui \ -I$(srcdir)/compositor \ + -I$(top_srcdir)/cogl \ + -I$(top_builddir)/cogl \ + -I$(top_srcdir)/clutter \ + -I$(top_builddir)/clutter \ + -I$(top_builddir)/clutter/clutter \ -DMUTTER_LIBEXECDIR=\"$(libexecdir)\" \ -DMUTTER_LOCALEDIR=\"$(localedir)\" \ -DMUTTER_PKGDATADIR=\"$(pkgdatadir)\" \ @@ -325,7 +330,11 @@ endif nodist_libmutter_la_SOURCES = $(mutter_built_sources) libmutter_la_LDFLAGS = -no-undefined -export-symbols-regex "^(meta|ag)_.*" -libmutter_la_LIBADD = $(MUTTER_LIBS) $(MUTTER_NATIVE_BACKEND_LIBS) +libmutter_la_LIBADD = \ + $(MUTTER_LIBS) \ + $(MUTTER_NATIVE_BACKEND_LIBS) \ + $(top_builddir)/clutter/clutter/libmutter-clutter-1.0.la \ + $(NULL) # Headers installed for plugins; introspected information will # be extracted into Mutter-.gir @@ -410,6 +419,8 @@ typelibdir = $(pkglibdir) typelib_DATA = Meta-$(api_version).typelib INTROSPECTION_GIRS = Meta-$(api_version).gir +INTROSPECTION_SCANNER_ARGS = --add-include-path=$(top_builddir)/clutter/clutter --add-include-path=$(top_builddir)/cogl/cogl --add-include-path=$(top_builddir)/cogl/cogl-pango +INTROSPECTION_COMPILER_ARGS = --includedir=$(top_builddir)/clutter/clutter --includedir=$(top_builddir)/cogl/cogl --includedir=$(top_builddir)/cogl/cogl-pango Meta-$(api_version).gir: libmutter.la @META_GIR@_INCLUDES = GObject-2.0 GDesktopEnums-3.0 Gdk-3.0 Gtk-3.0 Clutter-1.0 xlib-2.0 xfixes-4.0 Cogl-1.0 diff --git a/src/compositor/meta-surface-actor-x11.c b/src/compositor/meta-surface-actor-x11.c index bdc90a9a4..b8090a58b 100644 --- a/src/compositor/meta-surface-actor-x11.c +++ b/src/compositor/meta-surface-actor-x11.c @@ -28,7 +28,7 @@ #include "meta-surface-actor-x11.h" #include -#include +#include #include #include "window-private.h" diff --git a/src/compositor/meta-window-actor.c b/src/compositor/meta-window-actor.c index 3dbf72478..1d4c29f59 100644 --- a/src/compositor/meta-window-actor.c +++ b/src/compositor/meta-window-actor.c @@ -11,7 +11,7 @@ #include #include -#include +#include #include /* for gdk_rectangle_union() */ #include diff --git a/src/compositor/plugins/Makefile.am b/src/compositor/plugins/Makefile.am index 38988d036..f3e2d575d 100644 --- a/src/compositor/plugins/Makefile.am +++ b/src/compositor/plugins/Makefile.am @@ -5,6 +5,11 @@ AM_CPPFLAGS = \ $(MUTTER_CFLAGS) \ -I$(top_builddir)/src \ -I$(top_srcdir)/src \ + -I$(top_srcdir)/cogl \ + -I$(top_builddir)/cogl \ + -I$(top_srcdir)/clutter \ + -I$(top_builddir)/clutter \ + -I$(top_builddir)/clutter/clutter \ -DMUTTER_LIBEXECDIR=\"$(libexecdir)\" \ -DMUTTER_LOCALEDIR=\"$(localedir)\" \ -DMUTTER_PKGDATADIR=\"$(pkgdatadir)\" \ diff --git a/src/libmutter.pc.in b/src/libmutter.pc.in index 3fea36d51..002f5f301 100644 --- a/src/libmutter.pc.in +++ b/src/libmutter.pc.in @@ -7,7 +7,7 @@ typelibdir=@libdir@/mutter Name: libmutter Description: Mutter window manager library -Requires: gsettings-desktop-schemas gtk+-3.0 @CLUTTER_PACKAGE@ x11 +Requires: gsettings-desktop-schemas gtk+-3.0 mutter-clutter-1.0 x11 Version: @VERSION@ Libs: -L${libdir} -lmutter Cflags: -I${includedir}/mutter