Add initial unittest
[platform/core/multimedia/libmm-sound.git] / configure.ac
1 AC_PREREQ(2.52)
2
3 AC_INIT([libmm-sound], [1.0])
4 AM_INIT_AUTOMAKE([-Wall -Werror foreign])
5 AC_CONFIG_HEADERS([config.h:config.hin])
6
7 AC_CONFIG_MACRO_DIR([m4])
8
9 # Checks for programs.
10 m4_pattern_allow([AM_PROG_AR])
11 AM_PROG_AR
12 AC_PROG_CC
13 AC_PROG_CXX
14 AC_C_CONST
15 AM_PROG_CC_C_O
16 dnl AC_FUNC_MALLOC
17 AC_FUNC_MMAP
18 AC_FUNC_REALLOC
19 AC_FUNC_SELECT_ARGTYPES
20 AC_FUNC_STAT
21 AC_FUNC_VPRINTF
22 AC_HEADER_STDBOOL
23 AC_HEADER_STDC
24 AC_HEADER_TIME
25 AC_PROG_GCC_TRADITIONAL
26 AC_PROG_LIBTOOL
27 AC_SUBST(GCC_CXXFLAGS)
28
29 # Checks for libraries.
30 PKG_CHECK_MODULES(MMCOMMON, mm-common)
31 AC_SUBST(MMCOMMON_CFLAGS)
32 AC_SUBST(MMCOMMON_LIBS)
33
34 PKG_CHECK_MODULES(GLIB2, glib-2.0 gthread-2.0)
35 AC_SUBST(GLIB2_CFLAGS)
36 AC_SUBST(GLIB2_LIBS)
37
38 PKG_CHECK_MODULES(GIO, gio-2.0)
39 AC_SUBST(GIO_CFLAGS)
40 AC_SUBST(GIO_LIBS)
41
42 PKG_CHECK_MODULES(VCONF, vconf)
43 AC_SUBST(VCONF_CFLAGS)
44 AC_SUBST(VCONF_LIBS)
45
46 PKG_CHECK_MODULES(VCONF, sndfile)
47 AC_SUBST(SNDFILE_CFLAGS)
48 AC_SUBST(SNDFILE_LIBS)
49
50 AC_ARG_ENABLE(pulse, AC_HELP_STRING([--enable-pulse], [enable pulseaudio client]),
51 [
52  case "${enableval}" in
53          yes) USE_PULSE=yes ;;
54          no)  USE_PULSE=no ;;
55          *)   AC_MSG_ERROR(bad value ${enableval} for --enable-pulse) ;;
56  esac
57  ],[USE_PULSE=no])
58 if test "x$USE_PULSE" = "xyes"; then
59 PKG_CHECK_MODULES(PASIMPLE, libpulse-simple)
60 AC_SUBST(PASIMPLE_CFLAGS)
61 AC_SUBST(PASIMPLE_LIBS)
62 PKG_CHECK_MODULES(PA, libpulse)
63 AC_SUBST(PA_CFLAGS)
64 AC_SUBST(PA_LIBS)
65 fi
66 AM_CONDITIONAL([USE_PULSE], [test "x$USE_PULSE" = "xyes"])
67
68 AC_ARG_ENABLE(lwipc, AC_HELP_STRING([--enable-lwipc], [enable light weight ipc]),
69 [
70  case "${enableval}" in
71          yes) USE_LWIPC=yes ;;
72          no)  USE_LWIPC=no ;;
73          *)   AC_MSG_ERROR(bad value ${enableval} for --enable-lwipc) ;;
74  esac
75  ],[USE_LWIPC=no])
76 if test "x$USE_LWIPC" = "xyes"; then
77 PKG_CHECK_MODULES(LWIPC, lwipc)
78 AC_SUBST(LWIPC_CFLAGS)
79 AC_SUBST(LWIPC_LIBS)
80 fi
81 AM_CONDITIONAL([USE_LWIPC], [test "x$USE_LWIPC" = "xyes"])
82
83 AC_ARG_ENABLE(prelink, AC_HELP_STRING([--enable-prelink], [enable pre-link feature]),
84 [
85  case "${enableval}" in
86      yes) USE_PRELINK=yes ;;
87      no)  USE_PRELINK=no ;;
88      *)   AC_MSG_ERROR(bad value ${enableval} for --enable-prelink) ;;
89  esac
90  ],[USE_PRELINK=no])
91 AM_CONDITIONAL([USE_PRELINK], [test "x$USE_PRELINK" = "xyes"])
92
93 AC_ARG_WITH(plugindir, AS_HELP_STRING([--with-plugindir=<path>],[sound-server plugin dir]))
94 if test -z "$with_plugindir" ; then
95 PLUGIN_DIR=/usr/lib/soundplugins/
96 else
97 PLUGIN_DIR=$with_plugindir
98 fi
99 AC_SUBST(PLUGIN_DIR)
100 AC_DEFINE_UNQUOTED(PLUGIN_DIR,"$PLUGIN_DIR", [sound-server plugin dir])
101
102 AC_ARG_ENABLE(unittests, AC_HELP_STRING([--enable-unittests], [unittest build]),
103 [
104         case "${enableval}" in
105         yes) UNITTESTS_ENABLED=yes ;;
106         no)  UNITTESTS_ENABLED=no ;;
107         *)   AC_MSG_ERROR(bad value ${enableval} for --enable-unittests) ;;
108         esac
109 ],
110 [UNITTESTS_ENABLED=no])
111 AM_CONDITIONAL([UNITTESTS_ENABLED], [test "x$UNITTESTS_ENABLED" = "xyes"])
112
113 AS_IF([test "x$enable_unittests" = "xyes"], [
114         PKG_CHECK_MODULES(GTESTS, gmock)
115         AC_SUBST(GTESTS_CFLAGS)
116         AC_SUBST(GTESTS_LIBS)
117 ])
118
119 # Checks for header files.
120 AC_HEADER_STDC
121 AC_CHECK_HEADERS([fcntl.h memory.h stdlib.h string.h sys/time.h unistd.h errno.h sys/types.h sys/stat.h])
122
123 # Checks for typedefs, structures, and compiler characteristics.
124 AC_C_CONST
125 AC_TYPE_PID_T
126 AC_TYPE_SIZE_T
127
128 # Checks for library functions.
129 AC_FUNC_ALLOCA
130 AC_FUNC_FORK
131 AC_FUNC_MALLOC
132 AC_FUNC_MEMCMP
133 AC_FUNC_SELECT_ARGTYPES
134 AC_TYPE_SIGNAL
135 AC_CHECK_FUNCS([memset select])
136 AC_CONFIG_FILES([
137 common/Makefile
138 Makefile
139 server/Makefile
140 server/plugin/Makefile
141 server/plugin/wav/Makefile
142 server/plugin/tone/Makefile
143 focus_server/Makefile
144 pkgconfig/Makefile
145 pkgconfig/mm-sound.pc
146 pkgconfig/mm-keysound.pc
147 pkgconfig/mm-bootsound.pc
148 testsuite/Makefile
149 unittest/Makefile
150 ])
151 AC_OUTPUT