library integration : remove backend dependent macro
[platform/core/system/dlog.git] / configure.ac
1 #                                               -*- Autoconf -*-
2 # Process this file with autoconf to produce a configure script.
3
4 AC_PREREQ(2.61)
5 AC_INIT([dlog], [1.0], yk.yun@samsung.com)
6 AM_INIT_AUTOMAKE([-Wall -Werror foreign])
7
8 # Init XO
9 PLATFORM_INIT
10
11 # Checks for programs.
12 dnl AC_PROG_CXX
13 AC_PROG_CC
14 AC_PROG_GCC_TRADITIONAL
15 AC_PROG_LIBTOOL
16
17 __dlog_backends_selected=0
18
19 # backend: pipe
20 AC_ARG_ENABLE(pipe, AS_HELP_STRING([--enable-pipe], [enable pipe (log to pipe fd received via unix socket)]),
21         [with_pipe=yes],
22         with_pipe=no)
23 if test "x$with_pipe" = "xyes"; then
24         __dlog_backends_selected=$(($__dlog_backends_selected + 1))
25 fi
26 AM_CONDITIONAL(WITH_PIPE, [test "x$with_pipe" = "xyes"])
27
28 # backend: kmsg (requires kernel patch)
29 AC_ARG_ENABLE(kmsg, AS_HELP_STRING([--enable-kmsg], [enable kmsg (requires kmsg extension patch)]),
30         [with_kmsg=yes],
31         with_kmsg=no)
32 if test "x$with_kmsg" = "xyes"; then
33         __dlog_backends_selected=$(($__dlog_backends_selected + 1))
34 fi
35 AM_CONDITIONAL(WITH_KMSG, [test "x$with_kmsg" = "xyes"])
36
37 # backend: android logger (requires kernel's CONFIG_ANDROID_LOGGER)
38 AC_ARG_ENABLE(android_logger, AS_HELP_STRING([--enable-android-logger], [enable android logger (kernels CONFIG_ANDROID_LOGGER)]),
39         [with_android_logger=yes],
40         with_android_logger=no)
41 if test "x$with_android_logger" = "xyes"; then
42         __dlog_backends_selected=$(($__dlog_backends_selected + 1))
43 fi
44 AM_CONDITIONAL(WITH_ANDROID_LOGGER, [test "x$with_android_logger" = "xyes"])
45
46 if test $__dlog_backends_selected -ne 1; then
47         AC_MSG_ERROR([Exactly one backend needs to be selected.])
48 fi
49
50 # check binary type for dlog debug mode
51 AC_ARG_ENABLE([debug_mode],
52         AS_HELP_STRING([--enable-debug_mode Turn on debug_mode]),
53                 [debug_mode=yes],
54                 debug_mode=no)
55 if test "x$debug_mode" = "xyes" ; then
56         DEBUG_CFLAGS+=" -DDLOG_DEBUG_ENABLE"
57 fi
58 AC_ARG_ENABLE([debug_enable],
59         AS_HELP_STRING([--enable-debug_enable Turn on debug_enable]),
60                 [debug_enable=yes],
61             debug_enable=no)
62 AC_SUBST(DEBUG_CFLAGS)
63 # Checks for libraries.
64 # Checks for header files.
65 AC_HEADER_STDC
66 AC_CHECK_HEADERS([stdlib.h unistd.h ])
67
68 # Checks for typedefs, structures, and compiler characteristics.
69 AC_HEADER_STDBOOL
70 AC_C_CONST
71 AC_C_INLINE
72 AC_STRUCT_TM
73 AC_TYPE_PID_T
74 AC_TYPE_SIZE_T
75 AC_TYPE_SSIZE_T
76
77 # Checks for library functions.
78 AC_FUNC_MALLOC
79 AC_FUNC_STAT
80 AC_CHECK_FUNCS([memset])
81
82 PKG_PROG_PKG_CONFIG
83 PKG_CHECK_MODULES([CAPI_BASE_COMMON], [capi-base-common])
84
85 AC_SUBST(TZ_SYS_ETC)
86
87 # output files
88 AC_CONFIG_FILES([Makefile dlog.pc])
89 AC_OUTPUT