summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2010-12-27 15:58:19 +0100
committerWim Taymans <wim.taymans@collabora.co.uk>2010-12-27 15:58:19 +0100
commitf807073ffdb6bba0cb377711da4a81a6a4018b9f (patch)
treeeb3d3b46bc2308527bb238f763dda834ae6fc1e2 /configure.ac
Initial commit
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac222
1 files changed, 222 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..06669bd
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,222 @@
+# clutter package version number, (as distinct from shared library version)
+# An odd micro number indicates in-progress developmen
+# An even micro number indicates a released version.
+m4_define(clutter_shared_major_version, 1)
+m4_define(clutter_shared_minor_version, 0)
+m4_define(clutter_shared_micro_version, 0)
+
+m4_define(clutter_api_version, 1.0)
+m4_define([clutter_gst_api_version], [1.0])
+m4_define([clutter_shared_api_version], [1.0])
+
+m4_define([clutter_shared_version],
+ [clutter_shared_major_version.clutter_shared_minor_version.clutter_shared_micro_version])
+
+# increase the interface age for each release; if the API changes, set to 0
+m4_define([clutter_shared_interface_age], [0])
+m4_define([clutter_shared_binary_age],
+ [m4_eval(100 * clutter_shared_minor_version + clutter_shared_micro_version)])
+
+AC_PREREQ(2.53)
+
+AC_INIT([clutter-shared], [clutter_shared_version],
+ [http://bugzilla.o-hand.com/enter_bug.cgi?product=Clutter-gst])
+AC_CONFIG_MACRO_DIR([build/autotools])
+AC_CONFIG_AUX_DIR([build/autotools])
+AC_CONFIG_SRCDIR([clutter-shared/clutter-shared.h])
+AM_CONFIG_HEADER([config.h])
+
+AM_INIT_AUTOMAKE([1.9 -Wno-portability foreign])
+
+CLUTTER_SHARED_MAJOR_VERSION=clutter_shared_major_version
+CLUTTER_SHARED_MINOR_VERSION=clutter_shared_minor_version
+CLUTTER_SHARED_MICRO_VERSION=clutter_shared_micro_version
+CLUTTER_SHARED_VERSION=clutter_shared_version
+CLUTTER_SHARED_API_VERSION=clutter_shared_api_version
+CLUTTER_SHARED_MAJORMINOR=clutter_shared_api_version
+CLUTTER_API_VERSION=clutter_api_version
+AC_SUBST(CLUTTER_SHARED_MAJOR_VERSION)
+AC_SUBST(CLUTTER_SHARED_MINOR_VERSION)
+AC_SUBST(CLUTTER_SHARED_MICRO_VERSION)
+AC_SUBST(CLUTTER_SHARED_VERSION)
+AC_SUBST(CLUTTER_SHARED_API_VERSION)
+AC_SUBST(CLUTTER_SHARED_MAJORMINOR)
+AC_SUBST(CLUTTER_API_VERSION)
+
+m4_define([lt_current],
+ [m4_eval(100 * clutter_shared_minor_version +
+ clutter_shared_micro_version - clutter_shared_interface_age)])
+m4_define([lt_revision], [clutter_shared_interface_age])
+m4_define([lt_age], [m4_eval(clutter_shared_binary_age - clutter_shared_interface_age)])
+
+CLUTTER_SHARED_LT_CURRENT=lt_current
+CLUTTER_SHARED_LT_REV=lt_revision
+CLUTTER_SHARED_LT_AGE=lt_age
+CLUTTER_SHARED_LT_VERSION="$CLUTTER_SHARED_LT_CURRENT:$CLUTTER_SHARED_LT_REV:$CLUTTER_SHARED_LT_AGE"
+CLUTTER_SHARED_LT_LDFLAGS="-version-info $CLUTTER_SHARED_LT_VERSION"
+
+AC_SUBST(CLUTTER_SHARED_LT_VERSION)
+AC_SUBST(CLUTTER_SHARED_LT_LDFLAGS)
+
+dnl ========================================================================
+
+m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
+AS_AM_REALLY_SILENT
+
+dnl ========================================================================
+
+# Checks for programs.
+AC_PROG_CC
+AM_PROG_CC_C_O
+AC_DISABLE_STATIC
+AC_PROG_LIBTOOL
+DOLT
+AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums])
+
+# Checks for header files.
+AC_HEADER_STDC
+AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h])
+
+# Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+
+# Checks for library functions.
+AC_FUNC_MALLOC
+AC_FUNC_MMAP
+AC_CHECK_FUNCS([memset munmap strcasecmp strdup])
+
+dnl ========================================================================
+
+AC_CHECK_PROG(CGC, [cgc], [cgc], [no])
+have_cgc="no"
+if test "x$CGC" = "xcgc"; then
+ have_cgc="yes"
+fi
+AM_CONDITIONAL([HAVE_CGC], [test "x$have_cgc" = "xyes"])
+
+dnl ========================================================================
+dnl check for python (pso2h.py needs it)
+
+AC_CHECK_PROG(PYTHON, [python], [python], [no])
+have_python="no"
+if test "x$PYTHON" = "xpython"; then
+ have_python="yes"
+fi
+AM_CONDITIONAL([HAVE_PYTHON], [test "x$have_python" = "xyes"])
+
+dnl ========================================================================
+
+pkg_modules="clutter-1.0 >= 1.4.0 clutter-gst-1.0 >= 1.3.0 gio-2.0"
+PKG_CHECK_MODULES(CLUTTER_GST, [$pkg_modules])
+
+dnl ========================================================================
+
+GST_MAJORMINOR=0.10
+
+pkg_modules="gstreamer-$GST_MAJORMINOR gstreamer-plugins-base-$GST_MAJORMINOR gstreamer-base-$GST_MAJORMINOR"
+PKG_CHECK_MODULES(GST, [$pkg_modules])
+
+GST_LIBS="$GST_LIBS"
+
+dnl ========================================================================
+
+pkg_modules="gst-rtsp-server-$GST_MAJORMINOR"
+PKG_CHECK_MODULES(GST_RTSP_SERVER, [$pkg_modules])
+
+dnl ========================================================================
+
+m4_define([maintainer_flags_default], [yes])
+AC_ARG_ENABLE([maintainer-flags],
+ [AC_HELP_STRING([--enable-maintainer-flags=@<:@no/yes@:>@],
+ [Use strict compiler flags @<:@default=maintainer_flags_default@:>@])],
+ [],
+ [enable_maintainer_flags=maintainer_flags_default])
+
+AS_IF([test "x$enable_maintainer_flags" = "xyes" && test "x$GCC" = "xyes"],
+ [
+ AS_COMPILER_FLAGS([MAINTAINER_CFLAGS],
+ ["-Wall -Wshadow -Wcast-align -Wno-uninitialized
+ -Wno-strict-aliasing -Wempty-body -Wformat-security
+ -Winit-self"])
+ ]
+)
+
+AC_SUBST(MAINTAINER_CFLAGS)
+
+dnl === Enable debug level ====================================================
+
+m4_define([debug_default], [m4_if(m4_eval(clutter_shared_minor_version % 2), [1], [yes], [minimum])])
+AC_ARG_ENABLE([debug],
+ [AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
+ [Control Clutter-Shared debugging level @<:@default=debug_default@:>@])],
+ [],
+ [enable_debug=debug_default])
+
+AS_CASE([$enable_debug],
+
+ [yes],
+ [
+ test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
+ CLUTTER_SHARED_DEBUG_CFLAGS="-DCLUTTER_SHARED_ENABLE_DEBUG"
+ ],
+
+ [minimum],
+ [CLUTTER_SHARED_DEBUG_CFLAGS="-DCLUTTER_SHARED_ENABLE_DEBUG -DG_DISABLE_CAST_CHECKS"],
+
+ [no],
+ [CLUTTER_SHARED_DEBUG_CFLAGS="-DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -DG_DISABLE_CAST_CHECKS"],
+
+ [AC_MSG_ERROR([Unknown argument for --enable-debug])]
+)
+
+AC_SUBST(CLUTTER_SHARED_DEBUG_CFLAGS)
+
+dnl ========================================================================
+
+GTK_DOC_CHECK([1.8])
+
+AM_CONDITIONAL([BUILD_GTK_DOC],
+ [test "x$enable_gtk_doc" = "xyes" || test ! -f "autogen.sh"])
+
+dnl ========================================================================
+
+GOBJECT_INTROSPECTION_CHECK([0.6.8])
+
+dnl ========================================================================
+
+AC_SUBST(GCC_FLAGS)
+AC_SUBST(GST_CFLAGS)
+AC_SUBST(GST_LIBS)
+
+AC_SUBST(CLUTTER_GST_CFLAGS)
+AC_SUBST(CLUTTER_GST_LIBS)
+
+AC_OUTPUT([
+ Makefile
+ build/Makefile
+ build/autotools/Makefile
+ scripts/Makefile
+ clutter-shared/Makefile
+ clutter-shared/clutter-shared-version.h
+ examples/Makefile
+ doc/Makefile
+ doc/reference/Makefile
+ doc/reference/version.xml
+ clutter-shared.pc
+])
+
+dnl ========================================================================
+
+echo ""
+echo " Clutter-shared $VERSION"
+echo " ========================="
+echo ""
+echo " prefix: ${prefix}"
+echo " Compiler flags: ${MAINTAINER_CFLAGS} ${CPPFLAGS}"
+echo ""
+echo " Cg compiler: ${have_cgc}"
+echo ""
+echo " debug level: ${enable_debug}"
+echo " Build API documentation: ${enable_gtk_doc}"
+echo " Introspection data: ${enable_introspection}"
+echo ""