mirror of https://gerrit.osmocom.org/gapk
120 lines
3.3 KiB
Plaintext
120 lines
3.3 KiB
Plaintext
AC_PREREQ([2.65])
|
|
AC_INIT([gapk],
|
|
m4_esyscmd([./git-version-gen .tarball-version]),
|
|
[openbsc@lists.osmocom.org])
|
|
|
|
AM_INIT_AUTOMAKE([dist-bzip2 subdir-objects])
|
|
LT_INIT([disable-static])
|
|
|
|
CFLAGS="$CFLAGS -std=gnu11"
|
|
|
|
# kernel style compile messages
|
|
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
|
|
|
|
AC_CONFIG_SRCDIR([src/app_osmo_gapk.c])
|
|
AC_CONFIG_HEADERS([config.h])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
AC_CONFIG_TESTDIR(tests)
|
|
|
|
# Options
|
|
AC_ARG_ENABLE(gsmhr,
|
|
[AS_HELP_STRING(
|
|
[--enable-gsmhr],
|
|
[Enable support for GSM HR codec using GSM 06.06 reference code]
|
|
)],
|
|
[enable_gsmhr="yes"], [enable_gsmhr=$enableval])
|
|
AM_CONDITIONAL(ENABLE_GSMHR, test "x$enable_gsmhr" = "xyes")
|
|
if test "x$enable_gsmhr" = "xyes"; then
|
|
AM_PATH_PYTHON([2.4])
|
|
AC_DEFINE(HAVE_LIBGSMHR, 1, [Define to 1 if libgsmhr is available])
|
|
fi
|
|
|
|
# Check for -fvisibility support
|
|
# (The following test is taken from WebKit's webkit.m4)
|
|
saved_CFLAGS="$CFLAGS"
|
|
CFLAGS="$CFLAGS -fvisibility=hidden "
|
|
AC_MSG_CHECKING([if ${CC} supports -fvisibility=hidden])
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([char foo;])],
|
|
[ AC_MSG_RESULT([yes])
|
|
SYMBOL_VISIBILITY="-fvisibility=hidden"],
|
|
AC_MSG_RESULT([no]))
|
|
CFLAGS="$saved_CFLAGS"
|
|
AC_SUBST(SYMBOL_VISIBILITY)
|
|
|
|
dnl check os: some linker flags not available on osx
|
|
case $host in
|
|
*-darwin*)
|
|
;;
|
|
*)
|
|
LTLDFLAGS_OSMOGAPK='-Wl,--version-script=$(srcdir)/libosmogapk.map'
|
|
;;
|
|
esac
|
|
AC_SUBST(LTLDFLAGS_OSMOGAPK)
|
|
|
|
# Checks for programs.
|
|
AC_PROG_CC
|
|
|
|
AC_ARG_ENABLE(sanitize,
|
|
[AS_HELP_STRING([--enable-sanitize], [Compile with address sanitizer enabled], )],
|
|
[sanitize=$enableval], [sanitize="no"])
|
|
if test x"$sanitize" = x"yes"
|
|
then
|
|
CFLAGS="$CFLAGS -fsanitize=address -fsanitize=undefined"
|
|
CPPFLAGS="$CPPFLAGS -fsanitize=address -fsanitize=undefined"
|
|
fi
|
|
|
|
# Checks for libraries.
|
|
# libosmocore (codec module)
|
|
PKG_CHECK_MODULES(LIBOSMOCORE, libosmocore >= 0.3.2)
|
|
PKG_CHECK_MODULES(LIBOSMOCODEC, libosmocodec >= 0.1.25)
|
|
PKG_CHECK_MODULES(LIBALSA, alsa, [AC_DEFINE([HAVE_ALSA], [1], [We have ALSA])])
|
|
|
|
# opencore-amrnb for AMR and EFR decoding
|
|
found_opencore_amrnb=yes
|
|
PKG_CHECK_MODULES(OPENCORE_AMRNB, opencore-amrnb >= 0.1.0, , found_opencore_amrnb=no)
|
|
if test "$found_opencore_amrnb" = yes; then
|
|
AC_DEFINE(HAVE_OPENCORE_AMRNB, 1, [Define to 1 if OpenCore AMR-NB library is available])
|
|
fi
|
|
|
|
# libgsm for FR decoding
|
|
found_libgsm=yes
|
|
AC_CHECK_HEADERS(gsm/gsm.h, ,
|
|
[AC_CHECK_HEADERS(gsm.h, ,found_libgsm=no)])
|
|
AC_CHECK_LIB(gsm, gsm_create, LIBGSM_LIBS="-lgsm", found_libgsm=no)
|
|
if test "$found_libgsm" = yes; then
|
|
AC_DEFINE(HAVE_LIBGSM, 1, [Define to 1 if libgsm is available])
|
|
fi
|
|
AC_SUBST(LIBGSM_LIBS)
|
|
|
|
# Conditional codec tests
|
|
AC_SUBST(ENABLE_AMR_EFR_TESTS, [$found_opencore_amrnb])
|
|
AC_SUBST(ENABLE_HR_TESTS, [$enable_gsmhr])
|
|
AC_SUBST(ENABLE_FR_TESTS, [$found_libgsm])
|
|
|
|
# Checks for header files.
|
|
AC_CHECK_HEADERS([stdint.h stdlib.h string.h unistd.h])
|
|
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
|
AC_C_INLINE
|
|
AC_TYPE_INT16_T
|
|
AC_TYPE_INT32_T
|
|
AC_TYPE_UINT16_T
|
|
AC_TYPE_UINT32_T
|
|
AC_TYPE_UINT64_T
|
|
AC_TYPE_UINT8_T
|
|
|
|
# Checks for library functions.
|
|
AC_FUNC_MALLOC
|
|
AC_CHECK_FUNCS([memset])
|
|
|
|
AC_CONFIG_FILES([contrib/gapk.spec
|
|
Makefile
|
|
src/Makefile
|
|
libgsmhr/Makefile
|
|
include/Makefile
|
|
include/gsmhr/Makefile
|
|
libosmogapk.pc
|
|
tests/atlocal
|
|
tests/Makefile])
|
|
AC_OUTPUT
|