]> err.no Git - mapper/blobdiff - configure.ac
Add -I../libs/libgtkgps to flags
[mapper] / configure.ac
index 8d53ed2650b1cce22aa43412612e1b78abb6fb72..a939ec6356491bec208d089c01ce8cebf363d05c 100644 (file)
 #
 
 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)
@@ -124,6 +224,8 @@ if test "x$HAVE_HILDON" = "xyes"; then
   AC_MSG_RESULT(no)
  fi
 
+ if test "x$HAVE_OSSO" = "xyes"; then
+
  PKG_CHECK_MODULES(CONIC, conic, CONIC=yes, CONIC=no)
  if test "x$CONIC" = "xyes"; then
   AC_DEFINE(WITH_CONIC, 1, [build with Nokia Internet Connectivity library])
@@ -131,17 +233,14 @@ if test "x$HAVE_HILDON" = "xyes"; then
   AC_SUBST(CONIC_CFLAGS)
  else
   AC_MSG_RESULT(no)
- fi
-
- if test "x$CONIC" = "xno"; then
- PKG_CHECK_MODULES(OSSO_IC, osso-ic, HAVE_OSSO_IC=yes, HAVE_OSSO_IC=no)
- if test "x$HAVE_OSSO_IC" = "xyes"; then
-  AC_DEFINE(WITH_OSSO_IC, 1, [build with Nokia osso ic])
-  AC_SUBST(OSSO_IC_LIBS)
-  AC_SUBST(OSSO_IC_CFLAGS)
- else
-  AC_MSG_RESULT(no)
- fi
+  PKG_CHECK_MODULES(OSSO_IC, osso-ic, HAVE_OSSO_IC=yes, HAVE_OSSO_IC=no)
+  if test "x$HAVE_OSSO_IC" = "xyes"; then
+   AC_DEFINE(WITH_OSSO_IC, 1, [build with Nokia osso ic])
+   AC_SUBST(OSSO_IC_LIBS)
+   AC_SUBST(OSSO_IC_CFLAGS)
+  else
+   AC_MSG_RESULT(no)
+  fi
  fi
 
  PKG_CHECK_MODULES(HILDON_HELP, hildon-help, HAVE_HILDON_HELP=yes, HAVE_HILDON_HELP=no)
@@ -151,73 +250,97 @@ if test "x$HAVE_HILDON" = "xyes"; then
   AC_SUBST(HILDON_HELP_CFLAGS)
  else
   AC_MSG_RESULT(no)
+  PKG_CHECK_MODULES(OSSO_HELP, libossohelp, HAVE_OSSO_HELP=yes, HAVE_OSSO_HELP=no)
+  if test "x$HAVE_OSSO_HELP" = "xyes"; then
+   AC_DEFINE(WITH_OSSO_HELP, 1, [build with Nokia osso help (old)])
+   AC_SUBST(OSSO_HELP_LIBS)
+   AC_SUBST(OSSO_HELP_CFLAGS)
+  else
+   AC_MSG_RESULT(no)
+  fi
  fi
 
- if test "x$HAVE_HILDON_HELP" = "xno"; then
- PKG_CHECK_MODULES(OSSO_HELP, libossohelp, HAVE_OSSO_HELP=yes, HAVE_OSSO_HELP=no)
- if test "x$HAVE_OSSO_HELP" = "xyes"; then
-  AC_DEFINE(WITH_OSSO_HELP, 1, [build with Nokia osso help (old)])
-  AC_SUBST(OSSO_HELP_LIBS)
-  AC_SUBST(OSSO_HELP_CFLAGS)
- else
-  AC_MSG_RESULT(no)
- fi
+ # libosso
  fi
 
  PKG_CHECK_MODULES(HILDONFM, hildon-fm, HAVE_HILDONFM=yes, HAVE_HILDONFM=no)
- if test "x$HAVE_OSSO" = "xyes"; then
-  AC_DEFINE(WITH_HILDONFM, 1, [build with Hildon Filemanager])
+ if test "x$HAVE_HILDONFM" = "xyes"; then
+  AC_DEFINE(WITH_HILDONFM, 1, [build with Hildon Filemanager 1])
   AC_SUBST(HILDONFM_LIBS)
   AC_SUBST(HILDONFM_CFLAGS)
  else
   AC_MSG_RESULT(no)
+  PKG_CHECK_MODULES(HILDONFM, hildon-fm-2, HAVE_HILDONFM=yes, HAVE_HILDONFM=no)
+  if test "x$HAVE_HILDONFM" = "xyes"; then
+   AC_DEFINE(WITH_HILDONFM, 1, [build with Hildon Filemanager 2])
+   AC_SUBST(HILDONFM_LIBS)
+   AC_SUBST(HILDONFM_CFLAGS)
+  else
+   AC_MSG_RESULT(no)
+  fi
  fi
+
 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
-
-AM_CONDITIONAL(WITH_HILDON, test "x$HAVE_HILDON" = "xyes")
 
-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",
@@ -236,14 +359,19 @@ AC_CHECK_HEADERS(expat.h,
        )
 AC_SUBST(EXPAT_LIBS)
 
-AC_CHECK_HEADER(espeak/speak_lib.h)
-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)
-)
+if test "x$HAVE_GST" = "xyes"; then
+ 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
 if test "x$HAVE_HILDON" = "xyes"; then
@@ -293,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
@@ -324,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