diff options
author | Murray Cumming <murrayc@murrayc.com> | 2005-12-02 13:34:41 +0000 |
---|---|---|
committer | Murray Cumming <murrayc@murrayc.com> | 2005-12-02 13:34:41 +0000 |
commit | 579e53718d29e77486e076d2b3461d986911f050 (patch) | |
tree | c83c74226f7ca767e44b74322132a6941a551db1 /configure.in |
Initial revision
Diffstat (limited to 'configure.in')
-rw-r--r-- | configure.in | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/configure.in b/configure.in new file mode 100644 index 0000000..2041fb3 --- /dev/null +++ b/configure.in @@ -0,0 +1,104 @@ +AC_INIT(cairomm/cairomm.h) + +#release versioning +GENERIC_MAJOR_VERSION=0 +GENERIC_MINOR_VERSION=1 +GENERIC_MICRO_VERSION=0 +GENERIC_VERSION=$GENERIC_MAJOR_VERSION.$GENERIC_MINOR_VERSION.$GENERIC_MICRO_VERSION +AC_SUBST(GENERIC_MAJOR_VERSION) +AC_SUBST(GENERIC_MINOR_VERSION) +AC_SUBST(GENERIC_MICRO_VERSION) +AC_SUBST(GENERIC_VERSION) + +#shared library versioning +GENERIC_LIBRARY_VERSION=0:1:0 +# | | | +# +------+ | +---+ +# | | | +# current:revision:age +# | | | +# | | +- increment if interfaces have been added +# | | set to zero if interfaces have been removed +# or changed +# | +- increment if source code has changed +# | set to zero if current is incremented +# +- increment if interfaces have been added, removed or changed +AC_SUBST(GENERIC_LIBRARY_VERSION) + + + +VERSION=$GENERIC_VERSION + + +AM_INIT_AUTOMAKE(cairomm, $GENERIC_VERSION) + +AC_PROG_CXX +AC_PROG_CXXCPP +AC_LANG_CPLUSPLUS +AC_PROG_INSTALL +AC_LIBTOOL_WIN32_DLL +AM_PROG_LIBTOOL + +dnl Used for enabling the "-no-undefined" and "-export-all-symbols" flags +dnl while generating DLLs. Borrowed from the official gtk+-2 configure.in +AC_MSG_CHECKING([for some Win32 platform]) +case "$host" in + *-*-mingw*|*-*-cygwin*) + platform_win32=yes + ;; + *) + platform_win32=no + ;; +esac +AC_MSG_RESULT([$platform_win32]) +AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes") + +# Ensure MSVC-compatible struct packing convention is used when +# compiling for Win32 with gcc. +# What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while +# gcc2 uses "-fnative-struct". +if test x"$platform_win32" = xyes; then + if test x"$GCC" = xyes; then + msnative_struct='' + AC_MSG_CHECKING([how to get MSVC-compatible struct packing]) + if test -z "$ac_cv_prog_CC"; then + our_gcc="$CC" + else + our_gcc="$ac_cv_prog_CC" + fi + case `$our_gcc --version | sed -e 's,\..*,.,' -e q` in + 2.) + if $our_gcc -v --help 2>/dev/null | grep fnative-struct >/dev/null; then + msnative_struct='-fnative-struct' + fi + ;; + *) + if $our_gcc -v --help 2>/dev/null | grep ms-bitfields >/dev/null; then + msnative_struct='-mms-bitfields' + fi + ;; + esac + if test x"$msnative_struct" = x ; then + AC_MSG_RESULT([no way]) + AC_MSG_WARN([produced libraries might be incompatible with MSVC-compiled code]) + else + CXXFLAGS="$CXXFLAGS $msnative_struct" + AC_MSG_RESULT([${msnative_struct}]) + fi + fi +fi + +AC_CHECK_HEADERS(string list map, , exit) + +PKG_CHECK_MODULES(CAIROMM, cairo >= 1.0) + +GLIBMM_CHECK_PERL([5.6.0]) + +AC_OUTPUT( + Makefile + cairomm/Makefile + + examples/Makefile + + cairomm-1.0.pc +) |