blob: 70d9f5d65a74a81130b7cb2402638929bcd6c173 [file] [log] [blame]
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +02001AC_PREREQ([2.65])
Harald Welte0790f032015-11-05 21:25:32 +01002AC_INIT([gapk],
3 m4_esyscmd([./git-version-gen .tarball-version]), [main@lists.airprobe.org])
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +02004
5AM_INIT_AUTOMAKE([dist-bzip2])
6
7# kernel style compile messages
8m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
9
10AC_CONFIG_SRCDIR([src/main.c])
11AC_CONFIG_HEADERS([config.h])
12AC_CONFIG_MACRO_DIR([m4])
13AC_CONFIG_FILES([
14 Makefile
15 src/Makefile
Sylvain Munaut0d2a82c2010-11-12 17:10:44 +010016 libgsmhr/Makefile
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +020017 include/Makefile
Sylvain Munaut294db602010-10-24 13:01:56 +020018 include/gapk/Makefile
Sylvain Munaut0d2a82c2010-11-12 17:10:44 +010019 include/gsmhr/Makefile
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +020020])
21
Sylvain Munaut0d2a82c2010-11-12 17:10:44 +010022# Options
23AC_ARG_ENABLE(gsmhr,
24 [AS_HELP_STRING(
25 [--disable-gsmhr],
26 [Disable support for GSM HR codec using reference code]
27 )],
28 [enable_gsmhr=0], [enable_gsmhr=1])
29AM_CONDITIONAL(ENABLE_GSMHR, test "x$enable_gsmhr" = "x1")
30if test "x$enable_gsmhr" = "x1"; then
Sylvain Munautaa55d302010-11-12 19:36:21 +010031 AM_PATH_PYTHON([2.4])
Sylvain Munaut0d2a82c2010-11-12 17:10:44 +010032 AC_DEFINE(HAVE_LIBGSMHR, 1, [Define to 1 if libgsmhr is available])
33fi
34
35# Check for -fvisibility support
36# (The following test is taken from WebKit's webkit.m4)
37saved_CFLAGS="$CFLAGS"
38CFLAGS="$CFLAGS -fvisibility=hidden "
39AC_MSG_CHECKING([if ${CC} supports -fvisibility=hidden])
Sylvain Munaut19428ca2011-09-30 12:15:12 +020040AC_COMPILE_IFELSE([AC_LANG_SOURCE([char foo;])],
Sylvain Munaut0d2a82c2010-11-12 17:10:44 +010041 [ AC_MSG_RESULT([yes])
42 SYMBOL_VISIBILITY="-fvisibility=hidden"],
43 AC_MSG_RESULT([no]))
44CFLAGS="$saved_CFLAGS"
45AC_SUBST(SYMBOL_VISIBILITY)
46
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +020047# Checks for programs.
48AC_PROG_CC
Sylvain Munaut0d2a82c2010-11-12 17:10:44 +010049AC_PROG_LIBTOOL
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +020050
51# Checks for libraries.
Sylvain Munautdc5b38b2010-11-11 13:51:31 +010052 # libosmocore (codec module)
Harald Weltece94d972013-02-11 11:34:58 +010053PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 0.3.2)
Sylvain Munaut553b3b62010-10-24 18:33:20 +020054PKG_CHECK_MODULES(LIBOSMOCODEC, libosmocodec >= 0.1.25)
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +020055
Sylvain Munaut8552b9d2010-11-11 13:57:41 +010056 # opencore-amrnb for AMR and EFR decoding
57found_opencore_amrnb=yes
Sylvain Munaut3c9c2fb2010-11-13 00:19:09 +010058PKG_CHECK_MODULES(OPENCORE_AMRNB, opencore-amrnb >= 0.1.0, , found_opencore_amrnb=no)
Sylvain Munaut8552b9d2010-11-11 13:57:41 +010059if test "$found_opencore_amrnb" = yes; then
60 AC_DEFINE(HAVE_OPENCORE_AMRNB, 1, [Define to 1 if OpenCore AMR-NB library is available])
61fi
62
Sylvain Munautdc5b38b2010-11-11 13:51:31 +010063 # libgsm for FR decoding
64found_libgsm=yes
65AC_CHECK_HEADERS(gsm/gsm.h, ,
66 [AC_CHECK_HEADERS(gsm.h, ,found_libgsm=no)])
67 AC_CHECK_LIB(gsm, gsm_create, LIBGSM_LIBS="-lgsm", found_libgsm=no)
68if test "$found_libgsm" = yes; then
69 AC_DEFINE(HAVE_LIBGSM, 1, [Define to 1 if libgsm is available])
70fi
71AC_SUBST(LIBGSM_LIBS)
72
Sylvain Munaut96b1c3b2010-10-24 10:22:06 +020073# Checks for header files.
74AC_CHECK_HEADERS([stdint.h stdlib.h string.h unistd.h])
75
76# Checks for typedefs, structures, and compiler characteristics.
77AC_C_INLINE
78AC_TYPE_INT16_T
79AC_TYPE_INT32_T
80AC_TYPE_UINT16_T
81AC_TYPE_UINT32_T
82AC_TYPE_UINT64_T
83AC_TYPE_UINT8_T
84
85# Checks for library functions.
86AC_FUNC_MALLOC
87AC_CHECK_FUNCS([memset])
88
89AC_OUTPUT