1
# If not 1, append datestamp to the version number
2
m4_define([folks_released], [1])
4
m4_define([folks_major_version], [0])
5
m4_define([folks_minor_version], [3])
6
m4_define([folks_micro_version], [2])
7
m4_define([folks_nano_version], [0])
9
# If library source has changed since last release, increment revision
10
# If interfaces have been added, removed or changed since last release,
11
# increment current and set revision to 0
12
# If interfaces have been added since last release, increment age
13
# If interfaces have been removed since last release, set age to 0
14
m4_define([folks_lt_current], [18])
15
m4_define([folks_lt_revision], [0])
16
m4_define([folks_lt_age], [0])
18
# Display the nano_version only if it's not '0'
19
m4_define([folks_base_version],
20
folks_major_version.folks_minor_version.folks_micro_version)
21
m4_define([folks_full_version],
22
[m4_if(folks_nano_version, [0],
23
folks_base_version, folks_base_version.folks_nano_version)])
25
m4_define([folks_maybe_datestamp],
26
m4_if(folks_released, [1],
27
[], [m4_esyscmd([date +.%Y%m%d | tr -d '\n\r'])]))
29
m4_define([folks_version], folks_full_version[]folks_maybe_datestamp)
30
m4_define([folks_major_minor_version], folks_major_version.folks_minor_version)
31
m4_define([folks_module_version], folks_lt_current)
33
AC_INIT([folks], folks_version,
34
[https://bugzilla.gnome.org/browse.cgi?product=folks], [folks],
35
[http://telepathy.freedesktop.org/wiki/Folks])
36
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
39
AC_COPYRIGHT([Copyright (C) 2010 Collabora Ltd.])
41
AC_CONFIG_MACRO_DIR([m4])
42
AC_CONFIG_SRCDIR([Makefile.am])
43
AC_CONFIG_HEADERS(config.h)
44
AC_CONFIG_SRCDIR([configure.ac])
45
AM_INIT_AUTOMAKE([1.11 dist-bzip2 no-define
46
no-dist-gzip tar-ustar -Wno-portability])
53
PKG_PROG_PKG_CONFIG([0.21])
59
LT_CURRENT=folks_lt_current
60
LT_REVISION=folks_lt_revision
62
AC_SUBST([LT_CURRENT])
63
AC_SUBST([LT_REVISION])
66
FOLKS_MAJOR_MINOR_VERSION=folks_major_minor_version
67
AC_SUBST([FOLKS_MAJOR_MINOR_VERSION])
69
# -----------------------------------------------------------
71
# -----------------------------------------------------------
74
TP_GLIB_REQUIRED=0.13.1
77
PKG_CHECK_MODULES([GLIB],
78
[glib-2.0 >= $GLIB_REQUIRED
79
gobject-2.0 >= $GLIB_REQUIRED])
80
PKG_CHECK_MODULES([GMODULE], [gmodule-no-export-2.0])
81
PKG_CHECK_MODULES([GIO], [gio-2.0 >= $GLIB_REQUIRED])
82
PKG_CHECK_MODULES([DBUS_GLIB], [dbus-glib-1])
84
# FIXME: We depend on libgee < 0.7 because 0.7 breaks API. bgo#627746
85
PKG_CHECK_MODULES([GEE], [gee-1.0 < 0.7])
86
PKG_CHECK_MODULES([TP_GLIB], [telepathy-glib >= $TP_GLIB_REQUIRED])
89
# Vala building options -- allows tarball builds without installing Vala
92
AS_HELP_STRING([--enable-vala],
93
[Enable building from the Vala sources]),
94
[enable_vala=$enableval],
97
# will be re-set as necessary below
98
AM_CONDITIONAL([HAVE_INTROSPECTION], [test "x$enable_vala" = "xyes"])
100
# Force Vala if generated source is missing or outdated
102
! -e ${sd}tools/folks_import_vala.stamp -o \
103
! -e ${sd}tests/key-file/individual_retrieval_vala.stamp -o \
104
! -e ${sd}tests/lib/folks-test.vapi -o \
105
! -e ${sd}tests/lib/key-file/kf-test.vapi -o \
106
! -e ${sd}tests/lib/key-file/libkf_test_la_vala.stamp -o \
107
! -e ${sd}tests/lib/telepathy/contactlist/tp-test-contactlist.gir -o \
108
! -e ${sd}tests/lib/telepathy/contactlist/tp-test-contactlist.vapi -o \
109
! -e ${sd}tests/lib/libfolks_test_la_vala.stamp -o \
110
! -e ${sd}tests/telepathy/persona_store_capabilities_vala.stamp -o \
111
! -e ${sd}tests/telepathy/individual_retrieval_vala.stamp -o \
112
! -e ${sd}tests/telepathy/individual_properties_vala.stamp -o \
113
! -e ${sd}tests/folks/backend_loading_vala.stamp -o \
114
! -e ${sd}backends/key-file/libfolks_backend_key_file_la_vala.stamp -o \
115
! -e ${sd}backends/telepathy/libfolks_backend_telepathy_la_vala.stamp \
117
! -e ${sd}backends/telepathy/lib/folks-telepathy.vapi -o \
118
! -e ${sd}backends/telepathy/lib/tp-lowlevel.gir -o \
119
! -e ${sd}backends/telepathy/lib/tp-lowlevel.vapi -o \
120
! -e ${sd}backends/telepathy/lib/libfolks_telepathy_la_vala.stamp -o \
121
! -e ${sd}folks/folks.vapi -o \
122
! -e ${sd}folks/libfolks_la_vala.stamp ; then
124
echo "Vala source needs to be re-compiled; requiring Vala..."
127
if test "x$enable_vala" = "xyes" ; then
128
AM_PROG_VALAC([$VALA_REQUIRED])
129
if test "x$VALAC" = "x"; then
130
AC_MSG_ERROR([Vala requested but valac is not installed])
133
AC_PATH_PROG([VAPIGEN], [vapigen], [])
134
if test "x$VAPIGEN" = "x"; then
135
AC_MSG_ERROR([Vala must be built with --enable-vapigen])
138
# require GLib >= 2.24 so GLib.Array, etc. reffing is handled
140
VALAFLAGS="$VALAFLAGS --target-glib=2.24"
141
AC_SUBST([VALAFLAGS])
142
AC_SUBST([VAPIGENFLAGS])
145
VALA_CHECK_PACKAGES([telepathy-glib
150
# this will set HAVE_INTROSPECTION
151
GOBJECT_INTROSPECTION_REQUIRE([0.9.12])
154
AM_CONDITIONAL([HAVE_VALA], [test "x$enable_vala" = "xyes"])
156
# Various functions that we need (used in C code generated from Vala)
157
AC_CHECK_FUNCS([memset])
158
AC_CHECK_FUNCS([strstr])
160
# -----------------------------------------------------------
162
# -----------------------------------------------------------
164
FOLKS_MODULE_VERSION=folks_module_version
165
AC_SUBST([FOLKS_MODULE_VERSION])
166
AC_DEFINE([MODULE_VERSION], "folks_module_version", [Module interface version])
168
BACKEND_DIR='$(libdir)/folks/$(FOLKS_MODULE_VERSION)/backends'
169
AC_SUBST([BACKEND_DIR])
171
BACKEND_KF='$(top_builddir)/backends/key-file/.libs/libfolks-backend-key-file.so'
172
AC_SUBST([BACKEND_KF])
173
BACKEND_TP='$(top_builddir)/backends/telepathy/.libs/libfolks-backend-telepathy.so'
174
AC_SUBST([BACKEND_TP])
176
# All of the backend libraries in our tree; to be used by the tests
177
BACKEND_UNINST_PATH='$(BACKEND_KF):$(BACKEND_TP)'
178
AC_SUBST([BACKEND_UNINST_PATH])
180
# -----------------------------------------------------------
182
# -----------------------------------------------------------
184
AC_ARG_ENABLE([import-tool],
185
AS_HELP_STRING([--enable-import-tool],
186
[Enable building the meta-contact import tool]),
187
[enable_import_tool=$enableval with_import_tool=$enableval],
188
[enable_import_tool=maybe with_import_tool=no])
189
AS_IF([test "$enable_import_tool" != "no"],
190
[PKG_CHECK_MODULES([LIBXML], [libxml-2.0],
191
[with_import_tool=yes], [with_import_tool=no])])
192
AS_IF([test "$enable_import_tool" = "yes" -a "$with_import_tool" = "no"],
193
[AC_MSG_ERROR([Import tool explicitly enabled, but libxml2 not found])])
194
AM_CONDITIONAL([ENABLE_IMPORT_TOOL], [test "$with_import_tool" = "yes"])
196
# -----------------------------------------------------------
198
# -----------------------------------------------------------
200
AC_ARG_ENABLE([docs],
201
AS_HELP_STRING([--enable-docs],[Enable documentation generation]),
202
[enable_docs=$enableval], [enable_docs=no])
203
AM_CONDITIONAL([ENABLE_DOCS], [test x$enable_docs = xyes])
205
AS_IF([test "x$enable_docs" != xno],
206
[AC_PATH_PROG([VALADOC], [valadoc], [:])
207
AS_IF([test "$VALADOC" != :],
209
AM_CONDITIONAL([HAVE_VALADOC], [test x$have_valadoc = xyes])
211
# -----------------------------------------------------------
213
# -----------------------------------------------------------
215
GETTEXT_PACKAGE=AC_PACKAGE_NAME
216
AC_SUBST(GETTEXT_PACKAGE)
217
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, ["$GETTEXT_PACKAGE"], [Define the gettext package to be used])
218
AM_GNU_GETTEXT_VERSION([0.17])
219
AM_GNU_GETTEXT([external])
220
IT_PROG_INTLTOOL([0.35.0])
222
# -----------------------------------------------------------
224
# -----------------------------------------------------------
226
AS_COMPILER_FLAG([-Wall], [ERROR_CFLAGS="-Wall"], [ERROR_CFLAGS=""])
227
AS_COMPILER_FLAG([-Werror], [werror=yes], [werror=no])
229
AC_ARG_ENABLE([debug],
230
AS_HELP_STRING([--disable-debug],[compile without debug code]),
231
[enable_debug=$enableval], [enable_debug=yes])
233
AC_ARG_ENABLE([Werror],
234
AS_HELP_STRING([--disable-Werror],
235
[compile without -Werror (normally enabled in
236
development builds)]),
237
[werror=$enableval], [werror=yes])
239
AS_COMPILER_FLAG([-Wextra], [wextra=yes], [wextra=no])
240
AS_COMPILER_FLAG([-Wno-missing-field-initializers],
241
[wno_missing_field_initializers=yes],
242
[wno_missing_field_initializers=no])
243
AS_COMPILER_FLAG([-Wno-unused-parameter],
244
[wno_unused_parameter=yes], [wno_unused_parameter=no])
246
m4_if(folks_released, [1], [],
248
if test x$werror = xyes; then
249
ERROR_CFLAGS="$ERROR_CFLAGS -Werror"
251
if test x$wextra = xyes -a \
252
x$wno_missing_field_initializers = xyes -a \
253
x$wno_unused_parameter = xyes; then
254
ERROR_CFLAGS="$ERROR_CFLAGS -Wextra \
255
-Wno-missing-field-initializers -Wno-unused-parameter"
259
AS_COMPILER_FLAG([-D_POSIX_SOURCE], [ERROR_CFLAGS="$ERROR_CFLAGS -D_POSIX_SOURCE"])
260
AS_COMPILER_FLAG([-std=c99], [ERROR_CFLAGS="$ERROR_CFLAGS -std=c99"])
261
AS_COMPILER_FLAG([-Wshadow], [ERROR_CFLAGS="$ERROR_CFLAGS -Wshadow"])
262
AS_COMPILER_FLAG([-Wmissing-prototypes], [ERROR_CFLAGS="$ERROR_CFLAGS \
263
-Wmissing-prototypes"])
264
AS_COMPILER_FLAG([-Wmissing-declarations], [ERROR_CFLAGS="$ERROR_CFLAGS \
265
-Wmissing-declarations"])
266
AS_COMPILER_FLAG([-Wstrict-prototypes], [ERROR_CFLAGS="$ERROR_CFLAGS \
267
-Wstrict-prototypes"])
269
AC_SUBST([ERROR_CFLAGS])
272
AS_IF([test "x$enable_vala" = "xyes"],
273
[ERROR_INTROSPECTION_SCANNER_ARGS="\
274
$ERROR_INTROSPECTION_SCANNER_ARGS --warn-error"
275
ERROR_VALAFLAGS="$ERROR_VALAFLAGS --fatal-warnings"])
277
AC_SUBST([ERROR_INTROSPECTION_SCANNER_ARGS])
278
AC_SUBST([ERROR_VALAFLAGS])
280
# -----------------------------------------------------------
282
# -----------------------------------------------------------
285
backends/telepathy/lib/folks-telepathy.pc
286
backends/telepathy/lib/folks-telepathy-uninstalled.pc
288
folks/folks-uninstalled.pc
291
backends/key-file/Makefile
292
backends/telepathy/Makefile
293
backends/telepathy/lib/Makefile
299
tests/key-file/Makefile
300
tests/telepathy/Makefile
302
tests/lib/folks-test-uninstalled.pc
303
tests/lib/key-file/Makefile
304
tests/lib/telepathy/Makefile
305
tests/lib/telepathy/contactlist/Makefile
306
tests/lib/telepathy/contactlist/session.conf
316
Vala........................: ${enable_vala}
317
Vala Compiler...............: ${VALAC}
318
C Compiler Flags............: ${CFLAGS} ${ERROR_CFLAGS}
319
Prefix......................: ${prefix}
320
Bugreporting URL............: ${PACKAGE_BUGREPORT}
321
Documentation...............: ${HAVE_VALADOC}
322
Tests.......................: ${have_tp_glib_for_tests}
323
Import tool.................: ${with_import_tool}