mirror of
https://github.com/brl/mutter.git
synced 2024-12-24 20:12:06 +00:00
efb570fdae
This adds an autogen.sh, configure.ac and build/autotool files etc under clutter/cogl and makes some corresponding Makefile.am changes that make it possible to build and install Cogl as a standalone library. Some notable things about this are: A standalone installation of Cogl installs 3 pkg-config files; cogl-1.0.pc, cogl-gl-1.0.pc and cogl-2.0.pc. The second is only for compatibility with what clutter installed though I'm not sure that anything uses it so maybe we could remove it. cogl-1.0.pc is what Clutter would use if it were updated to build against a standalone cogl library. cogl-2.0.pc is what you would use if you were writing a standalone Cogl application. A standalone installation results in two libraries currently, libcogl.so and libcogl-pango.so. Notably we don't include a major number in the sonames because libcogl supports two major API versions; 1.x as used by Clutter and the experimental 2.x API for standalone applications. Parallel installation of later versions e.g. 3.x and beyond will be supportable either with new sonames or if we can maintain ABI then we'll continue to share libcogl.so. The headers are similarly not installed into a directory with a major version number since the same headers are shared to export the 1.x and 2.x APIs (The only difference is that cogl-2.0.pc ensures that -DCOGL_ENABLE_EXPERIMENTAL_2_0_API is used). Parallel installation of later versions is not precluded though since we can either continue sharing or later add a major version suffix.
95 lines
3.4 KiB
Plaintext
95 lines
3.4 KiB
Plaintext
dnl -*- mode: autoconf -*-
|
|
dnl Copyright 2009 Johan Dahlin
|
|
dnl
|
|
dnl This file is free software; the author(s) gives unlimited
|
|
dnl permission to copy and/or distribute it, with or without
|
|
dnl modifications, as long as this notice is preserved.
|
|
dnl
|
|
|
|
# serial 1
|
|
|
|
m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL],
|
|
[
|
|
AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
|
|
AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
|
|
AC_BEFORE([LT_INIT],[$0])dnl setup libtool first
|
|
|
|
dnl enable/disable introspection
|
|
m4_if([$2], [require],
|
|
[dnl
|
|
enable_introspection=yes
|
|
],[dnl
|
|
AC_ARG_ENABLE(introspection,
|
|
AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]],
|
|
[Enable introspection for this build]),,
|
|
[enable_introspection=auto])
|
|
])dnl
|
|
|
|
AC_MSG_CHECKING([for gobject-introspection])
|
|
|
|
dnl presence/version checking
|
|
AS_CASE([$enable_introspection],
|
|
[no], [dnl
|
|
found_introspection="no (disabled, use --enable-introspection to enable)"
|
|
],dnl
|
|
[yes],[dnl
|
|
PKG_CHECK_EXISTS([gobject-introspection-1.0],,
|
|
AC_MSG_ERROR([gobject-introspection-1.0 is not installed]))
|
|
PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1],
|
|
found_introspection=yes,
|
|
AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME]))
|
|
],dnl
|
|
[auto],[dnl
|
|
PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no)
|
|
],dnl
|
|
[dnl
|
|
AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@])
|
|
])dnl
|
|
|
|
AC_MSG_RESULT([$found_introspection])
|
|
|
|
INTROSPECTION_SCANNER=
|
|
INTROSPECTION_COMPILER=
|
|
INTROSPECTION_GENERATE=
|
|
INTROSPECTION_GIRDIR=
|
|
INTROSPECTION_TYPELIBDIR=
|
|
if test "x$found_introspection" = "xyes"; then
|
|
INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
|
|
INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
|
|
INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
|
|
INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
|
|
INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
|
|
INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
|
|
INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
|
|
INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
|
|
fi
|
|
AC_SUBST(INTROSPECTION_SCANNER)
|
|
AC_SUBST(INTROSPECTION_COMPILER)
|
|
AC_SUBST(INTROSPECTION_GENERATE)
|
|
AC_SUBST(INTROSPECTION_GIRDIR)
|
|
AC_SUBST(INTROSPECTION_TYPELIBDIR)
|
|
AC_SUBST(INTROSPECTION_CFLAGS)
|
|
AC_SUBST(INTROSPECTION_LIBS)
|
|
AC_SUBST(INTROSPECTION_MAKEFILE)
|
|
|
|
AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
|
|
])
|
|
|
|
|
|
dnl Usage:
|
|
dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version])
|
|
|
|
AC_DEFUN([GOBJECT_INTROSPECTION_CHECK],
|
|
[
|
|
_GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1])
|
|
])
|
|
|
|
dnl Usage:
|
|
dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version])
|
|
|
|
|
|
AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE],
|
|
[
|
|
_GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require])
|
|
])
|