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.
This commit is contained in:
Emmanuele Bassi 2011-02-14 16:49:01 +00:00
parent b91befaaca
commit fbaac155c5
3 changed files with 53 additions and 25 deletions

1
.gitignore vendored
View File

@ -12,6 +12,7 @@ compile
*.lo
*.la
*.gcov
README
stamp-enum-types
stamp-marshal
/ChangeLog*

View File

@ -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.

View File

@ -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