diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..d3e0759 --- /dev/null +++ b/configure.ac @@ -0,0 +1,110 @@ +-*- mode: m4 -*- +AC_PREREQ(2.59) + +# the pycairo version number +m4_define(pycairo_version_major, 1) +m4_define(pycairo_version_minor, 8) +m4_define(pycairo_version_micro, 7) +m4_define(pycairo_version, pycairo_version_major.pycairo_version_minor.pycairo_version_micro) + +# versions of packages we require +m4_define(cairo_required_version, 1.8.6) + +AC_INIT([pycairo], + [pycairo_version], + [http://bugs.freedesktop.org/enter_bug.cgi?product=pycairo]) + +AC_SUBST(PYCAIRO_VERSION_MAJOR, [pycairo_version_major]) +AC_SUBST(PYCAIRO_VERSION_MINOR, [pycairo_version_minor]) +AC_SUBST(PYCAIRO_VERSION_MICRO, [pycairo_version_micro]) +AC_SUBST(VERSION_INFO, + [pycairo_version_major,pycairo_version_minor,pycairo_version_micro]) + +AC_CONFIG_SRCDIR([src/pycairo.h]) +AC_CONFIG_HEADERS(config.h) + +AM_INIT_AUTOMAKE([1.9.6 -Wall]) + +# Options --- + +# put the ACLOCAL flags in the makefile +ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" + +# Checks for programs --- +AC_DISABLE_STATIC +AC_PROG_LIBTOOL dnl required version (1.4) DON'T REMOVE - used by autogen.sh + +AM_PATH_PYTHON(2.6) + +# Checks for libraries --- + +# get rid of the -export-dynamic stuff from the configure flags ... +export_dynamic=`(./libtool --config; echo eval echo \\$export_dynamic_flag_spec) | sh` + +# cairo +PKG_CHECK_MODULES(CAIRO, cairo >= cairo_required_version) +if test -n "$export_dynamic"; then + CAIRO_LIBS=`echo $CAIRO_LIBS | sed -e "s/$export_dynamic//"` +fi + +# Checks for header files --- +AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)]) + +# checks for types and compilers --- +AC_C_CONST + +# add gcc debugging options +changequote(,)dnl +if test "x$GCC" = xyes; then + case " $CFLAGS " in + *[\ \ ]-std=c99[\ \ ]*) ;; + *[\ \ ]-std=c9x[\ \ ]*) ;; + *) CFLAGS="$CFLAGS -std=c99" ;; + esac + + case " $CFLAGS " in + *[\ \ ]-Wall[\ \ ]*) ;; + *) CFLAGS="$CFLAGS -Wall" ;; + esac +fi +changequote([,])dnl + +case $GCC in +yes) + # code using Py_True, Py_False will receive + # "warning: dereferencing type-punned pointer will break strict-aliasing rules" + # -fno-strict-aliasing (as used in Python build) switches warnings off + AC_MSG_CHECKING(whether $CC accepts -fno-strict-aliasing) + ac_save_cc="$CC" + CC="$CC -fno-strict-aliasing" + AC_TRY_RUN([int main() { return 0; }], + ac_cv_no_strict_aliasing_ok=yes, + ac_cv_no_strict_aliasing_ok=no, + ac_cv_no_strict_aliasing_ok=no) + CC="$ac_save_cc" + AC_MSG_RESULT($ac_cv_no_strict_aliasing_ok) + if test $ac_cv_no_strict_aliasing_ok = yes + then + CFLAGS="$CFLAGS -fno-strict-aliasing" + fi +esac + +# Checks for library functions --- +# Checks for system services --- + +# Output --- +AC_CONFIG_FILES([ +Makefile +pycairo.pc +src/Makefile +doc/Makefile +examples/Makefile +test/Makefile +]) + +AC_OUTPUT + +echo " +Configuration: +Installation prefix ${prefix} +" |