2008-12-22 05:26:32 +08:00
|
|
|
AC_PREREQ(2.60)
|
2015-04-01 05:19:33 +08:00
|
|
|
AC_INIT(bluez, 5.30)
|
2002-12-25 09:05:59 +08:00
|
|
|
|
2012-12-12 00:31:58 +08:00
|
|
|
AM_INIT_AUTOMAKE([foreign subdir-objects color-tests silent-rules
|
|
|
|
tar-pax no-dist-gzip dist-xz])
|
2013-01-04 09:21:03 +08:00
|
|
|
AC_CONFIG_HEADERS(config.h)
|
2012-12-05 19:22:49 +08:00
|
|
|
AC_USE_SYSTEM_EXTENSIONS
|
2002-03-09 05:10:06 +08:00
|
|
|
|
2009-07-01 09:39:45 +08:00
|
|
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
|
|
|
|
2004-04-02 07:28:53 +08:00
|
|
|
AM_MAINTAINER_MODE
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_PREFIX_DEFAULT(/usr/local)
|
2009-07-07 16:28:07 +08:00
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
PKG_PROG_PKG_CONFIG
|
2002-03-23 03:45:46 +08:00
|
|
|
|
2008-12-23 13:04:54 +08:00
|
|
|
COMPILER_FLAGS
|
|
|
|
|
2004-04-02 07:28:53 +08:00
|
|
|
AC_LANG_C
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_C_RESTRICT
|
|
|
|
|
2002-03-09 05:10:06 +08:00
|
|
|
AC_PROG_CC
|
2009-08-23 15:40:59 +08:00
|
|
|
AM_PROG_CC_C_O
|
2008-06-16 08:49:28 +08:00
|
|
|
AC_PROG_CC_PIE
|
2002-03-09 05:10:06 +08:00
|
|
|
AC_PROG_INSTALL
|
2012-12-12 00:16:59 +08:00
|
|
|
AC_PROG_MKDIR_P
|
2003-03-31 18:05:12 +08:00
|
|
|
|
2004-07-07 23:56:21 +08:00
|
|
|
m4_define([_LT_AC_TAGCONFIG], [])
|
2004-04-02 07:28:53 +08:00
|
|
|
m4_ifdef([AC_LIBTOOL_TAGS], [AC_LIBTOOL_TAGS([])])
|
2004-03-03 11:56:18 +08:00
|
|
|
|
2005-02-10 08:21:01 +08:00
|
|
|
AC_DISABLE_STATIC
|
2004-03-03 11:56:18 +08:00
|
|
|
AC_PROG_LIBTOOL
|
2002-03-09 05:10:06 +08:00
|
|
|
|
2014-12-15 20:28:54 +08:00
|
|
|
if (test "$USE_MAINTAINER_MODE" = "yes"); then
|
|
|
|
AC_CHECK_PROG(enable_coverage, [lcov], [yes], [no])
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(COVERAGE, test "${enable_coverage}" = "yes")
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
MISC_FLAGS
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(threads, AC_HELP_STRING([--enable-threads],
|
|
|
|
[enable threading support]), [enable_threads=${enableval}])
|
|
|
|
|
|
|
|
AC_CHECK_FUNC(signalfd, dummy=yes,
|
|
|
|
AC_MSG_ERROR(signalfd support is required))
|
|
|
|
|
2013-09-10 05:21:49 +08:00
|
|
|
AC_CHECK_LIB(rt, clock_gettime, dummy=yes,
|
2013-09-03 02:25:54 +08:00
|
|
|
AC_MSG_ERROR(realtime clock support is required))
|
|
|
|
|
|
|
|
AC_CHECK_LIB(pthread, pthread_create, dummy=yes,
|
|
|
|
AC_MSG_ERROR(posix thread support is required))
|
|
|
|
|
2008-10-19 01:03:30 +08:00
|
|
|
AC_CHECK_LIB(dl, dlopen, dummy=yes,
|
|
|
|
AC_MSG_ERROR(dynamic linking loader is required))
|
|
|
|
|
2015-02-28 03:27:38 +08:00
|
|
|
AC_CHECK_HEADERS(linux/types.h linux/if_alg.h)
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.28, dummy=yes,
|
|
|
|
AC_MSG_ERROR(GLib >= 2.28 is required))
|
|
|
|
AC_SUBST(GLIB_CFLAGS)
|
|
|
|
AC_SUBST(GLIB_LIBS)
|
|
|
|
|
|
|
|
if (test "${enable_threads}" = "yes"); then
|
|
|
|
AC_DEFINE(NEED_THREADS, 1, [Define if threading support is required])
|
|
|
|
PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= 2.16, dummy=yes,
|
|
|
|
AC_MSG_ERROR(GThread >= 2.16 is required))
|
|
|
|
GLIB_CFLAGS="$GLIB_CFLAGS $GTHREAD_CFLAGS"
|
|
|
|
GLIB_LIBS="$GLIB_LIBS $GTHREAD_LIBS"
|
|
|
|
fi
|
2004-08-13 00:03:09 +08:00
|
|
|
|
2014-01-20 21:54:47 +08:00
|
|
|
PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.6, dummy=yes,
|
|
|
|
AC_MSG_ERROR(D-Bus >= 1.6 is required))
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_SUBST(DBUS_CFLAGS)
|
|
|
|
AC_SUBST(DBUS_LIBS)
|
|
|
|
|
2012-12-11 22:24:18 +08:00
|
|
|
AC_ARG_WITH([dbusconfdir], AC_HELP_STRING([--with-dbusconfdir=DIR],
|
|
|
|
[path to D-Bus configuration directory]),
|
|
|
|
[path_dbusconfdir=${withval}])
|
|
|
|
if (test -z "${path_dbusconfdir}"); then
|
|
|
|
AC_MSG_CHECKING([D-Bus configuration directory])
|
|
|
|
path_dbusconfdir="`$PKG_CONFIG --variable=sysconfdir dbus-1`"
|
|
|
|
if (test -z "${path_dbusconfdir}"); then
|
|
|
|
AC_MSG_ERROR([D-Bus configuration directory is required])
|
|
|
|
fi
|
|
|
|
AC_MSG_RESULT([${path_dbusconfdir}])
|
2012-12-11 04:31:55 +08:00
|
|
|
fi
|
2013-02-11 05:20:50 +08:00
|
|
|
AC_SUBST(DBUS_CONFDIR, [${path_dbusconfdir}])
|
2004-08-13 00:00:35 +08:00
|
|
|
|
2012-12-12 00:55:24 +08:00
|
|
|
AC_ARG_WITH([dbussystembusdir], AC_HELP_STRING([--with-dbussystembusdir=DIR],
|
|
|
|
[path to D-Bus system bus services directory]),
|
|
|
|
[path_dbussystembusdir=${withval}])
|
|
|
|
if (test -z "${path_dbussystembusdir}"); then
|
|
|
|
AC_MSG_CHECKING([D-Bus system bus services dir])
|
|
|
|
path_dbussystembusdir="`$PKG_CONFIG --variable=system_bus_services_dir dbus-1`"
|
2012-12-19 04:54:25 +08:00
|
|
|
if (test -z "${path_dbussystembusdir}"); then
|
2012-12-12 00:55:24 +08:00
|
|
|
AC_MSG_ERROR([D-Bus system bus services directory is required])
|
|
|
|
fi
|
|
|
|
AC_MSG_RESULT([${path_dbussystembusdir}])
|
|
|
|
fi
|
2013-02-11 05:20:50 +08:00
|
|
|
AC_SUBST(DBUS_SYSTEMBUSDIR, [${path_dbussystembusdir}])
|
2012-12-12 00:55:24 +08:00
|
|
|
|
2012-12-19 04:53:30 +08:00
|
|
|
AC_ARG_WITH([dbussessionbusdir], AC_HELP_STRING([--with-dbussessionbusdir=DIR],
|
|
|
|
[path to D-Bus session bus services directory]),
|
|
|
|
[path_dbussessionbusdir=${withval}])
|
|
|
|
if (test -z "${path_dbussessionbusdir}"); then
|
|
|
|
AC_MSG_CHECKING([D-Bus session bus services dir])
|
|
|
|
path_dbussessionbusdir="`$PKG_CONFIG --variable=session_bus_services_dir dbus-1`"
|
|
|
|
if (test -z "${path_dbussessionbusdir}"); then
|
|
|
|
AC_MSG_ERROR([D-Bus session bus services directory is required])
|
|
|
|
fi
|
|
|
|
AC_MSG_RESULT([${path_dbussessionbusdir}])
|
|
|
|
fi
|
2013-02-11 05:20:50 +08:00
|
|
|
AC_SUBST(DBUS_SESSIONBUSDIR, [${path_dbussessionbusdir}])
|
2012-12-19 04:53:30 +08:00
|
|
|
|
2012-12-11 05:34:47 +08:00
|
|
|
AC_ARG_ENABLE(library, AC_HELP_STRING([--enable-library],
|
|
|
|
[install Bluetooth library]), [enable_library=${enableval}])
|
|
|
|
AM_CONDITIONAL(LIBRARY, test "${enable_library}" = "yes")
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_ARG_ENABLE(test, AC_HELP_STRING([--enable-test],
|
|
|
|
[enable test/example scripts]), [enable_test=${enableval}])
|
|
|
|
AM_CONDITIONAL(TEST, test "${enable_test}" = "yes")
|
|
|
|
|
2012-12-11 08:37:52 +08:00
|
|
|
AC_ARG_ENABLE(tools, AC_HELP_STRING([--disable-tools],
|
|
|
|
[disable Bluetooth tools]), [enable_tools=${enableval}])
|
|
|
|
AM_CONDITIONAL(TOOLS, test "${enable_tools}" != "no")
|
2012-12-11 04:31:55 +08:00
|
|
|
|
2012-12-13 06:19:43 +08:00
|
|
|
AC_ARG_ENABLE(monitor, AC_HELP_STRING([--disable-monitor],
|
|
|
|
[disable Bluetooth monitor]), [enable_monitor=${enableval}])
|
|
|
|
AM_CONDITIONAL(MONITOR, test "${enable_monitor}" != "no")
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_ARG_ENABLE(udev, AC_HELP_STRING([--disable-udev],
|
2012-12-11 04:56:07 +08:00
|
|
|
[disable udev device support]), [enable_udev=${enableval}])
|
2012-12-11 08:37:52 +08:00
|
|
|
if (test "${enable_tools}" != "no" && test "${enable_udev}" != "no"); then
|
2014-05-27 19:25:15 +08:00
|
|
|
PKG_CHECK_MODULES(UDEV, libudev >= 172, dummy=yes,
|
|
|
|
AC_MSG_ERROR(libudev >= 172 is required))
|
2013-02-11 05:20:51 +08:00
|
|
|
AC_SUBST(UDEV_CFLAGS)
|
|
|
|
AC_SUBST(UDEV_LIBS)
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_CHECK_LIB(udev, udev_hwdb_new,
|
|
|
|
AC_DEFINE(HAVE_UDEV_HWDB_NEW, 1,
|
|
|
|
[Define to 1 if you have the udev_hwdb_new() function.]))
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(UDEV, test "${enable_udev}" != "no")
|
|
|
|
|
2012-12-11 22:05:24 +08:00
|
|
|
AC_ARG_WITH([udevdir], AC_HELP_STRING([--with-udevdir=DIR],
|
|
|
|
[path to udev directory]), [path_udevdir=${withval}])
|
|
|
|
if (test "${enable_udev}" != "no" && test -z "${path_udevdir}"); then
|
|
|
|
AC_MSG_CHECKING([udev directory])
|
|
|
|
path_udevdir="`$PKG_CONFIG --variable=udevdir udev`"
|
|
|
|
if (test -z "${path_udevdir}"); then
|
2012-12-11 22:26:09 +08:00
|
|
|
AC_MSG_ERROR([udev directory is required])
|
2012-12-11 22:05:24 +08:00
|
|
|
fi
|
|
|
|
AC_MSG_RESULT([${path_udevdir}])
|
|
|
|
fi
|
2013-02-11 05:20:50 +08:00
|
|
|
AC_SUBST(UDEV_DIR, [${path_udevdir}])
|
2012-12-11 22:05:24 +08:00
|
|
|
|
2012-12-11 08:37:52 +08:00
|
|
|
AM_CONDITIONAL(HID2HCI, test "${enable_tools}" != "no" &&
|
2013-08-29 05:15:22 +08:00
|
|
|
test "${enable_udev}" != "no")
|
2012-12-11 18:49:45 +08:00
|
|
|
|
|
|
|
AC_ARG_ENABLE(cups, AC_HELP_STRING([--disable-cups],
|
|
|
|
[disable CUPS printer support]), [enable_cups=${enableval}])
|
|
|
|
AM_CONDITIONAL(CUPS, test "${enable_cups}" != "no")
|
2012-12-11 04:31:55 +08:00
|
|
|
|
2012-12-11 04:56:44 +08:00
|
|
|
AC_ARG_ENABLE(obex, AC_HELP_STRING([--disable-obex],
|
|
|
|
[disable OBEX profile support]), [enable_obex=${enableval}])
|
|
|
|
if (test "${enable_obex}" != "no"); then
|
|
|
|
PKG_CHECK_MODULES(ICAL, libical, dummy=yes,
|
|
|
|
AC_MSG_ERROR(libical is required))
|
2013-02-11 05:20:51 +08:00
|
|
|
AC_SUBST(ICAL_CFLAGS)
|
|
|
|
AC_SUBST(ICAL_LIBS)
|
2012-12-11 04:56:44 +08:00
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(OBEX, test "${enable_obex}" != "no")
|
|
|
|
|
2012-12-11 08:33:53 +08:00
|
|
|
AC_ARG_ENABLE(client, AC_HELP_STRING([--disable-client],
|
|
|
|
[disable command line client]), [enable_client=${enableval}])
|
2012-12-12 05:19:13 +08:00
|
|
|
AM_CONDITIONAL(CLIENT, test "${enable_client}" != "no")
|
|
|
|
|
|
|
|
if (test "${enable_client}" != "no"); then
|
|
|
|
AC_CHECK_HEADERS(readline/readline.h, enable_readline=yes,
|
|
|
|
AC_MSG_ERROR(readline header files are required))
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(READLINE, test "${enable_readline}" = "yes")
|
2012-12-11 08:33:53 +08:00
|
|
|
|
2012-12-11 21:52:23 +08:00
|
|
|
AC_ARG_ENABLE(systemd, AC_HELP_STRING([--disable-systemd],
|
|
|
|
[disable systemd integration]), [enable_systemd=${enableval}])
|
2012-12-11 22:09:31 +08:00
|
|
|
AM_CONDITIONAL(SYSTEMD, test "${enable_systemd}" != "no")
|
|
|
|
|
2012-12-11 21:52:23 +08:00
|
|
|
AC_ARG_WITH([systemdsystemunitdir],
|
|
|
|
AC_HELP_STRING([--with-systemdsystemunitdir=DIR],
|
2012-12-11 22:09:31 +08:00
|
|
|
[path to systemd system unit directory]),
|
2012-12-11 21:52:23 +08:00
|
|
|
[path_systemunitdir=${withval}])
|
|
|
|
if (test "${enable_systemd}" != "no" && test -z "${path_systemunitdir}"); then
|
2013-06-01 20:49:19 +08:00
|
|
|
AC_MSG_CHECKING([systemd system unit dir])
|
2012-12-11 21:52:23 +08:00
|
|
|
path_systemunitdir="`$PKG_CONFIG --variable=systemdsystemunitdir systemd`"
|
|
|
|
if (test -z "${path_systemunitdir}"); then
|
2012-12-11 22:26:09 +08:00
|
|
|
AC_MSG_ERROR([systemd system unit directory is required])
|
2012-12-11 21:52:23 +08:00
|
|
|
fi
|
|
|
|
AC_MSG_RESULT([${path_systemunitdir}])
|
|
|
|
fi
|
2013-02-11 05:20:50 +08:00
|
|
|
AC_SUBST(SYSTEMD_SYSTEMUNITDIR, [${path_systemunitdir}])
|
2012-12-11 22:09:31 +08:00
|
|
|
|
2012-12-11 21:52:23 +08:00
|
|
|
AC_ARG_WITH([systemduserunitdir],
|
|
|
|
AC_HELP_STRING([--with-systemduserunitdir=DIR],
|
2012-12-11 22:09:31 +08:00
|
|
|
[path to systemd user unit directory]),
|
2012-12-11 21:52:23 +08:00
|
|
|
[path_userunitdir=${withval}])
|
|
|
|
if (test "${enable_systemd}" != "no" && test -z "${path_userunitdir}"); then
|
2013-06-01 20:49:19 +08:00
|
|
|
AC_MSG_CHECKING([systemd user unit dir])
|
2012-12-11 21:52:23 +08:00
|
|
|
path_userunitdir="`$PKG_CONFIG --variable=systemduserunitdir systemd`"
|
|
|
|
if (test -z "${path_userunitdir}"); then
|
2012-12-11 22:26:09 +08:00
|
|
|
AC_MSG_ERROR([systemd user unit directory is required])
|
2012-12-11 21:52:23 +08:00
|
|
|
fi
|
|
|
|
AC_MSG_RESULT([${path_userunitdir}])
|
|
|
|
fi
|
2013-02-11 05:20:50 +08:00
|
|
|
AC_SUBST(SYSTEMD_USERUNITDIR, [${path_userunitdir}])
|
2012-12-11 21:52:23 +08:00
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_ARG_ENABLE(datafiles, AC_HELP_STRING([--disable-datafiles],
|
|
|
|
[do not install configuration and data files]),
|
|
|
|
[enable_datafiles=${enableval}])
|
|
|
|
AM_CONDITIONAL(DATAFILES, test "${enable_datafiles}" != "no")
|
|
|
|
|
2014-07-13 05:44:22 +08:00
|
|
|
AC_ARG_ENABLE(manpages, AC_HELP_STRING([--enable-manpages],
|
|
|
|
[enable building of manual pages]),
|
|
|
|
[enable_manpages=${enableval}])
|
|
|
|
AM_CONDITIONAL(MANPAGES, test "${enable_manpages}" = "yes")
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
AC_ARG_ENABLE(experimental, AC_HELP_STRING([--enable-experimental],
|
|
|
|
[enable experimental plugins (SAP, NFC, ...)]),
|
|
|
|
[enable_experimental=${enableval}])
|
|
|
|
AM_CONDITIONAL(EXPERIMENTAL, test "${enable_experimental}" = "yes")
|
|
|
|
|
2013-11-26 06:15:48 +08:00
|
|
|
AC_ARG_ENABLE(sixaxis, AC_HELP_STRING([--enable-sixaxis],
|
|
|
|
[enable sixaxis plugin]), [enable_sixaxis=${enableval}])
|
|
|
|
AM_CONDITIONAL(SIXAXIS, test "${enable_sixaxis}" = "yes" &&
|
|
|
|
test "${enable_udev}" != "no")
|
|
|
|
|
2012-12-11 04:31:55 +08:00
|
|
|
if (test "${prefix}" = "NONE"); then
|
|
|
|
dnl no prefix and no localstatedir, so default to /var
|
|
|
|
if (test "$localstatedir" = '${prefix}/var'); then
|
|
|
|
AC_SUBST([localstatedir], ['/var'])
|
|
|
|
fi
|
|
|
|
|
|
|
|
prefix="${ac_default_prefix}"
|
|
|
|
fi
|
|
|
|
|
|
|
|
if (test "$localstatedir" = '${prefix}/var'); then
|
|
|
|
storagedir="${prefix}/var/lib/bluetooth"
|
|
|
|
else
|
|
|
|
storagedir="${localstatedir}/lib/bluetooth"
|
|
|
|
fi
|
|
|
|
AC_DEFINE_UNQUOTED(STORAGEDIR, "${storagedir}",
|
|
|
|
[Directory for the storage files])
|
|
|
|
|
|
|
|
if (test "$sysconfdir" = '${prefix}/etc'); then
|
|
|
|
configdir="${prefix}/etc/bluetooth"
|
|
|
|
else
|
|
|
|
configdir="${sysconfdir}/bluetooth"
|
|
|
|
fi
|
|
|
|
AC_DEFINE_UNQUOTED(CONFIGDIR, "${configdir}",
|
|
|
|
[Directory for the configuration files])
|
2013-05-31 06:01:55 +08:00
|
|
|
AC_SUBST(CONFIGDIR, "${configdir}")
|
2012-12-11 04:31:55 +08:00
|
|
|
|
2013-10-04 19:48:43 +08:00
|
|
|
AC_ARG_ENABLE(android, AC_HELP_STRING([--enable-android],
|
|
|
|
[enable BlueZ for Android]),
|
|
|
|
[enable_android=${enableval}])
|
|
|
|
AM_CONDITIONAL(ANDROID, test "${enable_android}" = "yes")
|
|
|
|
|
2014-01-22 18:34:45 +08:00
|
|
|
if (test "${enable_android}" = "yes"); then
|
|
|
|
PKG_CHECK_MODULES(SBC, sbc >= 1.2, dummy=yes,
|
|
|
|
AC_MSG_ERROR(SBC library >= 1.2 is required))
|
|
|
|
AC_SUBST(SBC_CFLAGS)
|
|
|
|
AC_SUBST(SBC_LIBS)
|
|
|
|
fi
|
|
|
|
|
2014-05-12 16:57:05 +08:00
|
|
|
if (test "${enable_android}" = "yes"); then
|
|
|
|
PKG_CHECK_MODULES(SPEEXDSP, speexdsp >= 1.2, dummy=yes,
|
|
|
|
AC_MSG_ERROR(SPEEXDSP library >= 1.2 is required))
|
|
|
|
AC_SUBST(SPEEXDSP_CFLAGS)
|
|
|
|
AC_SUBST(SPEEXDSP_LIBS)
|
|
|
|
fi
|
|
|
|
|
2013-12-19 20:38:29 +08:00
|
|
|
AC_DEFINE_UNQUOTED(ANDROID_STORAGEDIR, "${storagedir}/android",
|
|
|
|
[Directory for the Android daemon storage files])
|
|
|
|
|
2012-12-20 01:24:43 +08:00
|
|
|
AC_OUTPUT(Makefile src/bluetoothd.8 lib/bluez.pc)
|