[clutter-gtkmm] Adopt new mm-common build infrastructure



commit 59fa53a621f003024975677e663c64f944029eea
Author: Daniel Elstner <daniel kitta gmail com>
Date:   Sat Oct 3 23:26:45 2009 +0200

    Adopt new mm-common build infrastructure
    
    * build/: Rename directory from scripts/ and delete the obsolete
    M4 macros and build files.
    * codegen/: Rename directory from tools/.
    * codegen/extradefs/: Rename from tools/extra_defs_gen/.
    * codegen/extradefs/generate_extra_defs_clutter_gtk.cc: Rename from
    tools/extra_defs_gen/generate_defs_clutter_gtk to match the name of
    the executable.
    * doc/: Rename directory from docs/.
    * build_shared/: Delete obsolete build support files.
    * autogen.sh: Replace with minimal script based on autoreconf.
    * configure.ac: Rename from configure.in and rewrite for mm-common.
    Depend on the cluttermm-1.0 module.
    * Makefile.am, doc/Makefile.am, examples/Makefile.am,
    clutter-gtk/src/Makefile.am, clutter-gtk/clutter-gtkmm/Makefile.am:
    Replace with mm-common skeleton build files, with adaptions.
    * codegen/Makefile.am: Replace with skeleton file adapted for
    clutter-gtkmm.
    * codegen/m4/filelist.am, clutter-gtk/src/filelist.am,
    clutter-gtk/clutter-gtkmm/filelist.am: New Automake include files
    listing the clutter-gtkmm source files.
    * codegen/m4/convert_clutter_gtk.m4: Rename file from
    tools/m4/convert_clutter-gtkmm.m4.
    * codegen/m4/convert.m4: Include M4 files by their new name.
    * clutter-gtk/Makefile.am, examples/Makefile.am_fragment,
    clutter-gtk/src/Makefile_list_of_hg.am_fragment,
    clutter-gtk/clutter-gtkmm/private/Makefile.am,
    docs/Makefile_web.am_fragment, docs/reference/Makefile.am,
    tools/Makefile_list_of_sources.am_fragment, tools/m4/Makefile.am,
    tools/m4/Makefile_list_of_sources.am_fragment,
    tools/extra_defs_gen/Makefile.am: Delete obsolete files.
    * clutter-gtk/clutter-gtkmm.pc.in: Merge the modernized skeleton
    pkg-config file from mm-common.
    * clutter-gtk/clutter-gtkmm-uninstalled.pc.in: New pkg-config data
    file for linking to an uninstalled build of clutter-gtkmm.
    * clutter/clutter-gtkmmconfig.h.in: Rename file from
    clutter/clutter-gtkmm-config.h.in for consistency.
    * clutter/clutter-gtkmm.h: Include clutter-gtkmmconfig.h.  Remove
    extern declarations of the runtime version number components as they
    don't appear to be defined anywhere.
    * clutter-gtk/clutter-gtkmm/init.cc: Remove clutter-gtkmm-config.h
    include.
    * examples/events/event.cc (Event::on_hand_button_press): Remove
    unused parameter name.
    * doc/reference/Doxyfile.in: Replace file with mm-common skeleton
    Doxygen configuration, adapted for clutter-gtkmm.
    * clutter-gtk/README, docs/reference/README, tools/m4/README: Delete
    useless or empty text files.

 .gitignore                                         |   56 +++---
 ChangeLog                                          |   52 +++++
 INSTALL                                            |  182 ----------------
 Makefile.am                                        |   59 ++++--
 autogen.sh                                         |   64 +-----
 build/.gitignore                                   |   13 ++
 build_shared/Makefile_build.am_fragment            |   42 ----
 build_shared/Makefile_build_gensrc.am_fragment     |   26 ---
 build_shared/Makefile_gensrc.am_fragment           |   71 ------
 clutter-gtk/Makefile.am                            |   17 --
 clutter-gtk/README                                 |    6 -
 clutter-gtk/clutter-gtkmm-config.h.in              |   13 --
 clutter-gtk/clutter-gtkmm-uninstalled.pc.in        |   10 +
 clutter-gtk/clutter-gtkmm.h                        |   12 +-
 clutter-gtk/clutter-gtkmm.pc.in                    |   18 ++-
 clutter-gtk/clutter-gtkmm/.gitignore               |    8 +
 clutter-gtk/clutter-gtkmm/Makefile.am              |   43 +++--
 clutter-gtk/clutter-gtkmm/filelist.am              |    9 +
 clutter-gtk/clutter-gtkmm/init.cc                  |    1 -
 clutter-gtk/clutter-gtkmm/private/Makefile.am      |   12 -
 clutter-gtk/clutter-gtkmmconfig.h.in               |   10 +
 clutter-gtk/src/Makefile.am                        |   37 ++--
 clutter-gtk/src/Makefile_list_of_hg.am_fragment    |    7 -
 clutter-gtk/src/filelist.am                        |   13 ++
 codegen/Makefile.am                                |   33 +++
 .../extradefs/generate_extra_defs_clutter_gtk.cc   |    2 +-
 codegen/m4/convert.m4                              |    7 +
 .../m4/convert_clutter_gtk.m4                      |    0
 codegen/m4/filelist.am                             |    3 +
 configure.ac                                       |   74 +++++++
 configure.in                                       |  125 -----------
 doc/Makefile.am                                    |   26 +++
 {docs => doc}/reference/Doxyfile.in                |  226 ++++++++++++--------
 docs/Makefile.am                                   |    7 -
 docs/Makefile_web.am_fragment                      |   16 --
 docs/reference/Makefile.am                         |   25 ---
 docs/reference/README                              |    6 -
 examples/Makefile.am                               |   30 +++-
 examples/Makefile.am_fragment                      |   11 -
 examples/events/Makefile.am                        |    6 -
 examples/events/event.cc                           |    2 +-
 scripts/Makefile.am                                |    3 -
 scripts/depcomp                                    |    1 -
 scripts/macros.m4                                  |   65 ------
 tools/Makefile.am                                  |    7 -
 tools/Makefile_list_of_sources.am_fragment         |    4 -
 tools/extra_defs_gen/Makefile.am                   |   10 -
 tools/m4/Makefile.am                               |    9 -
 tools/m4/Makefile_list_of_sources.am_fragment      |    1 -
 tools/m4/README                                    |    4 -
 tools/m4/convert.m4                                |    6 -
 51 files changed, 561 insertions(+), 929 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index d312771..4525952 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,31 +1,27 @@
-Makefile.in
+.deps/
+.dirstamp
+.libs/
 Makefile
