| 1 |
# -*- Autoconf -*- |
| 2 |
# Process this file with autoconf to produce a configure script. |
| 3 |
m4_define([champlain_major_version], [0]) |
| 4 |
m4_define([champlain_minor_version], [13]) |
| 5 |
m4_define([champlain_micro_version], [0]) |
| 6 |
m4_define([champlain_version], |
| 7 |
[champlain_major_version.champlain_minor_version.champlain_micro_version]) |
| 8 |
m4_define([champlain_minor_api_version], [m4_eval(champlain_minor_version + champlain_minor_version%2)]) |
| 9 |
m4_define([champlain_api_version], |
| 10 |
[champlain_major_version.champlain_minor_api_version]) |
| 11 |
AC_PREREQ([2.64]) |
| 12 |
AC_INIT([libchamplain], |
| 13 |
[champlain_version], |
| 14 |
[http://bugzilla.gnome.org/enter_bug.cgi?product=libchamplain], |
| 15 |
[libchamplain], |
| 16 |
[http://projects.gnome.org/libchamplain/]) |
| 17 |
AC_CONFIG_SRCDIR([champlain/champlain.h]) |
| 18 |
AC_CONFIG_HEADERS([config.h]) |
| 19 |
AC_CONFIG_MACRO_DIR([m4]) |
| 20 |
|
| 21 |
AM_INIT_AUTOMAKE([-Wno-portability no-dist-gzip dist-xz]) |
| 22 |
|
| 23 |
LT_PREREQ([2.2.6]) |
| 24 |
LT_INIT([dlopen]) |
| 25 |
|
| 26 |
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])]) |
| 27 |
|
| 28 |
# Checks for programs. |
| 29 |
AC_PROG_CC |
| 30 |
AM_PROG_CC_C_O |
| 31 |
|
| 32 |
# Before making a release, the LIBRARY_VERSION string should be modified. |
| 33 |
# The string is of the form C:R:A. |
| 34 |
# - If interfaces have been changed or added, but binary compatibility has |
| 35 |
# been preserved, change to C+1:0:A+1 |
| 36 |
# - If binary compatibility has been broken (eg removed or changed interfaces) |
| 37 |
# change to C+1:0:0 |
| 38 |
# - If the interface is the same as the previous version, change to C:R+1:A |
| 39 |
LIBRARY_VERSION=0:0:0 |
| 40 |
CHAMPLAIN_API_VERSION=champlain_api_version |
| 41 |
CHAMPLAIN_API_VERSION_NORM=champlain_major_version[_]champlain_minor_api_version |
| 42 |
CHAMPLAIN_MAJOR_VERSION=champlain_major_version |
| 43 |
CHAMPLAIN_MINOR_VERSION=champlain_minor_version |
| 44 |
CHAMPLAIN_MICRO_VERSION=champlain_micro_version |
| 45 |
CHAMPLAIN_VERSION=champlain_version |
| 46 |
CHAMPLAIN_MAJORMINOR=champlain_api_version |
| 47 |
AC_SUBST(CHAMPLAIN_API_VERSION) |
| 48 |
AC_SUBST(CHAMPLAIN_API_VERSION_NORM) |
| 49 |
AC_SUBST(CHAMPLAIN_MAJOR_VERSION) |
| 50 |
AC_SUBST(CHAMPLAIN_MINOR_VERSION) |
| 51 |
AC_SUBST(CHAMPLAIN_MICRO_VERSION) |
| 52 |
AC_SUBST(CHAMPLAIN_VERSION) |
| 53 |
AC_SUBST(CHAMPLAIN_MAJORMINOR) |
| 54 |
|
| 55 |
AC_SUBST(LIBRARY_VERSION) |
| 56 |
|
| 57 |
# Checks for libraries. |
| 58 |
|
| 59 |
AC_CHECK_LIBM |
| 60 |
AC_SUBST(LIBM) |
| 61 |
|
| 62 |
PKG_CHECK_MODULES(DEPS, |
| 63 |
[ glib-2.0 >= 2.16 |
| 64 |
gobject-2.0 >= 2.10 |
| 65 |
gdk-3.0 >= 2.90 |
| 66 |
clutter-1.0 >= 1.2 |
| 67 |
cairo >= 1.4 |
| 68 |
gio-2.0 >= 2.16 |
| 69 |
sqlite3 >= 3.0 |
| 70 |
] |
| 71 |
) |
| 72 |
AC_SUBST(DEPS_CFLAGS) |
| 73 |
AC_SUBST(DEPS_LIBS) |
| 74 |
|
| 75 |
AM_PATH_GLIB_2_0(2.16.0,,gobject gthread gio) |
| 76 |
|
| 77 |
# check for gtk-doc |
| 78 |
GTK_DOC_CHECK(1.9) |
| 79 |
|
| 80 |
GNOME_COMPILE_WARNINGS([maximum]) |
| 81 |
GNOME_MAINTAINER_MODE_DEFINES |
| 82 |
|
| 83 |
GOBJECT_INTROSPECTION_CHECK([0.6.3]) |
| 84 |
|
| 85 |
# ----------------------------------------------------------- |
| 86 |
# Check for libsoup, use libsoup-gnome if available |
| 87 |
# ----------------------------------------------------------- |
| 88 |
PKG_CHECK_MODULES(SOUP_GNOME, libsoup-gnome-2.4 >= 2.26, [ |
| 89 |
have_soup_gnome="yes" |
| 90 |
SOUP_CFLAGS=$SOUP_GNOME_CFLAGS |
| 91 |
SOUP_LIBS=$SOUP_GNOME_LIBS |
| 92 |
SOUP_DEP="libsoup-gnome-2.4" |
| 93 |
AC_DEFINE(HAVE_LIBSOUP_GNOME,1,[libsoup gnome integration]) |
| 94 |
], have_soup_gnome="no") |
| 95 |
|
| 96 |
|
| 97 |
if test "x$have_soup_gnome" = "xno"; then |
| 98 |
PKG_CHECK_MODULES(SOUP, libsoup-2.4 >= 2.4.1, |
| 99 |
have_soup="yes", have_soup="no") |
| 100 |
SOUP_DEP="libsoup-2.4" |
| 101 |
fi |
| 102 |
|
| 103 |
if test "x$have_soup" = "xno" && test "x$have_soup_gnome" = "xno"; then |
| 104 |
AC_MSG_ERROR([Could not find libsoup or libsoup-gnome.]) |
| 105 |
fi |
| 106 |
|
| 107 |
AC_SUBST(SOUP_CFLAGS) |
| 108 |
AC_SUBST(SOUP_LIBS) |
| 109 |
AC_SUBST(SOUP_DEP) |
| 110 |
# ----------------------------------------------------------- |
| 111 |
# Enable debug |
| 112 |
# ----------------------------------------------------------- |
| 113 |
|
| 114 |
AC_ARG_ENABLE(debug, |
| 115 |
AS_HELP_STRING([--disable-debug],[compile without debug code]), |
| 116 |
enable_debug=$enableval, enable_debug=yes ) |
| 117 |
|
| 118 |
if test x$enable_debug = xyes; then |
| 119 |
AC_DEFINE(ENABLE_DEBUG, [], [Enable debug code]) |
| 120 |
fi |
| 121 |
|
| 122 |
# ----------------------------------------------------------- |
| 123 |
# Enable Maemo optimizations |
| 124 |
# ----------------------------------------------------------- |
| 125 |
|
| 126 |
AC_ARG_ENABLE(maemo, |
| 127 |
AS_HELP_STRING([--enable-maemo],[compile with maemo optimizations]), |
| 128 |
[enable_maemo=yes]) |
| 129 |
|
| 130 |
# ----------------------------------------------------------- |
| 131 |
# Enable gtk |
| 132 |
# ----------------------------------------------------------- |
| 133 |
|
| 134 |
AC_ARG_ENABLE(gtk, |
| 135 |
AS_HELP_STRING([--disable-gtk],[Do not compile Gtk+ embedded view]), |
| 136 |
enable_gtk=$enableval, enable_gtk=yes ) |
| 137 |
|
| 138 |
if test x$enable_gtk = xyes; then |
| 139 |
PKG_CHECK_MODULES(GTK, |
| 140 |
[ gtk+-3.0 >= 2.90 |
| 141 |
clutter-gtk-1.0 >= 0.90 |
| 142 |
] |
| 143 |
) |
| 144 |
AC_SUBST(GTK_CFLAGS) |
| 145 |
AC_SUBST(GTK_LIBS) |
| 146 |
fi |
| 147 |
|
| 148 |
AM_CONDITIONAL(ENABLE_GTK, test "x$enable_gtk" = "xyes") |
| 149 |
|
| 150 |
# ----------------------------------------------------------- |
| 151 |
# Enable memphis |
| 152 |
# ----------------------------------------------------------- |
| 153 |
|
| 154 |
AC_ARG_ENABLE(memphis, |
| 155 |
AS_HELP_STRING([--disable-memphis],[Disable support of local rendering using libmemphis]), |
| 156 |
enable_memphis=$enableval, enable_memphis="auto") |
| 157 |
|
| 158 |
if test "x$enable_memphis" = "xauto"; then |
| 159 |
PKG_CHECK_MODULES(MEMPHIS, [memphis-0.2 >= 0.2.1], enable_memphis="yes", enable_memphis="no") |
| 160 |
elif test "x$enable_memphis" = "xyes"; then |
| 161 |
PKG_CHECK_MODULES(MEMPHIS, [memphis-0.2 >= 0.2.1]) |
| 162 |
fi |
| 163 |
|
| 164 |
AC_SUBST(MEMPHIS_CFLAGS) |
| 165 |
AC_SUBST(MEMPHIS_LIBS) |
| 166 |
|
| 167 |
AM_CONDITIONAL(ENABLE_MEMPHIS, test "x$enable_memphis" = "xyes") |
| 168 |
|
| 169 |
# ----------------------------------------------------------- |
| 170 |
# Enable vala bindings (default to "no") |
| 171 |
# ----------------------------------------------------------- |
| 172 |
|
| 173 |
AC_ARG_ENABLE(vala, |
| 174 |
AS_HELP_STRING([--enable-vala], [Build Vala bindings [default=no]]), |
| 175 |
enable_vala=$enableval, enable_vala=no ) |
| 176 |
|
| 177 |
if test "x$enable_vala" = "xyes"; then |
| 178 |
if test "x$enable_introspection" = "xno"; then |
| 179 |
AC_MSG_ERROR([Cannot build vala bindings without gobject introspection]) |
| 180 |
fi |
| 181 |
|
| 182 |
AC_PATH_PROG(VAPIGEN, vapigen, vapigen) |
| 183 |
AC_SUBST(VAPIGEN) |
| 184 |
fi |
| 185 |
|
| 186 |
AM_CONDITIONAL(ENABLE_VALA, test "x$enable_vala" = "xyes") |
| 187 |
|
| 188 |
# ----------------------------------------------------------- |
| 189 |
# Enable vala demos (default to "no") |
| 190 |
# ----------------------------------------------------------- |
| 191 |
|
| 192 |
AC_ARG_ENABLE(vala-demos, |
| 193 |
AS_HELP_STRING([--enable-vala-demos],[Build vala demos [default=no]]), |
| 194 |
enable_vala_demos=$enableval, enable_vala_demos=no ) |
| 195 |
|
| 196 |
if test "x$enable_vala_demos" = "xyes"; then |
| 197 |
AM_PROG_VALAC([0.11.0]) |
| 198 |
|
| 199 |
if test "x$VALAC" = "x" ; then |
| 200 |
AC_MSG_ERROR([Cannot find the "valac" compiler in your PATH]) |
| 201 |
fi |
| 202 |
fi |
| 203 |
|
| 204 |
AM_CONDITIONAL(ENABLE_VALA_DEMOS, test "x$enable_vala_demos" = "xyes") |
| 205 |
|
| 206 |
# ----------------------------------------------------------- |
| 207 |
# Generate features header file |
| 208 |
# ----------------------------------------------------------- |
| 209 |
|
| 210 |
CHAMPLAIN_CONFIG_COMMANDS([champlain/champlain-features.h], |
| 211 |
[ |
| 212 |
echo '/* Generated by configure. Do not edit. */' |
| 213 |
echo '#ifndef CHAMPLAIN_FEATURES_H' |
| 214 |
echo '#define CHAMPLAIN_FEATURES_H' |
| 215 |
echo '' |
| 216 |
if test "x$enable_memphis" = "xyes"; then |
| 217 |
echo '#define CHAMPLAIN_HAS_MEMPHIS 1' |
| 218 |
echo '' |
| 219 |
fi |
| 220 |
if test "x$enable_maemo" = "xyes"; then |
| 221 |
echo '#define CHAMPLAIN_HAS_MAEMO 1' |
| 222 |
echo '' |
| 223 |
fi |
| 224 |
echo '#endif' |
| 225 |
],[ |
| 226 |
enable_memphis="$enable_memphis" |
| 227 |
enable_maemo="$enable_maemo" |
| 228 |
]) |
| 229 |
|
| 230 |
# ---------------------------------------------------------- |
| 231 |
|
| 232 |
AC_CONFIG_FILES([Makefile |
| 233 |
build/Makefile |
| 234 |
champlain/Makefile |
| 235 |
champlain/champlain-version.h |
| 236 |
demos/Makefile |
| 237 |
demos/icons/Makefile |
| 238 |
docs/Makefile |
| 239 |
docs/reference/Makefile |
| 240 |
docs/reference/version.xml |
| 241 |
docs/reference-gtk/Makefile |
| 242 |
docs/reference-gtk/version.xml |
| 243 |
champlain-$CHAMPLAIN_API_VERSION.pc:champlain.pc.in |
| 244 |
champlain-$CHAMPLAIN_API_VERSION-uninstalled.pc:champlain-uninstalled.pc.in |
| 245 |
champlain-gtk-$CHAMPLAIN_API_VERSION.pc:champlain-gtk.pc.in |
| 246 |
champlain-gtk-$CHAMPLAIN_API_VERSION-uninstalled.pc:champlain-gtk-uninstalled.pc.in |
| 247 |
champlain-gtk/Makefile |
| 248 |
champlain-memphis-$CHAMPLAIN_API_VERSION.pc:champlain-memphis.pc.in |
| 249 |
champlain-memphis-$CHAMPLAIN_API_VERSION-uninstalled.pc:champlain-memphis-uninstalled.pc.in]) |
| 250 |
AC_OUTPUT |
| 251 |
|
| 252 |
echo "" |
| 253 |
echo "libchamplain $VERSION" |
| 254 |
echo "" |
| 255 |
echo " Prefix: ${prefix}" |
| 256 |
echo " Compiler flags: ${CFLAGS} ${CPPFLAGS}" |
| 257 |
echo " Documentation: ${enable_gtk_doc}" |
| 258 |
echo " Debug: ${enable_debug}" |
| 259 |
echo " libsoup-gnome: ${have_soup_gnome}" |
| 260 |
echo " Gtk+ View: ${enable_gtk}" |
| 261 |
echo "" |
| 262 |
echo "Extra renderers:" |
| 263 |
echo " Memphis renderer: ${enable_memphis}" |
| 264 |
echo "" |
| 265 |
echo "Bindings:" |
| 266 |
echo " gobject-introspection: ${enable_introspection}" |
| 267 |
echo " Vala vapi generation: ${enable_vala}" |
| 268 |
echo " Vala demos: ${enable_vala_demos}" |
| 269 |
echo "" |