[mutter/wayland] wayland: make parallel installable with regular mutter



commit ea3d2b4759524345c89fe08ad0c159d7136dbdf1
Author: Giovanni Campagna <gcampagn redhat com>
Date:   Fri Aug 16 14:15:08 2013 +0200

    wayland: make parallel installable with regular mutter
    
    Modify all visible instances of mutter with mutter-wayland
    (libraries, folders, pkgconfig, etc.), so that the wayland
    branch can be installed alongside the usual X11 mutter.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=705497

 .gitignore                                         |    8 ++--
 configure.ac                                       |    8 +++-
 data/Makefile.am                                   |    2 +-
 doc/reference/Makefile.am                          |    2 +-
 src/Makefile.am                                    |   42 ++++++++++----------
 src/libmutter-wayland.pc.in                        |   18 ++++++++
 src/libmutter.pc.in                                |   18 --------
 ...mutter.desktop.in => mutter-wayland.desktop.in} |    7 +--
 8 files changed, 54 insertions(+), 51 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index ec57c27..3630c72 100644
--- a/.gitignore
+++ b/.gitignore
@@ -23,7 +23,7 @@ src/50-mutter-navigation.xml
 src/50-mutter-system.xml
 src/50-mutter-windows.xml
 src/mutter-wm.desktop
-src/mutter.desktop
+src/mutter-wayland.desktop
 *.o
 *.a
 *.lo
