[cluttermm] Adopt new mm-common build infrastructure



commit 1ae7b100bfe58d6823215fd46fdde75f7d8d20b2
Author: Daniel Elstner <danielk openismus com>
Date:   Tue Sep 22 16:05:42 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.cc: Rename from
    tools/extra_defs_gen/generate_defs_clutter 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.
    * Makefile.am, doc/Makefile.am, examples/Makefile.am,
    clutter/src/Makefile.am, clutter/cluttermm/Makefile.am,
    tests/Makefile.am: Replace with mm-common skeleton build files
    adapted for cluttermm.
    * codegen/Makefile.am: Replace with skeleton file adapted for
    cluttermm.  Do not install convert.m4 along with the public macro
    files for gmmproc.
    * codegen/m4/filelist.am, clutter/src/filelist.am,
    clutter/cluttermm/filelist.am: New Automake include files listing
    the cluttermm source files.
    * codegen/m4/convert_cairo.m4: Rename from convert_cairomm.m4.
    * codegen/m4/convert_clutter.m4: Rename from convert_cluttermm.m4.
    * codegen/m4/convert_cogl.m4: Rename from convert_coglmm.m4.
    * codegen/m4/convert.m4: Include M4 files by their new name.
    * clutter/Makefile.am, clutter/src/Makefile_list_of_hg.am_fragment,
    clutter/cluttermm/private/Makefile.am, docs/Makefile_web.am_fragment,
    docs/reference/Makefile.am, examples/Makefile.am_fragment,
    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/cluttermm.pc.in: Merge the modernized skeleton pkg-config
    file from mm-common.
    * clutter/cluttermm-uninstalled.pc.in: New pkg-config data file for
    linking to an uninstalled build of cluttermm.
    * clutter/cluttermmconfig.h.in: Remove all non-namespaced macros,
    leaving only the cluttermm version number components.
    * clutter/cluttermm.h: Clean up a bit and include cluttermmconfig.h.
    Remove extern declarations of the runtime version number components
    as they don't appear to be defined anywhere.
    * doc/reference/Doxyfile.in: Replace file with mm-common skeleton
    Doxygen configuration, adapted for cluttermm.
    * clutter/README, docs/reference/README, examples/README.txt,
    tools/m4/README: Delete useless or empty text files.

 .gitignore                                         |  135 +++----------
 ChangeLog                                          |   49 +++++
 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/Makefile.am                                |   16 --
 clutter/README                                     |    6 -
 clutter/cluttermm-uninstalled.pc.in                |   11 +
 clutter/cluttermm.h                                |   43 ++---
 clutter/cluttermm.pc.in                            |   19 ++-
 clutter/cluttermm/.gitignore                       |   16 ++
 clutter/cluttermm/Makefile.am                      |   44 +++--
 clutter/cluttermm/filelist.am                      |    9 +
 clutter/cluttermm/private/Makefile.am              |   12 -
 clutter/cluttermmconfig.h.in                       |   65 +------
 clutter/src/Makefile.am                            |   31 ++-
 clutter/src/Makefile_list_of_hg.am_fragment        |   37 ----
 clutter/src/filelist.am                            |   45 ++++
 codegen/Makefile.am                                |   37 ++++
 .../extradefs/generate_extra_defs_clutter.cc       |   25 ++-
 codegen/m4/convert.m4                              |    6 +
 .../m4/convert_cairo.m4                            |    0
 .../m4/convert_clutter.m4                          |    0
 .../m4/convert_cogl.m4                             |    0
 codegen/m4/filelist.am                             |    6 +
 configure.ac                                       |   71 ++++++
 configure.in                                       |  128 -----------
 doc/Makefile.am                                    |   26 +++
 {docs => doc}/reference/Doxyfile.in                |  224 ++++++++++++--------
 docs/Makefile.am                                   |    6 -
 docs/Makefile_web.am_fragment                      |   16 --
 docs/reference/Makefile.am                         |   26 ---
 docs/reference/README                              |    6 -
 examples/Makefile.am                               |   31 +++-
 examples/Makefile.am_fragment                      |   10 -
 scripts/Makefile.am                                |    3 -
 scripts/depcomp                                    |    1 -
 scripts/install-sh                                 |    1 -
 scripts/macros.m4                                  |   65 ------
 scripts/missing                                    |    1 -
 tests/Makefile.am                                  |   32 +++-
 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                                |    8 -
 52 files changed, 643 insertions(+), 1116 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index bb0d3d3..b34c029 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,109 +1,30 @@
