1
m4_define([gnome_control_center_version], 3.3.5)
2
AC_INIT([gnome-control-center], [gnome_control_center_version],
3
[http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-control-center])
5
AC_CONFIG_SRCDIR([shell])
6
AC_CONFIG_HEADERS([config.h])
7
AC_CONFIG_MACRO_DIR([m4])
9
AM_INIT_AUTOMAKE([1.11 no-dist-gzip dist-xz tar-ustar])
10
AM_MAINTAINER_MODE([enable])
11
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
22
# Use the GNOME documentation framework
25
# Internationalization support
27
IT_PROG_INTLTOOL([0.40.1])
29
GETTEXT_PACKAGE=gnome-control-center-2.0
30
AC_SUBST(GETTEXT_PACKAGE)
31
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
34
GNOME_COMPILE_WARNINGS([maximum])
37
x_libs="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS"
39
AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
42
savecppflags=$CPPFLAGS
43
CPPFLAGS="$CPPFLAGS $X_CFLAGS"
44
AC_CHECK_HEADERS([X11/Xlib.h])
45
AC_CHECK_LIB(Xxf86misc, XF86MiscQueryExtension, [
46
AC_CHECK_HEADERS([X11/extensions/xf86misc.h], [XF86MISC_LIBS="-lXxf86misc"],[],
51
AC_SUBST(XF86MISC_LIBS)
52
AC_CHECK_HEADERS(X11/extensions/XKB.h)
53
CPPFLAGS=$savecppflags
55
AC_CHECK_LIB(m, floor)
57
AC_ARG_ENABLE([systemd],
58
AS_HELP_STRING([--enable-systemd], [Use systemd]),
59
[with_systemd=$enableval],
61
if test "$with_systemd" = "yes" ; then
62
SYSTEMD=libsystemd-login
63
AC_DEFINE(HAVE_SYSTEMD, 1, [Define to 1 if systemd is available])
68
dnl ==============================================
69
dnl Check that we meet the dependencies
70
dnl ==============================================
72
GLIB_REQUIRED_VERSION=2.31.0
73
GTK_REQUIRED_VERSION=3.3.5
74
DESKTOP_SCHEMAS_REQUIRED_VERSION=3.0.2
75
PA_REQUIRED_VERSION=0.9.16
76
CANBERRA_REQUIRED_VERSION=0.13
77
GDKPIXBUF_REQUIRED_VERSION=2.23.0
78
POLKIT_REQUIRED_VERSION=0.103
79
GSD_REQUIRED_VERSION=3.3.4
80
NETWORK_MANAGER_REQUIRED_VERSION=0.8.992
81
LIBNOTIFY_REQUIRED_VERSION=0.7.3
82
GNOME_DESKTOP_REQUIRED_VERSION=3.1.91
83
SCHEMAS_REQUIRED_VERSION=3.3.0
84
LIBWACOM_REQUIRED_VERSION=0.3
86
COMMON_MODULES="gtk+-3.0 >= $GTK_REQUIRED_VERSION
87
glib-2.0 >= $GLIB_REQUIRED_VERSION
91
gsettings-desktop-schemas >= $DESKTOP_SCHEMAS_REQUIRED_VERSION
92
libnotify >= $LIBNOTIFY_REQUIRED_VERSION"
94
PKG_CHECK_MODULES(LIBGNOME_CONTROL_CENTER, $COMMON_MODULES)
95
PKG_CHECK_MODULES(LIBLANGUAGE, $COMMON_MODULES gnome-desktop-3.0 fontconfig)
96
PKG_CHECK_MODULES(LIBSHORTCUTS, $COMMON_MODULES x11)
97
PKG_CHECK_MODULES(SHELL, $COMMON_MODULES libgnome-menu-3.0 gio-unix-2.0)
98
PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES libxml-2.0 gnome-desktop-3.0
99
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION gconf-2.0)
100
PKG_CHECK_MODULES(DATETIME_PANEL, $COMMON_MODULES
101
gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
102
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
103
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION)
104
PKG_CHECK_MODULES(DISPLAY_PANEL, $COMMON_MODULES gnome-desktop-3.0 >= 3.1.0)
105
PKG_CHECK_MODULES(INFO_PANEL, $COMMON_MODULES libgtop-2.0
106
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
107
PKG_CHECK_MODULES(KEYBOARD_PANEL, $COMMON_MODULES x11)
108
PKG_CHECK_MODULES(MEDIA_PANEL, $COMMON_MODULES)
109
PKG_CHECK_MODULES(MOUSE_PANEL, $COMMON_MODULES xi >= 1.2
110
gnome-settings-daemon >= $GSD_REQUIRED_VERSION x11)
111
PKG_CHECK_MODULES(NETWORK_PANEL, $COMMON_MODULES)
112
PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0)
113
PKG_CHECK_MODULES(POWER_PANEL, $COMMON_MODULES upower-glib >= 0.9.1
114
gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
115
PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES colord >= 0.1.8)
116
PKG_CHECK_MODULES(PRINTERS_PANEL, $COMMON_MODULES dbus-glib-1
117
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
118
PKG_CHECK_MODULES(REGION_PANEL, $COMMON_MODULES libgnomekbd >= 2.91.91
119
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
120
libxklavier >= 5.1 libgnomekbdui >= 2.91.91)
121
PKG_CHECK_MODULES(SCREEN_PANEL, $COMMON_MODULES)
122
PKG_CHECK_MODULES(SOUND_PANEL, $COMMON_MODULES libxml-2.0
123
libcanberra-gtk3 >= $CANBERRA_REQUIRED_VERSION
124
libpulse >= $PA_REQUIRED_VERSION
125
libpulse-mainloop-glib >= $PA_REQUIRED_VERSION
126
gsettings-desktop-schemas >= $SCHEMAS_REQUIRED_VERSION
128
PKG_CHECK_MODULES(UNIVERSAL_ACCESS_PANEL, $COMMON_MODULES gsettings-desktop-schemas >= $SCHEMAS_REQUIRED_VERSION)
129
PKG_CHECK_MODULES(USER_ACCOUNTS_PANEL, $COMMON_MODULES dbus-glib-1
130
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
132
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION
134
PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
135
gnome-settings-daemon >= $GSD_REQUIRED_VERSION
136
xi >= 1.2 x11 libwacom >= $LIBWACOM_REQUIRED_VERSION
137
gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
139
GDESKTOP_PREFIX=`$PKG_CONFIG --variable prefix gsettings-desktop-schemas`
140
AC_SUBST(GDESKTOP_PREFIX)
142
# Check for NetworkManager ~0.9
143
PKG_CHECK_MODULES(NETWORK_MANAGER, NetworkManager >= $NETWORK_MANAGER_REQUIRED_VERSION
144
libnm-glib >= $NETWORK_MANAGER_REQUIRED_VERSION
145
libnm-util >= $NETWORK_MANAGER_REQUIRED_VERSION
146
libnm-gtk >= $NETWORK_MANAGER_REQUIRED_VERSION,
147
[have_networkmanager=yes], have_networkmanager=no)
148
if test "x$have_networkmanager" = xno ; then
149
AC_MSG_WARN(*** Network panel will not be built (NetworkManager ~0.9 or newer not found) ***)
151
AM_CONDITIONAL(BUILD_NETWORK, [test x$have_networkmanager = xyes])
153
# Check for gnome-bluetooth
154
PKG_CHECK_MODULES(BLUETOOTH, $COMMON_MODULES gnome-bluetooth-1.0 >= 3.3.4,
155
[have_bluetooth=yes], have_bluetooth=no)
156
AM_CONDITIONAL(BUILD_BLUETOOTH, [test x$have_bluetooth = xyes])
158
# Check for CUPS 1.4 or newer
159
AC_ARG_ENABLE([cups],
160
AS_HELP_STRING([--disable-cups], [disable CUPS support (default: enabled)]),,
163
if test x"$enable_cups" != x"no" ; then
166
AC_PATH_PROG(CUPS_CONFIG, cups-config,
167
AC_MSG_ERROR([cups-config not found but CUPS support requested]))
169
CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
170
CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | cut -d . -f 1`
171
CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | cut -d . -f 2`
173
AC_CHECK_HEADERS([cups/cups.h cups/http.h cups/ipp.h cups/ppd.h],,
174
AC_MSG_ERROR([CUPS headers not found but CUPS support requested]))
176
if ! test $CUPS_API_MAJOR -gt 1 -o \
177
$CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 4 ; then
178
AC_MSG_ERROR([CUPS 1.4 or newer not found, but CUPS support requested])
181
CUPS_CFLAGS=`$CUPS_CONFIG --cflags | $SED -e 's/-O\w*//g' -e 's/-m\w*//g'`
182
CUPS_LIBS=`$CUPS_CONFIG --libs`
183
AC_SUBST(CUPS_CFLAGS)
187
AM_CONDITIONAL(BUILD_PRINTERS, [test x"$enable_cups" = x"yes"])
189
# Optional dependency for the user accounts panel
190
AC_ARG_WITH([cheese],
191
AS_HELP_STRING([--with-cheese], [enable cheese webcam support]),,
194
if test x"$with_cheese" != x"no" ; then
195
PKG_CHECK_MODULES(CHEESE, gstreamer-0.10 cheese >= 3.3.5 cheese-gtk >= 3.3.5, [have_cheese=yes], [have_cheese=no])
196
if test x${have_cheese} = xyes; then
197
AC_DEFINE(HAVE_CHEESE, 1, [Define to 1 to enable cheese webcam support])
199
if test x${with_cheese} = xyes && test x${have_cheese} = xno; then
200
AC_MSG_ERROR([Cheese configured but not found])
205
AM_CONDITIONAL(BUILD_CHEESE, test x${have_cheese} = xyes)
207
# This is a hard-dependency for the region and user-accounts panels
208
PKG_CHECK_MODULES(ISOCODES, iso-codes)
210
AC_DEFINE_UNQUOTED([ISO_CODES_PREFIX],["`$PKG_CONFIG --variable=prefix iso-codes`"],[ISO codes prefix])
213
dnl ==============================================
214
dnl End: Check that we meet the dependencies
215
dnl ==============================================
217
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no)
219
if test x"$GLIB_GENMARSHAL" = xno; then
220
AC_MSG_ERROR([glib-genmarshal executable not found in your path - should be installed with glib])
223
AC_SUBST(GLIB_GENMARSHAL)
225
dnl =======================================
227
dnl =======================================
229
PANELS_DIR="${libdir}/control-center-1/panels"
232
PANEL_CFLAGS="-I\$(top_srcdir)/ -DG_LOG_DOMAIN=\"\\\"\$(cappletname)-cc-panel\\\"\""
233
AC_SUBST(PANEL_CFLAGS)
238
PANEL_LDFLAGS="-export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload)'"
239
AC_SUBST(PANEL_LDFLAGS)
241
dnl ==============================================
243
dnl ==============================================
245
AC_MSG_CHECKING([Enable libsocialweb support])
246
AC_ARG_WITH([libsocialweb],
247
AS_HELP_STRING([--with-libsocialweb],
248
[enable libsocialweb support]),,
249
[with_libsocialweb=no])
250
AC_MSG_RESULT([$with_libsocialweb])
252
if test "x$with_libsocialweb" == "xyes"; then
253
PKG_CHECK_MODULES(SOCIALWEB, libsocialweb-client)
254
AC_DEFINE(HAVE_LIBSOCIALWEB, 1, [Defined if libsocialweb is available])
256
AM_CONDITIONAL(WITH_LIBSOCIALWEB, test "x$with_libsocialweb" = "xyes")
259
dnl =======================================
260
dnl Update Mime Database
261
dnl =======================================
263
AC_PATH_PROG(UPDATE_MIME_DATABASE, update-mime-database, no)
265
AC_ARG_ENABLE(update-mimedb,
266
AS_HELP_STRING([--disable-update-mimedb],
267
[do not update mime database after installation]),,
268
enable_update_mimedb=yes)
269
AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
271
CONTROL_CENTER_VERSION=gnome_control_center_version
272
AC_SUBST(CONTROL_CENTER_VERSION)
274
dnl =======================================
276
dnl =======================================
278
# Turn on the additional warnings last
280
AC_ARG_ENABLE(more-warnings,
281
AS_HELP_STRING([--enable-more-warnings],
282
[Maximum compiler warnings]),
283
set_more_warnings="$enableval",[
284
if test -d $srcdir/.git; then
285
set_more_warnings=yes
290
AC_MSG_CHECKING(for more warnings)
291
if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
294
-Wall -Wclobbered -Wempty-body -Wignored-qualifiers \
295
-Wmissing-field-initializers -Wmissing-parameter-type \
296
-Wold-style-declaration -Woverride-init -Wtype-limits \
298
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
299
-Wnested-externs -Wpointer-arith \
300
-Wcast-align -Wsign-compare -Wp,-D_FORTIFY_SOURCE=2 \
303
for option in -Wno-strict-aliasing -Wno-sign-compare; do
304
SAVE_CFLAGS="$CFLAGS"
305
CFLAGS="$CFLAGS $option"
306
AC_MSG_CHECKING([whether gcc understands $option])
307
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
310
if test $has_option = no; then
311
CFLAGS="$SAVE_CFLAGS"
313
AC_MSG_RESULT($has_option)
327
panels/common/Makefile
328
panels/background/Makefile
329
panels/background/gnome-background-panel.desktop.in
330
panels/bluetooth/Makefile
331
panels/bluetooth/bluetooth-properties.desktop.in
332
panels/datetime/Makefile
333
panels/datetime/gnome-datetime-panel.desktop.in
334
panels/datetime/po-timezones/Makefile
335
panels/display/Makefile
336
panels/display/gnome-display-panel.desktop.in
337
panels/keyboard/Makefile
338
panels/keyboard/gnome-keyboard-panel.desktop.in
339
panels/keyboard/gnome-keybindings.pc
340
panels/region/Makefile
341
panels/region/gnome-region-panel.desktop.in
342
panels/mouse/Makefile
343
panels/mouse/gnome-mouse-panel.desktop.in
344
panels/online-accounts/Makefile
345
panels/online-accounts/gnome-online-accounts-panel.desktop.in
346
panels/online-accounts/icons/Makefile
347
panels/online-accounts/icons/16x16/Makefile
348
panels/online-accounts/icons/22x22/Makefile
349
panels/online-accounts/icons/24x24/Makefile
350
panels/online-accounts/icons/32x32/Makefile
351
panels/online-accounts/icons/48x48/Makefile
352
panels/online-accounts/icons/256x256/Makefile
353
panels/sound-nua/Makefile
354
panels/sound-nua/data/Makefile
355
panels/sound-nua/data/gnome-sound-nua-panel.desktop.in
356
panels/sound/Makefile
357
panels/sound/data/Makefile
358
panels/sound/data/gnome-sound-panel.desktop.in
359
panels/sound/data/symbolic-icons/Makefile
360
panels/sound/data/symbolic-icons/scalable/Makefile
361
panels/sound/data/symbolic-icons/scalable/status/Makefile
362
panels/sound/data/icons/Makefile
363
panels/sound/data/icons/16x16/Makefile
364
panels/sound/data/icons/16x16/apps/Makefile
365
panels/sound/data/icons/16x16/devices/Makefile
366
panels/sound/data/icons/16x16/status/Makefile
367
panels/sound/data/icons/22x22/Makefile
368
panels/sound/data/icons/22x22/apps/Makefile
369
panels/sound/data/icons/22x22/status/Makefile
370
panels/sound/data/icons/24x24/Makefile
371
panels/sound/data/icons/24x24/apps/Makefile
372
panels/sound/data/icons/24x24/devices/Makefile
373
panels/sound/data/icons/24x24/status/Makefile
374
panels/sound/data/icons/32x32/Makefile
375
panels/sound/data/icons/32x32/apps/Makefile
376
panels/sound/data/icons/32x32/devices/Makefile
377
panels/sound/data/icons/32x32/status/Makefile
378
panels/sound/data/icons/48x48/Makefile
379
panels/sound/data/icons/48x48/apps/Makefile
380
panels/sound/data/icons/48x48/devices/Makefile
381
panels/sound/data/icons/scalable/Makefile
382
panels/sound/data/icons/scalable/apps/Makefile
383
panels/sound/data/icons/scalable/devices/Makefile
384
panels/sound/data/sounds/Makefile
385
panels/screen/Makefile
386
panels/screen/gnome-screen-panel.desktop.in
388
panels/info/gnome-info-panel.desktop.in
389
panels/power/Makefile
390
panels/power/gnome-power-panel.desktop.in
391
panels/power/icons/Makefile
392
panels/power/icons/16x16/Makefile
393
panels/power/icons/22x22/Makefile
394
panels/power/icons/24x24/Makefile
395
panels/power/icons/32x32/Makefile
396
panels/power/icons/48x48/Makefile
397
panels/power/icons/256x256/Makefile
398
panels/color/Makefile
399
panels/color/gnome-color-panel.desktop.in
400
panels/color/icons/Makefile
401
panels/color/icons/16x16/Makefile
402
panels/color/icons/22x22/Makefile
403
panels/color/icons/24x24/Makefile
404
panels/color/icons/32x32/Makefile
405
panels/color/icons/48x48/Makefile
406
panels/color/icons/64x64/Makefile
407
panels/color/icons/256x256/Makefile
408
panels/color/icons/scalable/Makefile
409
panels/printers/Makefile
410
panels/printers/gnome-printers-panel.desktop.in
411
panels/network/Makefile
412
panels/network/gnome-network-panel.desktop.in
413
panels/universal-access/Makefile
414
panels/universal-access/gnome-universal-access-panel.desktop.in
415
panels/user-accounts/Makefile
416
panels/user-accounts/data/Makefile
417
panels/user-accounts/data/gnome-user-accounts-panel.desktop.in
418
panels/user-accounts/data/faces/Makefile
419
panels/user-accounts/data/icons/Makefile
420
panels/wacom/Makefile
421
panels/wacom/calibrator/Makefile
422
panels/wacom/gnome-wacom-panel.desktop.in
425
shell/gnome-control-center.desktop.in
428
AC_MSG_NOTICE([gnome-control-center was configured with the following options:])
429
if test "x$have_networkmanager" = "xyes"; then
430
AC_MSG_NOTICE([** NetworkManager (Network panel)])
432
AC_MSG_NOTICE([ Network panel disabled])
434
if test "x$have_bluetooth" = "xyes"; then
435
AC_MSG_NOTICE([** gnome-bluetooth (Bluetooth panel)])
437
AC_MSG_NOTICE([ Bluetooth panel disabled])
439
if test "x$enable_cups" = "xyes"; then
440
AC_MSG_NOTICE([** CUPS (Printers panel)])
442
AC_MSG_NOTICE([ Printers panel disabled])
444
if test "x$have_cheese" = "xyes"; then
445
AC_MSG_NOTICE([** Cheese (Users panel webcam support)])
447
AC_MSG_NOTICE([ Users panel webcam support disabled])
449
if test "x$with_libsocialweb" = "xyes"; then
450
AC_MSG_NOTICE([** libsocialweb (Background panel Flickr support)])
452
AC_MSG_NOTICE([ Background panel Flickr support disabled])
454
if test "x$with_systemd" = "xyes"; then
455
AC_MSG_NOTICE([** systemd (Systemd session tracking)])
457
AC_MSG_NOTICE([ Using ConsoleKit for session tracking])
459
AC_MSG_NOTICE([End options])