[go: up one dir, main page]

Menu

[r53]: / PluginHandler / configure.ac  Maximize  Restore  History

Download this file

186 lines (147 with data), 5.1 kB

dnl Process this file with autoconf to produce a configure script.

AC_PREREQ(2.59)

# Making releases:
#   LIBMONAPH_MICRO_VERSION += 1;
#   LIBMONAPH_INTERFACE_AGE += 1;
#   LIBMONAPH_BINARY_AGE += 1;
# if any functions have been added, set LIBMONAPH_INTERFACE_AGE to 0.
# if backwards compatibility has been broken,
# set LIBMONAPH_BINARY_AGE and LIBMONAPH_INTERFACE_AGE to 0.

m4_define([monacore_major_version], [0])
m4_define([monacore_minor_version], [1])
m4_define([monacore_micro_version], [0])
m4_define([monacore_real_version],
          [monacore_major_version.monacore_minor_version.monacore_micro_version])
m4_define([monacore_version], [monacore_real_version])
m4_define([monacore_interface_age], [0])
m4_define([monacore_binary_age], [0])

m4_define([monacore_unstable],
          m4_if(m4_eval(monacore_minor_version % 2), [1], [yes], [no]))
m4_define([monacore_full_name], [The MONA library])

AC_INIT([monacore], [monacore_version], [wollny@eva.mpg.de])
AC_CONFIG_SRCDIR([mona/core/defines.hh])

AM_INIT_AUTOMAKE(no-define)
AC_CONFIG_HEADER(config.h)

MONACORE_MAJOR_VERSION=monacore_major_version
MONACORE_MINOR_VERSION=monacore_minor_version
MONACORE_MICRO_VERSION=monacore_micro_version
MONACORE_INTERFACE_AGE=monacore_interface_age
MONACORE_BINARY_AGE=monacore_binary_age
MONACORE_VERSION=monacore_version
MONACORE_UNSTABLE=monacore_unstable
AC_SUBST(MONACORE_MAJOR_VERSION)
AC_SUBST(MONACORE_MINOR_VERSION)
AC_SUBST(MONACORE_MICRO_VERSION)
AC_SUBST(MONACORE_INTERFACE_AGE)
AC_SUBST(MONACORE_BINARY_AGE)
AC_SUBST(MONACORE_VERSION)
AC_SUBST(MONACORE_UNSTABLE)

dnl The symbol MONACORE_UNSTABLE is defined above for substitution in
dnl Makefiles and conditionally defined here as a preprocessor symbol.
if test "x$MONACORE_UNSTABLE" = "xyes"; then
  AC_DEFINE(MONACORE_UNSTABLE,1,
            [Define to 1 if this is an unstable version of the monacore])
fi

# libtool versioning
m4_define([lt_release], [monacore_major_version.monacore_minor_version])
m4_define([lt_current], [m4_eval(monacore_micro_version - monacore_interface_age)])
m4_define([lt_revision], [monacore_interface_age])
m4_define([lt_age], [m4_eval(monacore_binary_age - monacore_interface_age)])
LT_RELEASE=lt_release
LT_CURRENT=lt_current
LT_REVISION=lt_revision
LT_AGE=lt_age
LT_VERSION_INFO="lt_current:lt_revision:lt_age"
LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
AC_SUBST(LT_RELEASE)
AC_SUBST(LT_CURRENT)
AC_SUBST(LT_REVISION)
AC_SUBST(LT_AGE)
AC_SUBST(LT_VERSION_INFO)

dnl Initialize maintainer mode
AM_MAINTAINER_MODE

# some generic stuff
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET


AC_SUBST(define_DEBUG_OUTPUT)

# appreciate aclocal flags
ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"

dnl Initialize CC
AC_PROG_CC
AM_PROG_CC_STDC

dnl Initialize CXX
AC_PROG_CXX

dnl Initialize libtool
AC_PROG_LIBTOOL

# Checks for system header files.
AC_HEADER_DIRENT
AC_HEADER_STDC

# Checks for typedefs, structures, and compiler characteristics.
AC_HEADER_STDBOOL
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T

# Check for doxygen
AC_CHECK_PROG(have_doxygen,doxygen,"yes","no")
if test "x$have_doxygen" = "xyes"; then
    AC_CHECK_PROG(HAVE_DOT,dot,"YES","NO")	
    AC_SUBST(HAVE_DOT)
else
    AC_MSG_ERROR([
    *** Doxygen is not installesd on your computer, though it is 
    ***	required to build the documentation of this package. 
    *** The latest version of doxygen is always available from 
    *** http://www.doxygen.org])
fi


PKG_CHECK_MODULES(GMODULE, "gmodule-2.0",, exit); 
CXXFLAGS="$CXXFLAGS $GMODULE_CFLAGS"
AC_SUBST(GMODULE_LIBS)

ACX_POPT_CONST


# Check for libpopt
AC_CHECK_HEADERS(popt.h)
SAVE_LIBS="$LIBS"
AC_CHECK_LIB(popt, poptGetContext,
	POPT_LIB="-lpopt"; LIBS="$LIBS -lpopt",
	POPT_LIB=""; AC_MSG_ERROR([popt library not found]))
AC_SUBST(POPT_LIB)
ACX_POPT_CONST
LIBS="$SAVE_LIBS"

dnl Checks some more functions.
AC_LANG(C++)

dnl check some boost functionality

AX_BOOST_BASE([1.33])
CXXFLAGS="$CXXFLAGS $BOOST_CPPFLAGS"

AX_BOOST_FILESYSTEM
AX_BOOST_REGEX

LIBS="$LIBS $BOOST_LDFLAGS"

dnl Set PACKAGE PREFIX
if test "x${prefix}" = "xNONE"; then
	packageprefix=${ac_default_prefix}
else
	packageprefix=${prefix}
fi

dnl set the standard flags for this library
monacore_cflags="-I$prefix/include/mona-${LT_RELEASE}"
monacore_libs="-L$prefix/lib -lmonacore $GMODULE_LIBS $BOOST_LDFLAGS $BOOST_FILESYSTEM_LIB $BOOST_REGEX_LIB $POPT_LIB"

AC_SUBST(monacore_cflags)
AC_SUBST(monacore_libs)

PLUGIN_SEARCH_PATH=${prefix}/lib/$PACKAGE_NAME/$PACKAGE_VERSION/plugins
echo $PLUGIN_SEARCH_PATH

PLUGIN_HOME_SEARCH_PATH=".$PACKAGE_NAME/plugins"
echo $PLUGIN_HOME_SEARCH_PATH

AC_DEFINE_UNQUOTED(PLUGIN_SEARCH_PATH, "$PLUGIN_SEARCH_PATH", [Package plugin search path])
AC_DEFINE_UNQUOTED(PLUGIN_HOME_SEARCH_PATH, "$PLUGIN_HOME_SEARCH_PATH", [Package plugin search path in home directory])


AC_CONFIG_FILES([Makefile
		 monacore.pc
                 mona/Makefile
		 mona/2d/Makefile
		 mona/core/Makefile
		 mona/io/Makefile
		 plugins/Makefile
		 plugins/test/Makefile
		 plugins/io/Makefile
		 plugins/io/test/Makefile
		 doc/Makefile
	])
AC_OUTPUT