From: Emmanuele Bassi Date: Mon, 14 Feb 2011 16:49:01 +0000 (+0000) Subject: build: Generate README X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fbaac155c5afc9d0f172334e7c8d7d4fd4c87f35;p=profile%2Fivi%2Fclutter.git build: Generate README Use the configure script to generate the README from a template file, so that we can keep the versions of the dependencies in one place. --- diff --git a/.gitignore b/.gitignore index 04a2e6c..0c02500 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,7 @@ compile *.lo *.la *.gcov +README stamp-enum-types stamp-marshal /ChangeLog* diff --git a/README b/README.in similarity index 98% rename from README rename to README.in index dd3fb9f..25524ac 100644 --- a/README +++ b/README.in @@ -1,4 +1,4 @@ -Clutter - README +README for Clutter @CLUTTER_VERSION@ =============================================================================== Clutter is an open source software library for creating fast, compellin, @@ -9,17 +9,17 @@ REQUIREMENTS Clutter currently requires: - • GLib ≥ 2.26.0 - • JSON-GLib ≥ 0.12 - • Atk ≥ 1.17 - • Cairo ≥ 1.10 - • PangoCairo ≥ 1.20 + • GLib ≥ @GLIB_REQ_VERSION@ + • JSON-GLib ≥ @JSON_GLIB_REQ_VERSION@ + • Atk ≥ @ATK_REQ_VERSION@ + • Cairo ≥ @CAIRO_REQ_VERSION@ + • PangoCairo ≥ @PANGO_REQ_VERSION@ • OpenGL ≥ 1.3 (or 1.2+multitexturing), OpenGL ES 1.1 or OpenGL ES 2.0 • GLX, SDL, WGL or an EGL Implementation Clutter also has optional dependencies: - • GDK-Pixbuf ≥ 2.0 (optional, see --with-imagebackend below) + • GDK-Pixbuf ≥ @GDK_PIXBUF_REQ_VERSION@ On X11, Clutter depends on the following extensions @@ -27,7 +27,7 @@ On X11, Clutter depends on the following extensions • XDamage • XExt • XFixes ≥ 3 - • XInput 1.x or 2.x + • XInput (1.x or 2.x) • XKB When running the OpenGL flavor, Clutter requires at least version 1.3 @@ -38,7 +38,7 @@ you will need the latest GL headers which can be obtained from: If you are building the API reference you will also need: - • GTK-Doc ≥ 1.13 + • GTK-Doc ≥ @GTK_DOC_REQ_VERSION@ If you are building the additional documentation you will also need: @@ -47,7 +47,7 @@ If you are building the additional documentation you will also need: If you are building the Introspection data you will also need: - • GObject-Introspection ≥ 0.9.5 + • GObject-Introspection ≥ @GI_REQ_VERSION@ GObject-Introspection is available from: @@ -55,7 +55,7 @@ GObject-Introspection is available from: If you want support for profiling Clutter you will also need: - • UProf ≥ 0.3 + • UProf ≥ @UPROF_REQ_VERSION@ UProf is available from: @@ -185,7 +185,7 @@ Clutter has additional command line options for the configure script: EGL/Open GL backend for X11. wayland: - EGL/Open GL backend for Wayland. + EGL/Open GL backend for Wayland. (EXPERIMENTAL) eglx: EGL/Open GL|ES backend for X11. diff --git a/configure.ac b/configure.ac index fd0c3c2..09ef918 100644 --- a/configure.ac +++ b/configure.ac @@ -110,11 +110,32 @@ LT_INIT([disable-static]) # Checks for header files. AC_HEADER_STDC +# required versions for dependencies +m4_define([glib_req_version], [2.26.0]) +m4_define([json_glib_req_version], [0.12.0]) +m4_define([atk_req_version], [1.17]) +m4_define([cairo_req_version], [1.10]) +m4_define([pango_req_version], [1.20]) +m4_define([gi_req_version], [0.9.5]) +m4_define([gdk_pixbuf_req_version], [2.0]) +m4_define([uprof_req_version], [0.3]) +m4_define([gtk_doc_req_version], [1.13]) + +AC_SUBST([GLIB_REQ_VERSION], [glib_req_version]) +AC_SUBST([JSON_GLIB_REQ_VERSION], [json_glib_req_version]) +AC_SUBST([ATK_REQ_VERSION], [atk_req_version]) +AC_SUBST([CAIRO_REQ_VERSION], [cairo_req_version]) +AC_SUBST([PANGO_REQ_VERSION], [pango_req_version]) +AC_SUBST([GI_REQ_VERSION], [gi_req_version]) +AC_SUBST([GDK_PIXBUF_REQ_VERSION], [gdk_pixbuf_req_version]) +AC_SUBST([UPROF_REQ_VERSION], [uprof_req_version]) +AC_SUBST([GTK_DOC_REQ_VERSION], [gtk_doc_req_version]) + # Checks for typedefs, structures, and compiler characteristics. -AM_PATH_GLIB_2_0([2.26.0], - [have_glib=yes], [have_glib=no], +AM_PATH_GLIB_2_0([glib_req_version], + [], + [AC_MSG_ERROR([glib-2.0 is required])], [gobject gthread gmodule-no-export]) -AS_IF([test "x$have_glib" = "xno"], AC_MSG_ERROR([glib-2.0 is required])) # Check for -Bsymbolic-functions to avoid intra-library PLT jumps AC_ARG_ENABLE([Bsymbolic], @@ -137,8 +158,7 @@ AC_ARG_ENABLE([Bsymbolic], LDFLAGS="${saved_LDFLAGS}" ]) -AS_IF([test "x$enable_Bsymbolic" = "xyes"], - [CLUTTER_LINK_FLAGS=-Wl[,]-Bsymbolic-functions]) +AS_IF([test "x$enable_Bsymbolic" = "xyes"], [CLUTTER_LINK_FLAGS=-Wl[,]-Bsymbolic-functions]) AC_SUBST(CLUTTER_LINK_FLAGS) dnl ======================================================================== @@ -166,6 +186,9 @@ AC_ARG_WITH([gles], [Select Clutter GLES version (for EGL backends)])], [glesversion=$with_gles]) +# base dependencies for core +CLUTTER_BASE_PC_FILES="cairo-gobject >= $CAIRO_REQ_VERSION atk >= $ATK_REQ_VERSION pangocairo >= $PANGO_REQ_VERSION json-glib-1.0 >= $JSON_GLIB_REQ_VERSION" + # backend specific pkg-config files BACKEND_PC_FILES="" @@ -748,7 +771,7 @@ AS_CASE([$COGL_IMAGE_BACKEND], [gdk-pixbuf], [ AC_DEFINE([USE_GDKPIXBUF], 1, [Use GdkPixbuf for loading image data]) - IMAGE_PC_FILES="gdk-pixbuf-2.0" + IMAGE_PC_FILES="gdk-pixbuf-2.0 >= $GDK_PIXBUF_REQ_VERSION" ], [internal], @@ -823,7 +846,7 @@ AS_IF([test "x$SUPPORT_XLIB" = "x1"], AC_DEFINE(HAVE_XFIXES, [1], [Define to 1 if we have the XFIXES X extension]) X11_LIBS="$X11_LIBS -lXfixes" - X11_PC_FILES="$X11_PC_FILES xfixes" + X11_PC_FILES="$X11_PC_FILES xfixes >= 3" AC_MSG_RESULT([found]) ], @@ -853,7 +876,7 @@ AS_IF([test "x$SUPPORT_XLIB" = "x1"], AC_DEFINE(HAVE_XCOMPOSITE, [1], [Define to 1 if we have the XCOMPOSITE X extension]) X11_LIBS="$X11_LIBS -lXcomposite" - X11_PC_FILES="$X11_PC_FILES xcomposite" + X11_PC_FILES="$X11_PC_FILES xcomposite >= 0.4" AC_MSG_RESULT([found]) ], @@ -1098,7 +1121,7 @@ AS_CASE([$enable_maintainer_flags], AC_SUBST(MAINTAINER_CFLAGS) dnl === Dependencies, compiler flags and linker libraries ===================== -CLUTTER_REQUIRES="cairo-gobject >= 1.10 atk >= 1.7 pangocairo >= 1.20 json-glib-1.0 >= 0.12 $IMAGE_PC_FILES $BACKEND_PC_FILES" +CLUTTER_REQUIRES="$CLUTTER_BASE_PC_FILES $IMAGE_PC_FILES $BACKEND_PC_FILES" PKG_CHECK_MODULES(CLUTTER_DEPS, [$CLUTTER_REQUIRES]) AC_SUBST(CLUTTER_REQUIRES) @@ -1109,11 +1132,11 @@ AC_SUBST(CLUTTER_LIBS) dnl === GObject-Introspection check =========================================== -GOBJECT_INTROSPECTION_CHECK([0.9.5]) +GOBJECT_INTROSPECTION_CHECK([gi_req_version]) dnl === GTK Doc check ========================================================= -GTK_DOC_CHECK([1.13], [--flavour no-tmpl]) +GTK_DOC_CHECK([gtk_doc_req_version], [--flavour no-tmpl]) # we don't want to build the documentation from a Git clone unless we # explicitly tell configure to do so; this allows avoiding to recurse into @@ -1129,9 +1152,11 @@ AM_CONDITIONAL([BUILD_GTK_DOC], [test "x$enable_gtk_doc" = "xyes" || test ! -f " CAIRO_PREFIX="`$PKG_CONFIG --variable=prefix cairo`" GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`" PANGO_PREFIX="`$PKG_CONFIG --variable=prefix pango`" +ATK_PREFIX="`$PKG_CONFIG --variable=prefix atk`" AC_SUBST(CAIRO_PREFIX) AC_SUBST(GLIB_PREFIX) AC_SUBST(PANGO_PREFIX) +AC_SUBST(ATK_PREFIX) dnl === Manual ================================================================ @@ -1169,8 +1194,8 @@ AM_GNU_GETTEXT([external]) GETTEXT_PACKAGE="clutter-1.0" AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, - "$GETTEXT_PACKAGE", +AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE], + ["$GETTEXT_PACKAGE"], [The prefix for our gettext translation domains.]) AS_ALL_LINGUAS @@ -1179,6 +1204,8 @@ dnl =========================================================================== AC_CONFIG_FILES([ Makefile + README + build/Makefile build/autotools/Makefile build/mingw/Makefile