-*.o
-*.l[oa]
-*_p.h
-.deps
-.libs
-.stamps
-
-aclocal.m4
-autom4te.cache/
-clutter-gtk/clutter-gtkmm-0.9.pc
-clutter-gtk/clutter-gtkmm-config.h
-clutter-gtk/clutter-gtkmm/embed.*
-clutter-gtk/clutter-gtkmm/viewport.*
-clutter-gtk/clutter-gtkmm/wrap_init.cc
-clutter-gtk/stamp-h1
-config.log
-config.status
-configure
-docs/reference/Doxyfile
-docs/reference/html/
-examples/events/events
-libtool
-scripts/config.guess
-scripts/config.sub
-scripts/install-sh
-scripts/ltmain.sh
-scripts/missing
-tools/extra_defs_gen/generate_extra_defs_clutter_gtk
-
+Makefile.in
+stamp-h?
+*.[ao]
+*.l[ao]
+/INSTALL
+/aclocal.m4
+/autom4te.cache/
+/config*.lineno
+/config.log
+/config.status
+/configure
+/clutter-gtkmm-*.tar.*
+/libtool
+/codegen/extradefs/generate_extra_defs
+/clutter-gtk/clutter-gtkmmconfig.h
+/clutter-gtk/clutter-gtkmm*.pc
+/clutter-gtk/src/.stamps/
+/doc/reference/Doxyfile
+/doc/reference/doxygen.log
+/doc/reference/clutter-gtkmm-*.devhelp2
+/doc/reference/clutter-gtkmm-*.tag
+/doc/reference/html/
+/examples/events/events
diff --git a/ChangeLog b/ChangeLog
index 18701cd..7a399e6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,55 @@
+2009-10-03  Daniel Elstner  <daniel kitta gmail com>
+
+	Adopt new mm-common build infrastructure
+
+	* build/: Rename directory from scripts/ and delete the obsolete
+	M4 macros and build files.
+	* codegen/: Rename directory from tools/.
+	* codegen/extradefs/: Rename from tools/extra_defs_gen/.
+	* codegen/extradefs/generate_extra_defs_clutter_gtk.cc: Rename from
+	tools/extra_defs_gen/generate_defs_clutter_gtk to match the name of
+	the executable.
+	* doc/: Rename directory from docs/.
+	* build_shared/: Delete obsolete build support files.
+	* autogen.sh: Replace with minimal script based on autoreconf.
+	* configure.ac: Rename from configure.in and rewrite for mm-common.
+	Depend on the cluttermm-1.0 module.
+	* Makefile.am, doc/Makefile.am, examples/Makefile.am,
+	clutter-gtk/src/Makefile.am, clutter-gtk/clutter-gtkmm/Makefile.am:
+	Replace with mm-common skeleton build files, with adaptions.
+	* codegen/Makefile.am: Replace with skeleton file adapted for
+	clutter-gtkmm.
+	* codegen/m4/filelist.am, clutter-gtk/src/filelist.am,
+	clutter-gtk/clutter-gtkmm/filelist.am: New Automake include files
+	listing the clutter-gtkmm source files.
+	* codegen/m4/convert_clutter_gtk.m4: Rename file from
+	tools/m4/convert_clutter-gtkmm.m4.
+	* codegen/m4/convert.m4: Include M4 files by their new name.
+	* clutter-gtk/Makefile.am, examples/Makefile.am_fragment,
+	clutter-gtk/src/Makefile_list_of_hg.am_fragment,
+	clutter-gtk/clutter-gtkmm/private/Makefile.am,
+	docs/Makefile_web.am_fragment, docs/reference/Makefile.am,
+	tools/Makefile_list_of_sources.am_fragment, tools/m4/Makefile.am,
+	tools/m4/Makefile_list_of_sources.am_fragment,
+	tools/extra_defs_gen/Makefile.am: Delete obsolete files.
+	* clutter-gtk/clutter-gtkmm.pc.in: Merge the modernized skeleton
+	pkg-config file from mm-common.
+	* clutter-gtk/clutter-gtkmm-uninstalled.pc.in: New pkg-config data
+	file for linking to an uninstalled build of clutter-gtkmm.
+	* clutter/clutter-gtkmmconfig.h.in: Rename file from
+	clutter/clutter-gtkmm-config.h.in for consistency.
+	* clutter/clutter-gtkmm.h: Include clutter-gtkmmconfig.h.  Remove
+	extern declarations of the runtime version number components as they
+	don't appear to be defined anywhere.
+	* clutter-gtk/clutter-gtkmm/init.cc: Remove clutter-gtkmm-config.h
+	include.
+	* examples/events/event.cc (Event::on_hand_button_press): Remove
+	unused parameter name.
+	* doc/reference/Doxyfile.in: Replace file with mm-common skeleton
+	Doxygen configuration, adapted for clutter-gtkmm.
+	* clutter-gtk/README, docs/reference/README, tools/m4/README: Delete
+	useless or empty text files.
+
 2009-08-26  Murray Cumming  <murrayc murrayc com>
 
 	Use clutter-gtk-0.10.
diff --git a/Makefile.am b/Makefile.am
index 7256e69..026503a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,24 +1,45 @@
-SUBDIRS		= tools clutter-gtk docs examples
-DIST_SUBDIRS	= $(SUBDIRS) scripts
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-EXTRA_DIST	=  \
-		  build_shared/Makefile_build.am_fragment \
-		  build_shared/Makefile_build_gensrc.am_fragment \
-		  build_shared/Makefile_gensrc.am_fragment
+ACLOCAL_AMFLAGS = -I build ${ACLOCAL_FLAGS}
+DISTCHECK_CONFIGURE_FLAGS = --enable-warnings=fatal
 
+if MAINTAINER_MODE
+src_subdirs = codegen clutter-gtk/src
+else
+src_subdirs =
+endif
+if ENABLE_DOCUMENTATION
+doc_subdirs = doc
+else
+doc_subdirs =
+endif
+SUBDIRS = $(src_subdirs) clutter-gtk/clutter-gtkmm examples $(doc_subdirs)
 
-all-local:
-	@echo "*** Everything completed ***"
+clutter_gtkmm_includedir = $(includedir)/$(CLUTTER_GTKMM_MODULE_NAME)
+clutter_gtkmm_include_HEADERS = clutter-gtk/clutter-gtkmm.h
 
