Better error message when defaults file is missing.
[xfwm4.git] / configure.ac.in
blobf9c1fd6e7e3e26c2f3dfb7eb7b898de6dd1abaac
1 dnl configure.ac
2 dnl
3 dnl xfwm4 - window manager for the Xfce4 desktop environment
4 dnl
6 m4_define([xfwm4_version], [4.5.0])
8 m4_define([gtk_minimum_version], [2.6.0])
9 m4_define([xfce_minimum_version], [4.4.0])
10 m4_define([xcomposite_minimum_version], [0.2])
11 m4_define([startup_notification_minimum_version], [0.5])
12 m4_define([intltool_minimum_version], [0.31])
14 dnl init autoconf
15 AC_COPYRIGHT([Copyright (c) 2002-2007
16         The Xfce development team. All rights reserved.
18 Written for Xfce by Olivier Fourdan <fourdan@xfce.org>.])
19 AC_INIT([xfwm4], [xfwm4_version()], [xfce4-dev@xfce.org])
20 AM_INIT_AUTOMAKE([xfwm4], [xfwm4_version()])
22 AM_INIT_AUTOMAKE([1.8 dist-bzip2 tar-ustar])
23 AM_CONFIG_HEADER([config.h])
25 AM_MAINTAINER_MODE
27 dnl check for UNIX variants
28 AC_AIX
29 AC_ISC_POSIX
30 AC_MINIX
31 AM_CONDITIONAL([HAVE_CYGWIN], [test "`uname | grep \"CYGWIN\"`" != ""])
33 dnl check for basic programs
34 AC_PROG_CC
35 AC_PROG_INSTALL
36 AC_PROG_INTLTOOL([intltool_minimum_version], [no-xml])
37 AC_PROG_LIBTOOL
39 dnl Check C Compiler Characteristics
40 AC_C_CONST
41 AC_C_INLINE
43 dnl check for standard header files
44 AC_HEADER_STDC
45 AC_CHECK_FUNCS([daemon setsid])
46 AC_CHECK_FUNCS(opendir)
48 dnl Check for i18n support
49 XDT_I18N([@LINGUAS@])
51 dnl Check for X11 window system
52 XDT_CHECK_LIBX11_REQUIRE
53 XDT_CHECK_LIBSM
55 dnl Check for Xext library
56 AC_CHECK_LIB([Xext], [XShapeCombineShape],
57   [
58     if ! echo $LIBX11_LIBS | grep -q -- '-lXext'; then
59       LIBX11_LIBS="$LIBX11_LIBS -lXext"
60     fi
61   ], [], [$LIBX11_CFLAGS $LIBX11_LDFLAGS $LIBX11_LIBS])
63 XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [gtk_minimum_version])
64 XDT_CHECK_PACKAGE(LIBXFCE4MCS_CLIENT, libxfce4mcs-client-1.0, [xfce_minimum_version])
65 XDT_CHECK_PACKAGE(LIBXFCE4MCS_MANAGER, libxfce4mcs-manager-1.0, [xfce_minimum_version])
66 XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [xfce_minimum_version])
67 XDT_CHECK_PACKAGE(LIBXFCEGUI4, libxfcegui4-1.0, [xfce_minimum_version])
68 XFCE_MCS_PLUGIN([XFCE_MCS_MANAGER], [xfce_minimum_version])
70 dnl
71 dnl Startup notification support
72 dnl
73 LIBSTARTUP_NOTIFICATION_FOUND="no"
74 XDT_CHECK_OPTIONAL_PACKAGE([LIBSTARTUP_NOTIFICATION],
75                        [libstartup-notification-1.0], [startup_notification_minimum_version],
76                        [startup-notification], 
77                        [startup notification library], [yes])
80 dnl
81 dnl XSync support
82 dnl
83 XSYNC_LIBS=
84 AC_ARG_ENABLE([xsync],
85 AC_HELP_STRING([--enable-xsync], [try to use the xsync extension])
86 AC_HELP_STRING([--disable-xsync], [don't try to use the xsync extension]),
87   [], [enable_xsync=yes])
88 have_xsync="no"
89 if test x"$enable_xsync" = x"yes"; then
90   AC_CHECK_LIB([Xext], [XSyncQueryExtension],
91       [ have_xsync="yes"
92         XSYNC_LIBS=" -lXext"
93         AC_DEFINE([HAVE_XSYNC], [1], [Define to enable xsync])
94       ],[])
96 AC_SUBST([XSYNC_LIBS])
98 dnl
99 dnl Render support
101 AC_ARG_ENABLE([render],
102 AC_HELP_STRING([--enable-render], [try to use the render extension])
103 AC_HELP_STRING([--disable-render], [don't try to use the render extension]),
104   [], [enable_render=yes])
105 have_render="no"
106 RENDER_LIBS=
107 if test x"$enable_render" = x"yes"; then
108   if $PKG_CONFIG --print-errors --exists xrender 2>&1; then
109     PKG_CHECK_MODULES(RENDER, xrender)
110     have_render="yes"
111     AC_DEFINE([HAVE_RENDER], [1], [Define to enable render])
112   else
113     dnl fallback to check for libXrender 
114     AC_CHECK_LIB([Xrender], [XRenderCreatePicture],
115         [ have_render="yes"
116           RENDER_LIBS=" -lXrender"
117           AC_DEFINE([HAVE_RENDER], [1], [Define to enable render])
118         ],[])
119   fi
121 AC_SUBST([RENDER_LIBS])
124 dnl RANDR extension
125 dnl (please note that Xrandr requires Xrender - and no, it's not a typo ;)
127 AC_ARG_ENABLE([randr],
128 AC_HELP_STRING([--enable-randr], [try to use the randr extension (requires render)])
129 AC_HELP_STRING([--disable-randr], [don't try to use the randr extension]),
130   [], [enable_randr=yes])
131 RANDR_LIBS=
132 have_xrandr="no"
133 if test x"$enable_randr" = x"yes"; then
134   if test x"$have_render" = x"yes"; then
135     have_xrandr="no"
136     ac_CFLAGS="$CFLAGS"
137     CFLAGS="$CFLAGS $LIBX11_CFLAGS"
138     AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
139                  [AC_CHECK_HEADER(X11/extensions/Xrandr.h,
140                                   RANDR_LIBS="-lXrandr -lXrender"
141                                   AC_DEFINE([HAVE_RANDR], [1], [Define to enable xrandr])
142                                   have_xrandr="yes",,
143                                   [#include <X11/Xlib.h>])],, 
144                   $LIBS $LIBX11_LDFLAGS $LIBX11_LIBS -lXrender -lXext)
145     CFLAGS="$ac_CFLAGS"
146   fi
148 AC_SUBST([RANDR_LIBS])
151 dnl Xcomposite and related extensions
153 compositor="no"
154 ENABLE_COMPOSITOR=""
155 AC_ARG_ENABLE([compositor],
156 AC_HELP_STRING([--enable-compositor], [enable compositor in xfwm4 (default)])
157 AC_HELP_STRING([--disable-compositor], [disable compositor in xfwm4]),
158   [], [enable_compositor=yes])
160 if test x"$enable_compositor" = x"yes"; then
161   if test x"$have_render" = x"yes"; then
162     if $PKG_CONFIG --print-errors --exists xcomposite xfixes xdamage xrender 2>&1; then
163       PKG_CHECK_MODULES(COMPOSITOR, xcomposite >= [xcomposite_minimum_version] xfixes xdamage)
164       AC_DEFINE([HAVE_COMPOSITOR], [1], [Define to enable compositor])
165       ENABLE_COMPOSITOR="--enable-compositor"
166       compositor="yes"
167     fi
168   fi
170 AC_SUBST(ENABLE_COMPOSITOR)
173 dnl Old unsupported KDE systray protocol
175 ENABLE_KDE_SYSTRAY=""
176 kde_systray="no"
177 AC_ARG_ENABLE([kde_systray],
178   AC_HELP_STRING([--enable-kde-systray], [enable KDE systray proxy (deprecated)]),
179   kde_systray="$enableval",
180   kde_systray="no")
182 if test x"$kde_systray" = x"yes"; then
183   AC_DEFINE([ENABLE_KDE_SYSTRAY_PROXY], [1], [Define to enable KDE systray proxy support])
184   ENABLE_KDE_SYSTRAY="--enable-kde-systray"
186 AC_SUBST(ENABLE_KDE_SYSTRAY)
188 dnl Check for debugging support
189 XDT_FEATURE_DEBUG
191 REVISION=unknown
192 if test x"@REVISION@" != x""; then
193     REVISION=@REVISION@
195 AC_DEFINE_UNQUOTED([REVISION], "$REVISION", [svn revision number])
196 AC_SUBST([REVISION])
198 AC_OUTPUT([ 
199 Makefile
200 doc/Makefile
201 doc/C/Makefile
202 doc/C/images/Makefile
203 doc/fr/Makefile
204 doc/fr/images/Makefile
205 doc/it/Makefile
206 doc/it/images/Makefile
207 defaults/Makefile
208 icons/Makefile
209 icons/48x48/Makefile
210 icons/scalable/Makefile
211 mcs-plugin/Makefile
212 po/Makefile.in 
213 src/Makefile
214 themes/Makefile
215 themes/daloa/Makefile
216 themes/default/Makefile
217 themes/default.keys/Makefile
218 themes/default-4.0/Makefile
219 themes/default-4.2/Makefile
220 themes/default-4.4/Makefile
221 themes/katiola/Makefile
222 themes/kokodi/Makefile
223 themes/largeprint/Makefile
224 themes/moheli/Makefile
225 themes/sassandra/Makefile
226 themes/stoneage/Makefile
227 themes/therapy/Makefile
228 themes/tyrex/Makefile
229 themes/wallis/Makefile
230 xfwm4.spec
233 echo
234 echo "Build Configuration for $PACKAGE version $VERSION revision $REVISION:"
235 echo "  Startup notification support:                 $LIBSTARTUP_NOTIFICATION_FOUND"
236 echo "  XSync support:                                $have_xsync"
237 echo "  Render support:                               $have_render"
238 echo "  Xrandr support:                               $have_xrandr"
239 echo "  Embedded compositor:                          $compositor"
240 echo "  KDE systray protocol proxy:                   $kde_systray"
241 echo