@@ -46,10 +46,10 @@ POTFILES
 po/*.pot
 50-metacity-desktop-key.xml
 50-metacity-key.xml
-libmutter.pc
-mutter
+libmutter-wayland.pc
+mutter-wayland
 mutter-theme-viewer
-mutter.desktop
+mutter-wayland.desktop
 org.gnome.mutter.gschema.valid
 org.gnome.mutter.gschema.xml
 testasyncgetprop
diff --git a/configure.ac b/configure.ac
index 92febfb..b227937 100644
--- a/configure.ac
+++ b/configure.ac
@@ -19,6 +19,10 @@ AM_INIT_AUTOMAKE([1.11 foreign no-dist-gzip dist-xz tar-ustar])
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],)
 AM_MAINTAINER_MODE([enable])
 
+# Change pkglibdir and pkgdatadir to mutter-wayland instead of mutter
+PACKAGE="mutter-wayland"
+AC_SUBST([PACKAGE], [$PACKAGE])
+
 MUTTER_MAJOR_VERSION=mutter_major_version
 MUTTER_MINOR_VERSION=mutter_minor_version
 MUTTER_MICRO_VERSION=mutter_micro_version
@@ -34,7 +38,7 @@ AC_SUBST(MUTTER_PLUGIN_DIR)
 # Honor aclocal flags
 AC_SUBST(ACLOCAL_AMFLAGS, "\${ACLOCAL_FLAGS}")
 
-GETTEXT_PACKAGE=mutter
+GETTEXT_PACKAGE=mutter-wayland
 AC_SUBST(GETTEXT_PACKAGE)
 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[Name of default gettext domain])
 
@@ -458,7 +462,7 @@ doc/man/Makefile
 doc/reference/Makefile
 doc/reference/meta-docs.sgml
 src/Makefile
-src/libmutter.pc
+src/libmutter-wayland.pc
 src/compositor/plugins/Makefile
 protocol/Makefile
 data/Makefile
diff --git a/data/Makefile.am b/data/Makefile.am
index 3ad550e..58f5900 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,3 +1,3 @@
-defaultcursordir = $(datadir)/mutter/cursors
+defaultcursordir = $(pkgdatadir)/cursors
 
 dist_defaultcursor_DATA = left_ptr.png
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
index 659eeb4..0776f71 100644
--- a/doc/reference/Makefile.am
+++ b/doc/reference/Makefile.am
@@ -140,7 +140,7 @@ expand_content_files= \
 # e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS)
 # e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib)
 GTKDOC_CFLAGS=$(MUTTER_CFLAGS)
-GTKDOC_LIBS=$(MUTTER_LIBS) $(top_builddir)/src/libmutter.la
+GTKDOC_LIBS=$(MUTTER_LIBS) $(top_builddir)/src/libmutter-wayland.la
 
 # This includes the standard gtk-doc make rules, copied by gtkdocize.
 include $(top_srcdir)/gtk-doc.make
diff --git a/src/Makefile.am b/src/Makefile.am
index 133c411..0dbd778 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -1,7 +1,7 @@
 # Flag build for parallelism; see https://savannah.gnu.org/patch/?6905
 .AUTOPARALLEL:
 
-lib_LTLIBRARIES = libmutter.la
+lib_LTLIBRARIES = libmutter-wayland.la
 
 SUBDIRS=compositor/plugins
 
@@ -10,6 +10,7 @@ INCLUDES=                                                             \
        -DCOGL_ENABLE_EXPERIMENTAL_API                                  \
        -DCOGL_ENABLE_EXPERIMENTAL_2_0_API                              \
        $(MUTTER_CFLAGS)                                                \
+       -I$(top_builddir)                                               \
        -I$(srcdir)                                                     \
        -I$(srcdir)/core                                                \
        -I$(srcdir)/ui                                                  \
@@ -42,7 +43,7 @@ mutter_built_sources = \
        wayland/xserver-server-protocol.h       \
        wayland/xserver-client-protocol.h
 
-libmutter_la_SOURCES =                         \
+libmutter_wayland_la_SOURCES =                 \
        core/async-getprop.c                    \
        core/async-getprop.h                    \
        core/barrier.c                          \
@@ -172,7 +173,7 @@ libmutter_la_SOURCES =                              \
        ui/ui.c                                 \
        $(mutter_built_sources)
 
-libmutter_la_SOURCES +=                                \
+libmutter_wayland_la_SOURCES +=                        \
        wayland/meta-wayland.c                  \
        wayland/meta-wayland-private.h          \
        wayland/meta-xwayland-private.h         \
@@ -188,8 +189,8 @@ libmutter_la_SOURCES +=                             \
        wayland/meta-wayland-stage.h            \
        wayland/meta-wayland-stage.c
 
-libmutter_la_LDFLAGS = -no-undefined
-libmutter_la_LIBADD  = $(MUTTER_LIBS)
+libmutter_wayland_la_LDFLAGS = -no-undefined
+libmutter_wayland_la_LIBADD  = $(MUTTER_LIBS)
 
 # Headers installed for plugins; introspected information will
 # be extracted into Mutter-<version>.gir
@@ -227,16 +228,16 @@ libmutterinclude_base_headers =           \
 libmutterinclude_extra_headers =               \
        meta/atomnames.h
 
-libmutterincludedir = $(includedir)/mutter/meta
+libmutterincludedir = $(includedir)/mutter-wayland/meta
 
 libmutterinclude_HEADERS =                     \
        $(libmutterinclude_base_headers)        \
        $(libmutterinclude_extra_headers)
 
-bin_PROGRAMS=mutter
+bin_PROGRAMS=mutter-wayland
 
-mutter_SOURCES = core/mutter.c
-mutter_LDADD = $(MUTTER_LIBS) libmutter.la
+mutter_wayland_SOURCES = core/mutter.c
+mutter_wayland_LDADD = $(MUTTER_LIBS) libmutter-wayland.la
 
 if HAVE_INTROSPECTION
 include $(INTROSPECTION_MAKEFILE)
@@ -258,15 +259,15 @@ typelib_DATA = Meta-$(api_version).typelib
 
 INTROSPECTION_GIRS = Meta-$(api_version).gir
 
-Meta-$(api_version).gir: libmutter.la
+Meta-$(api_version).gir: libmutter-wayland.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
- META_GIR@_EXPORT_PACKAGES = libmutter
+ META_GIR@_EXPORT_PACKAGES = libmutter-wayland
 @META_GIR _CFLAGS = $(INCLUDES)
- META_GIR@_LIBS = libmutter.la
+ META_GIR@_LIBS = libmutter-wayland.la
 @META_GIR _FILES =                             \
        mutter-enum-types.h                     \
        $(libmutterinclude_base_headers)        \
-       $(filter %.c,$(libmutter_la_SOURCES))
+       $(filter %.c,$(libmutter_wayland_la_SOURCES))
 @META_GIR _SCANNERFLAGS = --warn-all --warn-error
 
 endif
@@ -277,14 +278,14 @@ testasyncgetprop_SOURCES = core/testasyncgetprop.c
 
 noinst_PROGRAMS=testboxes testgradient testasyncgetprop
 
-testboxes_LDADD = $(MUTTER_LIBS) libmutter.la
-testgradient_LDADD = $(MUTTER_LIBS) libmutter.la
-testasyncgetprop_LDADD = $(MUTTER_LIBS) libmutter.la
+testboxes_LDADD = $(MUTTER_LIBS) libmutter-wayland.la
+testgradient_LDADD = $(MUTTER_LIBS) libmutter-wayland.la
+testasyncgetprop_LDADD = $(MUTTER_LIBS) libmutter-wayland.la
 
 @INTLTOOL_DESKTOP_RULE@
 
 desktopfilesdir=$(datadir)/applications
-desktopfiles_in_files=mutter.desktop.in
+desktopfiles_in_files=mutter-wayland.desktop.in
 desktopfiles_files=$(desktopfiles_in_files:.desktop.in=.desktop)
 desktopfiles_DATA = $(desktopfiles_files)
 
@@ -305,7 +306,7 @@ convertdir = $(datadir)/GConf/gsettings
 convert_DATA = mutter-schemas.convert
 
 CLEANFILES =                                   \
-       mutter.desktop                          \
+       mutter-wayland.desktop                  \
        mutter-wm.desktop                       \
        org.gnome.mutter.gschema.xml            \
        $(xml_DATA)                             \
@@ -315,7 +316,7 @@ CLEANFILES =                                        \
 
 pkgconfigdir = $(libdir)/pkgconfig
 
-pkgconfig_DATA = libmutter.pc
+pkgconfig_DATA = libmutter-wayland.pc
 
 EXTRA_DIST=$(desktopfiles_files)       \
        $(wmproperties_files)           \
@@ -325,8 +326,7 @@ EXTRA_DIST=$(desktopfiles_files)    \
        $(xml_in_files)                 \
        org.gnome.mutter.gschema.xml.in \
        mutter-schemas.convert \
-       libmutter.pc.in \
-       mutter-plugins.pc.in  \
+       libmutter-wayland.pc.in \
        mutter-enum-types.h.in \
        mutter-enum-types.c.in
 
diff --git a/src/libmutter-wayland.pc.in b/src/libmutter-wayland.pc.in
new file mode 100644
index 0000000..6537c4f
--- /dev/null
+++ b/src/libmutter-wayland.pc.in
@@ -0,0 +1,18 @@
+prefix= prefix@
+exec_prefix= exec_prefix@
+libdir= libdir@
+includedir= includedir@
+girdir= libdir@/mutter-wayland
+typelibdir= libdir@/mutter-wayland
+
+mutter_major_version= MUTTER_MAJOR_VERSION@
+mutter_minor_version= MUTTER_MINOR_VERSION@
+mutter_micro_version= MUTTER_MICRO_VERSION@
+mutter_plugin_api_version= MUTTER_PLUGIN_API_VERSION@
+
+Name: libmutter-wayland
+Description: Mutter window manager library (Wayland branch)
+Requires: gsettings-desktop-schemas gtk+-3.0 @CLUTTER_PACKAGE@ x11 wayland-server
+Version: @VERSION@
+Libs: -L${libdir} -lmutter-wayland
+Cflags: -I${includedir}/mutter-wayland -DMUTTER_MAJOR_VERSION=${mutter_major_version} 
-DMUTTER_MINOR_VERSION=${mutter_minor_version} -DMUTTER_MICRO_VERSION=${mutter_micro_version} 
-DMUTTER_PLUGIN_API_VERSION=${mutter_plugin_api_version}
diff --git a/src/mutter.desktop.in b/src/mutter-wayland.desktop.in
similarity index 77%
rename from src/mutter.desktop.in
rename to src/mutter-wayland.desktop.in
index 3bfb88d..42c517a 100644
--- a/src/mutter.desktop.in
+++ b/src/mutter-wayland.desktop.in
@@ -1,7 +1,7 @@
 [Desktop Entry]
 Type=Application
-_Name=Mutter
-Exec=mutter
+_Name=Mutter (wayland compositor)
+Exec=mutter-launch -- mutter --nested
 NoDisplay=true
 # name of loadable control center module
 X-GNOME-WMSettingsModule=metacity
@@ -12,6 +12,5 @@ X-GnomeWMSettingsLibrary=metacity
 X-GNOME-Bugzilla-Bugzilla=GNOME
 X-GNOME-Bugzilla-Product=mutter
 X-GNOME-Bugzilla-Component=general
-X-GNOME-Autostart-Phase=WindowManager
-X-GNOME-Provides=windowmanager
+X-GNOME-Autostart-Phase=DisplayServer
 X-GNOME-Autostart-Notify=true


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]