Blame configure.ac

Packit 4a0280
# Autojunk script for libdbus-c++
Packit 4a0280
Packit 4a0280
AC_PREREQ(2.59)
Packit 4a0280
AC_INIT([libdbus-c++], 0.9.0, [andreas.volz@tux-style.com])
Packit 4a0280
Packit 4a0280
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
Packit 4a0280
AM_CONFIG_HEADER([config.h])
Packit 4a0280
AC_CONFIG_MACRO_DIR([m4])
Packit 4a0280
Packit 4a0280
AC_CANONICAL_HOST
Packit 4a0280
Packit 4a0280
AC_SUBST(PACKAGE_VERSION)
Packit 4a0280
Packit 4a0280
Packit 4a0280
# Set configuration options
Packit 4a0280
Packit 4a0280
AC_ARG_ENABLE(ecore,
Packit 4a0280
	AS_HELP_STRING([--enable-ecore],
Packit 4a0280
		[enable ecore integration]),
Packit 4a0280
	[enable_ecore=$enableval],
Packit 4a0280
	[enable_ecore=yes]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
AC_ARG_ENABLE(glib,
Packit 4a0280
	AS_HELP_STRING([--enable-glib],
Packit 4a0280
		[enable glib integration]),
Packit 4a0280
	[enable_glib=$enableval],
Packit 4a0280
	[enable_glib=yes]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
AC_ARG_ENABLE(doxygen-docs,
Packit 4a0280
	AS_HELP_STRING([--enable-doxygen-docs],
Packit 4a0280
		[build DOXYGEN documentation (requires Doxygen)]),
Packit 4a0280
	[enable_doxygen_docs=$enableval],
Packit 4a0280
 	[enable_doxygen_docs=no]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
AC_ARG_ENABLE(tests,
Packit 4a0280
	AS_HELP_STRING([--enable-tests],
Packit 4a0280
		[build tests]),
Packit 4a0280
	[enable_tests=$enableval],
Packit 4a0280
 	[enable_tests=yes]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
AC_ARG_ENABLE(examples,
Packit 4a0280
	AS_HELP_STRING([--enable-examples],
Packit 4a0280
		[build examples]),
Packit 4a0280
	[enable_examples=$enableval],
Packit 4a0280
 	[enable_examples=yes]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
AC_CHECK_FUNCS(clock_gettime, [], [
Packit 4a0280
  AC_CHECK_LIB(rt, clock_gettime, [
Packit 4a0280
    AC_DEFINE(HAVE_CLOCK_GETTIME, 1)
Packit 4a0280
    RT_LIBS="-lrt"
Packit 4a0280
  ])
Packit 4a0280
])
Packit 4a0280
AC_SUBST(RT_LIBS)
Packit 4a0280
Packit 4a0280
# Check for programs
Packit 4a0280
Packit 4a0280
AC_LANG_CPLUSPLUS
Packit 4a0280
Packit 4a0280
AC_PROG_CC
Packit 4a0280
AC_PROG_CXX
Packit 4a0280
Packit 4a0280
CXX_FOR_BUILD=${CXX_FOR_BUILD-${CXX}}
Packit 4a0280
AC_SUBST(CXX_FOR_BUILD)
Packit 4a0280
Packit 4a0280
AM_PROG_LIBTOOL
Packit 4a0280
Packit 4a0280
PKG_PROG_PKG_CONFIG
Packit 4a0280
Packit 4a0280
Packit 4a0280
AC_MSG_CHECKING([whether $CXX supports symbol visibility])
Packit 4a0280
Packit 4a0280
vtest=`$CXX --help --verbose 2>&1 | grep fvisibility`
Packit 4a0280
Packit 4a0280
if test -n "$vtest"; then
Packit 4a0280
	AC_MSG_RESULT(yes)
Packit 4a0280
Packit 4a0280
	AC_DEFINE(GCC_HASCLASSVISIBILITY, 1, [to enable hidden symbols])
Packit 4a0280
	CXXFLAGS="$CXXFLAGS -fvisibility=hidden"
Packit 4a0280
else
Packit 4a0280
	AC_MSG_RESULT(no)
Packit 4a0280
fi 
Packit 4a0280
Packit 4a0280
Packit 4a0280
# Check for dependencies
Packit 4a0280
Packit 4a0280
DBUS_REQUIRED_VERSION=0.60
Packit 4a0280
PKG_CHECK_MODULES(dbus, [dbus-1 >= $DBUS_REQUIRED_VERSION],,
Packit 4a0280
	AC_MSG_ERROR([You need the DBus libraries (version 0.6 or better)]
Packit 4a0280
	[http://www.freedesktop.org/wiki/Software_2fdbus])
Packit 4a0280
)
Packit 4a0280
AC_SUBST(dbus_CFLAGS)
Packit 4a0280
AC_SUBST(dbus_LIBS)
Packit 4a0280
Packit 4a0280
DBUS_API_STABLE_VERSION=1.0.0
Packit 4a0280
PKG_CHECK_EXISTS([dbus-1 < $DBUS_API_STABLE_VERSION],
Packit 4a0280
	[AC_DEFINE(DBUS_API_SUBJECT_TO_CHANGE, , [unstable DBus])]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
DBUS_THREADS_INIT_DEFAULT_VERSION=0.93
Packit 4a0280
PKG_CHECK_EXISTS([dbus-1 >= $DBUS_THREADS_INIT_DEFAULT_VERSION],
Packit 4a0280
	[AC_DEFINE(DBUS_HAS_THREADS_INIT_DEFAULT, , [dbus_threads_init_default (needs DBus >= 0.93)])]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
DBUS_RECURSIVE_MUTEX_VERSION=0.95
Packit 4a0280
PKG_CHECK_EXISTS([dbus-1 >= $DBUS_RECURSIVE_MUTEX_VERSION],
Packit 4a0280
	[AC_DEFINE(DBUS_HAS_RECURSIVE_MUTEX, , [DBus supports recursive mutexes (needs DBus >= 0.95)])]
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
Packit 4a0280
if test "$enable_glib" = "yes" ; then
Packit 4a0280
PKG_CHECK_MODULES([glib], glib-2.0)
Packit 4a0280
AC_SUBST(glib_CFLAGS)
Packit 4a0280
AC_SUBST(glib_LIBS)
Packit 4a0280
AM_CONDITIONAL(ENABLE_GLIB, test 1 = 1)
Packit 4a0280
PKG_CHECK_MODULES([gtkmm], gtkmm-2.4,
Packit 4a0280
	AM_CONDITIONAL(HAVE_GTKMM, test 1 = 1),
Packit 4a0280
	AM_CONDITIONAL(HAVE_GTKMM, test 0 = 1)
Packit 4a0280
)
Packit 4a0280
AC_SUBST(gtkmm_CFLAGS)
Packit 4a0280
AC_SUBST(gtkmm_LIBS)
Packit 4a0280
else
Packit 4a0280
AM_CONDITIONAL(ENABLE_GLIB, test 0 = 1)
Packit 4a0280
AM_CONDITIONAL(HAVE_GTKMM, test 0 = 1)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
if test "$enable_ecore" = "yes" ; then
Packit 4a0280
PKG_CHECK_MODULES([ecore], ecore)
Packit 4a0280
AC_SUBST(ecore_CFLAGS)
Packit 4a0280
AC_SUBST(ecore_LIBS)
Packit 4a0280
AM_CONDITIONAL(ENABLE_ECORE, test 1 = 1)
Packit 4a0280
else
Packit 4a0280
AM_CONDITIONAL(ENABLE_ECORE, test 0 = 1)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
if test "$enable_tests" = "yes" ; then
Packit 4a0280
AM_CONDITIONAL(ENABLE_TESTS, test 1 = 1)
Packit 4a0280
else
Packit 4a0280
AM_CONDITIONAL(ENABLE_TESTS, test 0 = 1)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
if test "$enable_examples" = "yes" ; then
Packit 4a0280
AM_CONDITIONAL(ENABLE_EXAMPLES, test 1 = 1)
Packit 4a0280
else
Packit 4a0280
AM_CONDITIONAL(ENABLE_EXAMPLES, test 0 = 1)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
AC_CHECK_LIB([expat], XML_ParserCreate_MM,
Packit 4a0280
   	[AC_CHECK_HEADERS(expat.h, have_expat=true, have_expat=false)],
Packit 4a0280
	have_expat=false)
Packit 4a0280
Packit 4a0280
if ! $have_expat; then
Packit 4a0280
	AC_MSG_ERROR([You need the eXpat xml parser]
Packit 4a0280
		[http://expat.sourceforge.net/])
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
xml_CFLAGS=
Packit 4a0280
xml_LIBS=-lexpat
Packit 4a0280
Packit 4a0280
AC_SUBST(xml_CFLAGS)
Packit 4a0280
AC_SUBST(xml_LIBS)
Packit 4a0280
Packit 4a0280
ACX_PTHREAD
Packit 4a0280
if test x"$acx_pthread_ok" = xyes; then
Packit 4a0280
	AC_DEFINE(HAVE_PTHREAD_H, 1, [Define to enable pthread support])
Packit 4a0280
	AM_CONDITIONAL(HAVE_PTHREAD, test x"$acx_pthread_ok" = xyes)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
# Doxygen Documentation
Packit 4a0280
Packit 4a0280
AC_PATH_PROG(DOXYGEN, doxygen, no)
Packit 4a0280
Packit 4a0280
AC_MSG_CHECKING([whether to build Doxygen documentation])
Packit 4a0280
Packit 4a0280
if test "$DOXYGEN" = "no" ; then
Packit 4a0280
	have_doxygen=no
Packit 4a0280
else
Packit 4a0280
	have_doxygen=yes
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
if test "$enable_doxygen_docs" = "auto" ; then
Packit 4a0280
	enable_doxygen_docs=no
Packit 4a0280
Packit 4a0280
	AC_MSG_RESULT(no)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
if test "$enable_doxygen_docs" = "yes" ; then
Packit 4a0280
	if test "$have_doxygen" = "no"; then
Packit 4a0280
		AC_MSG_ERROR([Building Doxygen docs explicitly required, but Doxygen not found])
Packit 4a0280
	fi
Packit 4a0280
Packit 4a0280
	AC_MSG_RESULT(yes)
Packit 4a0280
fi
Packit 4a0280
Packit 4a0280
AM_CONDITIONAL(DBUS_DOXYGEN_DOCS_ENABLED, test "$enable_doxygen_docs" = "yes")
Packit 4a0280
Packit 4a0280
# For the tools/, we need libdbus-c++ for the "build" architecture as well
Packit 4a0280
Packit 4a0280
AM_CONDITIONAL(CROSS_COMPILING, test "$cross_compiling" = "yes")
Packit 4a0280
Packit 4a0280
AC_ARG_WITH(build-libdbus-cxx,
Packit 4a0280
	AS_HELP_STRING([--with-build-libdbus-cxx],
Packit 4a0280
	[For cross compilation: path to libdbus-cxx which was compiled for the 'build' system.]),
Packit 4a0280
	[ BUILD_LIBDBUS_CXX_DIR=${withval} ],
Packit 4a0280
	[ BUILD_LIBDBUS_CXX_DIR="\$(top_builddir)" ]
Packit 4a0280
)
Packit 4a0280
AC_SUBST(BUILD_LIBDBUS_CXX_DIR)
Packit 4a0280
Packit 4a0280
# Save processed files
Packit 4a0280
Packit 4a0280
AC_OUTPUT(
Packit 4a0280
	Makefile
Packit 4a0280
        src/Makefile
Packit 4a0280
        src/integration/Makefile
Packit 4a0280
        src/integration/ecore/Makefile
Packit 4a0280
        src/integration/glib/Makefile
Packit 4a0280
        tools/Makefile
Packit 4a0280
	test/Makefile
Packit 4a0280
	test/generator/Makefile
Packit 4a0280
	test/functional/Makefile
Packit 4a0280
	test/functional/Test1/Makefile
Packit 4a0280
	data/Makefile
Packit 4a0280
	doc/Makefile
Packit 4a0280
	doc/Doxyfile
Packit 4a0280
	examples/Makefile
Packit 4a0280
	examples/properties/Makefile
Packit 4a0280
	examples/echo/Makefile
Packit 4a0280
	examples/ecore/Makefile
Packit 4a0280
	examples/hal/Makefile
Packit 4a0280
	examples/glib/Makefile
Packit 4a0280
	examples/echo_ecore/Makefile
Packit 4a0280
	dbus-c++-1.pc
Packit 4a0280
	dbus-c++-1-uninstalled.pc
Packit 4a0280
	dbus-c++-ecore-1.pc
Packit 4a0280
	dbus-c++-ecore-1-uninstalled.pc
Packit 4a0280
	dbus-c++-glib-1.pc
Packit 4a0280
	dbus-c++-glib-1-uninstalled.pc
Packit 4a0280
	libdbus-c++.spec
Packit 4a0280
)
Packit 4a0280
Packit 4a0280
echo
Packit 4a0280
echo "Build configuration:"
Packit 4a0280
echo "--------------------"
Packit 4a0280
echo
Packit 4a0280
echo "Mainloop integration support:"
Packit 4a0280
echo "ecore ......................... $enable_ecore"
Packit 4a0280
echo "glib........................... $enable_glib"
Packit 4a0280
echo
Packit 4a0280
echo "Optional build items:"
Packit 4a0280
echo "build tests.................... $enable_tests"
Packit 4a0280
echo "build examples................. $enable_examples"
Packit 4a0280
echo "build doxygen documentation.... $enable_doxygen_docs"
Packit 4a0280
echo "Cross Compiling activated...... $cross_compiling"
Packit 4a0280
echo "PThread support found.......... $acx_pthread_ok"
Packit 4a0280
echo
Packit 4a0280