-# wildcard patterns
-*.o
-*.lo
-*.a
-*.la
-Makefile
-Makefile.in
 .deps/
+.dirstamp
 .libs/
-.stamps/
-# generated private headers
-*_p.h
-
-# /
-aclocal.m4
-INSTALL
-autom4te.cache/
-config.h
-config.log
-config.status
-configure
-libtool
-stamp-h1
-
-# clutter
-clutter/cluttermm-0.9.pc
-clutter/cluttermm/actor.cc
-clutter/cluttermm/actor.h
-clutter/cluttermm/alpha.cc
-clutter/cluttermm/alpha.h
-clutter/cluttermm/animation.cc
-clutter/cluttermm/animation.h
-clutter/cluttermm/backend.h
-clutter/cluttermm/backend.cc
-clutter/cluttermm/behaviour-depth.cc
-clutter/cluttermm/behaviour-depth.h
-clutter/cluttermm/behaviour-ellipse.cc
-clutter/cluttermm/behaviour-ellipse.h
-clutter/cluttermm/behaviour-opacity.cc
-clutter/cluttermm/behaviour-opacity.h
-clutter/cluttermm/behaviour-path.cc
-clutter/cluttermm/behaviour-path.h
-clutter/cluttermm/behaviour-rotate.cc
-clutter/cluttermm/behaviour-rotate.h
-clutter/cluttermm/behaviour-scale.cc
-clutter/cluttermm/behaviour-scale.h
-clutter/cluttermm/behaviour.cc
-clutter/cluttermm/behaviour.h
-clutter/cluttermm/cairo-texture.cc
-clutter/cluttermm/cairo-texture.h
-clutter/cluttermm/childmeta.cc
-clutter/cluttermm/childmeta.h
-clutter/cluttermm/clone.cc
-clutter/cluttermm/clone.h
-clutter/cluttermm/color.cc
-clutter/cluttermm/color.h
-clutter/cluttermm/container.cc
-clutter/cluttermm/container.h
-clutter/cluttermm/group.cc
-clutter/cluttermm/group.h
-clutter/cluttermm/interval.cc
-clutter/cluttermm/interval.h
-clutter/cluttermm/media.cc
-clutter/cluttermm/media.h
-clutter/cluttermm/path.cc
-clutter/cluttermm/path.h
-clutter/cluttermm/rectangle.cc
-clutter/cluttermm/rectangle.h
-clutter/cluttermm/score.cc
-clutter/cluttermm/score.h
-clutter/cluttermm/script.cc
-clutter/cluttermm/script.h
-clutter/cluttermm/scriptable.cc
-clutter/cluttermm/scriptable.h
-clutter/cluttermm/shader.cc
-clutter/cluttermm/shader.h
-clutter/cluttermm/stage.cc
-clutter/cluttermm/stage.h
-clutter/cluttermm/text.cc
-clutter/cluttermm/text.h
-clutter/cluttermm/texture.cc
-clutter/cluttermm/texture.h
-clutter/cluttermm/timeline.cc
-clutter/cluttermm/timeline.h
-clutter/cluttermm/types.cc
-clutter/cluttermm/types.h
-clutter/cluttermm/wrap_init.cc
-clutter/cluttermmconfig.h
-
-# docs
-docs/reference/Doxyfile
-docs/reference/html/
-
-# examples
-examples/actors
-
-# scripts
-scripts/config.guess
-scripts/config.sub
-scripts/ltmain.sh
-
-# tests
-tests/test-alpha-creation
-tests/test-alpha-func
-tests/test-interval-creation
-
-# tools
-tools/extra_defs_gen/generate_extra_defs_clutter
-
+Makefile
+Makefile.in
+stamp-h?
+*.[ao]
+*.l[ao]
+/INSTALL
+/aclocal.m4
+/autom4te.cache/
+/config*.lineno
+/config.log
+/config.status
+/configure
+/cluttermm-*.tar.*
+/libtool
+/codegen/extradefs/generate_extra_defs
+/clutter/cluttermmconfig.h
+/clutter/cluttermm*.pc
+/clutter/src/.stamps/
+/doc/reference/Doxyfile
+/doc/reference/doxygen.log
+/doc/reference/cluttermm-*.devhelp2
+/doc/reference/cluttermm-*.tag
+/doc/reference/html/
+/examples/actors
+/tests/test-alpha-creation
+/tests/test-alpha-func
+/tests/test-interval-creation
diff --git a/ChangeLog b/ChangeLog
index b9ae339..843fb6f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,52 @@
+2009-10-02  Daniel Elstner  <danielk openismus 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.cc: Rename from
+	tools/extra_defs_gen/generate_defs_clutter 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.
+	* Makefile.am, doc/Makefile.am, examples/Makefile.am,
+	clutter/src/Makefile.am, clutter/cluttermm/Makefile.am,
+	tests/Makefile.am: Replace with mm-common skeleton build files
+	adapted for cluttermm.
+	* codegen/Makefile.am: Replace with skeleton file adapted for
+	cluttermm.  Do not install convert.m4 along with the public macro
+	files for gmmproc.
+	* codegen/m4/filelist.am, clutter/src/filelist.am,
+	clutter/cluttermm/filelist.am: New Automake include files listing
+	the cluttermm source files.
+	* codegen/m4/convert_cairo.m4: Rename from convert_cairomm.m4.
+	* codegen/m4/convert_clutter.m4: Rename from convert_cluttermm.m4.
+	* codegen/m4/convert_cogl.m4: Rename from convert_coglmm.m4.
+	* codegen/m4/convert.m4: Include M4 files by their new name.
+	* clutter/Makefile.am, clutter/src/Makefile_list_of_hg.am_fragment,
+	clutter/cluttermm/private/Makefile.am, docs/Makefile_web.am_fragment,
+	docs/reference/Makefile.am, examples/Makefile.am_fragment,
+	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/cluttermm.pc.in: Merge the modernized skeleton pkg-config
+	file from mm-common.
+	* clutter/cluttermm-uninstalled.pc.in: New pkg-config data file for
+	linking to an uninstalled build of cluttermm.
+	* clutter/cluttermmconfig.h.in: Remove all non-namespaced macros,
+	leaving only the cluttermm version number components.
+	* clutter/cluttermm.h: Clean up a bit and include cluttermmconfig.h.
+	Remove extern declarations of the runtime version number components
+	as they don't appear to be defined anywhere.
+	* doc/reference/Doxyfile.in: Replace file with mm-common skeleton
+	Doxygen configuration, adapted for cluttermm.
+	* clutter/README, docs/reference/README, examples/README.txt,
+	tools/m4/README: Delete useless or empty text files.
+
 2009-08-26  Murray Cumming  <murrayc murrayc com>
 
 	* clutter/cluttermm.pc.in: Depend on clutter-1.0 rather than clutter-0.9.
