]> git.sur5r.net Git - glabels/blob - configure.ac
Initial port to 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 - LIBGLABELS API versioning
52 dnl ---------------------------------------------------------------------------
53 dnl From the libtool manual:
54 dnl 1. Start with version information of `0:0:0' for each libtool library.
55 dnl 2. Update the version information only immediately before a public release.
56 dnl    More frequent updates are unnecessary, and only guarantee that the current
57 dnl    interface number gets larger faster.
58 dnl 3. If the library source code has changed at all since the last update, then increment
59 dnl    revision (`c:r:a' becomes `c:r+1:a').
60 dnl 4. If any interfaces have been added, removed, or changed since the last update,
61 dnl    increment current, and set revision to 0.
62 dnl 5. If any interfaces have been added since the last public release, then increment age.
63 dnl 6. If any interfaces have been removed since the last public release, then set age
64 dnl    to 0.
65 LIBGLABELS_C=7
66 LIBGLABELS_R=0
67 LIBGLABELS_A=0
68
69 LIBGLABELS_API_VERSION=${LIBGLABELS_C}:${LIBGLABELS_R}:${LIBGLABELS_A}
70 AC_SUBST(LIBGLABELS_API_VERSION)
71
72 dnl ---------------------------------------------------------------------------
73 dnl - Library dependencies
74 dnl ---------------------------------------------------------------------------
75 dnl Required dependencies
76 GLIB_REQUIRED=2.27.1
77 GTK_REQUIRED=2.91.1
78 LIBXML_REQUIRED=2.7.7
79 LIBRSVG_REQUIRED=2.26.3
80
81 dnl Optional dependencies
82 LIBEBOOK_REQUIRED=2.30.3
83 LIBBARCODE_REQUIRED=0.98
84 LIBQRENCODE_REQUIRED=3.1.0
85 LIBIEC16022_REQUIRED=0.2.4
86 LIBZINT_REQUIRED=2.4.0
87
88 dnl Make above strings available for packaging files (e.g. rpm spec files)
89 AC_SUBST(GLIB_REQUIRED)
90 AC_SUBST(GTK_REQUIRED)
91 AC_SUBST(LIBXML_REQUIRED)
92 AC_SUBST(LIBEBOOK_REQUIRED)
93 AC_SUBST(LIBBARCODE_REQUIRED)
94 AC_SUBST(LIBQRENCODE_REQUIRED)
95 AC_SUBST(LIBIEC16022_REQUIRED)
96 AC_SUBST(LIBZINT_REQUIRED)
97
98
99 dnl ---------------------------------------------------------------------------
100 dnl - GLABELS prerequisites
101 dnl ---------------------------------------------------------------------------
102 PKG_CHECK_MODULES(GLABELS, [\
103         glib-2.0 >= $GLIB_REQUIRED \
104         gtk+-3.0 >= $GTK_REQUIRED \
105         libxml-2.0 >= $LIBXML_REQUIRED \
106         librsvg-2.0 >= $LIBRSVG_REQUIRED \
107 ])
108
109 AC_SUBST(GLABELS_CFLAGS)
110 AC_SUBST(GLABELS_LIBS)
111
112
113 dnl ---------------------------------------------------------------------------
114 dnl - LIBGLABELS more modest prerequisites
115 dnl ---------------------------------------------------------------------------
116 PKG_CHECK_MODULES(LIBGLABELS, [\
117         glib-2.0 >= $GLIB_REQUIRED \
118         libxml-2.0 >= $LIBXML_REQUIRED \
119 ])
120
121 AC_SUBST(LIBGLABELS_CFLAGS)
122 AC_SUBST(LIBGLABELS_LIBS)
123
124
125 dnl ---------------------------------------------------------------------------
126 dnl - Check for optional evolution data server
127 dnl ---------------------------------------------------------------------------
128 AC_ARG_WITH(libebook,
129             [AS_HELP_STRING([--without-libebook],[build without Evolution Data Server support])])
130 have_libebook=no
131 if test "x$with_libebook" != xno; then
132         PKG_CHECK_MODULES(LIBEBOOK, libebook-1.2 >= $LIBEBOOK_REQUIRED,
133                           [have_libebook=yes], [have_libebook=no])
134 fi
135
136 if test "x$have_libebook" = "xyes"; then
137         AC_DEFINE(HAVE_LIBEBOOK,1,[Define to 1 for EDS support])
138         AC_SUBST(LIBEBOOK_CFLAGS)
139         AC_SUBST(LIBEBOOK_LIBS)
140 fi
141
142
143 dnl ---------------------------------------------------------------------------
144 dnl - Check for optional GNU Barcode backend
145 dnl ---------------------------------------------------------------------------
146 AC_ARG_WITH(libbarcode,
147             [AS_HELP_STRING([--without-libbarcode],[build without GNU Barcode support])])
148 have_libbarcode=no
149 if test "x$with_libbarcode" != xno; then
150    AC_CHECK_LIB(barcode, Barcode_Create,
151                 [have_libbarcode=yes], [have_libbarcode=no])
152 fi
153
154 if test "x$have_libbarcode" = "xyes"; then
155         AC_DEFINE(HAVE_LIBBARCODE,1,[Define to 1 for GNU Barcode support])
156         LIBBARCODE_CFLAGS=""
157         LIBBARCODE_LIBS="-lbarcode"
158         AC_SUBST(LIBBARCODE_CFLAGS)
159         AC_SUBST(LIBBARCODE_LIBS)
160 else
161         help_libbarcode="(See http://www.gnu.org/software/barcode/barcode.html)"
162 fi
163
164 dnl ---------------------------------------------------------------------------
165 dnl - Check for optional Zint backend
166 dnl ---------------------------------------------------------------------------
167 AC_ARG_WITH(libzint,
168             [AS_HELP_STRING([--without-libzint],[build without Zint Barcode support])])
169 have_libzint=no
170 if test "x$with_libzint" != xno; then
171    AC_CHECK_LIB(zint, ZBarcode_Render,
172                 [have_libzint=yes], [have_libzint=no])
173 fi
174
175 if test "x$have_libzint" = "xyes"; then
176         AC_DEFINE(HAVE_LIBZINT,1,[Define to 1 for Zint Barcode support])
177         LIBZINT_CFLAGS=""
178         LIBZINT_LIBS="-lzint"
179         AC_SUBST(LIBZINT_CFLAGS)
180         AC_SUBST(LIBZINT_LIBS)
181 else
182         help_libzint="(See http://www.zint.org.uk)"
183 fi
184
185
186 dnl ---------------------------------------------------------------------------
187 dnl - Check for optional QRencode Barcode backend
188 dnl ---------------------------------------------------------------------------
189 AC_ARG_WITH(libqrencode,
190             [AS_HELP_STRING([--without-libqrencode],[build without QR code support])])
191 have_libqrencode=no
192 if test "x$with_libqrencode" != xno; then
193         PKG_CHECK_MODULES(LIBQRENCODE, libqrencode >= $LIBQRENCODE_REQUIRED,
194                           [have_libqrencode=yes], [have_libqrencode=no])
195 fi
196
197 if test "x$have_libqrencode" = "xyes"; then
198         AC_DEFINE(HAVE_LIBQRENCODE,1,[Define to 1 for QR code support])
199         AC_SUBST(LIBQRENCODE_CFLAGS)
200         AC_SUBST(LIBQRENCODE_LIBS)
201 else
202         help_libqrencode="(See http://megaui.net/fukuchi/works/qrencode/index.en.html)"
203 fi
204
205
206 dnl ---------------------------------------------------------------------------
207 dnl - Check for IEC16022 Barcode backend
208 dnl ---------------------------------------------------------------------------
209 AC_ARG_WITH(libiec16022,
210             [AS_HELP_STRING([--without-libiec16022],[build without IEC 16022 support])])
211 have_libiec16022=no
212 if test "x$with_libiec16022" != xno; then
213         PKG_CHECK_MODULES(LIBIEC16022, libiec16022 >= $LIBIEC16022_REQUIRED,
214                           [have_libiec16022=yes], [have_libiec16022=no])
215 fi
216
217 if test "x$have_libiec16022" = "xyes"; then
218         AC_DEFINE(HAVE_LIBIEC16022,1,[Define to 1 for IEC 16022 support])
219         AC_SUBST(LIBIEC16022_CFLAGS)
220         AC_SUBST(LIBIEC16022_LIBS)
221 else
222         help_libiec16022="(See http://datenfreihafen.org/projects/iec16022.html)"
223 fi
224
225
226 dnl ---------------------------------------------------------------------------
227 dnl - Enable deprecation testing
228 dnl ---------------------------------------------------------------------------
229 AC_ARG_ENABLE(deprecations,
230               [AS_HELP_STRING([--enable-deprecations],[warn about deprecated usages [default=no]])],,
231               [enable_deprecations=no])
232
233 if test "x$enable_deprecations" = "xyes"; then
234    DISABLE_DEPRECATED_CFLAGS="\
235 -DG_DISABLE_DEPRECATED \
236 -DGDK_DISABLE_DEPRECATED \
237 -DGTK_DISABLE_DEPRECATED \
238 -DGDK_PIXBUF_DISABLE_DEPRECATED \
239 "
240    AC_SUBST(DISABLE_DEPRECATED_CFLAGS)
241 fi
242
243
244 dnl ---------------------------------------------------------------------------
245 dnl - Disable updating of mime and desktop databases
246 dnl ---------------------------------------------------------------------------
247 AC_ARG_ENABLE(update-mimedb, AS_HELP_STRING([--disable-update-mimedb],[disable the update-mime-database after install [default=no]]),,
248               enable_update_mimedb=yes)
249 AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
250
251 AC_ARG_ENABLE(update-desktopdb, AS_HELP_STRING([--disable-update-desktopdb],[disable the update-desktop-database after install [default=no]]),,
252               enable_update_desktopdb=yes)
253 AM_CONDITIONAL(ENABLE_UPDATE_DESKTOPDB, test x$enable_update_desktopdb = xyes)
254
255
256 dnl ---------------------------------------------------------------------------
257 dnl - i18n support
258 dnl ---------------------------------------------------------------------------
259 GETTEXT_PACKAGE=${GLABELS_BRANCH}
260 AC_SUBST(GETTEXT_PACKAGE)
261 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
262
263 AM_GLIB_GNU_GETTEXT
264
265
266 dnl ---------------------------------------------------------------------------
267 dnl - Makefiles, etc.
268 dnl ---------------------------------------------------------------------------
269 AC_CONFIG_FILES([
270 Makefile
271 libglabels/Makefile
272 libglabels/${LIBGLABELS_BRANCH}.pc
273 src/Makefile
274 src/cursors/Makefile
275 src/pixmaps/Makefile
276 data/Makefile
277 data/desktop/Makefile
278 data/icons/Makefile
279 data/icons/16x16/Makefile
280 data/icons/22x22/Makefile
281 data/icons/24x24/Makefile
282 data/icons/32x32/Makefile
283 data/icons/48x48/Makefile
284 data/man/Makefile
285 data/mime/Makefile
286 data/pixmaps/Makefile
287 data/schemas/Makefile
288 data/schemas/org.gnome.glabels-3.gschema.xml.in
289 data/ui/Makefile
290 templates/Makefile
291 po/Makefile.in
292 help/Makefile
293 docs/Makefile
294 docs/libglabels/Makefile
295 glabels.spec
296 ])
297 AC_OUTPUT
298
299
300 dnl ---------------------------------------------------------------------------
301 dnl - Print configuration information
302 dnl ---------------------------------------------------------------------------
303 echo "
304
305 Configuration:
306
307         Package ................. ${PACKAGE}-${VERSION}
308         Installation prefix ..... ${prefix}
309         Source code location .... ${srcdir}
310         Compiler ................ ${CC} 
311
312
313 Optional data merge backends:
314
315         Evolution Data Server ... ${have_libebook}
316
317
318 Optional barcode backends:
319
320         GNU Barcode ............. ${have_libbarcode} ${help_libbarcode}
321         QR Code ................. ${have_libqrencode} ${help_libqrencode}
322         IEC 16022 ............... ${have_libiec16022} ${help_libiec16022}
323         Zint .................... ${have_libzint} ${help_libzint}
324
325
326 "
327
328
329 cat ${srcdir}/MESSAGE-OF-DOOM
330