13
0
livetrax/libs/cairomm/configure.in

151 lines
4.1 KiB
Plaintext
Raw Normal View History

AC_INIT(cairomm/cairomm.h)
#release versioning
GENERIC_MAJOR_VERSION=1
GENERIC_MINOR_VERSION=2
GENERIC_MICRO_VERSION=4
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=1:0: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.2.0)
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
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()