1
m4_define([gnome_control_center_version], 3.2.2)
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.10 no-dist-gzip dist-bzip2 tar-ustar])
10
AM_MAINTAINER_MODE([enable])
11
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
22
# .so version for libgnome-control-center
23
LIBGNOMECONTROLCENTER_CURRENT=1
24
LIBGNOMECONTROLCENTER_REVISION=0
25
LIBGNOMECONTROLCENTER_AGE=0
26
AC_SUBST(LIBGNOMECONTROLCENTER_CURRENT)
27
AC_SUBST(LIBGNOMECONTROLCENTER_REVISION)
28
AC_SUBST(LIBGNOMECONTROLCENTER_AGE)
30
# Use the GNOME documentation framework
33
# Internationalization support
35
IT_PROG_INTLTOOL([0.40.1])
37
GETTEXT_PACKAGE=gnome-control-center-2.0
38
AC_SUBST(GETTEXT_PACKAGE)
39
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
42
GNOME_COMPILE_WARNINGS([maximum])
43
GNOME_MAINTAINER_MODE_DEFINES
46
x_libs="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS"
48
AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
51
savecppflags=$CPPFLAGS
52
CPPFLAGS="$CPPFLAGS $X_CFLAGS"
53
AC_CHECK_HEADERS([X11/Xlib.h])
54
AC_CHECK_LIB(Xxf86misc, XF86MiscQueryExtension, [
55
AC_CHECK_HEADERS([X11/extensions/xf86misc.h], [XF86MISC_LIBS="-lXxf86misc"],[],
60
AC_SUBST(XF86MISC_LIBS)
61
AC_CHECK_HEADERS(X11/extensions/XKB.h)
62
CPPFLAGS=$savecppflags
64
AC_CHECK_LIB(m, floor)
66
dnl ==============================================
67
dnl Check that we meet the dependencies
68
dnl ==============================================
70
GLIB_REQUIRED_VERSION=2.29.14
71
GTK_REQUIRED_VERSION=3.1.19
72
DESKTOP_SCHEMAS_REQUIRED_VERSION=3.0.2
73
PA_REQUIRED_VERSION=0.9.16
74
CANBERRA_REQUIRED_VERSION=0.13
75
GDKPIXBUF_REQUIRED_VERSION=2.23.0
76
POLKIT_REQUIRED_VERSION=0.97
77
GSD_REQUIRED_VERSION=2.91.94
78
NETWORK_MANAGER_REQUIRED_VERSION=0.8.992
79
LIBNOTIFY_REQUIRED_VERSION=0.7.3
81
COMMON_MODULES="gtk+-3.0 >= $GTK_REQUIRED_VERSION
82
glib-2.0 >= $GLIB_REQUIRED_VERSION
86
gsettings-desktop-schemas >= $DESKTOP_SCHEMAS_REQUIRED_VERSION
87
libnotify >= $LIBNOTIFY_REQUIRED_VERSION"
89
PKG_CHECK_MODULES(LIBGNOME_CONTROL_CENTER, $COMMON_MODULES gconf-2.0)
90
PKG_CHECK_MODULES(LIBLANGUAGE, $COMMON_MODULES gnome-desktop-3.0)
91
PKG_CHECK_MODULES(LIBSHORTCUTS, $COMMON_MODULES x11)
92
PKG_CHECK_MODULES(SHELL, $COMMON_MODULES libgnome-menu-3.0 gio-unix-2.0)
93
PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES libxml-2.0 gnome-desktop-3.0
94
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION gconf-2.0)
95
PKG_CHECK_MODULES(DATETIME_PANEL, $COMMON_MODULES dbus-glib-1
96
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
97
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION)
98
PKG_CHECK_MODULES(DISPLAY_PANEL, $COMMON_MODULES dbus-glib-1 gnome-desktop-3.0 >= 3.1.0)
99
PKG_CHECK_MODULES(INFO_PANEL, $COMMON_MODULES libgtop-2.0
100
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
101
PKG_CHECK_MODULES(KEYBOARD_PANEL, $COMMON_MODULES gconf-2.0 x11)
102
PKG_CHECK_MODULES(MEDIA_PANEL, $COMMON_MODULES)
103
PKG_CHECK_MODULES(MOUSE_PANEL, $COMMON_MODULES xi >= 1.2
104
gnome-settings-daemon >= $GSD_REQUIRED_VERSION x11)
105
PKG_CHECK_MODULES(NETWORK_PANEL, $COMMON_MODULES)
106
PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0)
107
PKG_CHECK_MODULES(POWER_PANEL, $COMMON_MODULES upower-glib >= 0.9.1
108
gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
109
PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES colord >= 0.1.8)
110
PKG_CHECK_MODULES(PRINTERS_PANEL, $COMMON_MODULES dbus-glib-1
111
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
112
PKG_CHECK_MODULES(REGION_PANEL, $COMMON_MODULES libgnomekbd >= 2.91.91
113
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
114
libxklavier >= 5.1 libgnomekbdui >= 2.91.91)
115
PKG_CHECK_MODULES(SCREEN_PANEL, $COMMON_MODULES)
116
PKG_CHECK_MODULES(SOUND_PANEL, $COMMON_MODULES libxml-2.0
117
libcanberra-gtk3 >= $CANBERRA_REQUIRED_VERSION
118
libpulse >= $PA_REQUIRED_VERSION
119
libpulse-mainloop-glib >= $PA_REQUIRED_VERSION
121
PKG_CHECK_MODULES(UNIVERSAL_ACCESS_PANEL, $COMMON_MODULES gconf-2.0)
122
PKG_CHECK_MODULES(USER_ACCOUNTS_PANEL, $COMMON_MODULES dbus-glib-1
123
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
125
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION)
126
PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
127
gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
129
GDESKTOP_PREFIX=`$PKG_CONFIG --variable prefix gsettings-desktop-schemas`
130
AC_SUBST(GDESKTOP_PREFIX)
132
# Check for NetworkManager ~0.9
133
PKG_CHECK_MODULES(NETWORK_MANAGER, NetworkManager >= $NETWORK_MANAGER_REQUIRED_VERSION
134
libnm-glib >= $NETWORK_MANAGER_REQUIRED_VERSION
135
libnm-util >= $NETWORK_MANAGER_REQUIRED_VERSION
136
libnm-gtk >= $NETWORK_MANAGER_REQUIRED_VERSION,
137
[have_networkmanager=yes], have_networkmanager=no)
138
if test "x$have_networkmanager" = xno ; then
139
AC_MSG_WARN(*** Network panel will not be built (NetworkManager >= $NETWORK_MANAGER_REQUIRED_VERSION or newer not found) ***)
141
AM_CONDITIONAL(BUILD_NETWORK, [test x$have_networkmanager = xyes])
143
# Check for CUPS 1.4 or newer
144
AC_ARG_ENABLE([cups],
145
AS_HELP_STRING([--disable-cups], [disable CUPS support (default: enabled)]),,
148
if test x"$enable_cups" != x"no" ; then
151
AC_PATH_PROG(CUPS_CONFIG, cups-config,
152
AC_MSG_ERROR([cups-config not found but CUPS support requested]))
154
CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
155
CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | cut -d . -f 1`
156
CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | cut -d . -f 2`
158
AC_CHECK_HEADERS([cups/cups.h cups/http.h cups/ipp.h cups/ppd.h],,
159
AC_MSG_ERROR([CUPS headers not found but CUPS support requested]))
161
if ! test $CUPS_API_MAJOR -gt 1 -o \
162
$CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 4 ; then
163
AC_MSG_ERROR([CUPS 1.4 or newer not found, but CUPS support requested])
166
CUPS_CFLAGS=`$CUPS_CONFIG --cflags | $SED -e 's/-O\w*//g' -e 's/-m\w*//g'`
167
CUPS_LIBS=`$CUPS_CONFIG --libs`
168
AC_SUBST(CUPS_CFLAGS)
172
AM_CONDITIONAL(BUILD_PRINTERS, [test x"$enable_cups" = x"yes"])
174
# Optional dependency for the user accounts panel
175
AC_ARG_WITH([cheese],
176
AS_HELP_STRING([--with-cheese], [enable cheese webcam support]),,
179
if test x"$with_cheese" != x"no" ; then
180
PKG_CHECK_MODULES(CHEESE, gstreamer-0.10 cheese-gtk >= 2.91.91.1, [have_cheese=yes], [have_cheese=no])
181
if test x${have_cheese} = xyes; then
182
AC_DEFINE(HAVE_CHEESE, 1, [Define to 1 to enable cheese webcam support])
184
if test x${with_cheese} = xyes && test x${have_cheese} = xno; then
185
AC_MSG_ERROR([Cheese configured but not found])
190
AM_CONDITIONAL(BUILD_CHEESE, test x${have_cheese} = xyes)
192
# This is a hard-dependency for the region and user-accounts panels
193
PKG_CHECK_MODULES(ISOCODES, iso-codes)
195
AC_DEFINE_UNQUOTED([ISO_CODES_PREFIX],["`$PKG_CONFIG --variable=prefix iso-codes`"],[ISO codes prefix])
198
dnl ==============================================
199
dnl End: Check that we meet the dependencies
200
dnl ==============================================
202
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no)
204
if test x"$GLIB_GENMARSHAL" = xno; then
205
AC_MSG_ERROR([glib-genmarshal executable not found in your path - should be installed with glib])
208
AC_SUBST(GLIB_GENMARSHAL)
210
dnl =======================================
212
dnl =======================================
214
PANELS_DIR="${libdir}/control-center-1/panels"
217
PANEL_CFLAGS="-I\$(top_srcdir)/ -DG_LOG_DOMAIN=\"\\\"\$(cappletname)-cc-panel\\\"\""
218
AC_SUBST(PANEL_CFLAGS)
220
PANEL_LIBS="\$(top_builddir)/libgnome-control-center/libgnome-control-center.la"
223
PANEL_LDFLAGS="-export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload)'"
224
AC_SUBST(PANEL_LDFLAGS)
226
dnl ==============================================
228
dnl ==============================================
230
AC_MSG_CHECKING([Enable libsocialweb support])
231
AC_ARG_WITH([libsocialweb],
232
AS_HELP_STRING([--with-libsocialweb],
233
[enable libsocialweb support]),,
234
[with_libsocialweb=no])
235
AC_MSG_RESULT([$with_libsocialweb])
237
if test "x$with_libsocialweb" == "xyes"; then
238
PKG_CHECK_MODULES(SOCIALWEB, libsocialweb-client)
239
AC_DEFINE(HAVE_LIBSOCIALWEB, 1, [Defined if libsocialweb is available])
241
AM_CONDITIONAL(WITH_LIBSOCIALWEB, test "x$with_libsocialweb" = "xyes")
244
dnl =======================================
245
dnl Update Mime Database
246
dnl =======================================
248
AC_PATH_PROG(UPDATE_MIME_DATABASE, update-mime-database, no)
250
AC_ARG_ENABLE(update-mimedb,
251
AS_HELP_STRING([--disable-update-mimedb],
252
[do not update mime database after installation]),,
253
enable_update_mimedb=yes)
254
AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
256
CONTROL_CENTER_VERSION=gnome_control_center_version
257
AC_SUBST(CONTROL_CENTER_VERSION)
259
dnl =======================================
261
dnl =======================================
263
# Turn on the additional warnings last
265
AC_ARG_ENABLE(more-warnings,
266
AS_HELP_STRING([--enable-more-warnings],
267
[Maximum compiler warnings]),
268
set_more_warnings="$enableval",[
269
if test -d $srcdir/.git; then
270
set_more_warnings=yes
275
AC_MSG_CHECKING(for more warnings)
276
if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
279
-Wall -Wclobbered -Wempty-body -Wignored-qualifiers \
280
-Wmissing-field-initializers -Wmissing-parameter-type \
281
-Wold-style-declaration -Woverride-init -Wtype-limits \
283
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
284
-Wnested-externs -Wpointer-arith \
285
-Wcast-align -Wsign-compare -Wp,-D_FORTIFY_SOURCE=2 \
288
for option in -Wno-strict-aliasing -Wno-sign-compare; do
289
SAVE_CFLAGS="$CFLAGS"
290
CFLAGS="$CFLAGS $option"
291
AC_MSG_CHECKING([whether gcc understands $option])
292
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
295
if test $has_option = no; then
296
CFLAGS="$SAVE_CFLAGS"
298
AC_MSG_RESULT($has_option)
311
libgnome-control-center/Makefile
312
libgnome-control-center/libgnome-control-center.pc
314
panels/common/Makefile
315
panels/background/Makefile
316
panels/background/gnome-background-panel.desktop.in
317
panels/datetime/Makefile
318
panels/datetime/gnome-datetime-panel.desktop.in
319
panels/datetime/po-timezones/Makefile
320
panels/display/Makefile
321
panels/display/gnome-display-panel.desktop.in
322
panels/keyboard/Makefile
323
panels/keyboard/gnome-keyboard-panel.desktop.in
324
panels/keyboard/gnome-keybindings.pc
325
panels/region/Makefile
326
panels/region/gnome-region-panel.desktop.in
327
panels/media/Makefile
328
panels/media/gnome-media-panel.desktop.in
329
panels/mouse/Makefile
330
panels/mouse/gnome-mouse-panel.desktop.in
331
panels/online-accounts/Makefile
332
panels/online-accounts/gnome-online-accounts-panel.desktop.in
333
panels/online-accounts/icons/Makefile
334
panels/online-accounts/icons/16x16/Makefile
335
panels/online-accounts/icons/22x22/Makefile
336
panels/online-accounts/icons/24x24/Makefile
337
panels/online-accounts/icons/32x32/Makefile
338
panels/online-accounts/icons/48x48/Makefile
339
panels/online-accounts/icons/256x256/Makefile
340
panels/sound/Makefile
341
panels/sound/data/Makefile
342
panels/sound/data/gnome-sound-panel.desktop.in
343
panels/sound/data/symbolic-icons/Makefile
344
panels/sound/data/symbolic-icons/scalable/Makefile
345
panels/sound/data/symbolic-icons/scalable/status/Makefile
346
panels/sound/data/icons/Makefile
347
panels/sound/data/icons/16x16/Makefile
348
panels/sound/data/icons/16x16/apps/Makefile
349
panels/sound/data/icons/16x16/devices/Makefile
350
panels/sound/data/icons/16x16/status/Makefile
351
panels/sound/data/icons/22x22/Makefile
352
panels/sound/data/icons/22x22/apps/Makefile
353
panels/sound/data/icons/22x22/status/Makefile
354
panels/sound/data/icons/24x24/Makefile
355
panels/sound/data/icons/24x24/apps/Makefile
356
panels/sound/data/icons/24x24/devices/Makefile
357
panels/sound/data/icons/24x24/status/Makefile
358
panels/sound/data/icons/32x32/Makefile
359
panels/sound/data/icons/32x32/apps/Makefile
360
panels/sound/data/icons/32x32/devices/Makefile
361
panels/sound/data/icons/32x32/status/Makefile
362
panels/sound/data/icons/48x48/Makefile
363
panels/sound/data/icons/48x48/apps/Makefile
364
panels/sound/data/icons/48x48/devices/Makefile
365
panels/sound/data/icons/scalable/Makefile
366
panels/sound/data/icons/scalable/apps/Makefile
367
panels/sound/data/icons/scalable/devices/Makefile
368
panels/sound/data/sounds/Makefile
369
panels/screen/Makefile
370
panels/screen/gnome-screen-panel.desktop.in
372
panels/info/gnome-info-panel.desktop.in
373
panels/power/Makefile
374
panels/power/gnome-power-panel.desktop.in
375
panels/power/icons/Makefile
376
panels/power/icons/16x16/Makefile
377
panels/power/icons/22x22/Makefile
378
panels/power/icons/24x24/Makefile
379
panels/power/icons/32x32/Makefile
380
panels/power/icons/48x48/Makefile
381
panels/power/icons/256x256/Makefile
382
panels/color/Makefile
383
panels/color/gnome-color-panel.desktop.in
384
panels/color/icons/Makefile
385
panels/color/icons/16x16/Makefile
386
panels/color/icons/22x22/Makefile
387
panels/color/icons/24x24/Makefile
388
panels/color/icons/32x32/Makefile
389
panels/color/icons/48x48/Makefile
390
panels/color/icons/64x64/Makefile
391
panels/color/icons/256x256/Makefile
392
panels/color/icons/scalable/Makefile
393
panels/printers/Makefile
394
panels/printers/gnome-printers-panel.desktop.in
395
panels/network/Makefile
396
panels/network/gnome-network-panel.desktop.in
397
panels/universal-access/Makefile
398
panels/universal-access/gnome-universal-access-panel.desktop.in
399
panels/user-accounts/Makefile
400
panels/user-accounts/data/Makefile
401
panels/user-accounts/data/gnome-user-accounts-panel.desktop.in
402
panels/user-accounts/data/faces/Makefile
403
panels/user-accounts/data/icons/Makefile
404
panels/wacom/Makefile
405
panels/wacom/gnome-wacom-panel.desktop.in
408
shell/gnome-control-center.desktop.in
411
dnl due to a bug in intltool we need to expand something from the root last control-center.spec