X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=configure.ac;h=a939ec6356491bec208d089c01ce8cebf363d05c;hb=4c3fa14525e44c67b9b3fbf00f86fb24afd44c97;hp=be0726a4e31523c4e5457cd65d5b9181ff3be61f;hpb=f7ff8231e9fe91259eed743683279d3bb670c8b0;p=mapper diff --git a/configure.ac b/configure.ac index be0726a..a939ec6 100644 --- a/configure.ac +++ b/configure.ac @@ -19,14 +19,21 @@ # AC_INIT(Makefile.am) -AM_INIT_AUTOMAKE(mapper, 1.0.3.90) +AM_INIT_AUTOMAKE(mapper, 1.0.3.95) +AC_CONFIG_MACRO_DIR(m4) AM_MAINTAINER_MODE AC_PROG_CPP AC_CONFIG_HEADERS(src/config.h) AC_PROG_INSTALL AC_PROG_LIBTOOL -AC_SYS_LARGEFILE +# AC_SYS_LARGEFILE +# ^That should do it but for some reason it won't so hack it: +# CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES" + +AC_DEFINE(_FILE_OFFSET_BITS, 64, [Enable LFS]) +AC_DEFINE(_GNU_SOURCE, 1, [Enable GNU Extensions]) + dnl PKG_PROG_PKG_CONFIG dnl Debugging options to enable debug macros @@ -45,9 +52,39 @@ PKG_CHECK_MODULES(GLIBGTK, glib-2.0 gconf-2.0 dbus-glib-1 gtk+-2.0) AC_SUBST(GLIBGTK_LIBS) AC_SUBST(GLIBGTK_CFLAGS) +AC_PATH_PROG(GCONFTOOL, gconftool-2) +AM_GCONF_SOURCE_2 + +dnl Maemo has 3.8, but prefer new version in case it's available +PKG_CHECK_MODULES(GTKHTML, libgtkhtml-3.14, HAVE_GTKHTML=yes, HAVE_GTKHTML=no) +if test "x$HAVE_GTKHTML" = "xno"; then + PKG_CHECK_MODULES(GTKHTML, libgtkhtml-3.8) +fi +AC_SUBST(GTKHTML_LIBS) +AC_SUBST(GTKHTML_CFLAGS) + +PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0 >= 2.8.4.11 gnome-vfs-module-2.0 >= 2.8.4.11) +AC_SUBST(GNOME_VFS_LIBS) +AC_SUBST(GNOME_VFS_CFLAGS) + +PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.6.16) +AC_SUBST(LIBXML2_LIBS) +AC_SUBST(LIBXML2_CFLAGS) + +PKG_CHECK_MODULES(LIBCURL, libcurl) +AC_SUBST(LIBCURL_LIBS) +AC_SUBST(LIBCURL_CFLAGS) + +PKG_CHECK_MODULES(SQLITE, sqlite3) +AC_SUBST(SQLITE_LIBS) +AC_SUBST(SQLITE_CFLAGS) + AC_ARG_ENABLE([770],AS_HELP_STRING([--enable-770],[Build for Nokia 770/N800]), [enable_770=$enableval], [enable_770=no]) +AC_ARG_ENABLE([gst],AS_HELP_STRING([--enable-gst],[Enable support for gstreamer]), + [enable_gst=$enableval], [enable_gst=no]) + AC_ARG_ENABLE([hildon],AS_HELP_STRING([--enable-hildon],[Build for Hildon]), [enable_hildon=$enableval], [enable_hildon=no]) @@ -57,6 +94,43 @@ AC_ARG_ENABLE([itbtdbus],AS_HELP_STRING([--enable-itbtdbus],[Use IT D-Bus Blueto AC_ARG_ENABLE([btdbus],AS_HELP_STRING([--enable-btdbus],[Use D-Bus bluez interface]), [enable_btdbus=$enableval], [enable_btdbus=no]) +AC_ARG_ENABLE([bluez],AS_HELP_STRING([--enable-bluez],[Use bluez libbluetooth]), + [enable_bluez=$enableval], [enable_bluez=no]) + +AC_ARG_ENABLE([gpsd],AS_HELP_STRING([--enable-gpsd],[Use gpsd]), + [enable_gpsd=$enableval], [enable_gpsd=no]) + +AC_ARG_ENABLE([gypsy],AS_HELP_STRING([--enable-gypsy],[Use gypsy]), + [enable_gypsy=$enableval], [enable_gypsy=no]) + +AC_ARG_ENABLE([geoclue],AS_HELP_STRING([--enable-geoclue],[Use geoclue]), + [enable_geoclue=$enableval], [enable_geoclue=no]) + +AC_ARG_ENABLE([hal],AS_HELP_STRING([--enable-hal],[Use HAL for special hardware keys]), + [enable_hal=$enableval], [enable_hal=no]) + +AC_ARG_ENABLE([cairo],AS_HELP_STRING([--enable-cairo],[Use cairo]), + [enable_cairo=$enableval], [enable_cairo=no]) + +AC_ARG_ENABLE([opengl],AS_HELP_STRING([--enable-opengl],[Use OpenGL (gtkglext]), + [enable_opengl=$enableval], [enable_opengl=no]) + +GTK_DOC_CHECK(1.9) + +if test "x$enable_cairo" = "xyes" ; then + PKG_CHECK_MODULES(CAIRO, cairo) + AC_SUBST(CAIRO_LIBS) + AC_SUBST(CAIRO_CFLAGS) + AC_DEFINE([WITH_CAIRO], 1, [Draw using cairo]) +fi + +if test "x$enable_opengl" = "xyes" ; then + PKG_CHECK_MODULES(GTKGLEXT, gtkglext-x11-1.0) + AC_SUBST(GTKGLEXT_LIBS) + AC_SUBST(GTKGLEXT_CFLAGS) + AC_DEFINE([WITH_GL], 1, [Draw using OpenGL]) +fi + if test "x$enable_770" = "xno" ; then WITH_DEVICE_770=no else @@ -65,6 +139,19 @@ else AC_DEFINE([WITH_DEVICE_770], 1, [With 770/N800 specific code]) fi +if test "x$enable_hal" = "xyes" ; then + PKG_CHECK_MODULES(HAL, hal, HAVE_HAL=yes, HAVE_HAL=no) + if test "x$HAVE_HAL" = "xyes"; then + AC_SUBST(HAL_LIBS) + AC_SUBST(HAL_CFLAGS) + AC_DEFINE([WITH_HAL], 1, [Listen to special events using HAL]) + else + AC_MSG_NOTICE([HAL support requested but not found, disabling]) + fi +fi + +AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal) + if test "x$enable_itbtdbus" = "xno" ; then WITH_HILDON_DBUS_BT=no enable_btdbus=yes @@ -74,16 +161,29 @@ else AC_DEFINE([WITH_HILDON_DBUS_BT], 1, [IT D-Bus bluetooth]) fi +if test "x$enable_bluez" = "xno" ; then + WITH_BLUEZ=no +else + PKG_CHECK_MODULES(BLUEZ, bluez, HAVE_BLUEZ=yes, HAVE_BLUEZ=no) + if test "x$HAVE_BLUEZ" = "xyes"; then + AC_SUBST(BLUEZ_LIBS) + AC_SUBST(BLUEZ_CFLAGS) + WITH_BLUEZ=yes + AC_DEFINE([WITH_BLUEZ], 1, [Bluez RFCOMM]) + fi +fi + if test "x$enable_btdbus" = "xno" ; then WITH_BLUEZ_DBUS_BT=no else WITH_BLUEZ_DBUS_BT=yes - PKG_CHECK_MODULES(BLUEZ, bluez) - AC_SUBST(BLUEZ_LIBS) - AC_SUBST(BLUEZ_CFLAGS) AC_DEFINE([WITH_BLUEZ_DBUS_BT], 1, [bluez D-Bus bluetooth]) fi +AM_CONDITIONAL(HAVE_BLUEZ, [test "$enable_bluez" = "yes"]) +AM_CONDITIONAL(HAVE_HILDON_DBUS_BT, [test "$enable_itbtdbus" = "yes"]) +AM_CONDITIONAL(HAVE_BLUEZ_DBUS_BT, [test "$enable_btdbus" = "yes"]) + if test "x$enable_hildon" = "xyes" ; then dnl Ckeck for hildon-libs PKG_CHECK_MODULES(HILDON, hildon-libs, HAVE_HILDON=yes, HAVE_HILDON=no) @@ -185,45 +285,62 @@ fi AM_CONDITIONAL(WITH_HILDON, test "x$HAVE_HILDON" = "xyes") AM_CONDITIONAL(WITH_OSSO, test "x$HAVE_OSSO" = "xyes") +if test "x$enable_gpsd" = "xyes" ; then AC_CHECK_HEADERS([gps.h], [ac_cv_gps_h=yes]) AC_CHECK_LIB(gps, gps_open,[ac_cv_libgps=yes] ) -if test "x$ac_cv_libgps" = xyes; then - AC_DEFINE(WITH_LIBGPS, 1, [build with gpsd]) -fi - -PKG_CHECK_MODULES(GEOCLUE, geoclue, HAVE_GEOCLUE=yes, HAVE_GEOCLUE=no) -if test "x$HAVE_GEOCLUE" = "xyes"; then - AC_DEFINE(WITH_GEOCLUE, 1, [build with Geoclue]) - AC_SUBST(GEOCLUE_CFLAGS) - AC_SUBST(GEOCLUE_LIBS) +PKG_CHECK_MODULES(LIBGPSBT, gpsbt, HAVE_GPSBT=yes, HAVE_GPSBT=no) +if test "x$HAVE_GPSBT" = "xyes"; then + AC_DEFINE(WITH_GPSBT, 1, [Support gpsbt]) + AC_SUBST(LIBGPSBT_CFLAGS) + AC_SUBST(LIBGPSBT_LIBS) fi -PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0 >= 2.8.4.11 gnome-vfs-module-2.0 >= 2.8.4.11) -AC_SUBST(GNOME_VFS_LIBS) -AC_SUBST(GNOME_VFS_CFLAGS) - -PKG_CHECK_MODULES(LIBXML2, libxml-2.0 >= 2.6.16) -AC_SUBST(LIBXML2_LIBS) -AC_SUBST(LIBXML2_CFLAGS) - -PKG_CHECK_MODULES(LIBCURL, libcurl) -AC_SUBST(LIBCURL_LIBS) -AC_SUBST(LIBCURL_CFLAGS) - -PKG_CHECK_MODULES(SQLITE, sqlite3) -AC_SUBST(SQLITE_LIBS) -AC_SUBST(SQLITE_CFLAGS) +PKG_CHECK_MODULES(LIBGPSMGR, gpsmgr, HAVE_GPSMGR=yes, HAVE_GPSMGR=no) +if test "x$HAVE_GPSMGR" = "xyes"; then + AC_DEFINE(WITH_GPSMGR, 1, [Support gpsmgr]) + AC_SUBST(LIBGPSMGR_CFLAGS) + AC_SUBST(LIBGPSMGR_LIBS) +fi -PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.10, HAVE_GST=yes, HAVE_GST=no) -if test "x$HAVE_GST" = "xyes"; then - AC_DEFINE(WITH_GST, 1, [build with Gstreamer]) - GSTREAMER_LIBS="$GSTREAMER_LIBS -lgstapp-0.10" - AC_SUBST(GSTREAMER_LIBS) - AC_SUBST(GSTREAMER_CFLAGS) -else - AC_MSG_ERROR([Mapper requires gstreamer.]) +if test "x$ac_cv_libgps" = xyes; then + AC_DEFINE(WITH_LIBGPS, 1, [build with gpsd]) +fi +fi +AM_CONDITIONAL(HAVE_GPSD, [test "$enable_gpsd" = "yes"]) + +if test "x$enable_gypsy" = "xyes" ; then + PKG_CHECK_MODULES(GYPSY, gypsy, HAVE_GYPSY=yes, HAVE_GYPSY=no) + if test "x$HAVE_GEOCLUE" = "xyes"; then + AC_DEFINE(WITH_GYPSY, 1, [build with gypsy]) + AC_SUBST(GYPSY_CFLAGS) + AC_SUBST(GYPSY_LIBS) + fi +fi +AM_CONDITIONAL(HAVE_GYPSY, [test "$enable_gypsy" = "yes"]) + +if test "x$enable_geoclue" = "xyes" ; then + PKG_CHECK_MODULES(GEOCLUE, geoclue, HAVE_GEOCLUE=yes, HAVE_GEOCLUE=no) + if test "x$HAVE_GEOCLUE" = "xyes"; then + AC_DEFINE(WITH_GEOCLUE, 1, [build with Geoclue]) + AC_SUBST(GEOCLUE_CFLAGS) + AC_SUBST(GEOCLUE_LIBS) + fi +fi +AM_CONDITIONAL(HAVE_GEOCLUE, [test "$enable_geoclue" = "yes"]) + +if test "x$enable_gst" = "xyes" ; then + PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.10, HAVE_GST=yes, HAVE_GST=no) + if test "x$HAVE_GST" = "xyes"; then + AC_DEFINE(WITH_GST, 1, [build with Gstreamer]) + GSTREAMER_LIBS="$GSTREAMER_LIBS -lgstapp-0.10" + AC_SUBST(GSTREAMER_LIBS) + AC_SUBST(GSTREAMER_CFLAGS) + else + AC_MSG_ERROR([Gstreamer requested but can not be found.]) + fi fi +AM_CONDITIONAL(HAVE_GST, [test "$enable_gst" = "yes"]) AC_CHECK_HEADERS(bzlib.h, BZ2_LIBS="$BZ2_LIBS -lbz2", @@ -242,15 +359,18 @@ AC_CHECK_HEADERS(expat.h, ) AC_SUBST(EXPAT_LIBS) -AC_CHECK_HEADER(espeak/speak_lib.h, HAVE_ESPEAK=yes, HAVE_ESPEAK=no) if test "x$HAVE_GST" = "xyes"; then -ESPEAK_LIBS="-lespeak" -ESPEAK_CFLAGS="-I/usr/include/espeak" -AC_CHECK_LIB([espeak], [espeak_Initialize], - AC_DEFINE(WITH_ESPEAK, 1, [Defined if you have espeak]) - AC_SUBST(ESPEAK_CFLAGS) - AC_SUBST(ESPEAK_LIBS) -) + AC_CHECK_HEADER(espeak/speak_lib.h, HAVE_ESPEAK=yes, HAVE_ESPEAK=no) + if test "x$HAVE_ESPEAK" = "xyes"; then + ESPEAK_LIBS="-lespeak" + ESPEAK_CFLAGS="-I/usr/include/espeak" + AC_CHECK_LIB([espeak], [espeak_Initialize], + AC_DEFINE(WITH_ESPEAK, 1, [Defined if you have espeak]) + AC_SUBST(ESPEAK_CFLAGS) + AC_SUBST(ESPEAK_LIBS)) + else + AC_MSG_ERROR([Speech output requires espeak.]) + fi fi # Localisation @@ -301,10 +421,8 @@ if test "x$HAVE_HILDON" = "xyes"; then else desktopentrydir=$datadir/applications - serviceentrydir= + serviceentrydir=`$PKG_CONFIG dbus-1 --variable=session_bus_services_dir` pixmapdir=$datadir/pixmaps - pluginlibdir= - plugindesktopentrydir= # Application icon install directories icon_26x26dir=$datadir/icons/hicolor/26x26 @@ -332,16 +450,60 @@ AC_DEFINE_UNQUOTED([LOCALEDIR], "${localedir}", [Runtime locale catalog files pa AC_DEFINE_UNQUOTED([PIXMAPDIR], "${pixmapdir}", [Runtime pixmap files path]) # Produce output files -AC_OUTPUT( - Makefile \ +AC_OUTPUT(Makefile \ + libs/Makefile \ + libs/libgtkgps/Makefile \ + libs/libgtkmap/Makefile \ src/Makefile \ + docs/Makefile \ + docs/reference/Makefile \ + docs/reference/libgtkmap/Makefile \ data/Makefile \ data/help/Makefile \ po/Makefile.in \ po/Makefile ) -echo "Hildon: ${enable_hildon}" -echo "IT specials (770/N800): ${enable_770}" -echo "IT D-Bus Bluetooth: ${enable_itbtdbus}" -echo "Bluez D-Bus: ${enable_btdbus}" +if test x$enable_hildon = xyes; then +AC_MSG_NOTICE([** Hildon support enabled]) +fi + +if test x$enable_770 = xyes; then +AC_MSG_NOTICE([** Tablet support enabled]) +fi + +if test x$enable_itbtdbus = xyes; then +AC_MSG_NOTICE([** Tablet bluetooth D-Bus support enabled]) +fi + +if test x$enable_bluez = xyes; then +AC_MSG_NOTICE([** Bluez support enabled]) +fi + +if test x$enable_btdbus = xyes; then +AC_MSG_NOTICE([** Bluez D-Bus support enabled]) +fi + +if test x$enable_gpsd = xyes; then +AC_MSG_NOTICE([** GPSD support enabled]) +fi + +if test x$enable_gypsy = xyes; then +AC_MSG_NOTICE([** Gypsy D-Bus GPS support enabled]) +fi + +if test x$enable_gst = xyes; then +AC_MSG_NOTICE([** Gstreamer support enabled]) +fi + +if test "x$HAVE_ESPEAK" = "xyes"; then +AC_MSG_NOTICE([** espeak support enabled]) +fi + +if test x$enable_cairo = xyes; then +AC_MSG_NOTICE([** Using cairo for graphics]) +fi + +if test x$enable_opengl = xyes; then +AC_MSG_NOTICE([** Using OpenGL]) +fi