-dist-hook:
-	@echo; echo; \
-	echo "**********************************************************"; \
-	echo "* IMPORTANT NOTICE:                                      *"; \
-	echo "*                                                        *"; \
-	echo "* Be sure you have done a complete build before running  *"; \
-	echo "* 'make dist' or 'make distcheck', because otherwise     *"; \
-	echo "* the tarball will _not_ contain the dependency rules    *"; \
-	echo "* generated by the compiler.                             *"; \
-	echo "**********************************************************"; \
-	echo; echo
+clutter_gtkmm_libincludedir = $(libdir)/$(CLUTTER_GTKMM_MODULE_NAME)/include
+nodist_clutter_gtkmm_libinclude_HEADERS = clutter-gtk/clutter-gtkmmconfig.h
 
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = clutter-gtk/$(CLUTTER_GTKMM_MODULE_NAME).pc
+
+dist_noinst_SCRIPTS = autogen.sh
+
+# Optional: auto-generate the ChangeLog file from the git log on make dist
+#include $(top_srcdir)/build/dist-changelog.am
diff --git a/autogen.sh b/autogen.sh
index 2864b83..6686611 100755
--- a/autogen.sh
+++ b/autogen.sh
@@ -1,59 +1,7 @@
-#!/bin/sh
-MAKE=`which gnumake`
-if test ! -x "$MAKE" ; then MAKE=`which gmake` ; fi
-if test ! -x "$MAKE" ; then MAKE=`which make` ; fi
-HAVE_GNU_MAKE=`$MAKE --version|grep -c "Free Software Foundation"`
-
-if test "$HAVE_GNU_MAKE" != "1"; then 
-echo !!!! ERROR: You need GNU make to build from cvs!; 
-echo !!!! $MAKE is not GNU make;
-exit 1; 
-fi
-
-echo Found GNU Make at $MAKE ... good.
-
-srcdir=`dirname $0`
-test -z "$srcdir" && srcdir=.
-
-PKG_NAME="clutter-gtkmm"
-
-(test -f $srcdir/configure.in \
-  && test -d $srcdir/clutter-gtk/src \
-  && test -d $srcdir/clutter-gtk/clutter-gtkmm) || {
-    echo -n "**Error**: Directory "\`$srcdir\'" does not look like the"
-    echo " top-level $PKG_NAME directory"
-    exit 1
-}
-
-
-
-echo "Adding libtools."
-libtoolize --automake
-
-echo "Building macros."
-aclocal -I scripts $ACLOCAL_FLAGS
-
-#echo "Building config header."
-#autoheader
-
-echo "Building makefiles."
-automake   --add-missing || exit 1
-
-echo "Building configure."
-autoconf
-
-rm -f config.cache
-
-if test -z "$AUTOGEN_SUBDIR_MODE"; then
-
-    echo "Running configure."
-    ./configure --enable-maintainer-mode "$@"
-    echo
-    echo 'run "make"'
-    echo
-else
-    echo
-    echo 'run "./configure ; make"'
-    echo
-fi
+#! /bin/sh -e
+test -n "$srcdir" || srcdir=`dirname "$0"`
+test -n "$srcdir" || srcdir=.
 
+mm-common-prepare --copy --force "$srcdir"
+autoreconf --force --install --verbose "$srcdir"
+test -n "$NOCONFIGURE" || "$srcdir/configure" --enable-maintainer-mode "$@"
diff --git a/build/.gitignore b/build/.gitignore
new file mode 100644
index 0000000..0590391
--- /dev/null
+++ b/build/.gitignore
@@ -0,0 +1,13 @@
+/compile
+/compile-binding.am
+/config.*
+/depcomp
+/dist-changelog.am
+/doc-reference.am
+/generate-binding.am
+/install-sh
+/libtool.m4
+/lt*.m4
+/ltmain.sh
+/missing
+/stamp-h?
diff --git a/clutter-gtk/clutter-gtkmm-uninstalled.pc.in b/clutter-gtk/clutter-gtkmm-uninstalled.pc.in
new file mode 100644
index 0000000..8e8b7fd
--- /dev/null
+++ b/clutter-gtk/clutter-gtkmm-uninstalled.pc.in
@@ -0,0 +1,10 @@
+doxytagfile=${pc_top_builddir}/doc/reference/@CLUTTER_GTKMM_MODULE_NAME  tag
+htmlrefpub=http://library.gnome.org/@PACKAGE_TARNAME@/unstable/
+
+Name: clutter-gtkmm
+Description: C++ binding for clutter-gtk, not installed
+Version: @CLUTTER_GTKMM_VERSION@
+URL: http://www.gtkmm.org/
+Requires: @CLUTTER_GTKMM_MODULES@
+Libs: ${pc_top_builddir}/${pcfiledir}/clutter-gtkmm/libclutter-gtkmm- CLUTTER_GTKMM_API_VERSION@.la
+Cflags: -I${pc_top_builddir}/${pcfiledir} -I${pc_top_builddir}/${pcfiledir}/@srcdir@
diff --git a/clutter-gtk/clutter-gtkmm.h b/clutter-gtk/clutter-gtkmm.h
index 52ae2bd..27b0940 100644
--- a/clutter-gtk/clutter-gtkmm.h
+++ b/clutter-gtk/clutter-gtkmm.h
@@ -20,15 +20,11 @@
 #ifndef LIBCLUTTER_GTKMM_H
 #define LIBCLUTTER_GTKMM_H
 
-/* cluttermm version.  */
-extern const int clutter_gtkmm_major_version;
-extern const int clutter_gtkmm_minor_version;
-extern const int clutter_gtkmm_micro_version;
-
 #include <cluttermm.h>
-#include <clutter-gtkmm/init.h>
+#include <clutter-gtkmmconfig.h>
 #include <clutter-gtkmm/embed.h>
-#include <clutter-gtkmm/viewport.h>
+#include <clutter-gtkmm/init.h>
 #include <clutter-gtkmm/utility.h>
+#include <clutter-gtkmm/viewport.h>
 
-#endif /* #ifndef LIBCLUTTER_GTKMM_H */
+#endif /* !LIBCLUTTER_GTKMM_H */
diff --git a/clutter-gtk/clutter-gtkmm.pc.in b/clutter-gtk/clutter-gtkmm.pc.in
index 830a3fa..9bf781b 100644
--- a/clutter-gtk/clutter-gtkmm.pc.in
+++ b/clutter-gtk/clutter-gtkmm.pc.in
@@ -1,11 +1,19 @@
 prefix= prefix@
 exec_prefix= exec_prefix@
 libdir= libdir@
+datarootdir= datarootdir@
+datadir= datadir@
 includedir= includedir@
 
+docdir=${datarootdir}/doc/@CLUTTER_GTKMM_MODULE_NAME@
+doxytagfile=${docdir}/reference/@CLUTTER_GTKMM_MODULE_NAME  tag
+htmlrefdir=${docdir}/reference/html
+htmlrefpub=http://library.gnome.org/@PACKAGE_TARNAME@/unstable/
+
 Name: clutter-gtkmm
-Description: C++ wrapper for clutter
-Requires: clutter-gtk-0.10 cluttermm- API_VER@ gtkmm-2.4
-Version: @VERSION@
-Libs: -L${libdir} -lclutter-gtkmm- API_VER@
-Cflags: -I${includedir}/clutter-gtkmm- API_VER@
+Description: C++ binding for clutter-gtk
+Version: @CLUTTER_GTKMM_VERSION@
+URL: http://www.gtkmm.org/
+Requires: @CLUTTER_GTKMM_MODULES@
+Libs: -L${libdir} -lclutter-gtkmm- CLUTTER_GTKMM_API_VERSION@
+Cflags: -I${includedir}/@CLUTTER_GTKMM_MODULE_NAME@ -I${libdir}/@CLUTTER_GTKMM_MODULE_NAME@/include
diff --git a/clutter-gtk/clutter-gtkmm/.gitignore b/clutter-gtk/clutter-gtkmm/.gitignore
new file mode 100644
index 0000000..e8566b0
--- /dev/null
+++ b/clutter-gtk/clutter-gtkmm/.gitignore
@@ -0,0 +1,8 @@
+/*.cc
+!/init.cc
+!/utility.cc
+/*.h
+!/init.h
+!/utility.h
+!/wrap_init.h
+/private/*_p.h
diff --git a/clutter-gtk/clutter-gtkmm/Makefile.am b/clutter-gtk/clutter-gtkmm/Makefile.am
index f4057f2..b1092b2 100644
--- a/clutter-gtk/clutter-gtkmm/Makefile.am
+++ b/clutter-gtk/clutter-gtkmm/Makefile.am
@@ -1,22 +1,31 @@
-## Copyright (c) 2008
-## The cluttermm development team.
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-SUBDIRS = private
+lib_LTLIBRARIES = libclutter-gtkmm- CLUTTER_GTKMM_API_VERSION@.la
 
-sublib_name = clutter-gtkmm
-sublib_libname = clutter-gtkmm-$(API_VER)
-sublib_libversion = $(CLUTTER_GTKMM_SO_VERSION)
-sublib_namespace = Clutter
-sublib_cflags = $(CLUTTER_GTKMM_CFLAGS)
-sublib_topdir = clutter-gtk
+include $(srcdir)/../src/filelist.am
+include $(srcdir)/filelist.am
+include $(top_srcdir)/build/compile-binding.am
 
-files_extra_h = wrap_init.h init.h utility.h
-files_extra_cc = init.cc utility.cc
+local_cppflags = $(binding_includes) $(binding_cppflags) -DCLUTTER_GTKMM_BUILD=1
 
-include $(top_srcdir)/build_shared/Makefile_build_gensrc.am_fragment
-
-lib_LTLIBRARIES = libclutter-gtkmm- API_VER@.la
-libclutter_gtkmm_ API_VER@_la_SOURCES = $(files_all_cc)
-libclutter_gtkmm_ API_VER@_la_LDFLAGS = $(common_ldflags)
-libclutter_gtkmm_ API_VER@_la_LIBADD = $(CLUTTER_GTKMM_LIBS)
+AM_CPPFLAGS = $(local_cppflags) $(CLUTTER_GTKMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTER_GTKMM_WXXFLAGS)
 
+libclutter_gtkmm_ CLUTTER_GTKMM_API_VERSION@_la_SOURCES = $(binding_sources)
+libclutter_gtkmm_ CLUTTER_GTKMM_API_VERSION@_la_LDFLAGS = -no-undefined -version-info $(CLUTTER_GTKMM_SO_VERSION)
+libclutter_gtkmm_ CLUTTER_GTKMM_API_VERSION@_la_LIBADD  = $(CLUTTER_GTKMM_LIBS)
diff --git a/clutter-gtk/clutter-gtkmm/filelist.am b/clutter-gtk/clutter-gtkmm/filelist.am
new file mode 100644
index 0000000..be66ad6
--- /dev/null
+++ b/clutter-gtk/clutter-gtkmm/filelist.am
@@ -0,0 +1,9 @@
+## This file is part of clutter-gtkmm.
+
+files_built_cc = $(files_hg:.hg=.cc) wrap_init.cc
+files_built_h  = $(files_hg:.hg=.h)
+files_built_ph = $(patsubst %.hg,private/%_p.h,$(files_hg))
+
+files_extra_cc = init.cc utility.cc
+files_extra_h  = init.h utility.h wrap_init.h
+files_extra_ph =
diff --git a/clutter-gtk/clutter-gtkmm/init.cc b/clutter-gtk/clutter-gtkmm/init.cc
index c39b089..a1fa61b 100644
--- a/clutter-gtk/clutter-gtkmm/init.cc
+++ b/clutter-gtk/clutter-gtkmm/init.cc
@@ -17,7 +17,6 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
-#include <clutter-gtkmm-config.h> //For LIBCLUTTERMM_VERSION
 #include <clutter-gtkmm/wrap_init.h>
 #include <cluttermm/init.h>
 
diff --git a/clutter-gtk/clutter-gtkmmconfig.h.in b/clutter-gtk/clutter-gtkmmconfig.h.in
new file mode 100644
index 0000000..31ded92
--- /dev/null
+++ b/clutter-gtk/clutter-gtkmmconfig.h.in
@@ -0,0 +1,10 @@
+/* This file is part of clutter-gtkmm. */
+
+/* Major version number of clutter-gtkmm. */
+#undef CLUTTER_GTKMM_MAJOR_VERSION
+
+/* Micro version number of clutter-gtkmm. */
+#undef CLUTTER_GTKMM_MICRO_VERSION
+
+/* Minor version number of clutter-gtkmm. */
+#undef CLUTTER_GTKMM_MINOR_VERSION
diff --git a/clutter-gtk/src/Makefile.am b/clutter-gtk/src/Makefile.am
index cb93748..1c964c8 100644
--- a/clutter-gtk/src/Makefile.am
+++ b/clutter-gtk/src/Makefile.am
@@ -1,17 +1,24 @@
-## Copyright (c) 2001
-## The cluttermm development team.
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-sublib_name	= clutter-gtkmm
-#nested namespaces separated with spaces
-sublib_namespace = Clutter Gtk
-sublib_parentdir = clutter-gtkmm
-files_defs	= clutter-gtk.defs \
-			  clutter-gtk_methods.defs \
-			  clutter-gtk_signals.defs \
-			  clutter-gtk_enums.defs \
-			  clutter-gtk_vfuncs.defs \
-			  clutter-gtk_others.defs \
-				clutter-gtk_docs.xml
-
-include $(top_srcdir)/build_shared/Makefile_gensrc.am_fragment
+binding_name    = clutter-gtkmm
+wrap_init_flags = --namespace=Clutter --namespace=Gtk --parent_dir=clutter-gtkmm
+gmmproc_flags   = -I $(top_srcdir)/codegen/m4 -I "$(CLUTTERMM_GMMPROC_DIR)/m4" --defs $(srcdir)
 
+include $(srcdir)/filelist.am
+include $(top_srcdir)/codegen/m4/filelist.am
+include $(top_srcdir)/build/generate-binding.am
diff --git a/clutter-gtk/src/filelist.am b/clutter-gtk/src/filelist.am
new file mode 100644
index 0000000..ce505ad
--- /dev/null
+++ b/clutter-gtk/src/filelist.am
@@ -0,0 +1,13 @@
+## This file is part of clutter-gtkmm.
+
+files_defs =				\
+	clutter-gtk.defs		\
+	clutter-gtk_enums.defs		\
+	clutter-gtk_methods.defs	\
+	clutter-gtk_others.defs		\
+	clutter-gtk_signals.defs	\
+	clutter-gtk_vfuncs.defs		\
+	clutter-gtk_docs.xml
+
+files_hg  = embed.hg viewport.hg
+files_ccg = $(files_hg:.hg=.ccg)
diff --git a/codegen/Makefile.am b/codegen/Makefile.am
new file mode 100644
index 0000000..16069ae
--- /dev/null
+++ b/codegen/Makefile.am
@@ -0,0 +1,33 @@
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+AUTOMAKE_OPTIONS = subdir-objects
+
+include $(srcdir)/m4/filelist.am
+
+dist_noinst_DATA = $(addprefix m4/,$(files_codegen_m4))
+noinst_PROGRAMS  = extradefs/generate_extra_defs
+
+extradefs_generate_extra_defs_SOURCES = extradefs/generate_extra_defs_clutter_gtk.cc
+extradefs_generate_extra_defs_LDADD   = $(CLUTTER_GTKMM_LIBS) -lglibmm_generate_extra_defs-2.4
+
+AM_CPPFLAGS = -I$(top_builddir) $(CLUTTER_GTKMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTER_GTKMM_WXXFLAGS)
+
+# Instruct GNU make to delete the targets of a rule after it failed, in
+# order to avoid the complication of handling that situation manually.
+.DELETE_ON_ERROR:
diff --git a/tools/extra_defs_gen/generate_defs_clutter_gtk.cc b/codegen/extradefs/generate_extra_defs_clutter_gtk.cc
similarity index 94%
rename from tools/extra_defs_gen/generate_defs_clutter_gtk.cc
rename to codegen/extradefs/generate_extra_defs_clutter_gtk.cc
index 94ba20a..2c1264a 100644
--- a/tools/extra_defs_gen/generate_defs_clutter_gtk.cc
+++ b/codegen/extradefs/generate_extra_defs_clutter_gtk.cc
@@ -15,7 +15,7 @@
  * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  */
 
-#include "glibmm_generate_extra_defs/generate_extra_defs.h"
+#include <glibmm_generate_extra_defs/generate_extra_defs.h>
 #include <clutter/clutter.h>
 #include <clutter-gtk/clutter-gtk.h>
 #include <iostream>
diff --git a/codegen/m4/convert.m4 b/codegen/m4/convert.m4
new file mode 100644
index 0000000..5c61584
--- /dev/null
+++ b/codegen/m4/convert.m4
@@ -0,0 +1,7 @@
+dnl Include gmmproc type conversion definitions:
+m4_include(`convert_base.m4')
+m4_include(`convert_glib.m4')
+m4_include(`convert_cairo.m4')
+m4_include(`convert_cogl.m4')
+m4_include(`convert_clutter.m4')
+m4_include(`convert_clutter_gtk.m4')
diff --git a/tools/m4/convert_clutter-gtkmm.m4 b/codegen/m4/convert_clutter_gtk.m4
similarity index 100%
rename from tools/m4/convert_clutter-gtkmm.m4
rename to codegen/m4/convert_clutter_gtk.m4
diff --git a/codegen/m4/filelist.am b/codegen/m4/filelist.am
new file mode 100644
index 0000000..08d03ac
--- /dev/null
+++ b/codegen/m4/filelist.am
@@ -0,0 +1,3 @@
+## This file is part of clutter-gtkmm.
+
+files_codegen_m4 = convert.m4 convert_clutter_gtk.m4
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..a53b642
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,74 @@
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+AC_INIT([clutter-gtkmm], [0.9.4],
+        [http://bugzilla.gnome.org/enter_bug.cgi?product=cluttermm],
+        [clutter-gtkmm], [http://www.gtkmm.org/])
+AC_PREREQ([2.59])
+
+AC_CONFIG_SRCDIR([clutter-gtk/clutter-gtkmm.h])
+AC_CONFIG_AUX_DIR([build])
+AC_CONFIG_MACRO_DIR([build])
+AC_CONFIG_HEADERS([build/config.h clutter-gtk/clutter-gtkmmconfig.h])
+
+AM_INIT_AUTOMAKE([1.9 -Wno-portability check-news dist-bzip2 no-define nostdinc tar-pax])
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
+AM_MAINTAINER_MODE
+AC_ARG_VAR([ACLOCAL_FLAGS], [aclocal flags, e.g. -I <macro dir>])
+
+MM_PREREQ([0.8])
+MM_INIT_MODULE([clutter-gtkmm-1.0])
+
+# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
+AC_SUBST([CLUTTER_GTKMM_SO_VERSION], [0:0:0])
+
+AC_PROG_CXX
+AC_DISABLE_STATIC
+AC_LIBTOOL_WIN32_DLL
+AC_PROG_LIBTOOL
+
+AC_SUBST([CLUTTER_GTKMM_MODULES], ['clutter-gtk-0.90 >= 0.90 cluttermm-1.0 >= 0.9 gtkmm-2.4 >= 2.18'])
+PKG_CHECK_MODULES([CLUTTER_GTKMM], [$CLUTTER_GTKMM_MODULES])
+
+MM_PKG_CONFIG_SUBST([GMMPROC_DIR], [--variable=gmmprocdir glibmm-2.4])
+MM_PKG_CONFIG_SUBST([CLUTTERMM_GMMPROC_DIR], [--variable=gmmprocdir cluttermm-1.0])
+
+MM_ARG_ENABLE_DOCUMENTATION
+MM_ARG_WITH_TAGFILE_DOC([libstdc++.tag], [mm-common-libstdc++])
+MM_ARG_WITH_TAGFILE_DOC([libsigc++-2.0.tag], [sigc++-2.0])
+MM_ARG_WITH_TAGFILE_DOC([glibmm-2.4.tag], [glibmm-2.4])
+MM_ARG_WITH_TAGFILE_DOC([cairomm-1.0.tag], [cairomm-1.0])
+MM_ARG_WITH_TAGFILE_DOC([pangomm-1.4.tag], [pangomm-1.4])
+MM_ARG_WITH_TAGFILE_DOC([gtkmm-2.4.tag], [gtkmm-2.4])
+MM_ARG_WITH_TAGFILE_DOC([cluttermm-1.0.tag], [cluttermm-1.0])
+
+AC_LANG([C++])
+MM_ARG_ENABLE_WARNINGS([CLUTTER_GTKMM_WXXFLAGS],
+                       [-Wall],
+                       [-Wall -Wextra],
+                       [G PANGO])
+
+AC_CONFIG_FILES([Makefile
+                 codegen/Makefile
+                 clutter-gtk/${CLUTTER_GTKMM_MODULE_NAME}.pc:clutter-gtk/clutter-gtkmm.pc.in
+                 clutter-gtk/${CLUTTER_GTKMM_MODULE_NAME}-uninstalled.pc:clutter-gtk/clutter-gtkmm-uninstalled.pc.in
+                 clutter-gtk/src/Makefile
+                 clutter-gtk/clutter-gtkmm/Makefile
+                 examples/Makefile
+                 doc/Makefile
+                 doc/reference/Doxyfile])
+AC_OUTPUT
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..0aa09c2
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,26 @@
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+include $(top_srcdir)/clutter-gtk/src/filelist.am
+include $(top_srcdir)/clutter-gtk/clutter-gtkmm/filelist.am
+
+clutter_gtkmm_files_h = $(files_built_h) $(filter-out wrap_init.h,$(files_extra_h))
+
+book_name = $(CLUTTER_GTKMM_MODULE_NAME)
+doc_input = $(addprefix $(top_srcdir)/clutter-gtk/clutter-gtkmm/,$(clutter_gtkmm_files_h))
+
+include $(top_srcdir)/build/doc-reference.am
diff --git a/docs/reference/Doxyfile.in b/doc/reference/Doxyfile.in
similarity index 57%
rename from docs/reference/Doxyfile.in
rename to doc/reference/Doxyfile.in
index 57a0baf..075fa13 100644
--- a/docs/reference/Doxyfile.in
+++ b/doc/reference/Doxyfile.in
@@ -1,67 +1,85 @@
-# Doxyfile 1.5.3
+# Doxyfile 1.6.1
+# @configure_input@
 
 #---------------------------------------------------------------------------
 # Project related configuration options
 #---------------------------------------------------------------------------
 DOXYFILE_ENCODING      = UTF-8
-PROJECT_NAME           = clutter-gtkmm
-PROJECT_NUMBER         = @CLUTTER_GTKMM_VERSION@
-OUTPUT_DIRECTORY       = 
+PROJECT_NAME           = @PACKAGE_NAME@
+PROJECT_NUMBER         = @PACKAGE_VERSION@
+OUTPUT_DIRECTORY       = reference
 CREATE_SUBDIRS         = NO
 OUTPUT_LANGUAGE        = English
 BRIEF_MEMBER_DESC      = YES
 REPEAT_BRIEF           = YES
-ABBREVIATE_BRIEF       = 
+ABBREVIATE_BRIEF       =
 ALWAYS_DETAILED_SEC    = NO
 INLINE_INHERITED_MEMB  = NO
-FULL_PATH_NAMES        = NO
-STRIP_FROM_PATH        = 
-STRIP_FROM_INC_PATH    = 
+FULL_PATH_NAMES        = YES
+STRIP_FROM_PATH        = "@abs_top_builddir@/clutter-gtk/" \
+                         "@abs_top_srcdir@/clutter-gtk/" \
+                         "@abs_top_builddir@/" \
+                         "@abs_top_srcdir@/"
+STRIP_FROM_INC_PATH    = "@abs_top_builddir@/clutter-gtk/" \
+                         "@abs_top_srcdir@/clutter-gtk/" \
+                         "@abs_top_builddir@/" \
+                         "@abs_top_srcdir@/"
 SHORT_NAMES            = NO
 JAVADOC_AUTOBRIEF      = YES
 QT_AUTOBRIEF           = NO
 MULTILINE_CPP_IS_BRIEF = NO
-DETAILS_AT_TOP         = NO
 INHERIT_DOCS           = YES
 SEPARATE_MEMBER_PAGES  = NO
 TAB_SIZE               = 8
-ALIASES                = 
+ALIASES                = "newin{2}=\xrefitem since_\1_\2 \"Since @PACKAGE_NAME@ \1.\2\" \"New API in @PACKAGE_NAME@ \1.\2\""
 OPTIMIZE_OUTPUT_FOR_C  = NO
 OPTIMIZE_OUTPUT_JAVA   = NO
-BUILTIN_STL_SUPPORT    = YES
+OPTIMIZE_FOR_FORTRAN   = NO
+OPTIMIZE_OUTPUT_VHDL   = NO
+EXTENSION_MAPPING      =
+BUILTIN_STL_SUPPORT    = NO
 CPP_CLI_SUPPORT        = NO
+SIP_SUPPORT            = NO
+IDL_PROPERTY_SUPPORT   = YES
 DISTRIBUTE_GROUP_DOC   = NO
 SUBGROUPING            = YES
+TYPEDEF_HIDES_STRUCT   = NO
+SYMBOL_CACHE_SIZE      = 0
 #---------------------------------------------------------------------------
 # Build related configuration options
 #---------------------------------------------------------------------------
 EXTRACT_ALL            = YES
 EXTRACT_PRIVATE        = NO
-EXTRACT_STATIC         = YES
-EXTRACT_LOCAL_CLASSES  = YES
+EXTRACT_STATIC         = NO
+EXTRACT_LOCAL_CLASSES  = NO
 EXTRACT_LOCAL_METHODS  = NO
 EXTRACT_ANON_NSPACES   = NO
-HIDE_UNDOC_MEMBERS     = NO
-HIDE_UNDOC_CLASSES     = NO
-HIDE_FRIEND_COMPOUNDS  = NO
-HIDE_IN_BODY_DOCS      = NO
+HIDE_UNDOC_MEMBERS     = YES
+HIDE_UNDOC_CLASSES     = YES
+HIDE_FRIEND_COMPOUNDS  = YES
+HIDE_IN_BODY_DOCS      = YES
 INTERNAL_DOCS          = NO
 CASE_SENSE_NAMES       = YES
 HIDE_SCOPE_NAMES       = NO
-SHOW_INCLUDE_FILES     = YES
+SHOW_INCLUDE_FILES     = NO
 INLINE_INFO            = YES
 SORT_MEMBER_DOCS       = YES
 SORT_BRIEF_DOCS        = NO
-SORT_BY_SCOPE_NAME     = NO
-GENERATE_TODOLIST      = YES
-GENERATE_TESTLIST      = YES
-GENERATE_BUGLIST       = YES
+SORT_MEMBERS_CTORS_1ST = YES
+SORT_GROUP_NAMES       = YES
+SORT_BY_SCOPE_NAME     = YES
+GENERATE_TODOLIST      = NO
+GENERATE_TESTLIST      = NO
+GENERATE_BUGLIST       = NO
 GENERATE_DEPRECATEDLIST= YES
-ENABLED_SECTIONS       = 
-MAX_INITIALIZER_LINES  = 30
+ENABLED_SECTIONS       =
+MAX_INITIALIZER_LINES  = 2
 SHOW_USED_FILES        = YES
-SHOW_DIRECTORIES       = YES
-FILE_VERSION_FILTER    = 
+SHOW_DIRECTORIES       = NO
+SHOW_FILES             = NO
+SHOW_NAMESPACES        = YES
+FILE_VERSION_FILTER    =
+LAYOUT_FILE            =
 #---------------------------------------------------------------------------
 # configuration options related to warning and progress messages
 #---------------------------------------------------------------------------
@@ -70,25 +88,34 @@ WARNINGS               = YES
 WARN_IF_UNDOCUMENTED   = YES
 WARN_IF_DOC_ERROR      = YES
 WARN_NO_PARAMDOC       = NO
-WARN_FORMAT            = "$file:$line: $text "
-WARN_LOGFILE           = 
+WARN_FORMAT            = "$file:$line: $text"
+WARN_LOGFILE           = reference/doxygen.log
 #---------------------------------------------------------------------------
 # configuration options related to the input files
 #---------------------------------------------------------------------------
-INPUT                  = @top_builddir@/clutter-gtk/clutter-gtkmm
+INPUT                  =
 INPUT_ENCODING         = UTF-8
-FILE_PATTERNS          = *.h
+FILE_PATTERNS          =
 RECURSIVE              = NO
-EXCLUDE                = 
+EXCLUDE                =
 EXCLUDE_SYMLINKS       = NO
-EXCLUDE_PATTERNS       = 
-EXCLUDE_SYMBOLS        = 
-EXAMPLE_PATH           = 
-EXAMPLE_PATTERNS       = 
-EXAMPLE_RECURSIVE      = NO
-IMAGE_PATH             = 
-INPUT_FILTER           = 
-FILTER_PATTERNS        = 
+EXCLUDE_PATTERNS       =
+EXCLUDE_SYMBOLS        = _* \
+                         adaptor_trait \
+                         basic_filebuf \
+                         basic_streambuf \
+                         binary_function \
+                         char_traits \
+                         internal \
+                         pair \
+                         unary_function
+EXAMPLE_PATH           = "@abs_top_srcdir@/examples"
+EXAMPLE_PATTERNS       = *.cc \
+                         *.h
+EXAMPLE_RECURSIVE      = YES
+IMAGE_PATH             =
+INPUT_FILTER           =
+FILTER_PATTERNS        =
 FILTER_SOURCE_FILES    = NO
 #---------------------------------------------------------------------------
 # configuration options related to source browsing
@@ -96,38 +123,53 @@ FILTER_SOURCE_FILES    = NO
 SOURCE_BROWSER         = NO
 INLINE_SOURCES         = NO
 STRIP_CODE_COMMENTS    = YES
-REFERENCED_BY_RELATION = YES
-REFERENCES_RELATION    = YES
+REFERENCED_BY_RELATION = NO
+REFERENCES_RELATION    = NO
 REFERENCES_LINK_SOURCE = YES
 USE_HTAGS              = NO
-VERBATIM_HEADERS       = YES
+VERBATIM_HEADERS       = NO
 #---------------------------------------------------------------------------
 # configuration options related to the alphabetical class index
 #---------------------------------------------------------------------------
-ALPHABETICAL_INDEX     = YES
+ALPHABETICAL_INDEX     = NO
 COLS_IN_ALPHA_INDEX    = 5
-IGNORE_PREFIX          = 
+IGNORE_PREFIX          =
 #---------------------------------------------------------------------------
 # configuration options related to the HTML output
 #---------------------------------------------------------------------------
 GENERATE_HTML          = YES
 HTML_OUTPUT            = html
 HTML_FILE_EXTENSION    = .html
-HTML_HEADER            = 
-HTML_FOOTER            = 
-HTML_STYLESHEET        = 
+HTML_HEADER            =
+HTML_FOOTER            =
+HTML_STYLESHEET        = "@MMDOCTOOLDIR@/doxygen.css"
 HTML_ALIGN_MEMBERS     = YES
-GENERATE_HTMLHELP      = NO
 HTML_DYNAMIC_SECTIONS  = NO
-CHM_FILE               = 
-HHC_LOCATION           = 
+GENERATE_DOCSET        = NO
+DOCSET_FEEDNAME        = "Doxygen generated docs"
+DOCSET_BUNDLE_ID       = org.doxygen.Project
+GENERATE_HTMLHELP      = NO
+CHM_FILE               =
+HHC_LOCATION           =
 GENERATE_CHI           = NO
+CHM_INDEX_ENCODING     =
 BINARY_TOC             = NO
 TOC_EXPAND             = NO
+GENERATE_QHP           = NO
+QCH_FILE               =
+QHP_NAMESPACE          =
+QHP_VIRTUAL_FOLDER     = doc
+QHP_CUST_FILTER_NAME   =
+QHP_CUST_FILTER_ATTRS  =
+QHP_SECT_FILTER_ATTRS  =
+QHG_LOCATION           =
 DISABLE_INDEX          = NO
-ENUM_VALUES_PER_LINE   = 4
-GENERATE_TREEVIEW      = NO
+ENUM_VALUES_PER_LINE   = 1
+GENERATE_TREEVIEW      = NONE
+USE_INLINE_TREES       = NO
 TREEVIEW_WIDTH         = 250
+FORMULA_FONTSIZE       = 10
+SEARCHENGINE           = NO
 #---------------------------------------------------------------------------
 # configuration options related to the LaTeX output
 #---------------------------------------------------------------------------
@@ -137,12 +179,13 @@ LATEX_CMD_NAME         = latex
 MAKEINDEX_CMD_NAME     = makeindex
 COMPACT_LATEX          = NO
 PAPER_TYPE             = a4wide
-EXTRA_PACKAGES         = 
-LATEX_HEADER           = 
-PDF_HYPERLINKS         = NO
-USE_PDFLATEX           = NO
+EXTRA_PACKAGES         =
+LATEX_HEADER           =
+PDF_HYPERLINKS         = YES
+USE_PDFLATEX           = YES
 LATEX_BATCHMODE        = NO
 LATEX_HIDE_INDICES     = NO
+LATEX_SOURCE_CODE      = NO
 #---------------------------------------------------------------------------
 # configuration options related to the RTF output
 #---------------------------------------------------------------------------
@@ -150,8 +193,8 @@ GENERATE_RTF           = NO
 RTF_OUTPUT             = rtf
 COMPACT_RTF            = NO
 RTF_HYPERLINKS         = NO
-RTF_STYLESHEET_FILE    = 
-RTF_EXTENSIONS_FILE    = 
+RTF_STYLESHEET_FILE    =
+RTF_EXTENSIONS_FILE    =
 #---------------------------------------------------------------------------
 # configuration options related to the man page output
 #---------------------------------------------------------------------------
@@ -164,9 +207,9 @@ MAN_LINKS              = NO
 #---------------------------------------------------------------------------
 GENERATE_XML           = NO
 XML_OUTPUT             = xml
-XML_SCHEMA             = 
-XML_DTD                = 
-XML_PROGRAMLISTING     = YES
+XML_SCHEMA             =
+XML_DTD                =
+XML_PROGRAMLISTING     = NO
 #---------------------------------------------------------------------------
 # configuration options for the AutoGen Definitions output
 #---------------------------------------------------------------------------
@@ -177,59 +220,64 @@ GENERATE_AUTOGEN_DEF   = NO
 GENERATE_PERLMOD       = NO
 PERLMOD_LATEX          = NO
 PERLMOD_PRETTY         = YES
-PERLMOD_MAKEVAR_PREFIX = 
+PERLMOD_MAKEVAR_PREFIX =
 #---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
+# Configuration options related to the preprocessor
 #---------------------------------------------------------------------------
 ENABLE_PREPROCESSING   = YES
-MACRO_EXPANSION        = NO
-EXPAND_ONLY_PREDEF     = NO
+MACRO_EXPANSION        = YES
+EXPAND_ONLY_PREDEF     = YES
 SEARCH_INCLUDES        = YES
-INCLUDE_PATH           = 
-INCLUDE_FILE_PATTERNS  = 
-PREDEFINED             = DOXYGEN_SHOULD_SKIP_THIS \
-                         GLIBMM_EXCEPTIONS_ENABLED \
-                         GLIBMM_PROPERTIES_ENABLED \
+INCLUDE_PATH           = "@abs_top_builddir@/clutter-gtk" \
+                         "@abs_top_srcdir@/clutter-gtk"
+INCLUDE_FILE_PATTERNS  = *.h
+PREDEFINED             = __cplusplus \
+                         DOXYGEN_SHOULD_SKIP_THIS \
+                         "G_GNUC_CONST=" \
+                         "CLUTTER_GTKMM_API=" \
                          GLIBMM_VFUNCS_ENABLED \
+                         GLIBMM_PROPERTIES_ENABLED \
+                         GLIBMM_EXCEPTIONS_ENABLED \
                          GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
-EXPAND_AS_DEFINED      = 
+EXPAND_AS_DEFINED      = CLUTTER_GTKMM_MAJOR_VERSION \
+                         CLUTTER_GTKMM_MINOR_VERSION \
+                         CLUTTER_GTKMM_MICRO_VERSION
 SKIP_FUNCTION_MACROS   = YES
 #---------------------------------------------------------------------------
-# Configuration::additions related to external references   
+# Configuration::additions related to external references
 #---------------------------------------------------------------------------
-TAGFILES               = 
-GENERATE_TAGFILE       = 
+TAGFILES               = @DOXYGEN_TAGFILES@
+GENERATE_TAGFILE       = "reference/@CLUTTER_GTKMM_MODULE_NAME  tag"
 ALLEXTERNALS           = NO
-EXTERNAL_GROUPS        = YES
-PERL_PATH              = @PERL_PATH@
+EXTERNAL_GROUPS        = NO
+PERL_PATH              = @PERL@
 #---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
+# Configuration options related to the dot tool
 #---------------------------------------------------------------------------
-CLASS_DIAGRAMS         = YES
-MSCGEN_PATH            = 
+CLASS_DIAGRAMS         = NO
+MSCGEN_PATH            =
 HIDE_UNDOC_RELATIONS   = NO
 HAVE_DOT               = YES
+DOT_FONTNAME           = FreeSans
+DOT_FONTSIZE           = 10
+DOT_FONTPATH           =
 CLASS_GRAPH            = YES
-COLLABORATION_GRAPH    = NO
+COLLABORATION_GRAPH    = YES
 GROUP_GRAPHS           = YES
 UML_LOOK               = NO
-TEMPLATE_RELATIONS     = NO
+TEMPLATE_RELATIONS     = YES
 INCLUDE_GRAPH          = NO
 INCLUDED_BY_GRAPH      = NO
 CALL_GRAPH             = NO
 CALLER_GRAPH           = NO
 GRAPHICAL_HIERARCHY    = YES
-DIRECTORY_GRAPH        = YES
+DIRECTORY_GRAPH        = NO
 DOT_IMAGE_FORMAT       = png
-DOT_PATH               = 
-DOTFILE_DIRS           = 
+DOT_PATH               =
+DOTFILE_DIRS           =
 DOT_GRAPH_MAX_NODES    = 50
 MAX_DOT_GRAPH_DEPTH    = 0
 DOT_TRANSPARENT        = NO
-DOT_MULTI_TARGETS      = NO
+DOT_MULTI_TARGETS      = YES
 GENERATE_LEGEND        = YES
 DOT_CLEANUP            = YES
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine   
-#---------------------------------------------------------------------------
-SEARCHENGINE           = NO
diff --git a/examples/Makefile.am b/examples/Makefile.am
index df160ae..0f8968c 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -1,6 +1,30 @@
-SUBDIRS = events
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of clutter-gtkmm.
+##
+## clutter-gtkmm is free software: you can redistribute it and/or modify it
+## under the terms of the GNU Lesser General Public License as published
+## by the Free Software Foundation, either version 2.1 of the License,
+## or (at your option) any later version.
+##
+## clutter-gtkmm is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+## See the GNU Lesser General Public License for more details.
+##
+## You should have received a copy of the GNU Lesser General Public License
+## along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-include Makefile.am_fragment
+AUTOMAKE_OPTIONS = subdir-objects
 
-EXTRA_DIST = redhand.png
+check_PROGRAMS = events/events
+dist_noinst_DATA = redhand.png
 
+local_includes = -I$(top_builddir)/clutter-gtk $(if $(srcdir:.=),-I$(top_srcdir)/clutter-gtk)
+local_libs = $(top_builddir)/clutter-gtk/clutter-gtkmm/libclutter-gtkmm-$(CLUTTER_GTKMM_API_VERSION).la
+
+AM_CPPFLAGS = -I$(top_builddir) $(local_includes) $(CLUTTER_GTKMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTER_GTKMM_WXXFLAGS)
+LDADD = $(CLUTTER_GTKMM_LIBS) $(local_libs)
+
+events_events_SOURCES = events/event.cc events/event.h events/main.cc
diff --git a/examples/events/event.cc b/examples/events/event.cc
index 914b98f..917eef0 100644
--- a/examples/events/event.cc
+++ b/examples/events/event.cc
@@ -115,7 +115,7 @@ bool Event::on_stage_capture(Clutter::Event* event)
   return false;
 }
 
-bool Event::on_hand_button_press(Clutter::ButtonEvent* event)
+bool Event::on_hand_button_press(Clutter::ButtonEvent*)
 {
   g_print("Button press on hand ('%s')\n", g_type_name(G_OBJECT_TYPE(m_hand->gobj())));
 



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