Fix a crash
[framework/location/libdecarta.git] / configure.ac
1 # Initialize
2 AC_PREREQ(2.61)
3 AC_INIT(Decarta, 0.1, [sangho.g.park@samsung.com])
4 AC_CONFIG_AUX_DIR([build-aux])
5 AC_CONFIG_MACRO_DIR([m4])
6 AC_CONFIG_HEADER([config.h])
7 AC_CONFIG_SRCDIR([decarta/decarta_config.c])
8 AM_INIT_AUTOMAKE([1.10.2 foreign -Wall])
9
10 # Check programs for making executable
11 AC_PROG_CC
12 AM_PROG_CC_C_O
13 AC_PROG_INSTALL
14
15 # Check programs for making libraries.
16 AM_PROG_LIBTOOL
17
18 # Check host system
19 m4_define([v_maj], [0])
20 m4_define([v_min], [7])
21 m4_define([v_mic], [0])
22 AC_CANONICAL_HOST
23 case "$host_os" in
24    mingw32ce* | cegcc*)
25     MODULE_ARCH="$host_os-$host_cpu"
26     ;;
27     *)
28     MODULE_ARCH="$host_os-$host_cpu-v_maj.v_min.v_mic"
29     ;;
30 esac
31 AC_SUBST(MODULE_ARCH)
32 AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
33
34 # Add default build options to CFLAGS, LDFLAGS
35 if test "x$GCC" = "xyes"; then
36         CFLAGS="$CFLAGS -Wall"
37         LDFLAGS="$LDFLAGS -Wl,-z,defs -Wl,--as-needed -Wl,--hash-style=both"
38 fi
39
40 # Add -g option to CFLAGS
41 AC_ARG_ENABLE([debug],
42         [AC_HELP_STRING([--enable-debug],[turn on debugging [default=no]])],
43         [case "${enableval}" in
44          yes) enable_dbg=yes ;;
45          no) enable_dbg=no ;;
46          *) AC_MSG_ERROR([Bad value ${enableval} for --enable-debug]) ;;
47        esac],[enable_dbg=no])
48 if ([test "x$enable_dbg" = xyes]); then
49         CFLAGS="$CFLAGS -g"
50 fi
51
52 # Check GCC EFL visibility
53 AC_MSG_CHECKING(for ELF visibility)
54 AC_COMPILE_IFELSE(
55         [AC_LANG_PROGRAM([[
56                 __attribute__((visibility("default")))
57                 int var=10;
58         ]])],
59         [has_visibility=yes
60         AC_DEFINE([EXPORT_API], [__attribute__((visibility("default")))], [Symbol visibility prefix])
61         CFLAGS="$CFLAGS -fvisibility=hidden"],
62         [has_visibility=no
63         AC_DEFINE([EXPORT_API], [], [Symbol visibility prefix]) ]
64 )
65 AC_MSG_RESULT($has_visibility)
66
67 # Checks libraries
68 PKG_CHECK_MODULES(DOCRYPT, [glib-2.0])
69 AC_SUBST(DOCRYPT_LIBS)
70 AC_SUBST(DOCRYPT_CFLAGS)
71
72 AC_CHECK_HEADERS([gcrypt.h])
73 PKG_CHECK_MODULES(CRYPT, [glib-2.0])
74 AC_SUBST(CRYPT_LIBS)
75 AC_SUBST(CRYPT_CFLAGS)
76 AC_SEARCH_LIBS([gcry_cipher_open],[gcrypt],[CRYPT_LIBS="$CRYPT_LIBS -lgcrypt"])
77 AC_SEARCH_LIBS([gpg_strerror],[gpg-error],[CRYPT_LIBS="$CRYPT_LIBS -lgpg-error"])
78
79 PKG_CHECK_MODULES(DECARTA, [glib-2.0 libsoup-2.4 libxml-2.0 gconf-2.0])
80 AC_SUBST(DECARTA_LIBS)
81 AC_SUBST(DECARTA_CFLAGS)
82
83 PKG_CHECK_MODULES(LOCATION_MOD, [glib-2.0 gmodule-2.0 vconf location])
84 AC_SUBST(LOCATION_MOD_LIBS)
85 AC_SUBST(LOCATION_MOD_CFLAGS)
86
87 PKG_CHECK_MODULES(ELM_MOD, [glib-2.0 elementary])
88 AC_SUBST(ELM_MOD_LIBS)
89 AC_SUBST(ELM_MOD_CFLAGS)
90
91 PKG_CHECK_MODULES(TEST, [glib-2.0 gconf-2.0 location])
92 AC_SUBST(TEST_LIBS)
93 AC_SUBST(TEST_CFLAGS)
94
95 # Check dlog libraris
96 AC_ARG_ENABLE([dlog],
97         [AC_HELP_STRING([--enable-dlog],[show dlog message [default=no]])],
98         [case "${enableval}" in
99          yes) enable_dlog=yes ;;
100          no) enable_dlog=no ;;
101          *) AC_MSG_ERROR([Bad value ${enableval} for --enable-dlog]) ;;
102        esac],[enable_dlog=no])
103 if ([test "x$enable_dlog" = xyes]); then
104         PKG_CHECK_MODULES(DLOG, [dlog], have_dlog="yes", have_dlog="no")
105         AC_SUBST(DLOG_LIBS)
106         AC_SUBST(DLOG_CFLAGS)
107         if test "x$have_dlog" = "xyes"; then
108                 DECARTA_CFLAGS="$DECARTA_CFLAGS -DDECARTA_DLOG_DEBUG $DLOG_CFLAGS"
109                 DECARTA_LIBS="$DECARTA_LIBS $DLOG_LIBS"
110                 LOCATION_MOD_CFLAGS="$LOCATION_MOD_CFLAGS -DDECARTA_DLOG_DEBUG $DLOG_CFLAGS"
111                 LOCATION_MOD_LIBS="$LOCATION_MOD_LIBS $DLOG_LIBS"
112         fi
113 fi
114
115 # Check application path for installing configuration file
116 if ([test "x$APP_DIR" = x]); then
117         AC_DEFINE([APP_PATH],["/opt/apps"], [application path for reading conf file])
118 else
119         AC_DEFINE_UNQUOTED([APP_PATH],["$APP_DIR"], [application path for reading conf file])
120 fi
121
122 if ([test "x$APP_CONF_DIR" = x]); then
123         AC_DEFINE([APP_CONF_PATH],["res/.decarta"], [application path for reading conf file])
124 else
125         AC_DEFINE_UNQUOTED([APP_CONF_PATH],["$APP_CONF_DIR"], [application path for reading conf file])
126 fi
127
128 if ([test "x$DEF_CONF_DIR" = x]); then
129         AC_DEFINE([DEF_CONF_PATH],["/etc/decarta"], [default application path for reading conf file])
130 else
131         AC_DEFINE_UNQUOTED([DEF_CONF_PATH],["$DEF_CONF_DIR"], [default application path for reading conf file])
132 fi
133 DEF_CONF_PATH="$DEF_CONF_DIR"
134 AC_SUBST(DEF_CONF_PATH)
135
136 # Generate files
137 AC_CONFIG_FILES([
138 decarta.pc
139 Makefile
140 crypt/Makefile
141 decarta/Makefile
142 elm_module/Makefile
143 location_module/Makefile
144 tests/Makefile
145 ])
146
147 AC_OUTPUT