]> git.sur5r.net Git - glabels/blob - configure.ac
Merge branch 'gtk3'
[glabels] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2
3 AC_PREREQ(2.63)
4
5 AC_INIT([glabels],[2.3.0],[http://sourceforge.net/tracker/?func=add&group_id=46122&atid=445116])
6 AC_CONFIG_SRCDIR(src/glabels.c)
7
8 AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
9
10 AM_MAINTAINER_MODE
11 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
12
13 AC_CONFIG_HEADERS(config.h)
14
15 IT_PROG_INTLTOOL([0.21])
16
17 PKG_PROG_PKG_CONFIG
18
19 LT_INIT
20
21 GNOME_DOC_INIT
22 GTK_DOC_CHECK(1.0)
23
24 GLIB_GSETTINGS
25
26 AC_SEARCH_LIBS([strerror],[cposix])
27 AC_PROG_CC
28 AC_PROG_INSTALL
29
30 GNOME_COMPILE_WARNINGS
31
32 AC_PATH_PROG(GLIB_GENMARSHAL,         glib-genmarshal)
33 AC_PATH_PROG(GDK_PIXBUF_CSOURCE,      gdk-pixbuf-csource)
34 AC_PATH_PROG(UPDATE_MIME_DATABASE,    update-mime-database)
35 AC_PATH_PROG(UPDATE_DESKTOP_DATABASE, update-desktop-database)
36 AC_PATH_PROG(GTK_UPDATE_ICON_CACHE,   gtk-update-icon-cache)
37
38 dnl ---------------------------------------------------------------------------
39 dnl - GLABELS branch
40 dnl ---------------------------------------------------------------------------
41 GLABELS_BRANCH=glabels-3.0
42 AC_SUBST(GLABELS_BRANCH)
43
44 dnl ---------------------------------------------------------------------------
45 dnl - LIBGLABELS branch
46 dnl ---------------------------------------------------------------------------
47 LIBGLABELS_BRANCH=libglabels-3.0
48 AC_SUBST(LIBGLABELS_BRANCH)
49
50 dnl ---------------------------------------------------------------------------
51 dnl - LIBGLBARCODE branch
52 dnl ---------------------------------------------------------------------------
53 LIBGLBARCODE_BRANCH=libglbarcode-3.0
54 AC_SUBST(LIBGLBARCODE_BRANCH)
55
56 dnl ---------------------------------------------------------------------------
57 dnl - LIBGLABELS API versioning
58 dnl ---------------------------------------------------------------------------
59 dnl From the libtool manual:
60 dnl 1. Start with version information of `0:0:0' for each libtool library.
61 dnl 2. Update the version information only immediately before a public release.
62 dnl    More frequent updates are unnecessary, and only guarantee that the current
63 dnl    interface number gets larger faster.
64 dnl 3. If the library source code has changed at all since the last update, then increment
65 dnl    revision (`c:r:a' becomes `c:r+1:a').
66 dnl 4. If any interfaces have been added, removed, or changed since the last update,
67 dnl    increment current, and set revision to 0.
68 dnl 5. If any interfaces have been added since the last public release, then increment age.
69 dnl 6. If any interfaces have been removed since the last public release, then set age
70 dnl    to 0.
71 LIBGLABELS_C=7
72 LIBGLABELS_R=0
73 LIBGLABELS_A=0
74
75 LIBGLABELS_API_VERSION=${LIBGLABELS_C}:${LIBGLABELS_R}:${LIBGLABELS_A}
76 AC_SUBST(LIBGLABELS_API_VERSION)
77
78 dnl ---------------------------------------------------------------------------
79 dnl - LIBGLBARCODE API versioning
80 dnl ---------------------------------------------------------------------------
81 dnl From the libtool manual:
82 dnl 1. Start with version information of `0:0:0' for each libtool library.
83 dnl 2. Update the version information only immediately before a public release.
84 dnl    More frequent updates are unnecessary, and only guarantee that the current
85 dnl    interface number gets larger faster.
86 dnl 3. If the library source code has changed at all since the last update, then increment
87 dnl    revision (`c:r:a' becomes `c:r+1:a').
88 dnl 4. If any interfaces have been added, removed, or changed since the last update,
89 dnl    increment current, and set revision to 0.
90 dnl 5. If any interfaces have been added since the last public release, then increment age.
91 dnl 6. If any interfaces have been removed since the last public release, then set age
92 dnl    to 0.
93 LIBGLBARCODE_C=0
94 LIBGLBARCODE_R=0
95 LIBGLBARCODE_A=0
96
97 LIBGLBARCODE_API_VERSION=${LIBGLBARCODE_C}:${LIBGLBARCODE_R}:${LIBGLBARCODE_A}
98 AC_SUBST(LIBGLBARCODE_API_VERSION)
99
100 dnl ---------------------------------------------------------------------------
101 dnl - Library dependencies
102 dnl ---------------------------------------------------------------------------
103 dnl Required dependencies
104 GLIB_REQUIRED=2.27.1
105 GTK_REQUIRED=2.91.1
106 LIBXML_REQUIRED=2.7.7
107 LIBRSVG_REQUIRED=2.26.3
108 CAIRO_REQUIRED=1.8.0
109 PANGO_REQUIRED=1.28.0
110
111 dnl Optional dependencies
112 LIBEBOOK_REQUIRED=2.30.3
113 LIBBARCODE_REQUIRED=0.98
114 LIBQRENCODE_REQUIRED=3.1.0
115 LIBIEC16022_REQUIRED=0.2.4
116 LIBZINT_REQUIRED=2.4.0
117
118 dnl Make above strings available for packaging files (e.g. rpm spec files)
119 AC_SUBST(GLIB_REQUIRED)
120 AC_SUBST(GTK_REQUIRED)
121 AC_SUBST(LIBXML_REQUIRED)
122 AC_SUBST(LIBRSVG_REQUIRED)
123 AC_SUBST(CAIRO_REQUIRED)
124 AC_SUBST(PANGO_REQUIRED)
125 AC_SUBST(LIBEBOOK_REQUIRED)
126 AC_SUBST(LIBBARCODE_REQUIRED)
127 AC_SUBST(LIBQRENCODE_REQUIRED)
128 AC_SUBST(LIBIEC16022_REQUIRED)
129 AC_SUBST(LIBZINT_REQUIRED)
130
131
132 dnl ---------------------------------------------------------------------------
133 dnl - GLABELS prerequisites
134 dnl ---------------------------------------------------------------------------
135 PKG_CHECK_MODULES(GLABELS, [\
136         glib-2.0 >= $GLIB_REQUIRED \
137         gtk+-3.0 >= $GTK_REQUIRED \
138         libxml-2.0 >= $LIBXML_REQUIRED \
139         librsvg-2.0 >= $LIBRSVG_REQUIRED \
140 ])
141
142 AC_SUBST(GLABELS_CFLAGS)
143 AC_SUBST(GLABELS_LIBS)
144
145
146 dnl ---------------------------------------------------------------------------
147 dnl - LIBGLABELS more modest prerequisites
148 dnl ---------------------------------------------------------------------------
149 PKG_CHECK_MODULES(LIBGLABELS, [\
150         glib-2.0 >= $GLIB_REQUIRED \
151         libxml-2.0 >= $LIBXML_REQUIRED \
152 ])
153
154 AC_SUBST(LIBGLABELS_CFLAGS)
155 AC_SUBST(LIBGLABELS_LIBS)
156
157
158 dnl ---------------------------------------------------------------------------
159 dnl - LIBGLBARCODE more modest prerequisites
160 dnl ---------------------------------------------------------------------------
161 PKG_CHECK_MODULES(LIBGLBARCODE, [\
162         glib-2.0 >= $GLIB_REQUIRED \
163         cairo >= $CAIRO_REQUIRED \
164         pango >= $PANGO_REQUIRED \
165 ])
166
167 AC_SUBST(LIBGLBARCODE_CFLAGS)
168 AC_SUBST(LIBGLBARCODE_LIBS)
169
170
171 dnl ---------------------------------------------------------------------------
172 dnl - Check for optional evolution data server
173 dnl ---------------------------------------------------------------------------
174 AC_ARG_WITH(libebook,
175             [AS_HELP_STRING([--without-libebook],[build without Evolution Data Server support])])
176 have_libebook=no
177 if test "x$with_libebook" != xno; then
178         PKG_CHECK_MODULES(LIBEBOOK, libebook-1.2 >= $LIBEBOOK_REQUIRED,
179                           [have_libebook=yes], [have_libebook=no])
180 fi
181
182 if test "x$have_libebook" = "xyes"; then
183         AC_DEFINE(HAVE_LIBEBOOK,1,[Define to 1 for EDS support])
184         AC_SUBST(LIBEBOOK_CFLAGS)
185         AC_SUBST(LIBEBOOK_LIBS)
186 fi
187
188
189 dnl ---------------------------------------------------------------------------
190 dnl - Check for optional GNU Barcode backend
191 dnl ---------------------------------------------------------------------------
192 AC_ARG_WITH(libbarcode,
193             [AS_HELP_STRING([--without-libbarcode],[build without GNU Barcode support])])
194 have_libbarcode=no
195 if test "x$with_libbarcode" != xno; then
196    AC_CHECK_LIB(barcode, Barcode_Create,
197                 [have_libbarcode=yes], [have_libbarcode=no])
198 fi
199
200 if test "x$have_libbarcode" = "xyes"; then
201         AC_DEFINE(HAVE_LIBBARCODE,1,[Define to 1 for GNU Barcode support])
202         LIBBARCODE_CFLAGS=""
203         LIBBARCODE_LIBS="-lbarcode"
204         AC_SUBST(LIBBARCODE_CFLAGS)
205         AC_SUBST(LIBBARCODE_LIBS)
206 else
207         help_libbarcode="(See http://www.gnu.org/software/barcode/barcode.html)"
208 fi
209
210 dnl ---------------------------------------------------------------------------
211 dnl - Check for optional Zint backend
212 dnl ---------------------------------------------------------------------------
213 AC_ARG_WITH(libzint,
214             [AS_HELP_STRING([--without-libzint],[build without Zint Barcode support])])
215 have_libzint=no
216 if test "x$with_libzint" != xno; then
217    AC_CHECK_LIB(zint, ZBarcode_Render,
218                 [have_libzint=yes], [have_libzint=no])
219 fi
220
221 if test "x$have_libzint" = "xyes"; then
222         AC_DEFINE(HAVE_LIBZINT,1,[Define to 1 for Zint Barcode support])
223         LIBZINT_CFLAGS=""
224         LIBZINT_LIBS="-lzint"
225         AC_SUBST(LIBZINT_CFLAGS)
226         AC_SUBST(LIBZINT_LIBS)
227 else
228         help_libzint="(See http://www.zint.org.uk)"
229 fi
230
231
232 dnl ---------------------------------------------------------------------------
233 dnl - Check for optional QRencode Barcode backend
234 dnl ---------------------------------------------------------------------------
235 AC_ARG_WITH(libqrencode,
236             [AS_HELP_STRING([--without-libqrencode],[build without QR code support])])
237 have_libqrencode=no
238 if test "x$with_libqrencode" != xno; then
239         PKG_CHECK_MODULES(LIBQRENCODE, libqrencode >= $LIBQRENCODE_REQUIRED,
240                           [have_libqrencode=yes], [have_libqrencode=no])
241 fi
242
243 if test "x$have_libqrencode" = "xyes"; then
244         AC_DEFINE(HAVE_LIBQRENCODE,1,[Define to 1 for QR code support])
245         AC_SUBST(LIBQRENCODE_CFLAGS)
246         AC_SUBST(LIBQRENCODE_LIBS)
247 else
248         help_libqrencode="(See http://megaui.net/fukuchi/works/qrencode/index.en.html)"
249 fi
250
251
252 dnl ---------------------------------------------------------------------------
253 dnl - Check for IEC16022 Barcode backend
254 dnl ---------------------------------------------------------------------------
255 AC_ARG_WITH(libiec16022,
256             [AS_HELP_STRING([--without-libiec16022],[build without IEC 16022 support])])
257 have_libiec16022=no
258 if test "x$with_libiec16022" != xno; then
259         PKG_CHECK_MODULES(LIBIEC16022, libiec16022 >= $LIBIEC16022_REQUIRED,
260                           [have_libiec16022=yes], [have_libiec16022=no])
261 fi
262
263 if test "x$have_libiec16022" = "xyes"; then
264         AC_DEFINE(HAVE_LIBIEC16022,1,[Define to 1 for IEC 16022 support])
265         AC_SUBST(LIBIEC16022_CFLAGS)
266         AC_SUBST(LIBIEC16022_LIBS)
267 else
268         help_libiec16022="(See http://datenfreihafen.org/projects/iec16022.html)"
269 fi
270
271
272 dnl ---------------------------------------------------------------------------
273 dnl - Enable deprecation testing
274 dnl ---------------------------------------------------------------------------
275 AC_ARG_ENABLE(deprecations,
276               [AS_HELP_STRING([--enable-deprecations],[warn about deprecated usages [default=no]])],,
277               [enable_deprecations=no])
278
279 if test "x$enable_deprecations" = "xyes"; then
280    DISABLE_DEPRECATED_CFLAGS="\
281 -DG_DISABLE_DEPRECATED \
282 -DGDK_DISABLE_DEPRECATED \
283 -DGTK_DISABLE_DEPRECATED \
284 -DGDK_PIXBUF_DISABLE_DEPRECATED \
285 "
286    AC_SUBST(DISABLE_DEPRECATED_CFLAGS)
287 fi
288
289
290 dnl ---------------------------------------------------------------------------
291 dnl - Disable updating of mime and desktop databases
292 dnl ---------------------------------------------------------------------------
293 AC_ARG_ENABLE(update-mimedb, AS_HELP_STRING([--disable-update-mimedb],[disable the update-mime-database after install [default=no]]),,
294               enable_update_mimedb=yes)
295 AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
296
297 AC_ARG_ENABLE(update-desktopdb, AS_HELP_STRING([--disable-update-desktopdb],[disable the update-desktop-database after install [default=no]]),,
298               enable_update_desktopdb=yes)
299 AM_CONDITIONAL(ENABLE_UPDATE_DESKTOPDB, test x$enable_update_desktopdb = xyes)
300
301
302 dnl ---------------------------------------------------------------------------
303 dnl - i18n support
304 dnl ---------------------------------------------------------------------------
305 GETTEXT_PACKAGE=${GLABELS_BRANCH}
306 AC_SUBST(GETTEXT_PACKAGE)
307 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
308
309 AM_GLIB_GNU_GETTEXT
310
311
312 dnl ---------------------------------------------------------------------------
313 dnl - Makefiles, etc.
314 dnl ---------------------------------------------------------------------------
315 AC_CONFIG_FILES([
316 Makefile
317 libglabels/Makefile
318 libglabels/${LIBGLABELS_BRANCH}.pc
319 libglbarcode/Makefile
320 libglbarcode/${LIBGLBARCODE_BRANCH}.pc
321 src/Makefile
322 src/cursors/Makefile
323 src/pixmaps/Makefile
324 data/Makefile
325 data/desktop/Makefile
326 data/icons/Makefile
327 data/icons/16x16/Makefile
328 data/icons/22x22/Makefile
329 data/icons/24x24/Makefile
330 data/icons/32x32/Makefile
331 data/icons/48x48/Makefile
332 data/man/Makefile
333 data/mime/Makefile
334 data/pixmaps/Makefile
335 data/schemas/Makefile
336 data/schemas/org.gnome.glabels-3.gschema.xml.in
337 data/ui/Makefile
338 templates/Makefile
339 po/Makefile.in
340 help/Makefile
341 docs/Makefile
342 docs/libglabels/Makefile
343 docs/libglbarcode/Makefile
344 glabels.spec
345 ])
346 AC_OUTPUT
347
348
349 dnl ---------------------------------------------------------------------------
350 dnl - Print configuration information
351 dnl ---------------------------------------------------------------------------
352 echo "
353
354 Configuration:
355
356         Package ................. ${PACKAGE}-${VERSION}
357         Installation prefix ..... ${prefix}
358         Source code location .... ${srcdir}
359         Compiler ................ ${CC} 
360
361
362 Optional data merge backends:
363
364         Evolution Data Server ... ${have_libebook}
365
366
367 Optional barcode backends:
368
369         GNU Barcode ............. ${have_libbarcode} ${help_libbarcode}
370         QR Code ................. ${have_libqrencode} ${help_libqrencode}
371         IEC 16022 ............... ${have_libiec16022} ${help_libiec16022}
372         Zint .................... ${have_libzint} ${help_libzint}
373
374
375 "
376
377
378 cat ${srcdir}/MESSAGE-OF-DOOM
379