# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.59)
-AC_INIT(viking, 0.9.8)
+AC_INIT(viking, 1.1)
AM_INIT_AUTOMAKE()
dnl AC_CONFIG_SRCDIR([src/main.c])
AC_CONFIG_HEADERS([src/config.h])
+GTK_DOC_CHECK(1.0)
# Checks for programs.
AC_PROG_CC
# Checks for header files.
AC_HEADER_STDC
-AC_CHECK_HEADERS([malloc.h netdb.h netinet/in.h stdlib.h string.h sys/param.h sys/socket.h sys/types.h sys/wait.h unistd.h math.h])
+AC_CHECK_HEADERS([malloc.h netdb.h netinet/in.h stdlib.h string.h sys/param.h sys/socket.h sys/types.h sys/wait.h unistd.h math.h utime.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_FUNC_STAT
AC_FUNC_STRTOD
AC_CHECK_FUNCS([floor gethostbyname memset mkdtemp pow realpath socket sqrt strcasecmp strchr strdup strncasecmp strtol strtoul])
+AC_CHECK_LIB(m, tan)
+AC_CHECK_LIB(z, inflate)
# Expat
AM_WITH_EXPAT
# Curl
LIBCURL_CHECK_CONFIG([yes],[],[],[AC_MSG_ERROR([libcurl is needed but not found])])
+# gdk-pixbuf-csource
AC_CHECK_PROG([GDK_PIXBUF_CSOURCE],gdk-pixbuf-csource,[yes])
if test $GDK_PIXBUF_CSOURCE != "yes"
then
AC_MSG_ERROR([gdk-pixbuf-csource is needed but not found])
fi
-# Checks for libraries.
-AM_PATH_GTK_2_0(2.2.0,,AC_MSG_ERROR(needs GTK+ 2.2.0),gthread)
+dnl ------------------
+dnl | Pkgconfig checks |---------------------------------------
+dnl ------------------
+
+PKG_CHECK_MODULES(PACKAGE, [
+ glib-2.0 >= 2.12
+ gthread-2.0 >= 2.2
+ gtk+-2.0 >= 2.12
+ gio-2.0 >= 2.12
+])
+
+AC_SUBST(PACKAGE_CFLAGS)
+AC_SUBST(PACKAGE_LIBS)
+
+dnl -------------
+dnl | User Manual |---------------------------------------
+dnl -------------
+GNOME_DOC_INIT
+
+dnl ---------------------------------------------------------------------------
+dnl - Use deprecated options (default enabled for devs, disabled in releases)
+dnl ---------------------------------------------------------------------------
+
+AC_ARG_ENABLE(deprecations,
+ [AC_HELP_STRING([--enable-deprecations],
+ [warn about deprecated usages [default=no]])],
+ [ac_cv_enable_deprecations=$enableval],
+ [ac_cv_enable_deprecations=no])
+AC_CACHE_CHECK([whether to enable deprecated features],
+ [ac_cv_enable_deprecations], [ac_cv_enable_deprecations=no])
+
+if test "x$ac_cv_enable_deprecations" = "xyes"; then
+ DISABLE_DEPRECATED_CFLAGS="\
+-DG_DISABLE_SINGLE_INCLUDES \
+-DGSEAL_ENABLE \
+-DG_DISABLE_DEPRECATED \
+-DGDK_DISABLE_DEPRECATED \
+-DGDK_PIXBUF_DISABLE_DEPRECATED \
+-DGTK_DISABLE_SINGLE_INCLUDES \
+-DGTK_DISABLE_DEPRECATED"
+ CPPFLAGS="$CPPFLAGS $DISABLE_DEPRECATED_CFLAGS"
+fi
# Options
AC_ARG_ENABLE(alphabetized-trw, AC_HELP_STRING([--enable-alphabetized-trw],
;;
esac
+AC_ARG_ENABLE(bing, AC_HELP_STRING([--enable-bing],
+ [enable Bing stuff (default is enable)]),
+ [ac_cv_enable_bing=$enableval],
+ [ac_cv_enable_bing=yes])
+AC_CACHE_CHECK([whether to enable Bing stuff],
+ [ac_cv_enable_bing], [ac_cv_enable_bing=yes])
+case $ac_cv_enable_bing in
+ yes)
+ AC_DEFINE(VIK_CONFIG_BING, [], [BING STUFF])
+ ;;
+esac
+AM_CONDITIONAL([BING], [test x$ac_cv_enable_bing = xyes])
+
AC_ARG_ENABLE(google, AC_HELP_STRING([--enable-google],
[enable Google stuff (default is enable)]),
[ac_cv_enable_google=$enableval],
esac
AM_CONDITIONAL([BLUEMARBLE], [test x$ac_cv_enable_bluemarble = xyes])
-# OpenAerial
-AC_ARG_ENABLE(openaerial, AC_HELP_STRING([--enable-openaerial],
- [enable OpenAerial stuff (default is enable)]),
- [ac_cv_enable_openaerial=$enableval],
- [ac_cv_enable_openaerial=yes])
-AC_CACHE_CHECK([whether to enable OpenAerial stuff],
- [ac_cv_enable_openaerial], [ac_cv_enable_openaerial=yes])
-case $ac_cv_enable_openaerial in
- yes)
- AC_DEFINE(VIK_CONFIG_OPENAERIAL, [], [OPENAERIAL STUFF])
- ;;
-esac
-AM_CONDITIONAL([OPENAERIAL], [test x$ac_cv_enable_openaerial = xyes])
-
# GeoNames http://www.geonames.org/
AC_ARG_ENABLE(geonames, AC_HELP_STRING([--enable-geonames],
[enable Geonames stuff (default is enable)]),
esac
AM_CONDITIONAL([GEOCACHES], [test x$ac_cv_enable_geocaches = xyes])
+AC_ARG_ENABLE(spotmaps, AC_HELP_STRING([--enable-spotmaps],
+ [enable SPOTMaps map (default is enable).]),
+ [ac_cv_enable_spotmaps=$enableval],
+ [ac_cv_enable_spotmaps=yes])
+AC_CACHE_CHECK([whether to enable SPOTMaps map],
+ [ac_cv_enable_spotmaps], [ac_cv_enable_spotmaps=yes])
+case $ac_cv_enable_spotmaps in
+ yes)
+ AC_DEFINE(VIK_CONFIG_SPOTMAPS, [], [SPOTMAPS STUFF])
+ ;;
+esac
+AM_CONDITIONAL([SPOTMAPS], [test x$ac_cv_enable_spotmaps = xyes])
+
AC_ARG_ENABLE(dem24k, AC_HELP_STRING([--enable-dem24k],
[enable USGS 24k DEM (default is disable) download source. Requires dem24k.pl script in path.]),
;;
esac
AM_CONDITIONAL([REALTIME_GPS_TRACKING], [test x$ac_cv_enable_realtimegpstracking = xyes])
+# Viking supports two incompatibles versions of GPSd: 2.39 and 2.90
+# But GPSd does not provides easy way to test features.
+if test x$ac_cv_enable_realtimegpstracking = xyes
+then
+ AC_CHECK_FUNCS(gps_stream)
+ AC_CHECK_FUNCS(gps_open_r)
+fi
AC_ARG_WITH(search,
[AC_HELP_STRING([--with-search],
AC_DEFINE_UNQUOTED(VIK_CONFIG_MAPCACHE_SIZE, ${VIK_CONFIG_MAPCACHE_SIZE},
[Size of the map cache])
+
+AC_ARG_WITH(tileage,
+ [AC_HELP_STRING([--with-tileage],
+ [specify the age of a tile before checking it (default is 30 s)])],
+ [if test "x$withval" = "xno"; then
+ VIK_CONFIG_DEFAULT_TILE_AGE=0;
+ elif test "x$withval" = "xyes"; then
+ AC_MSG_ERROR([Please, set a value for age of tiles])
+ else
+ VIK_CONFIG_DEFAULT_TILE_AGE=${withval}
+ fi],
+ [VIK_CONFIG_DEFAULT_TILE_AGE=30])
+AC_DEFINE_UNQUOTED(VIK_CONFIG_DEFAULT_TILE_AGE, ${VIK_CONFIG_DEFAULT_TILE_AGE},
+ [Age of tiles before cheking it (in seconds)])
+
dnl man pages processing
DB2MAN_XSL=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/manpages/docbook.xsl
AC_SUBST(DB2MAN_XSL)
AC_PATH_PROG(XP,xsltproc)
+AM_CONDITIONAL([HAVE_XSLTPROC],[test "x$XP" != "x"])
AM_CONDITIONAL([GEN_MANPAGES],[test "x$XP" != "x" && test -r "$DB2MAN_XSL"])
dnl This will cause the automake generated makefiles to pass the
src/icons/Makefile
po/Makefile.in
test/Makefile
+ help/Makefile
doc/Makefile
+ doc/reference/Makefile
+ doc/examples/Makefile
doc/dev/Makefile])
AC_OUTPUT([
viking.spec
echo "$PACKAGE $VERSION"
echo "-------------------------------------------"
echo "Alphabetized track & waypoints : $ac_cv_enable_alpha_trw"
+echo "Bing Maps : $ac_cv_enable_bing"
echo "Google Maps : $ac_cv_enable_google"
echo "Terraserver Maps : $ac_cv_enable_terraserver"
-#echo "Expedia Maps : $ac_cv_enable_expedia"
+echo "Expedia Maps : $ac_cv_enable_expedia"
echo "Open Street Map : $ac_cv_enable_openstreetmap"
-echo "OpenAerial : $ac_cv_enable_openaerial"
echo "BlueMarble : $ac_cv_enable_bluemarble"
+echo "SPOTMaps : $ac_cv_enable_spotmaps"
echo "Geonames : $ac_cv_enable_geonames"
#echo "Geocaches Acquire : $ac_cv_enable_geocaches"
echo "USGS 24k DEM : $ac_cv_enable_dem24k"
echo "Realtime GPS Tracking : $ac_cv_enable_realtimegpstracking"
echo "Size of map cache (in memory) : ${VIK_CONFIG_MAPCACHE_SIZE}"
+echo "Age of tiles (in seconds) : ${VIK_CONFIG_DEFAULT_TILE_AGE}"
echo "-------------------------------------------"
echo ""
echo "Configure finished, type 'make' to build."