upd 2.17.3
[gstreamer-omap:totem.git] / configure.in
1 AC_PREREQ(2.52)
2
3 m4_define(totem_version_major, 2)
4 m4_define(totem_version_minor, 17)
5 m4_define(totem_version_micro, 3)
6
7 AC_INIT([totem],
8         [totem_version_major.totem_version_minor.totem_version_micro],
9         [http://bugzilla.gnome.org/enter_bug.cgi?product=totem])
10
11 AC_CONFIG_SRCDIR([src/totem.c])
12 AM_CONFIG_HEADER([config.h])
13
14 AM_INIT_AUTOMAKE([1.9 dist-bzip2 no-dist-gzip check-news])
15
16 dnl Add the languages which your application supports to po/LINGUAS
17 GETTEXT_PACKAGE=totem
18 AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, ["$GETTEXT_PACKAGE"], [Define to the Gettext package name])
19 AC_SUBST(GETTEXT_PACKAGE)
20 AM_GLIB_GNU_GETTEXT
21 IT_PROG_INTLTOOL([0.35.0])
22
23 GNOME_DOC_INIT
24
25 AC_PROG_CXX
26 AC_PROG_LIBTOOL()
27 PKG_PROG_PKG_CONFIG
28
29 AC_PATH_PROG([GLIB_GENMARSHAL],[glib-genmarshal])
30 AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
31
32 # Requirements
33 GLIB_REQS=2.8.0
34 GTK_REQS=2.10.0
35 GNOMEVFS_REQS=2.8.2
36 GNOMEUI_REQS=2.3.3
37 GNOMEICON_REQS=2.15.90
38 DBUS_REQS=0.61
39
40 # Before making a release, the PLPARSER_LT_VERSION string should be modified.
41 # The string is of the form C:R:A.
42 # - If interfaces have been changed or added, but binary compatibility has
43 #   been preserved, change to C+1:0:A+1
44 # - If binary compatibility has been broken (eg removed or changed interfaces)
45 #   change to C+1:0:0
46 # - If the interface is the same as the previous version, change to C:R+1:A
47 PLPARSER_LT_VERSION=4:2:3
48 AC_SUBST(PLPARSER_LT_VERSION)
49
50 TOTEM_VERSION_MAJOR=totem_version_major
51 TOTEM_VERSION_MINOR=totem_version_minor
52 TOTEM_VERSION_MICRO=totem_version_micro
53 AC_SUBST(TOTEM_VERSION_MAJOR)
54 AC_SUBST(TOTEM_VERSION_MINOR)
55 AC_SUBST(TOTEM_VERSION_MICRO)
56 TOTEM_PL_PARSER_VERSION_MAJOR=totem_version_major
57 TOTEM_PL_PARSER_VERSION_MINOR=totem_version_minor
58 TOTEM_PL_PARSER_VERSION_MICRO=totem_version_micro
59 AC_SUBST(TOTEM_PL_PARSER_VERSION_MAJOR)
60 AC_SUBST(TOTEM_PL_PARSER_VERSION_MINOR)
61 AC_SUBST(TOTEM_PL_PARSER_VERSION_MICRO)
62
63 AC_ARG_ENABLE(nvtv, AC_HELP_STRING([--enable-nvtv],[Enable support for TV-output with nvtv]), enable_nvtv="$enableval", enable_nvtv=yes)
64
65 if test x$enable_nvtv = xyes; then
66 PKG_CHECK_MODULES(NVTV, nvtvsimple >= 0.4.5, found_nvtv=yes,found_nvtv=no)
67         if test x"$found_nvtv" = "xyes" ; then
68                 AC_DEFINE(HAVE_NVTV,1,[Define to 1 if nvtv is available and used.])
69         fi
70 fi
71
72 dnl xine or gst ?
73
74 dnl the two versions here implicate the gstreamer core and gst-plugins
75 dnl release versions.
76 XINE_REQS=1.1.2
77 GST_MAJORMINOR=0.10
78
79 AC_ARG_ENABLE(gstreamer,
80         AC_HELP_STRING([--enable-gstreamer],[use GStreamer instead of xine for the backend]),
81         [case "${enableval}" in
82         yes) ENABLE_GST=yes ;;
83         no)  ENABLE_GST=no ;;
84         *) AC_MSG_ERROR([
85              ***** Bad value ${enableval} for --enable-gstreamer
86              ***** Please use one of the following:
87              *****   --enable-gstreamer=yes
88              *****   --enable-gstreamer=no
89            ]) ;;
90         esac],
91         [ENABLE_GST=auto]) dnl Default value
92
93 HAVE_XINE=no
94 if test x$ENABLE_GST = xno || test x$ENABLE_GST = xauto; then
95         MM="libxine >= $XINE_REQS gconf-2.0"
96         PKG_CHECK_MODULES(XINE, $MM, HAVE_XINE=yes, HAVE_XINE=no)
97         AC_MSG_CHECKING(for backend libraries)
98         if test x$HAVE_XINE = xyes; then
99                 AC_MSG_RESULT([xine-lib])
100         fi
101 fi
102
103 if test x$ENABLE_GST = xno && test x$HAVE_XINE = xno; then
104         AC_MSG_CHECKING(for backend libraries)
105         AC_MSG_RESULT([none])
106         AC_MSG_ERROR(you need the GStreamer or the xine-lib development packages installed)
107 fi
108
109 if test x$HAVE_XINE = xno; then
110         GST_REQS=0.10.1
111         GSTPLUG_REQS=0.10.7
112         MM="gstreamer-0.10 >= $GST_REQS gstreamer-plugins-base-0.10 >= $GSTPLUG_REQS gconf-2.0"
113         PKG_CHECK_MODULES(GST, $MM,
114                         HAVE_GSTREAMER=yes, HAVE_GSTREAMER=no)
115         GST_LIBS="$GST_LIBS -lgstinterfaces-$GST_MAJORMINOR -lgstvideo-$GST_MAJORMINOR -lgstaudio-$GST_MAJORMINOR"
116         AC_SUBST(GST_LIBS)
117         EXTRA_BACKEND_LIBS="-lgstinterfaces-$GST_MAJORMINOR -lgstvideo-$GST_MAJORMINOR -lgstaudio-$GST_MAJORMINOR"
118
119         dnl Give error and exit if we don't have gstreamer
120         if test "x$HAVE_GSTREAMER" = "xno"; then
121                 AC_MSG_ERROR(you need the GStreamer or the xine-lib development packages installed)
122         fi
123
124         AC_MSG_RESULT(GStreamer-$GST_MAJORMINOR)
125
126         dnl Check for required plugins
127         gst010_toolsdir=`$PKG_CONFIG --variable=toolsdir gstreamer-0.10`
128         gst010_inspect="$gst010_toolsdir/gst-inspect-0.10"
129
130         dnl Check for elements from gst-plugins-base
131         for base_element in playbin ffmpegcolorspace videoscale
132         do
133                 AC_MSG_CHECKING([GStreamer 0.10 $base_element plugin])
134                 if $gst010_inspect $base_element >/dev/null 2>/dev/null; then
135                         AC_MSG_RESULT([yes])
136                 else
137                         AC_MSG_RESULT([no])
138                         AC_MSG_ERROR([
139                                 Cannot find required GStreamer-0.10 plugin '$base_element'.
140                                 It should be part of gst-plugins-base. Please install it.
141                         ])
142                 fi
143         done
144
145         dnl Check for elements from gst-plugins-good
146         for good_element in gconfaudiosink gconfvideosink goom
147         do
148                 AC_MSG_CHECKING([GStreamer 0.10 $good_element plugin])
149                 if $gst010_inspect $good_element >/dev/null 2>/dev/null; then
150                         AC_MSG_RESULT([yes])
151                 else
152                         AC_MSG_RESULT([no])
153                         AC_MSG_ERROR([
154                                 Cannot find required GStreamer-0.10 plugin '$good_element'.
155                                 It should be part of gst-plugins-good. Please install it.
156                         ])
157                 fi
158         done
159 fi
160
161 AM_CONDITIONAL(TOTEM_GST, test "x$HAVE_GSTREAMER" = "xyes")
162
163 AC_ARG_ENABLE(vanity,
164         AC_HELP_STRING([--enable-vanity],[do not compile and install vanity]),
165         [case "${enableval}" in
166         yes) ENABLE_VANITY=yes ;;
167         no) ENABLE_VANITY=no ;;
168         *) AC_MSG_ERROR(bad value ${enableval} for --disable-vanity) ;;
169         esac],
170         [ENABLE_VANITY=no]) dnl Default value
171
172 AC_MSG_CHECKING(for Linux)
173 case `uname` in
174         *Linux*)
175         AC_MSG_RESULT([yes])
176         IS_LINUX="yes"
177         ;;
178         *)
179         AC_MSG_RESULT([no])
180         IS_LINUX="no"
181         ;;
182 esac
183
184 if test x$ENABLE_VANITY = "xyes" -a x$IS_LINUX = "xyes"; then
185         COMPILE_VANITY=yes
186 else
187         COMPILE_VANITY=no
188 fi
189
190 AM_CONDITIONAL(TOTEM_VANITY, test x$COMPILE_VANITY = "xyes")
191 AC_MSG_CHECKING(whether to compile vanity)
192 AC_MSG_RESULT([$COMPILE_VANITY])
193
194 dnl Check for GTK+ only build
195 AC_ARG_ENABLE(gtk,
196         AC_HELP_STRING([--enable-gtk],[compile a gtk+ only version]),
197         [case "${enableval}" in
198         yes) ENABLE_GTK=yes ;;
199         no) ENABLE_GTK=no ;;
200         *) AC_MSG_ERROR(bad value ${enableval} for --disable-gtk) ;;
201         esac],
202         [ENABLE_GTK=no]) dnl Default value
203
204 dnl Seems that the order matters because libtool blows
205 dnl Also check if we're going to be using GTK+ only
206 if test x$ENABLE_GTK = "xno" ; then
207 # FIXME: use gmodule-no-export instead!
208         PKG_CHECK_MODULES(EXTRA_GNOME, glib-2.0 >= $GLIB_REQS gtk+-2.0 >= $GTK_REQS libgnomeui-2.0 >= $GNOMEUI_REQS libglade-2.0 gnome-vfs-2.0 >= $GNOMEVFS_REQS gnome-vfs-module-2.0 >= $GNOMEVFS_REQS gnome-desktop-2.0 >= 2.1.5 gnome-icon-theme >= $GNOMEICON_REQS gmodule-2.0 iso-codes $MM)
209         HAVE_GNOME=yes
210 else
211 # FIXME: use gmodule-no-export instead!
212         PKG_CHECK_MODULES(EXTRA_GNOME, glib-2.0 >= $GLIB_REQS gtk+-2.0 >= $GTK_REQS libglade-2.0 gnome-vfs-2.0 >= $GNOMEVFS_REQS gnome-vfs-module-2.0 >= $GNOMEVFS_REQS gnome-icon-theme >= $GNOMEICON_REQS gmodule-2.0 iso-codes $MM)
213         AC_DEFINE(USE_STABLE_LIBGNOMEUI, 1, [defined if we don't have GNOME])
214         AC_DEFINE(HAVE_GTK_ONLY, 1, [defined if GNOME isn't used])
215         HAVE_GNOME=no
216 fi
217
218 AC_MSG_CHECKING([whether iso-codes has iso-639 domain])
219 if $PKG_CONFIG --variable=domains iso-codes | grep -q 639 ; then
220         AC_MSG_RESULT([yes])
221 else
222         AC_MSG_RESULT([no])
223 fi
224
225 AC_DEFINE_UNQUOTED([ISO_CODES_PREFIX],["`$PKG_CONFIG --variable=prefix iso-codes`"],[ISO codes prefix])
226
227 AM_CONDITIONAL(HAVE_GNOME, test x$HAVE_GNOME = "xyes")
228 EXTRA_GNOME_CFLAGS="$EXTRA_GNOME_CFLAGS"
229 EXTRA_GNOME_LIBS="$EXTRA_GNOME_LIBS $EXTRA_BACKEND_LIBS"
230 AC_SUBST(EXTRA_GNOME_CFLAGS)
231 AC_SUBST(EXTRA_GNOME_LIBS)
232
233 PKG_CHECK_MODULES(GTK, gtk+-2.0 $MM gthread-2.0)
234 AC_SUBST(GTK_CFLAGS)
235 GTK_LIBS="$GTK_LIBS $EXTRA_BACKEND_LIBS"
236 AC_SUBST(GTK_LIBS)
237
238 # ***************
239 # Browser plugins
240 # ***************
241
242 AC_MSG_CHECKING([whether to compile the browser plugins])
243
244 AC_ARG_ENABLE([browser-plugins],
245         AS_HELP_STRING([--enable-mozilla],[compile the mozilla plugin]),
246         [ENABLE_MOZILLA=$enableval],
247         [ENABLE_MOZILLA=autodetect])
248
249 # Backward compatibility
250 AC_ARG_ENABLE([mozilla],[],[enable_browser_plugins=$enableval],[enable_browser_plugins=autodetect])
251
252 AC_MSG_RESULT([$ENABLE_MOZILLA])
253
254 dnl Check which mozilla to use
255 if test "x$ENABLE_MOZILLA" != "xno" ; then
256         AC_MSG_CHECKING([which gecko to use])
257
258         AC_ARG_WITH([mozilla],
259                 AS_HELP_STRING([--with-mozilla],[Which gecko engine to use (default: autodetect)]))
260
261         GECKOS="xulrunner firefox mozilla-firefox seamonkey mozilla"
262         gecko=$with_mozilla
263
264         if test "x$gecko" = "x"; then
265                 dnl Autodetect gecko
266                 for g in $GECKOS; do
267                         if $PKG_CONFIG --exists $g-xpcom; then
268                                 gecko=$g
269                                 break;
270                         fi
271                 done
272         elif ! $PKG_CONFIG --exists $gecko-xpcom; then
273                 AC_MSG_ERROR([Gecko "$gecko" not found])
274         fi
275
276         if test "x$gecko" = "x" -a "x$ENABLE_MOZILLA" = "xautodetect"; then
277                 dnl No gecko found, disable plugin
278                 AC_MSG_WARN([No gecko found, disabling plugin])
279                 ENABLE_MOZILLA=no
280         elif test "x$gecko" = "x"; then
281                 AC_MSG_ERROR([No gecko found])
282         elif ! ( echo "$GECKOS" | egrep "(^| )$gecko(\$| )" > /dev/null); then
283                 AC_MSG_ERROR([Unknown gecko "$gecko" specified])
284         else
285                 ENABLE_MOZILLA=yes
286         fi
287
288         AC_MSG_RESULT([$gecko])
289
290         case "$gecko" in
291                 mozilla) MOZILLA_VERSION_MIN=1.7 ;;
292                 seamonkey) MOZILLA_VERSION_MIN=1.0 ;;
293                 *firefox) MOZILLA_VERSION_MIN=1.0 ;;
294                 xulrunner) MOZILLA_VERSION_MIN=1.8 ;;
295         esac
296
297         MOZILLA=$gecko
298         AC_SUBST([MOZILLA])
299
300         if test "$enable_cxx_warnings" != "no" -a "$GCC" = "yes"; then
301                 PLUGIN_EXTRA_WARN_CXXFLAGS="-Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Woverloaded-virtual"
302         else
303                 PLUGIN_EXTRA_WARN_CXXFLAGS=
304         fi
305         AC_SUBST([PLUGIN_EXTRA_WARN_CXXFLAGS])
306 fi
307
308 dnl Check for mozilla modules, but keep the CFLAGS and LIBS in
309 dnl separate vars
310 if test "x$ENABLE_MOZILLA" = "xyes" ; then
311         PKG_CHECK_MODULES([MOZILLA_NOT_LINKED],
312                 [$MOZILLA-xpcom >= $MOZILLA_VERSION_MIN \
313                  $MOZILLA-plugin],,
314                 [ENABLE_MOZILLA=no])
315 fi
316 dnl Check for other required modules, and merge CFLAGS, but not link
317 dnl flags to avoid linking against -lxpcom -lplds4 -lplc4 -lnspr4
318 if test "x$ENABLE_MOZILLA" = "xyes" ; then
319         PKG_CHECK_MODULES([BROWSER_PLUGIN],
320                 [glib-2.0
321                  gnome-vfs-2.0 >= $GNOMEVFS_REQS
322                  gnome-vfs-module-2.0 >= $GNOMEVFS_REQS
323                  gthread-2.0],
324                 [],[ENABLE_MOZILLA=no])
325
326         BROWSER_PLUGIN_CFLAGS="$MOZILLA_NOT_LINKED_CFLAGS $BROWSER_PLUGIN_CFLAGS"
327         AC_SUBST([BROWSER_PLUGIN_CFLAGS])
328         AC_SUBST([BROWSER_PLUGIN_LIBS])
329
330         # Earlier versions misdetect playlists
331         PKG_CHECK_EXISTS([shared-mime-info >= 0.17],
332                         [],
333                         [AC_MSG_ERROR([
334                                 The Browser plugin requires shared-mime-info
335                                 >= 0.17 to function.])])
336 fi
337
338 if test "x$ENABLE_MOZILLA" = "xyes" ; then
339         PKG_CHECK_MODULES([DBUS], [dbus-glib-1 >= $DBUS_REQS],,
340                         [ENABLE_MOZILLA=no])
341         DBUSLIBDIR="`$PKG_CONFIG dbus-glib-1 --variable=libdir`"
342         DBUSBINDIR="`echo $DBUSLIBDIR | sed -e s/lib/bin/`"
343         AC_PATH_PROG([DBUS_BIND], [dbus-binding-tool], [no], [$DBUSBINDIR:$PATH])
344         if test "x$DBUS_BIND" = "xno"; then
345                 AC_MSG_WARN([dbus-binding-tool not found])
346                 ENABLE_MOZILLA=no
347         fi
348 fi
349
350 dnl Sets some variables, and check for xpidl
351 if test "x$ENABLE_MOZILLA" = "xyes" ; then
352         MOZILLA_PREFIX="`$PKG_CONFIG $MOZILLA-xpcom --variable=prefix`"
353         MOZILLA_LIBDIR="`$PKG_CONFIG $MOZILLA-xpcom --variable=libdir`"
354         MOZILLA_INCLUDE_ROOT="`$PKG_CONFIG --variable=includedir $MOZILLA-xpcom`"
355         MOZILLA_XPCOM_CFLAGS="-I`$PKG_CONFIG --variable=includedir $MOZILLA-xpcom`"
356         MOZILLA_PLUGINDIR="${MOZILLA_PLUGINDIR:-$MOZILLA_LIBDIR}"
357
358         AC_PATH_PROG([MOZILLA_XPIDL], [xpidl], [no], [$MOZILLA_LIBDIR:$PATH])
359         if test "x$MOZILLA_XPIDL" = "xno"; then
360                 AC_MSG_ERROR([xpidl compiler not found])
361         fi
362
363         AC_PATH_PROG([MOZILLA_XPT_LINK],[xpt_link],[no],[$MOZILLA_LIBDIR:$PATH])
364         if test "$MOZILLA_XPT_LINK" = "no"; then
365                 AC_MSG_ERROR([xpt_link not found])
366         fi
367
368         AC_SUBST([MOZILLA_PREFIX])
369         AC_SUBST([MOZILLA_LIBDIR])
370         AC_SUBST([MOZILLA_XPCOM_CFLAGS])
371         AC_SUBST([MOZILLA_INCLUDE_ROOT])
372         AC_ARG_VAR([MOZILLA_PLUGINDIR],[Where to install the plugin to])
373 fi
374
375 dnl Search for the idl include directory
376 if test "x$ENABLE_MOZILLA" = "xyes" ; then
377         dnl This only works on gecko 1.8
378         MOZILLA_IDLDIR="`$PKG_CONFIG --variable=idldir $MOZILLA-xpcom`"
379         dnl Fallback for older versions
380         if test "x$MOZILLA_IDLDIR" = "x"; then
381                 MOZILLA_IDLDIR="`echo $MOZILLA_LIBDIR | sed -e s!lib!share/idl!`"
382         fi
383         dnl Some distributions (Gentoo) have it in unusual places
384         if test "x$MOZILLA_IDLDIR" = "x"; then
385                 MOZILLA_IDLDIR="$MOZILLA_INCLUDE_ROOT/idl"
386         fi
387
388         AC_SUBST([MOZILLA_IDLDIR])
389 fi
390
391 if test "$ENABLE_MOZILLA" = "yes" ; then
392         AC_DEFINE([HAVE_MOZILLA],[1],[Define if you build the mozilla plugin])
393 fi
394
395 AM_CONDITIONAL([HAVE_MOZILLA], [test "x$ENABLE_MOZILLA" = "xyes"])
396
397 if test "$ENABLE_MOZILLA" = "yes"; then
398
399 AC_MSG_CHECKING([whether to enable the basic browser plugin])
400 AC_ARG_ENABLE([basic-plugin],
401         AS_HELP_STRING([--disable-basic-plugin],[Whether to disable the basic browser plugin]),
402         [],[enable_basic_plugin=yes])
403 AC_MSG_RESULT([$enable_basic_plugin])
404
405 AC_MSG_CHECKING([whether to enable the GMP browser plugin])
406 AC_ARG_ENABLE([gmp-plugin],
407         AS_HELP_STRING([--enable-gmp-plugin],[Whether to enable the GMP browser plugin]),
408         [],[enable_gmp_plugin=yes])
409 AC_MSG_RESULT([$enable_gmp_plugin])
410
411 AC_MSG_CHECKING([whether to enable the Complex browser plugin])
412 AC_ARG_ENABLE([complex-plugin],
413         AS_HELP_STRING([--enable-complex-plugin],[Whether to enable the complex browser plugin]),
414         [],[enable_complex_plugin=yes])
415 AC_MSG_RESULT([$enable_complex_plugin])
416
417 AC_MSG_CHECKING([whether to enable the NarrowSpace browser plugin])
418 AC_ARG_ENABLE([narrowspace-plugin],
419         AS_HELP_STRING([--enable-narrowspace-plugin],[Whether to enable the NarrowSpace browser plugin]),
420         [],[enable_narrowspace_plugin=yes])
421 AC_MSG_RESULT([$enable_narrowspace_plugin])
422
423 AC_MSG_CHECKING([whether to enable the MullY browser plugin])
424 AC_ARG_ENABLE([mully-plugin],
425         AS_HELP_STRING([--enable-mully-plugin],[Whether to enable the MullY browser plugin]),
426         [],[enable_mully_plugin=yes])
427 AC_MSG_RESULT([$enable_mully_plugin])
428
429 fi
430
431 AM_CONDITIONAL([ENABLE_BASIC_PLUGIN],[test "$enable_basic_plugin" = "yes"])
432 AM_CONDITIONAL([ENABLE_GMP_PLUGIN],[test "$enable_gmp_plugin" = "yes"])
433 AM_CONDITIONAL([ENABLE_COMPLEX_PLUGIN],[test "$enable_complex_plugin" = "yes"])
434 AM_CONDITIONAL([ENABLE_NARROWSPACE_PLUGIN],[test "$enable_narrowspace_plugin" = "yes"])
435 AM_CONDITIONAL([ENABLE_MULLY_PLUGIN],[test "$enable_mully_plugin" = "yes"])
436
437 dnl ********
438 dnl Nautilus
439 dnl ********
440
441 dnl Check for Nautilus property page build
442 AC_ARG_ENABLE(nautilus,
443         AC_HELP_STRING([--enable-nautilus],[compile the nautilus plugin]),
444         [case "${enableval}" in
445         yes) ENABLE_NAUTILUS=yes ;;
446         no) ENABLE_NAUTILUS=no ;;
447         *) AC_MSG_ERROR(bad value ${enableval} for --enable-nautilus) ;;
448         esac],
449         [ENABLE_NAUTILUS=yes]) dnl Default value
450
451 if test x$ENABLE_NAUTILUS = "xyes" ; then
452         PKG_CHECK_MODULES(NAUTILUS, gtk+-2.0 $MM gthread-2.0 libnautilus-extension,
453                         [HAVE_NAUTILUS=yes], [HAVE_NAUTILUS=no])
454 fi
455
456 NAUTILUS_LIBS="$NAUTILUS_LIBS $EXTRA_BACKEND_LIBS"
457 AC_SUBST(NAUTILUS_CFLAGS)
458 AC_SUBST(NAUTILUS_LIBS)
459 if test x$HAVE_NAUTILUS = "xyes"; then
460         AC_DEFINE(HAVE_NAUTILUS, 1, [defined if you build the nautilus plugin])
461 fi
462 AM_CONDITIONAL(HAVE_NAUTILUS, test x$HAVE_NAUTILUS = "xyes")
463
464 dnl ****
465 dnl LIRC
466 dnl ****
467
468 AC_ARG_ENABLE(lirc,
469         AC_HELP_STRING([--enable-lirc],[enable lirc support]),
470         [case "${enableval}" in
471         yes) ENABLE_LIRC=yes ;;
472         no)  ENABLE_LIRC=no ;;
473         *) AC_MSG_ERROR(bad value ${enableval} for --enable-lirc) ;;
474         esac],
475         [ENABLE_LIRC=yes]) dnl Default value
476
477 if test x$ENABLE_LIRC = xyes ; then
478 AC_CHECK_HEADER(irman.h,,)
479 REMOTE_LIBS=""
480 AC_CHECK_LIB(lirc_client, lirc_init, [
481         AC_CHECK_HEADER(lirc/lirc_client.h, [
482         REMOTE_LIBS="-llirc_client"
483         AC_DEFINE(HAVE_REMOTE, 1, [defined if you have lirc library])
484         ])
485 ])
486 fi
487
488 AC_SUBST(REMOTE_LIBS)
489
490 dnl ***
491 dnl HAL
492 dnl ***
493
494 AC_ARG_WITH(hal,
495               AC_HELP_STRING([--without-hal],
496                              [Disable HAL support]))
497 if test "x$with_hal" != "xno"; then
498   PKG_CHECK_MODULES(HAL, hal >= 0.5 hal < 0.6 dbus-1 >= $DBUS_REQS, enable_hal05=yes, enable_hal05=no)
499   if test x$enable_hal05 = xyes; then
500       enable_hal=yes
501       AC_DEFINE(HAVE_HAL, 1, [Define if you HAL support])
502   else
503     if test "x$with_hal" = "xyes"; then
504           AC_MSG_ERROR([HAL support explicitly requested but HAL couldn't be found])
505     fi
506   fi
507 fi
508 AM_CONDITIONAL(HAVE_HAL, test x"$enable_hal" = xyes)
509
510 AC_PATH_X
511
512 if test x"$x_includes" != x"NONE" && test -n "$x_includes" ; then
513         X_INCLUDES=-I`echo $x_includes | sed -e "s/:/ -I/g"`
514 fi
515 if test x"$x_libraries" != x"NONE" && test -n "$x_libraries" ; then
516         X_LIBRARIES=-L`echo $x_libraries | sed -e "s/:/ -L/g"`
517 fi
518 CFLAGS="$X_INCLUDES $CFLAGS"
519 LIBS="$X_LIBRARIES $LIBS"
520
521 XTEST_LIBS=""
522 AC_CHECK_LIB(Xtst, XTestFakeKeyEvent,
523                 XTEST_LIBS="-lX11 -lXtst $X_LIBRARIES"
524                 AC_DEFINE(HAVE_XTEST, 1, [defined if you have XTest library]),
525                 ,
526                 $X_LIBRARIES)
527 AC_SUBST(XTEST_LIBS)
528
529 PKG_CHECK_MODULES(XVIDMODE, xrandr >= 1.1.1 xxf86vm >= 1.0.1,
530                 have_xvidmode=yes, have_xvidmode=no)
531
532 AM_CONDITIONAL(HAVE_XVIDMODE, [test x$have_xvidmode = xyes])
533 if test x$have_xvidmode = xyes; then
534         AC_DEFINE(HAVE_XVIDMODE,, [Define this if you have the XVidMode and XRandR extension installed])
535 fi
536
537 X_LIBS=""
538 if test x$(pkg-config --variable=target gtk+-2.0) = xx11; then
539         dnl Explicitely link against libX11 to avoid problems with crappy linkers
540         X_LIBS="$X_LIBRARIES -lX11"
541 fi
542 AC_SUBST(X_LIBS)
543
544 dnl Multimedia keys
545 have_xfree=no
546 AC_COMPILE_IFELSE([
547         #include <X11/XF86keysym.h>
548         int main(int argc,char **argv) {
549         return 0;
550         }
551         ],
552         have_xfree=yes
553 )
554 AC_MSG_CHECKING(for X11 XFree86 headers)
555 AC_MSG_RESULT([$have_xfree])
556 if test x"$have_xfree" = "xyes" ; then
557         AC_DEFINE(HAVE_XFREE, 1, [defined if you have X11/XF86keysym.h])
558 fi
559
560 AC_PATH_PROG(GCONFTOOL, gconftool-2)
561 AM_GCONF_SOURCE_2
562
563 dnl Check for packages for building libtotem-plparser.la
564 PKG_CHECK_MODULES(TOTEM_PLPARSER, [gtk+-2.0 libxml-2.0 gnome-vfs-2.0
565                                    gnome-vfs-module-2.0])
566
567 PKG_CHECK_MODULES([TOTEM_PLPARSER_MINI],
568         [gnome-vfs-2.0 gnome-vfs-module-2.0])
569
570 GNOME_COMMON_INIT
571 GNOME_DEBUG_CHECK
572 GNOME_COMPILE_WARNINGS([maximum])
573 GNOME_CXX_WARNINGS
574 GNOME_MAINTAINER_MODE_DEFINES
575
576 dnl debug
577 AC_ARG_ENABLE(debug,
578                 AC_HELP_STRING([--disable-debug],[disables compilation of debugging messages]),
579         [case "${enableval}" in
580         yes) ENABLE_DEBUG=yes ;;
581         no)  ENABLE_DEBUG=no ;;
582         *) AC_MSG_ERROR(bad value ${enableval} for --disable-debug) ;;
583         esac],
584 [ENABLE_DEBUG=no]) dnl Default value
585 if test x$ENABLE_DEBUG = xyes; then
586         AC_DEFINE(TOTEM_DEBUG, 1, [Define if DEBUG statements should be compiled in])
587 fi
588
589 dnl run in source tree
590 AC_ARG_ENABLE(run-in-source-tree,
591               AC_HELP_STRING([--disable-run-in-source-tree],[disable search for UI file in local directory ]),
592         [case "${enableval}" in
593         yes) ENABLE_RUN_IN_SOURCE_TREE=yes ;;
594         no)  ENABLE_RUN_IN_SOURCE_TREE=no ;;
595         *) AC_MSG_ERROR(bad value ${enableval} for --disable-run-in-source-tree) ;;
596         esac],
597 [ENABLE_RUN_IN_SOURCE_TREE=yes]) dnl Default value
598 if test x$ENABLE_RUN_IN_SOURCE_TREE = xyes; then
599         AC_DEFINE(TOTEM_RUN_IN_SOURCE_TREE, 1, [enable search for UI file in local directory])
600 fi
601
602 if test "$GCC" = "yes" ; then
603         CFLAGS="\
604         -Wall \
605         -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
606         -Wnested-externs -Wpointer-arith \
607         -Wcast-align -Wsign-compare \
608         -fno-strict-aliasing \
609         $CFLAGS"
610 fi
611
612 AC_SUBST([AM_CPPFLAGS])
613 AC_SUBST([AM_CFLAGS])
614 AC_SUBST([AM_CXXFLAGS])
615 AC_SUBST([AM_LDFLAGS])
616
617 AC_OUTPUT([
618 Makefile
619 totem.spec
620 totem-plparser.pc
621 src/Makefile
622 src/backend/Makefile
623 src/plparse/Makefile
624 src/plparse/totem-pl-parser-features.h
625 browser-plugin/Makefile
626 browser-plugin/idl/Makefile
627 data/Makefile
628 data/totem.desktop.in.in
629 data/vanity.desktop.in
630 data/icons/Makefile
631 data/icons/16x16/Makefile
632 data/icons/22x22/Makefile
633 data/icons/24x24/Makefile
634 data/icons/32x32/Makefile
635 data/icons/scalable/Makefile
636 po/Makefile.in
637 help/Makefile
638 help/bg/Makefile
639 help/ru/Makefile
640 help/uk/Makefile
641 ])
642
643 echo
644 if test x$HAVE_XINE = xno ; then
645         echo "Using the GStreamer-$GST_MAJORMINOR backend"
646 else
647         echo "Using the xine backend"
648 fi
649 echo