Git Repositories

- Applied patch from Mike Massonnet to use xfconf-query instead of
[thunar.git] / acinclude.m4
1 dnl $Id$
2 dnl
3 dnl Copyright (c) 2004-2006
4 dnl         The Thunar development team. All rights reserved.
5 dnl
6 dnl Written for Thunar by Benedikt Meurer <benny@xfce.org>.
7 dnl
8
9
10
11 dnl # BM_THUNAR_PLUGIN_APR()
12 dnl #
13 dnl # Check whether the "Advanced Properties" plugin
14 dnl # should be built and installed.
15 dnl #
16 AC_DEFUN([BM_THUNAR_PLUGIN_APR],
17 [
18 AC_ARG_ENABLE([apr-plugin], [AC_HELP_STRING([--disable-apr-plugin], [Don't build the thunar-apr plugin, see plugins/thunar-apr/README])],
19   [ac_bm_thunar_plugin_apr=$enableval], [ac_bm_thunar_plugin_apr=yes])
20 AC_MSG_CHECKING([whether to build the thunar-apr plugin])
21 AM_CONDITIONAL([THUNAR_PLUGIN_APR], [test x"$ac_bm_thunar_plugin_apr" = x"yes"])
22 AC_MSG_RESULT([$ac_bm_thunar_plugin_apr])
23
24 dnl Check for libexif (for the "Image" properties page)
25 XDT_CHECK_OPTIONAL_PACKAGE([EXIF], [libexif], [0.6.0], [exif], [Exif support])
26 ])
27
28
29
30 dnl # BM_THUNAR_PLUGIN_SBR()
31 dnl #
32 dnl # Check whether the "Simple Builtin Renamers" plugin
33 dnl # should be built and installed.
34 dnl #
35 AC_DEFUN([BM_THUNAR_PLUGIN_SBR],
36 [
37 AC_ARG_ENABLE([sbr-plugin], AC_HELP_STRING([--disable-sbr-plugin], [Don't build the thunar-sbr plugin, see plugins/thunar-sbr/README]),
38   [ac_bm_thunar_plugin_sbr=$enableval], [ac_bm_thunar_plugin_sbr=yes])
39 AC_MSG_CHECKING([whether to build the thunar-sbr plugin])
40 AM_CONDITIONAL([THUNAR_PLUGIN_SBR], [test x"$ac_bm_thunar_plugin_sbr" = x"yes"])
41 AC_MSG_RESULT([$ac_bm_thunar_plugin_sbr])
42
43 dnl Check for PCRE (for the "Search & Replace" renamer)
44 XDT_CHECK_OPTIONAL_PACKAGE([PCRE], [libpcre], [6.0], [pcre], [Regular expression support])
45 ])
46
47
48
49 dnl # BM_THUNAR_PLUGIN_TPA()
50 dnl #
51 dnl # Check whether the "Trash Panel Applet" plugin should
52 dnl # be built and installed (this is actually a plugin
53 dnl # for the Xfce panel, not for Thunar).
54 dnl #
55 AC_DEFUN([BM_THUNAR_PLUGIN_TPA],
56 [
57 AC_ARG_ENABLE([tpa-plugin], AC_HELP_STRING([--disable-tpa-plugin], [Don't build the thunar-tpa plugin, see plugins/thunar-tpa/README]),
58   [ac_bm_thunar_plugin_tpa=$enableval], [ac_bm_thunar_plugin_tpa=yes])
59 if test x"$ac_bm_thunar_plugin_tpa" = x"yes"; then
60   XDT_CHECK_PACKAGE([LIBXFCE4PANEL], [libxfce4panel-1.0], [4.3.90],
61   [
62     dnl # Can only build thunar-tpa if D-BUS was found previously
63     ac_bm_thunar_plugin_tpa=$DBUS_FOUND
64   ],
65   [
66     dnl # Cannot build thunar-tpa if xfce4-panel is not installed
67     ac_bm_thunar_plugin_tpa=no
68   ])
69 else
70   ac_bm_thunar_plugin_tpa=no
71 fi
72 AC_MSG_CHECKING([whether to build the thunar-tpa plugin])
73 AM_CONDITIONAL([THUNAR_PLUGIN_TPA], [test x"$ac_bm_thunar_plugin_tpa" = x"yes"])
74 AC_MSG_RESULT([$ac_bm_thunar_plugin_tpa])
75 ])
76
77
78
79 dnl # BM_THUNAR_PLUGIN_UCA()
80 dnl #
81 dnl # Check whether the "User Customizable Actions" plugin
82 dnl # should be built and installed.
83 dnl #
84 AC_DEFUN([BM_THUNAR_PLUGIN_UCA],
85 [
86 AC_ARG_ENABLE([uca-plugin], AC_HELP_STRING([--disable-uca-plugin], [Don't build the thunar-uca plugin, see plugins/thunar-uca/README]),
87   [ac_bm_thunar_plugin_uca=$enableval], [ac_bm_thunar_plugin_uca=yes])
88 AC_MSG_CHECKING([whether to build the thunar-uca plugin])
89 AM_CONDITIONAL([THUNAR_PLUGIN_UCA], [test x"$ac_bm_thunar_plugin_uca" = x"yes"])
90 AC_MSG_RESULT([$ac_bm_thunar_plugin_uca])
91 ])
92
93 dnl # BM_THUNAR_PLUGIN_WALLPAPER()
94 dnl #
95 dnl # Check whether the "Wallpaper" plugin
96 dnl # should be built and installed.
97 dnl #
98 AC_DEFUN([BM_THUNAR_PLUGIN_WALLPAPER],
99 [
100 AC_ARG_ENABLE([wallpaper-plugin], AC_HELP_STRING([--disable-wallpaper-plugin], [Don't build the thunar-wallpaper plugin, see plugins/thunar-wallpaper/README]),
101   [ac_bm_thunar_plugin_wallpaper=$enableval], [ac_bm_thunar_plugin_wallpaper=yes])
102 AC_MSG_CHECKING([whether to build the thunar-wallpaper plugin])
103 AM_CONDITIONAL([THUNAR_PLUGIN_WALLPAPER], [test x"$ac_bm_thunar_plugin_wallpaper" = x"yes"])
104 AC_MSG_RESULT([$ac_bm_thunar_plugin_wallpaper])
105 if test x"$ac_bm_thunar_plugin_wallpaper" = x"yes"; then
106         AC_CHECK_PROG([xfconf_query_found], [xfconf-query], [yes], [no])
107         if test x"$xfconf_query_found" = x"no"; then
108                 echo "***"
109                 echo "*** xfconf-query was not found on your system."
110                 echo "*** The wallpaper won't work without it installed."
111                 echo "***"
112         fi
113 fi
114 ])
115
116
117 dnl # BM_THUNAR_VFS_MONITOR_IMPL()
118 dnl #
119 dnl # Determine the file system monitoring to use for
120 dnl # thunar-vfs.
121 dnl #
122 dnl # Sets LIBFAM_CFLAGS and LIBFAM_LIBS and defines
123 dnl # HAVE_FAM_H and HAVE_LIBFAM if FAM/Gamin were
124 dnl # found.
125 dnl #
126 dnl # Sets $ac_bm_thunar_vfs_monitor_impl to "FAM",
127 dnl # "Gamin" or "none".
128 dnl #
129 AC_DEFUN([BM_THUNAR_VFS_MONITOR_IMPL],
130 [
131 LIBFAM_CFLAGS=""
132 LIBFAM_LIBS=""
133 have_libfam=no
134 ac_bm_thunar_vfs_monitor_impl="none"
135 XDT_CHECK_PACKAGE([LIBFAM], [gamin], [0.1.0],
136 [
137   have_libfam=yes
138   ac_bm_thunar_vfs_monitor_impl="Gamin"
139 ],
140 [
141   dnl Fallback to a generic FAM check
142   AC_CHECK_HEADERS([fam.h],
143   [
144     AC_CHECK_LIB([fam], [FAMOpen],
145     [
146       have_libfam="yes" LIBFAM_LIBS="-lfam"
147       ac_bm_thunar_vfs_monitor_impl="FAM"
148     ])
149   ])
150 ])
151 if test x"$have_libfam" = x"yes"; then
152   dnl Define appropriate symbols
153   AC_DEFINE([HAVE_FAM_H], [1], [Define to 1 if you have the <fam.h> header file.])
154   AC_DEFINE([HAVE_LIBFAM], [1], [Define to 1 if the File Alteration Monitor is available.])
155
156   dnl Check for FAMNoExists (currently Gamin only)
157   save_LIBS="$LIBS"
158   LIBS="$LIBS $LIBFAM_LIBS"
159   AC_CHECK_FUNCS([FAMNoExists])
160   LIBS="$save_LIBS"
161 fi
162 AC_SUBST([LIBFAM_CFLAGS])
163 AC_SUBST([LIBFAM_LIBS])
164 ])
165
166
167
168 dnl # BM_THUNAR_VFS_OS_IMPL()
169 dnl #
170 dnl # Determine the operating system support to use
171 dnl # for thunar-vfs.
172 dnl #
173 dnl # Sets ac_bm_thunar_vfs_os_impl to "bsd" or "generic" and
174 dnl # defines the automake conditional THUNAR_VFS_OS_IMPL_BSD.
175 dnl #
176 AC_DEFUN([BM_THUNAR_VFS_OS_IMPL],
177 [
178   dnl # Auto-detect target operating system support
179   AC_MSG_CHECKING([for operating system support])
180   case "$target_os" in
181   dragonfly*|freebsd*|netbsd*|openbsd*|darwin*)
182     dnl # The BSD Family is fully supported
183     ac_bm_thunar_vfs_os_impl=bsd
184     ;;
185
186   *)
187     dnl # Otherwise fallback to generic OS support
188     ac_bm_thunar_vfs_os_impl=generic
189   esac
190   AC_MSG_RESULT([$ac_bm_thunar_vfs_os_impl])
191
192   dnl # Set automake conditionals appropriately
193   AM_CONDITIONAL([THUNAR_VFS_OS_IMPL_BSD], [test x"$ac_bm_thunar_vfs_os_impl" = x"bsd"])
194 ])
195
196
197
198 dnl # BM_THUNAR_VFS_VOLUME_IMPL()
199 dnl #
200 dnl # Determines the volume manager implementation to
201 dnl # use for thunar-vfs.
202 dnl #
203 dnl # Sets ac_bm_thunar_vfs_volume_impl to "freebsd",
204 dnl # "hal" or "none".
205 dnl #
206 AC_DEFUN([BM_THUNAR_VFS_VOLUME_IMPL],
207 [
208   dnl The --with-volume-manager option
209   AC_ARG_WITH([volume-manager],
210 AC_HELP_STRING([--with-volume-manager=@<:@auto/freebsd/hal/none@:>@], [The volume manager implementation @<:@default=auto@:>@]),
211     [], [with_volume_manager=auto])
212
213   dnl # Check if we should try to auto-detect
214   if test x"$with_volume_manager" = x"freebsd"; then
215     ac_bm_thunar_vfs_volume_impl=freebsd
216   elif test x"$with_volume_manager" = x"hal"; then
217     ac_bm_thunar_vfs_volume_impl=hal
218   elif test x"$with_volume_manager" = x"none"; then
219     ac_bm_thunar_vfs_volume_impl=none
220   else
221     dnl # Check if HAL is available
222     XDT_CHECK_PACKAGE([HAL], [hal-storage], [0.5.0],
223     [
224       dnl # HAL is available, use it
225       ac_bm_thunar_vfs_volume_impl=hal
226     ],
227     [
228       dnl # Check operating system type
229       case "$target_os" in
230       freebsd*)
231         dnl # FreeBSD is fully supported
232         ac_bm_thunar_vfs_volume_impl=freebsd
233         ;;
234       *)
235         dnl # Otherwise no volume support
236         ac_bm_thunar_vfs_volume_impl=none
237         ;;
238       esac
239     ])
240   fi
241
242   dnl # We need HAL >= 0.5.x and D-BUS >= 0.23 for the HAL volume manager
243   if test x"$ac_bm_thunar_vfs_volume_impl" = x"hal"; then
244     XDT_CHECK_PACKAGE([EXO_HAL], [exo-hal-0.3], [0.3.1.13])
245     XDT_CHECK_PACKAGE([HAL], [hal-storage], [0.5.0])
246     XDT_CHECK_PACKAGE([HAL_DBUS], [dbus-glib-1], [0.23])
247   fi
248
249   dnl # Set config.h variables depending on what we're going to use
250   AC_MSG_CHECKING([for the volume manager implemenation])
251   case "$ac_bm_thunar_vfs_volume_impl" in
252   freebsd)
253     AC_DEFINE([THUNAR_VFS_VOLUME_IMPL_FREEBSD], [1], [Define to 1 if the FreeBSD volume manager implementation should be used])
254     ;;
255
256   hal)
257     AC_DEFINE([THUNAR_VFS_VOLUME_IMPL_HAL], [1], [Define to 1 if the HAL volume manager implementation should be used])
258     ;;
259
260   *)
261     AC_DEFINE([THUNAR_VFS_VOLUME_IMPL_NONE], [1], [Define to 1 if no volume manager implementation should be used])
262     ;;
263   esac
264   AC_MSG_RESULT([$ac_bm_thunar_vfs_volume_impl])
265
266   dnl # Set automake conditionals appropriately
267   AM_CONDITIONAL([THUNAR_VFS_VOLUME_IMPL_FREEBSD], [test x"$ac_bm_thunar_vfs_volume_impl" = x"freebsd"])
268   AM_CONDITIONAL([THUNAR_VFS_VOLUME_IMPL_HAL], [test x"$ac_bm_thunar_vfs_volume_impl" = x"hal"])
269   AM_CONDITIONAL([THUNAR_VFS_VOLUME_IMPL_NONE], [test x"$ac_bm_thunar_vfs_volume_impl" = x"none"])
270 ])