Skip to content
Snippets Groups Projects
configure.ac 4.03 KiB
Newer Older
Olivier Crête's avatar
Olivier Crête committed


dnl releases only do -Wall, cvs and prerelease does -Werror too
dnl use a three digit version number for releases, and four for cvs/prerelease
Youness Alaoui's avatar
Youness Alaoui committed
AC_INIT(libnice, 0.1.1)
LIBNICE_RELEASE="yes"
AC_CONFIG_SRCDIR([agent/agent.c])
Olivier Crête's avatar
Olivier Crête committed
AC_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE([-Wall])
AC_CONFIG_FILES([
	Makefile
	agent/Makefile
	stun/tests/Makefile
Dafydd Harries's avatar
Dafydd Harries committed
	nice/Makefile
	random/Makefile
Youness Alaoui's avatar
Youness Alaoui committed
	docs/Makefile
	docs/reference/Makefile
	docs/reference/libnice/Makefile
Olivier Crête's avatar
Olivier Crête committed

# Set the libtool C/A/R version info
Youness Alaoui's avatar
Youness Alaoui committed
#    If the source code was changed, but there were no interface changes:
#      Increment REVISION.
#    If there was a compatible interface change:
#      Increment CURRENT and AGE. Set REVISION to 0
#    If there was an incompatible interface change:
#      Increment CURRENT. Set AGE and REVISION to 0
Youness Alaoui's avatar
Youness Alaoui committed
LIBNICE_CURRENT=10
Youness Alaoui's avatar
Youness Alaoui committed
LIBNICE_REVISION=1
Youness Alaoui's avatar
Youness Alaoui committed
LIBNICE_AGE=0
LIBNICE_LIBVERSION=${LIBNICE_CURRENT}:${LIBNICE_REVISION}:${LIBNICE_AGE}
LIBNICE_LT_LDFLAGS="-version-info ${LIBNICE_LIBVERSION}"
AC_SUBST(LIBNICE_LT_LDFLAGS)
dnl use pretty build output with automake >= 1.11
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])],
  [AM_DEFAULT_VERBOSITY=1
   AC_SUBST(AM_DEFAULT_VERBOSITY)])


Olivier Crête's avatar
Olivier Crête committed
# Checks for programs.

AC_PROG_CC
AC_USE_SYSTEM_EXTENSIONS
Olivier Crête's avatar
Olivier Crête committed

# Checks for compiler features

AC_C_RESTRICT
AC_HEADER_ASSERT
AC_HEADER_STDBOOL
AC_DEFINE([_FORTIFY_SOURCE], [2], [Define to `2' to get GNU/libc warnings.])
AC_DEFINE([NICEAPI_EXPORT], [ ], [Public library function implementation])
AC_CHECK_HEADERS([arpa/inet.h net/in.h ifaddrs.h], \
		      [AC_DEFINE(HAVE_GETIFADDRS, [1], \
		       [Whether getifaddrs() is available on the system])])
LIBNICE_CFLAGS="-Wall"
dnl if asked for, add -Werror if supported
if test "x$LIBNICE_RELEASE" != "xyes"; then
  LIBNICE_CFLAGS="$LIBNICE_CFLAGS -Werror"
AC_SUBST(LIBNICE_CFLAGS)
AC_MSG_NOTICE([set LIBNICE_CFLAGS to $LIBNICE_CFLAGS])
Olivier Crête's avatar
Olivier Crête committed
# Checks for libraries.
AC_CHECK_LIB(rt, clock_gettime, [LIBRT="-lrt"], [LIBRT=""])
AC_SUBST(LIBRT)

PKG_CHECK_MODULES(GLIB, [dnl
	glib-2.0 >= 2.10 dnl
	gobject-2.0 >= 2.10 dnl
Youness Alaoui's avatar
Youness Alaoui committed
	gthread-2.0 >= 2.10 dnl
Olivier Crête's avatar
Olivier Crête committed

AC_ARG_WITH(gstreamer, 
	AC_HELP_STRING([--with-gstreamer], [use GStreamer]),
	[with_gstreamer=${withval}],
	[with_gstreamer=auto])

AS_IF([test "$with_gstreamer" != no], [
	PKG_CHECK_MODULES(GST, [
		gstreamer-0.10 >= 0.10.0
		gstreamer-base-0.10 >= 0.10.0
		],
		[
		with_gstreamer=yes
		GST_MAJORMINOR=0.10
		gstplugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR"
			AC_MSG_ERROR([GStreamer support was requested but GStreamer libraries are not available])
AC_SUBST(gstplugindir)

AM_CONDITIONAL(WITH_GSTREAMER, test "$with_gstreamer" = yes)
AC_ARG_ENABLE([gupnp],
        AC_HELP_STRING([--disable-gupnp], [Disable GUPnP IGD support]),
        [case "${enableval}" in
            yes) WANT_GUPNP=yes ;;
            no)  WANT_GUPNP=no ;;
            *) AC_MSG_ERROR(bad value ${enableval} for --enable-gupnp) ;;
        esac],
        WANT_GUPNP=test)

HAVE_GUPNP=no
if test "x$WANT_GUPNP" != "xno"; then
   PKG_CHECK_MODULES(GUPNP, gupnp-igd-1.0 >= $GUPNP_IGD_REQUIRED,
    [ HAVE_GUPNP=yes ],
    [ HAVE_GUPNP=no ])
fi
if test "x$WANT_GUPNP" = "xyes" && test "x$HAVE_GUPNP" = "xno"; then
   AC_ERROR([Requested GUPnP IGD, but it is not available])
fi

if test "x$HAVE_GUPNP" = "xyes"; then
   AC_DEFINE(HAVE_GUPNP,,[Have the GUPnP IGD library])
fi

AC_SUBST(HAVE_GUPNP)

dnl Test coverage
AC_ARG_ENABLE([coverage],
	[AS_HELP_STRING([--enable-coverage],
		[build for test coverage (default disabled)])],,
	[enable_coverage="no"])
AS_IF([test "${enable_coverage}" != "no"], [
	CFLAGS="${CFLAGS} -g -O0 -fprofile-arcs -ftest-coverage"
	LDFLAGS="-lgcov"
	CCACHE_DISABLE=1
])
AC_SUBST(CCACHE_DISABLE)

case $host_os in
  solaris*)
    LDFLAGS="$LDFLAGS -lsocket -lnls"
    ;;
  *)
    ;;
esac

Youness Alaoui's avatar
Youness Alaoui committed
# check for gtk-doc
GTK_DOC_CHECK(1.9)
AC_CONFIG_MACRO_DIR(m4)
Olivier Crête's avatar
Olivier Crête committed
AC_OUTPUT