diff --git a/Makefile.am b/Makefile.am
index 8a9117b..e54e6cc 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,24 +1,45 @@
-SUBDIRS		= tools clutter docs examples tests
-DIST_SUBDIRS	= $(SUBDIRS) scripts
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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 = clutter/src
+else
+src_subdirs =
+endif
+if ENABLE_DOCUMENTATION
+doc_subdirs = doc
+else
+doc_subdirs =
+endif
+SUBDIRS = codegen $(src_subdirs) clutter/cluttermm examples tests $(doc_subdirs)
 
-all-local:
-	@echo "*** Everything completed ***"
+cluttermm_includedir = $(includedir)/$(CLUTTERMM_MODULE_NAME)
+cluttermm_include_HEADERS = clutter/cluttermm.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
+cluttermm_libincludedir = $(libdir)/$(CLUTTERMM_MODULE_NAME)/include
+nodist_cluttermm_libinclude_HEADERS = clutter/cluttermmconfig.h
 
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = clutter/$(CLUTTERMM_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 97c37f6..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="cluttermm"
-
-(test -f $srcdir/configure.in \
-  && test -d $srcdir/clutter/src \
-  && test -d $srcdir/clutter/cluttermm) || {
-    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/cluttermm-uninstalled.pc.in b/clutter/cluttermm-uninstalled.pc.in
new file mode 100644
index 0000000..1861702
--- /dev/null
+++ b/clutter/cluttermm-uninstalled.pc.in
@@ -0,0 +1,11 @@
+gmmprocdir=${pc_top_builddir}/${pcfiledir}/@top_srcdir@/codegen
+doxytagfile=${pc_top_builddir}/doc/reference/@CLUTTERMM_MODULE_NAME  tag
+htmlrefpub=http://library.gnome.org/@PACKAGE_TARNAME@/unstable/
+
+Name: cluttermm
+Description: C++ binding for clutter, not installed
+Version: @CLUTTERMM_VERSION@
+URL: http://www.gtkmm.org/
+Requires: @CLUTTERMM_MODULES@
+Libs: ${pc_top_builddir}/${pcfiledir}/cluttermm/libcluttermm- CLUTTERMM_API_VERSION@.la
+Cflags: -I${pc_top_builddir}/${pcfiledir} -I${pc_top_builddir}/${pcfiledir}/@srcdir@
diff --git a/clutter/cluttermm.h b/clutter/cluttermm.h
index dfa4b76..c92120e 100644
--- a/clutter/cluttermm.h
+++ b/clutter/cluttermm.h
@@ -1,32 +1,26 @@
-/*
- * cluttermm - a C++ wrapper for clutter
+/* Copyright (c) 2007-2009  The cluttermm Development Team
  *
- * Copyright (c) 2007-2009  The cluttermm Development Team
+ * This file is part of cluttermm.
  *
- * This library 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 of the License, or (at your option) any later version.
+ * cluttermm 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.
  *
- * This library 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.
+ * cluttermm 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 library. If not, see <http://www.gnu.org/licenses/>.
+ * 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/>.
  */
 
-#ifndef LIBCLUTTERMM_H
-#define LIBCLUTTERMM_H
-
-// cluttermm version
-extern const int cluttermm_major_version;
-extern const int cluttermm_minor_version;
-extern const int cluttermm_micro_version;
+#ifndef CLUTTERMM_H_INCLUDED
+#define CLUTTERMM_H_INCLUDED
 
 #include <glibmm.h>
-
+#include <cluttermmconfig.h>
 #include <cluttermm/actor.h>
 #include <cluttermm/alpha.h>
 #include <cluttermm/animation.h>
@@ -60,9 +54,4 @@ extern const int cluttermm_micro_version;
 #include <cluttermm/types.h>
 #include <cluttermm/utility.h>
 
-//#include <cluttermm/box.h>
-//#include <cluttermm/container.h>
-//#include <cluttermm/layout.h>
-//#include <cluttermm/margin.h>
-
-#endif /* !LIBCLUTTERMM_H */
+#endif /* !CLUTTERMM_H_INCLUDED */
diff --git a/clutter/cluttermm.pc.in b/clutter/cluttermm.pc.in
index 727942c..dc43b21 100644
--- a/clutter/cluttermm.pc.in
+++ b/clutter/cluttermm.pc.in
@@ -1,11 +1,20 @@
 prefix= prefix@
 exec_prefix= exec_prefix@
 libdir= libdir@
+datarootdir= datarootdir@
+datadir= datadir@
 includedir= includedir@
 
+gmmprocdir=${datadir}/@CLUTTERMM_MODULE_NAME@/proc
+docdir=${datarootdir}/doc/@CLUTTERMM_MODULE_NAME@
+doxytagfile=${docdir}/reference/@CLUTTERMM_MODULE_NAME  tag
+htmlrefdir=${docdir}/reference/html
+htmlrefpub=http://library.gnome.org/@PACKAGE_TARNAME@/unstable/
+
 Name: cluttermm
-Description: C++ wrapper for clutter
-Requires: glibmm-2.4 pangomm-1.4 clutter-1.0
-Version: @VERSION@
-Libs: -L${libdir} -lcluttermm- API_VER@
-Cflags: -I${includedir}/cluttermm- API_VER@
+Description: C++ binding for clutter
+Version: @CLUTTERMM_VERSION@
+URL: http://www.gtkmm.org/
+Requires: @CLUTTERMM_MODULES@
+Libs: -L${libdir} -lcluttermm- CLUTTERMM_API_VERSION@
+Cflags: -I${includedir}/@CLUTTERMM_MODULE_NAME@ -I${libdir}/@CLUTTERMM_MODULE_NAME@/include
diff --git a/clutter/cluttermm/.gitignore b/clutter/cluttermm/.gitignore
new file mode 100644
index 0000000..806a9f6
--- /dev/null
+++ b/clutter/cluttermm/.gitignore
@@ -0,0 +1,16 @@
+/*.cc
+!/event.cc
+!/frame-source.cc
+!/init.cc
+!/main.cc
+!/threads.cc
+!/utility.cc
+/*.h
+!/event.h
+!/frame-source.h
+!/init.h
+!/main.h
+!/threads.h
+!/utility.h
+!/wrap_init.h
+/private/*_p.h
diff --git a/clutter/cluttermm/Makefile.am b/clutter/cluttermm/Makefile.am
index 2620e3d..84fecd6 100644
--- a/clutter/cluttermm/Makefile.am
+++ b/clutter/cluttermm/Makefile.am
@@ -1,23 +1,31 @@
-## Copyright (c) 2008
-## The cluttermm development team.
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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 = libcluttermm- CLUTTERMM_API_VERSION@.la
 
-sublib_name		= cluttermm
-sublib_libname = cluttermm-$(API_VER)
-sublib_libversion = $(CLUTTERMM_SO_VERSION)
-sublib_namespace	= Clutter
-sublib_cflags		= $(CLUTTERMM_CFLAGS)
-sublib_topdir = clutter
+include $(srcdir)/../src/filelist.am
+include $(srcdir)/filelist.am
+include $(top_srcdir)/build/compile-binding.am
 
+local_cppflags = $(binding_includes) $(binding_cppflags) -DCLUTTERMM_BUILD=1
 
-files_extra_h	= init.h main.h utility.h threads.h frame-source.h event.h wrap_init.h
-files_extra_cc	= init.cc main.cc utility.cc threads.cc frame-source.cc event.cc
-
-include $(top_srcdir)/build_shared/Makefile_build_gensrc.am_fragment
-
-lib_LTLIBRARIES = libcluttermm- API_VER@.la
-libcluttermm_ API_VER@_la_SOURCES = $(files_all_cc)
-libcluttermm_ API_VER@_la_LDFLAGS = $(common_ldflags)
-libcluttermm_ API_VER@_la_LIBADD = $(CLUTTERMM_LIBS)
+AM_CPPFLAGS = $(local_cppflags) $(CLUTTERMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTERMM_WXXFLAGS)
 
+libcluttermm_ CLUTTERMM_API_VERSION@_la_SOURCES = $(binding_sources)
+libcluttermm_ CLUTTERMM_API_VERSION@_la_LDFLAGS = -no-undefined -version-info $(CLUTTERMM_SO_VERSION)
+libcluttermm_ CLUTTERMM_API_VERSION@_la_LIBADD  = $(CLUTTERMM_LIBS)
diff --git a/clutter/cluttermm/filelist.am b/clutter/cluttermm/filelist.am
new file mode 100644
index 0000000..bd32d63
--- /dev/null
+++ b/clutter/cluttermm/filelist.am
@@ -0,0 +1,9 @@
+## This file is part of cluttermm.
+
+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 = event.cc frame-source.cc init.cc main.cc threads.cc utility.cc
+files_extra_h  = event.h frame-source.h init.h main.h threads.h utility.h wrap_init.h
+files_extra_ph =
diff --git a/clutter/cluttermmconfig.h.in b/clutter/cluttermmconfig.h.in
index d626a6f..c711f13 100644
--- a/clutter/cluttermmconfig.h.in
+++ b/clutter/cluttermmconfig.h.in
@@ -1,67 +1,10 @@
-/* clutter/cluttermmconfig.h.in.  Generated from configure.in by autoheader.  */
+/* This file is part of cluttermm. */
 
-/* major version */
+/* Major version number of cluttermm. */
 #undef CLUTTERMM_MAJOR_VERSION
 
-/* micro version */
+/* Micro version number of cluttermm. */
 #undef CLUTTERMM_MICRO_VERSION
 
-/* minor version */
+/* Minor version number of cluttermm. */
 #undef CLUTTERMM_MINOR_VERSION
-
-/* cluttermm version string */
-#undef CLUTTERMM_VERSION
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-#undef HAVE_DLFCN_H
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-#undef HAVE_INTTYPES_H
-
-/* Define to 1 if you have the <memory.h> header file. */
-#undef HAVE_MEMORY_H
-
-/* Define to 1 if you have the <stdint.h> header file. */
-#undef HAVE_STDINT_H
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#undef HAVE_STDLIB_H
-
-/* Define to 1 if you have the <strings.h> header file. */
-#undef HAVE_STRINGS_H
-
-/* Define to 1 if you have the <string.h> header file. */
-#undef HAVE_STRING_H
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#undef HAVE_SYS_STAT_H
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#undef HAVE_SYS_TYPES_H
-
-/* Define to 1 if you have the <unistd.h> header file. */
-#undef HAVE_UNISTD_H
-
-/* Name of package */
-#undef PACKAGE
-
-/* Define to the address where bug reports for this package should be sent. */
-#undef PACKAGE_BUGREPORT
-
-/* Define to the full name of this package. */
-#undef PACKAGE_NAME
-
-/* Define to the full name and version of this package. */
-#undef PACKAGE_STRING
-
-/* Define to the one symbol short name of this package. */
-#undef PACKAGE_TARNAME
-
-/* Define to the version of this package. */
-#undef PACKAGE_VERSION
-
-/* Define to 1 if you have the ANSI C header files. */
-#undef STDC_HEADERS
-
-/* Version number of package */
-#undef VERSION
diff --git a/clutter/src/Makefile.am b/clutter/src/Makefile.am
index e63ae34..f7b4f26 100644
--- a/clutter/src/Makefile.am
+++ b/clutter/src/Makefile.am
@@ -1,12 +1,23 @@
-## Copyright (c) 2001
-## The cluttermm development team.
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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	= cluttermm
-sublib_namespace = Clutter
-sublib_parentdir = cluttermm
-files_defs	= clutter.defs clutter_methods.defs clutter_signals.defs \
-                  clutter_enums.defs clutter_vfuncs.defs clutter_others.defs clutter_docs.xml \
-                  clutter_docs_override.xml
-
-include $(top_srcdir)/build_shared/Makefile_gensrc.am_fragment
+binding_name    = cluttermm
+wrap_init_flags = --namespace=Clutter --parent_dir=cluttermm
 
+include $(srcdir)/filelist.am
+include $(top_srcdir)/codegen/m4/filelist.am
+include $(top_srcdir)/build/generate-binding.am
diff --git a/clutter/src/filelist.am b/clutter/src/filelist.am
new file mode 100644
index 0000000..d4246ba
--- /dev/null
+++ b/clutter/src/filelist.am
@@ -0,0 +1,45 @@
+## This file is part of cluttermm.
+
+files_defs =			\
+	clutter.defs		\
+	clutter_enums.defs	\
+	clutter_methods.defs	\
+	clutter_others.defs	\
+	clutter_signals.defs	\
+	clutter_vfuncs.defs	\
+	clutter_docs.xml	\
+	clutter_docs_override.xml
+
+files_hg =			\
+	actor.hg		\
+	alpha.hg		\
+	animation.hg		\
+	backend.hg		\
+	behaviour.hg		\
+	behaviour-depth.hg	\
+	behaviour-ellipse.hg	\
+	behaviour-opacity.hg	\
+	behaviour-path.hg	\
+	behaviour-rotate.hg	\
+	behaviour-scale.hg	\
+	cairo-texture.hg	\
+	childmeta.hg		\
+	clone.hg		\
+	color.hg		\
+	container.hg		\
+	group.hg		\
+	interval.hg		\
+	media.hg		\
+	path.hg			\
+	rectangle.hg		\
+	score.hg		\
+	script.hg		\
+	scriptable.hg		\
+	shader.hg		\
+	stage.hg		\
+	text.hg			\
+	texture.hg		\
+	timeline.hg		\
+	types.hg
+
+files_ccg = $(files_hg:.hg=.ccg)
diff --git a/codegen/Makefile.am b/codegen/Makefile.am
new file mode 100644
index 0000000..6267b52
--- /dev/null
+++ b/codegen/Makefile.am
@@ -0,0 +1,37 @@
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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_private))
+
+codegen_m4dir = $(datadir)/$(CLUTTERMM_MODULE_NAME)/proc/m4
+dist_codegen_m4_DATA = $(addprefix m4/,$(files_codegen_m4_public))
+
+noinst_PROGRAMS = extradefs/generate_extra_defs
+
+extradefs_generate_extra_defs_SOURCES = extradefs/generate_extra_defs_clutter.cc
+extradefs_generate_extra_defs_LDADD   = $(CLUTTERMM_LIBS) -lglibmm_generate_extra_defs-2.4
+
+AM_CPPFLAGS = -I$(top_builddir) $(CLUTTERMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTERMM_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.cc b/codegen/extradefs/generate_extra_defs_clutter.cc
similarity index 71%
rename from tools/extra_defs_gen/generate_defs_clutter.cc
rename to codegen/extradefs/generate_extra_defs_clutter.cc
index eff9622..423198d 100644
--- a/tools/extra_defs_gen/generate_defs_clutter.cc
+++ b/codegen/extradefs/generate_extra_defs_clutter.cc
@@ -1,18 +1,19 @@
-/* Copyright (C) 1998-2006 The gtkmm Development Team
+/* Copyright (c) 2007-2009  The gtkmm Development Team
  *
- * This library 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.
+ * This file is part of cluttermm.
  *
- * This library 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.
+ * cluttermm 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.
  *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the Free
- * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ * cluttermm 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 <glibmm_generate_extra_defs/generate_extra_defs.h>
diff --git a/codegen/m4/convert.m4 b/codegen/m4/convert.m4
new file mode 100644
index 0000000..711e1ad
--- /dev/null
+++ b/codegen/m4/convert.m4
@@ -0,0 +1,6 @@
+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')
diff --git a/tools/m4/convert_cairomm.m4 b/codegen/m4/convert_cairo.m4
similarity index 100%
rename from tools/m4/convert_cairomm.m4
rename to codegen/m4/convert_cairo.m4
diff --git a/tools/m4/convert_cluttermm.m4 b/codegen/m4/convert_clutter.m4
similarity index 100%
rename from tools/m4/convert_cluttermm.m4
rename to codegen/m4/convert_clutter.m4
diff --git a/tools/m4/convert_coglmm.m4 b/codegen/m4/convert_cogl.m4
similarity index 100%
rename from tools/m4/convert_coglmm.m4
rename to codegen/m4/convert_cogl.m4
diff --git a/codegen/m4/filelist.am b/codegen/m4/filelist.am
new file mode 100644
index 0000000..673dec9
--- /dev/null
+++ b/codegen/m4/filelist.am
@@ -0,0 +1,6 @@
+## This file is part of cluttermm.
+
+files_codegen_m4_private = convert.m4
+files_codegen_m4_public  = convert_cairo.m4 convert_clutter.m4 convert_cogl.m4
+
+files_codegen_m4 = $(files_codegen_m4_private) $(files_codegen_m4_public)
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..eef01a5
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,71 @@
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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([cluttermm], [0.9.4],
+        [http://bugzilla.gnome.org/enter_bug.cgi?product=cluttermm],
+        [cluttermm], [http://www.gtkmm.org/])
+AC_PREREQ([2.59])
+
+AC_CONFIG_SRCDIR([clutter/cluttermm.h])
+AC_CONFIG_AUX_DIR([build])
+AC_CONFIG_MACRO_DIR([build])
+AC_CONFIG_HEADERS([build/config.h clutter/cluttermmconfig.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([cluttermm-0.9])
+
+# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
+AC_SUBST([CLUTTERMM_SO_VERSION], [0:0:0])
+
+AC_PROG_CXX
+AC_DISABLE_STATIC
+AC_LIBTOOL_WIN32_DLL
+AC_PROG_LIBTOOL
+
+AC_SUBST([CLUTTERMM_MODULES], ['clutter-1.0 >= 1.0 pangomm-1.4 >= 2.24'])
+PKG_CHECK_MODULES([CLUTTERMM], [$CLUTTERMM_MODULES])
+MM_PKG_CONFIG_SUBST([GMMPROC_DIR], [--variable=gmmprocdir glibmm-2.4])
+
+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])
+
+AC_LANG([C++])
+MM_ARG_ENABLE_WARNINGS([CLUTTERMM_WXXFLAGS],
+                       [-Wall],
+                       [-Wall -Wextra],
+                       [G PANGO])
+
+AC_CONFIG_FILES([Makefile
+                 codegen/Makefile
+                 clutter/${CLUTTERMM_MODULE_NAME}.pc:clutter/cluttermm.pc.in
+                 clutter/${CLUTTERMM_MODULE_NAME}-uninstalled.pc:clutter/cluttermm-uninstalled.pc.in
+                 clutter/src/Makefile
+                 clutter/cluttermm/Makefile
+                 examples/Makefile
+                 tests/Makefile
+                 doc/Makefile
+                 doc/reference/Doxyfile])
+AC_OUTPUT
diff --git a/doc/Makefile.am b/doc/Makefile.am
new file mode 100644
index 0000000..629509a
--- /dev/null
+++ b/doc/Makefile.am
@@ -0,0 +1,26 @@
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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/src/filelist.am
+include $(top_srcdir)/clutter/cluttermm/filelist.am
+
+cluttermm_files_h = $(files_built_h) $(filter-out wrap_init.h,$(files_extra_h))
+
+book_name = $(CLUTTERMM_MODULE_NAME)
+doc_input = $(addprefix $(top_srcdir)/clutter/cluttermm/,$(cluttermm_files_h))
+
+include $(top_srcdir)/build/doc-reference.am
diff --git a/docs/reference/Doxyfile.in b/doc/reference/Doxyfile.in
similarity index 58%
rename from docs/reference/Doxyfile.in
rename to doc/reference/Doxyfile.in
index efd3201..9fb71e0 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           = cluttermm
-PROJECT_NUMBER         = @CLUTTERMM_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/" \
+                         "@abs_top_srcdir@/clutter/" \
+                         "@abs_top_builddir@/" \
+                         "@abs_top_srcdir@/"
+STRIP_FROM_INC_PATH    = "@abs_top_builddir@/clutter/" \
+                         "@abs_top_srcdir@/clutter/" \
+                         "@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/cluttermm @top_builddir@/clutter-cairo/cluttermm-cairo
+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       = 
+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      = NO
-IMAGE_PATH             = 
-INPUT_FILTER           = 
-FILTER_PATTERNS        = 
+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" \
+                         "@abs_top_srcdir@/clutter"
+INCLUDE_FILE_PATTERNS  = *.h
+PREDEFINED             = __cplusplus \
+                         DOXYGEN_SHOULD_SKIP_THIS \
+                         "G_GNUC_CONST=" \
+                         "CLUTTERMM_API=" \
                          GLIBMM_VFUNCS_ENABLED \
+                         GLIBMM_PROPERTIES_ENABLED \
+                         GLIBMM_EXCEPTIONS_ENABLED \
                          GLIBMM_DEFAULT_SIGNAL_HANDLERS_ENABLED
-EXPAND_AS_DEFINED      = 
+EXPAND_AS_DEFINED      = CLUTTERMM_MAJOR_VERSION \
+                         CLUTTERMM_MINOR_VERSION \
+                         CLUTTERMM_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/@CLUTTERMM_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 3e3ca47..9be61c2 100644
--- a/examples/Makefile.am
+++ b/examples/Makefile.am
@@ -1,10 +1,29 @@
-SUBDIRS = 
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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
+check_PROGRAMS = actors
 
-noinst_PROGRAMS = actors
-actors_SOURCES = test-actors.cc
-#boxes_SOURCES = test-boxes.cc
+dist_noinst_DATA = actor.png test-boxes.cc
+
+local_includes = -I$(top_builddir)/clutter $(if $(srcdir:.=),-I$(top_srcdir)/clutter)
+local_libs = $(top_builddir)/clutter/cluttermm/libcluttermm-$(CLUTTERMM_API_VERSION).la
 
-EXTRA_DIST = actor.png
+AM_CPPFLAGS = -I$(top_builddir) $(local_includes) $(CLUTTERMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTERMM_WXXFLAGS)
+LDADD = $(CLUTTERMM_LIBS) $(local_libs)
 
+actors_SOURCES = test-actors.cc
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 2036f29..fa14182 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -1,11 +1,29 @@
-SUBDIRS = 
+## Copyright (c) 2009  Openismus GmbH <http://www.openismus.com/>
+##
+## This file is part of cluttermm.
+##
+## cluttermm 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.
+##
+## cluttermm 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 =  Makefile.am_fragment README.txt
+check_PROGRAMS = test-alpha-creation test-alpha-func test-interval-creation
 
-include $(top_srcdir)/examples/Makefile.am_fragment
+local_includes = -I$(top_builddir)/clutter $(if $(srcdir:.=),-I$(top_srcdir)/clutter)
+local_libs = $(top_builddir)/clutter/cluttermm/libcluttermm-$(CLUTTERMM_API_VERSION).la
 
-noinst_PROGRAMS = test-alpha-creation test-alpha-func test-interval-creation
-test_alpha_creation_SOURCES = test-alpha-creation.cc
-test_alpha_func_SOURCES = test-alpha-func.cc
-test_interval_creation_SOURCES = test-interval-creation.cc
+AM_CPPFLAGS = -I$(top_builddir) $(local_includes) $(CLUTTERMM_CFLAGS)
+AM_CXXFLAGS = $(CLUTTERMM_WXXFLAGS)
+LDADD = $(CLUTTERMM_LIBS) $(local_libs)
 
+test_alpha_creation_SOURCES    = test-alpha-creation.cc
+test_alpha_func_SOURCES        = test-alpha-func.cc
+test_interval_creation_SOURCES = test-interval-creation.cc



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