13
0
livetrax/libs/cairomm/configure.in

190 lines
5.1 KiB
Plaintext
Raw Normal View History

AC_INIT(cairomm/cairomm.h)
#release versioning
GENERIC_MAJOR_VERSION=1
GENERIC_MINOR_VERSION=4
GENERIC_MICRO_VERSION=6
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=2:0:1
# | | |
# +------+ | +---+
# | | |
# 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)
AM_CONFIG_HEADER(cairomm/cairommconfig.h)
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")
AC_MSG_CHECKING([for native Win32])
case "$host" in
*-*-mingw*)
os_win32=yes
;;
*)
os_win32=no
;;
esac
AC_MSG_RESULT([$os_win32])
AM_CONDITIONAL(OS_WIN32, test "$os_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"$os_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.4)
AC_ARG_ENABLE(tests,
AC_HELP_STRING([--enable-tests=yes|no],
[enable automated tests (default is no)]),
ENABLE_TESTS=$enableval,
ENABLE_TESTS=no)
if test x$CAIROMM_DEVEL = xon ; then
ENABLE_TESTS=yes
fi
if test x$ENABLE_TESTS = xyes ; then
AX_BOOST_BASE([1.33.1])
AX_BOOST_UNIT_TEST_FRAMEWORK
AC_MSG_NOTICE(support of automated tests enabled)
else
AC_MSG_NOTICE(disabled support of automated tests)
fi
AM_CONDITIONAL(AUTOTESTS, test x$ENABLE_TESTS = xyes)
dnl enable compiler warnings when the CAIROMM_DEVEL environment variable is set to 'on'
if test "x$CAIROMM_DEVEL" = "xon" ; then
CXXFLAGS="$CXXFLAGS -Wall -g -Werror -Wextra"
fi
CAIROMM_ARG_ENABLE_API_EXCEPTIONS()
dnl Check whether to build the documentation directory
DOCS_SUBDIR="" dnl set DOCS_SUBDIR initially blank
AC_ARG_ENABLE(docs, [AC_HELP_STRING([--enable-docs],
[build the included docs [default=yes]])],,
[enable_docs=yes])
if test "x$enable_docs" = "xyes"; then
dnl check if doxygen is installed
AC_CHECK_PROGS(DOXYGEN, [doxygen], no)
if test x$DOXYGEN = xno; then
AC_MSG_WARN([Doxygen not found, documentation will not be rebuilt])
else
dnl check if graphviz / dot is installed (used by doxygen)
AC_CHECK_PROGS(DOT, [dot], no)
if test x$DOT = xno; then
AC_MSG_WARN([graphviz / dot not found, documentation graphs will not be rebuilt])
fi
fi
DOCS_SUBDIR="docs"
AC_CONFIG_FILES(
docs/Makefile
docs/reference/Makefile
docs/reference/Doxyfile
)
fi
AC_SUBST(DOCS_SUBDIR)
AC_CONFIG_FILES(
Makefile
cairomm/Makefile
examples/Makefile
examples/png_file/Makefile
examples/pdf-surface/Makefile
examples/ps-surface/Makefile
examples/svg-surface/Makefile
examples/text-rotate/Makefile
tests/Makefile
cairomm-1.0.pc
)
AC_CONFIG_FILES([
MSVC/Makefile
MSVC/gendef/Makefile
MSVC/cairomm/Makefile
MSVC/cairomm/cairomm.rc
MSVC/examples/Makefile
MSVC/examples/pdf-surface/Makefile
MSVC/examples/png_file/Makefile
MSVC/examples/ps-surface/Makefile
MSVC/examples/svg-surface/Makefile
MSVC/examples/text-rotate/Makefile
])
AC_OUTPUT()