This fixes problems with the CcEditableEntry type not being registered and causing the printers and user-accounts panels not to work. As we do not need to work on Windows, we do not need to split out the library.
409 lines
15 KiB
Text
409 lines
15 KiB
Text
m4_define([gnome_control_center_version], 3.3.0)
|
|
AC_INIT([gnome-control-center], [gnome_control_center_version],
|
|
[http://bugzilla.gnome.org/enter_bug.cgi?product=gnome-control-center])
|
|
|
|
AC_CONFIG_SRCDIR([shell])
|
|
AC_CONFIG_HEADERS([config.h])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
AM_INIT_AUTOMAKE([1.10 no-dist-gzip dist-bzip2 tar-ustar])
|
|
AM_MAINTAINER_MODE([enable])
|
|
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
|
|
|
|
# Check for programs
|
|
AC_PROG_CC
|
|
AM_PROG_CC_C_O
|
|
AC_HEADER_STDC
|
|
|
|
# Initialize libtool
|
|
LT_PREREQ([2.2])
|
|
LT_INIT
|
|
|
|
# Use the GNOME documentation framework
|
|
GNOME_DOC_INIT
|
|
|
|
# Internationalization support
|
|
|
|
IT_PROG_INTLTOOL([0.40.1])
|
|
|
|
GETTEXT_PACKAGE=gnome-control-center-2.0
|
|
AC_SUBST(GETTEXT_PACKAGE)
|
|
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
|
|
|
|
GNOME_DEBUG_CHECK
|
|
GNOME_COMPILE_WARNINGS([maximum])
|
|
GNOME_MAINTAINER_MODE_DEFINES
|
|
|
|
AC_PATH_XTRA
|
|
x_libs="$X_PRE_LIBS $X_LIBS -lX11 $X_EXTRA_LIBS"
|
|
|
|
AC_PATH_PROG([GLIB_MKENUMS],[glib-mkenums])
|
|
|
|
dnl Region panel
|
|
savecppflags=$CPPFLAGS
|
|
CPPFLAGS="$CPPFLAGS $X_CFLAGS"
|
|
AC_CHECK_HEADERS([X11/Xlib.h])
|
|
AC_CHECK_LIB(Xxf86misc, XF86MiscQueryExtension, [
|
|
AC_CHECK_HEADERS([X11/extensions/xf86misc.h], [XF86MISC_LIBS="-lXxf86misc"],[],
|
|
[#if HAVE_X11_XLIB_H
|
|
#include <X11/Xlib.h>
|
|
#endif
|
|
])])
|
|
AC_SUBST(XF86MISC_LIBS)
|
|
AC_CHECK_HEADERS(X11/extensions/XKB.h)
|
|
CPPFLAGS=$savecppflags
|
|
|
|
AC_CHECK_LIB(m, floor)
|
|
|
|
dnl ==============================================
|
|
dnl Check that we meet the dependencies
|
|
dnl ==============================================
|
|
|
|
GLIB_REQUIRED_VERSION=2.29.14
|
|
GTK_REQUIRED_VERSION=3.3.3
|
|
DESKTOP_SCHEMAS_REQUIRED_VERSION=3.0.2
|
|
PA_REQUIRED_VERSION=0.9.16
|
|
CANBERRA_REQUIRED_VERSION=0.13
|
|
GDKPIXBUF_REQUIRED_VERSION=2.23.0
|
|
POLKIT_REQUIRED_VERSION=0.97
|
|
GSD_REQUIRED_VERSION=2.91.94
|
|
NETWORK_MANAGER_REQUIRED_VERSION=0.8.992
|
|
LIBNOTIFY_REQUIRED_VERSION=0.7.3
|
|
GNOME_DESKTOP_REQUIRED_VERSION=3.1.91
|
|
|
|
COMMON_MODULES="gtk+-3.0 >= $GTK_REQUIRED_VERSION
|
|
glib-2.0 >= $GLIB_REQUIRED_VERSION
|
|
gthread-2.0
|
|
gio-2.0
|
|
gio-unix-2.0
|
|
gsettings-desktop-schemas >= $DESKTOP_SCHEMAS_REQUIRED_VERSION
|
|
libnotify >= $LIBNOTIFY_REQUIRED_VERSION"
|
|
|
|
PKG_CHECK_MODULES(LIBGNOME_CONTROL_CENTER, $COMMON_MODULES gconf-2.0)
|
|
PKG_CHECK_MODULES(LIBLANGUAGE, $COMMON_MODULES gnome-desktop-3.0)
|
|
PKG_CHECK_MODULES(LIBSHORTCUTS, $COMMON_MODULES x11)
|
|
PKG_CHECK_MODULES(SHELL, $COMMON_MODULES libgnome-menu-3.0 gio-unix-2.0)
|
|
PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES libxml-2.0 gnome-desktop-3.0
|
|
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION)
|
|
PKG_CHECK_MODULES(DATETIME_PANEL, $COMMON_MODULES dbus-glib-1
|
|
gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
|
|
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
|
|
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION)
|
|
PKG_CHECK_MODULES(DISPLAY_PANEL, $COMMON_MODULES dbus-glib-1 gnome-desktop-3.0 >= 3.1.0)
|
|
PKG_CHECK_MODULES(INFO_PANEL, $COMMON_MODULES libgtop-2.0
|
|
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
|
|
PKG_CHECK_MODULES(KEYBOARD_PANEL, $COMMON_MODULES gconf-2.0 x11)
|
|
PKG_CHECK_MODULES(MEDIA_PANEL, $COMMON_MODULES)
|
|
PKG_CHECK_MODULES(MOUSE_PANEL, $COMMON_MODULES xi >= 1.2
|
|
gnome-settings-daemon >= $GSD_REQUIRED_VERSION x11)
|
|
PKG_CHECK_MODULES(NETWORK_PANEL, $COMMON_MODULES)
|
|
PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0)
|
|
PKG_CHECK_MODULES(POWER_PANEL, $COMMON_MODULES upower-glib >= 0.9.1
|
|
gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
|
|
PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES colord >= 0.1.8)
|
|
PKG_CHECK_MODULES(PRINTERS_PANEL, $COMMON_MODULES dbus-glib-1
|
|
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
|
|
PKG_CHECK_MODULES(REGION_PANEL, $COMMON_MODULES libgnomekbd >= 2.91.91
|
|
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
|
|
libxklavier >= 5.1 libgnomekbdui >= 2.91.91)
|
|
PKG_CHECK_MODULES(SCREEN_PANEL, $COMMON_MODULES)
|
|
PKG_CHECK_MODULES(SOUND_PANEL, $COMMON_MODULES libxml-2.0
|
|
libcanberra-gtk3 >= $CANBERRA_REQUIRED_VERSION
|
|
libpulse >= $PA_REQUIRED_VERSION
|
|
libpulse-mainloop-glib >= $PA_REQUIRED_VERSION
|
|
gconf-2.0)
|
|
PKG_CHECK_MODULES(UNIVERSAL_ACCESS_PANEL, $COMMON_MODULES gconf-2.0)
|
|
PKG_CHECK_MODULES(USER_ACCOUNTS_PANEL, $COMMON_MODULES dbus-glib-1
|
|
polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
|
|
gnome-desktop-3.0
|
|
gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION)
|
|
PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
|
|
gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
|
|
|
|
GDESKTOP_PREFIX=`$PKG_CONFIG --variable prefix gsettings-desktop-schemas`
|
|
AC_SUBST(GDESKTOP_PREFIX)
|
|
|
|
# Check for NetworkManager ~0.9
|
|
PKG_CHECK_MODULES(NETWORK_MANAGER, NetworkManager >= $NETWORK_MANAGER_REQUIRED_VERSION
|
|
libnm-glib >= $NETWORK_MANAGER_REQUIRED_VERSION
|
|
libnm-util >= $NETWORK_MANAGER_REQUIRED_VERSION
|
|
libnm-gtk >= $NETWORK_MANAGER_REQUIRED_VERSION,
|
|
[have_networkmanager=yes], have_networkmanager=no)
|
|
if test "x$have_networkmanager" = xno ; then
|
|
AC_MSG_WARN(*** Network panel will not be built (NetworkManager ~0.9 or newer not found) ***)
|
|
fi
|
|
AM_CONDITIONAL(BUILD_NETWORK, [test x$have_networkmanager = xyes])
|
|
|
|
# Check for gnome-bluetooth
|
|
PKG_CHECK_MODULES(BLUETOOTH, $COMMON_MODULES gnome-bluetooth-1.0 >= 3.3.0,
|
|
[have_bluetooth=yes], have_bluetooth=no)
|
|
AM_CONDITIONAL(BUILD_BLUETOOTH, [test x$have_bluetooth = xyes])
|
|
|
|
# Check for CUPS 1.4 or newer
|
|
AC_ARG_ENABLE([cups],
|
|
AS_HELP_STRING([--disable-cups], [disable CUPS support (default: enabled)]),,
|
|
[enable_cups=yes])
|
|
|
|
if test x"$enable_cups" != x"no" ; then
|
|
AC_PROG_SED
|
|
|
|
AC_PATH_PROG(CUPS_CONFIG, cups-config,
|
|
AC_MSG_ERROR([cups-config not found but CUPS support requested]))
|
|
|
|
CUPS_API_VERSION=`$CUPS_CONFIG --api-version`
|
|
CUPS_API_MAJOR=`echo $ECHO_N $CUPS_API_VERSION | cut -d . -f 1`
|
|
CUPS_API_MINOR=`echo $ECHO_N $CUPS_API_VERSION | cut -d . -f 2`
|
|
|
|
AC_CHECK_HEADERS([cups/cups.h cups/http.h cups/ipp.h cups/ppd.h],,
|
|
AC_MSG_ERROR([CUPS headers not found but CUPS support requested]))
|
|
|
|
if ! test $CUPS_API_MAJOR -gt 1 -o \
|
|
$CUPS_API_MAJOR -eq 1 -a $CUPS_API_MINOR -ge 4 ; then
|
|
AC_MSG_ERROR([CUPS 1.4 or newer not found, but CUPS support requested])
|
|
fi
|
|
|
|
CUPS_CFLAGS=`$CUPS_CONFIG --cflags | $SED -e 's/-O\w*//g' -e 's/-m\w*//g'`
|
|
CUPS_LIBS=`$CUPS_CONFIG --libs`
|
|
AC_SUBST(CUPS_CFLAGS)
|
|
AC_SUBST(CUPS_LIBS)
|
|
fi
|
|
|
|
AM_CONDITIONAL(BUILD_PRINTERS, [test x"$enable_cups" = x"yes"])
|
|
|
|
# Optional dependency for the user accounts panel
|
|
AC_ARG_WITH([cheese],
|
|
AS_HELP_STRING([--with-cheese], [enable cheese webcam support]),,
|
|
with_cheese=auto)
|
|
|
|
if test x"$with_cheese" != x"no" ; then
|
|
PKG_CHECK_MODULES(CHEESE, gstreamer-0.10 cheese-gtk >= 2.91.91.1, [have_cheese=yes], [have_cheese=no])
|
|
if test x${have_cheese} = xyes; then
|
|
AC_DEFINE(HAVE_CHEESE, 1, [Define to 1 to enable cheese webcam support])
|
|
fi
|
|
if test x${with_cheese} = xyes && test x${have_cheese} = xno; then
|
|
AC_MSG_ERROR([Cheese configured but not found])
|
|
fi
|
|
else
|
|
have_cheese=no
|
|
fi
|
|
AM_CONDITIONAL(BUILD_CHEESE, test x${have_cheese} = xyes)
|
|
|
|
# This is a hard-dependency for the region and user-accounts panels
|
|
PKG_CHECK_MODULES(ISOCODES, iso-codes)
|
|
|
|
AC_DEFINE_UNQUOTED([ISO_CODES_PREFIX],["`$PKG_CONFIG --variable=prefix iso-codes`"],[ISO codes prefix])
|
|
ISO_CODES=iso-codes
|
|
|
|
dnl ==============================================
|
|
dnl End: Check that we meet the dependencies
|
|
dnl ==============================================
|
|
|
|
AC_PATH_PROG(GLIB_GENMARSHAL, glib-genmarshal, no)
|
|
|
|
if test x"$GLIB_GENMARSHAL" = xno; then
|
|
AC_MSG_ERROR([glib-genmarshal executable not found in your path - should be installed with glib])
|
|
fi
|
|
|
|
AC_SUBST(GLIB_GENMARSHAL)
|
|
|
|
dnl =======================================
|
|
dnl Panels
|
|
dnl =======================================
|
|
|
|
PANELS_DIR="${libdir}/control-center-1/panels"
|
|
AC_SUBST(PANELS_DIR)
|
|
|
|
PANEL_CFLAGS="-I\$(top_srcdir)/ -DG_LOG_DOMAIN=\"\\\"\$(cappletname)-cc-panel\\\"\""
|
|
AC_SUBST(PANEL_CFLAGS)
|
|
|
|
PANEL_LIBS=""
|
|
AC_SUBST(PANEL_LIBS)
|
|
|
|
PANEL_LDFLAGS="-export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload)'"
|
|
AC_SUBST(PANEL_LDFLAGS)
|
|
|
|
dnl ==============================================
|
|
dnl libsocialweb
|
|
dnl ==============================================
|
|
|
|
AC_MSG_CHECKING([Enable libsocialweb support])
|
|
AC_ARG_WITH([libsocialweb],
|
|
AS_HELP_STRING([--with-libsocialweb],
|
|
[enable libsocialweb support]),,
|
|
[with_libsocialweb=no])
|
|
AC_MSG_RESULT([$with_libsocialweb])
|
|
|
|
if test "x$with_libsocialweb" == "xyes"; then
|
|
PKG_CHECK_MODULES(SOCIALWEB, libsocialweb-client)
|
|
AC_DEFINE(HAVE_LIBSOCIALWEB, 1, [Defined if libsocialweb is available])
|
|
fi
|
|
AM_CONDITIONAL(WITH_LIBSOCIALWEB, test "x$with_libsocialweb" = "xyes")
|
|
|
|
|
|
dnl =======================================
|
|
dnl Update Mime Database
|
|
dnl =======================================
|
|
|
|
AC_PATH_PROG(UPDATE_MIME_DATABASE, update-mime-database, no)
|
|
|
|
AC_ARG_ENABLE(update-mimedb,
|
|
AS_HELP_STRING([--disable-update-mimedb],
|
|
[do not update mime database after installation]),,
|
|
enable_update_mimedb=yes)
|
|
AM_CONDITIONAL(ENABLE_UPDATE_MIMEDB, test x$enable_update_mimedb = xyes)
|
|
|
|
CONTROL_CENTER_VERSION=gnome_control_center_version
|
|
AC_SUBST(CONTROL_CENTER_VERSION)
|
|
|
|
dnl =======================================
|
|
dnl Finish
|
|
dnl =======================================
|
|
|
|
# Turn on the additional warnings last
|
|
|
|
AC_ARG_ENABLE(more-warnings,
|
|
AS_HELP_STRING([--enable-more-warnings],
|
|
[Maximum compiler warnings]),
|
|
set_more_warnings="$enableval",[
|
|
if test -d $srcdir/.git; then
|
|
set_more_warnings=yes
|
|
else
|
|
set_more_warnings=no
|
|
fi])
|
|
|
|
AC_MSG_CHECKING(for more warnings)
|
|
if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
|
|
AC_MSG_RESULT(yes)
|
|
CFLAGS="\
|
|
-Wall -Wclobbered -Wempty-body -Wignored-qualifiers \
|
|
-Wmissing-field-initializers -Wmissing-parameter-type \
|
|
-Wold-style-declaration -Woverride-init -Wtype-limits \
|
|
-Wuninitialized \
|
|
-Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \
|
|
-Wnested-externs -Wpointer-arith \
|
|
-Wcast-align -Wsign-compare -Wp,-D_FORTIFY_SOURCE=2 \
|
|
$CFLAGS"
|
|
|
|
for option in -Wno-strict-aliasing -Wno-sign-compare; do
|
|
SAVE_CFLAGS="$CFLAGS"
|
|
CFLAGS="$CFLAGS $option"
|
|
AC_MSG_CHECKING([whether gcc understands $option])
|
|
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])],
|
|
[has_option=yes],
|
|
[has_option=no])
|
|
if test $has_option = no; then
|
|
CFLAGS="$SAVE_CFLAGS"
|
|
fi
|
|
AC_MSG_RESULT($has_option)
|
|
unset has_option
|
|
unset SAVE_CFLAGS
|
|
done
|
|
unset option
|
|
else
|
|
AC_MSG_RESULT(no)
|
|
fi
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
Makefile
|
|
help/Makefile
|
|
panels/Makefile
|
|
panels/common/Makefile
|
|
panels/background/Makefile
|
|
panels/background/gnome-background-panel.desktop.in
|
|
panels/bluetooth/Makefile
|
|
panels/bluetooth/bluetooth-properties.desktop.in
|
|
panels/datetime/Makefile
|
|
panels/datetime/gnome-datetime-panel.desktop.in
|
|
panels/datetime/po-timezones/Makefile
|
|
panels/display/Makefile
|
|
panels/display/gnome-display-panel.desktop.in
|
|
panels/keyboard/Makefile
|
|
panels/keyboard/gnome-keyboard-panel.desktop.in
|
|
panels/keyboard/gnome-keybindings.pc
|
|
panels/region/Makefile
|
|
panels/region/gnome-region-panel.desktop.in
|
|
panels/mouse/Makefile
|
|
panels/mouse/gnome-mouse-panel.desktop.in
|
|
panels/online-accounts/Makefile
|
|
panels/online-accounts/gnome-online-accounts-panel.desktop.in
|
|
panels/online-accounts/icons/Makefile
|
|
panels/online-accounts/icons/16x16/Makefile
|
|
panels/online-accounts/icons/22x22/Makefile
|
|
panels/online-accounts/icons/24x24/Makefile
|
|
panels/online-accounts/icons/32x32/Makefile
|
|
panels/online-accounts/icons/48x48/Makefile
|
|
panels/online-accounts/icons/256x256/Makefile
|
|
panels/sound/Makefile
|
|
panels/sound/data/Makefile
|
|
panels/sound/data/gnome-sound-panel.desktop.in
|
|
panels/sound/data/symbolic-icons/Makefile
|
|
panels/sound/data/symbolic-icons/scalable/Makefile
|
|
panels/sound/data/symbolic-icons/scalable/status/Makefile
|
|
panels/sound/data/icons/Makefile
|
|
panels/sound/data/icons/16x16/Makefile
|
|
panels/sound/data/icons/16x16/apps/Makefile
|
|
panels/sound/data/icons/16x16/devices/Makefile
|
|
panels/sound/data/icons/16x16/status/Makefile
|
|
panels/sound/data/icons/22x22/Makefile
|
|
panels/sound/data/icons/22x22/apps/Makefile
|
|
panels/sound/data/icons/22x22/status/Makefile
|
|
panels/sound/data/icons/24x24/Makefile
|
|
panels/sound/data/icons/24x24/apps/Makefile
|
|
panels/sound/data/icons/24x24/devices/Makefile
|
|
panels/sound/data/icons/24x24/status/Makefile
|
|
panels/sound/data/icons/32x32/Makefile
|
|
panels/sound/data/icons/32x32/apps/Makefile
|
|
panels/sound/data/icons/32x32/devices/Makefile
|
|
panels/sound/data/icons/32x32/status/Makefile
|
|
panels/sound/data/icons/48x48/Makefile
|
|
panels/sound/data/icons/48x48/apps/Makefile
|
|
panels/sound/data/icons/48x48/devices/Makefile
|
|
panels/sound/data/icons/scalable/Makefile
|
|
panels/sound/data/icons/scalable/apps/Makefile
|
|
panels/sound/data/icons/scalable/devices/Makefile
|
|
panels/sound/data/sounds/Makefile
|
|
panels/screen/Makefile
|
|
panels/screen/gnome-screen-panel.desktop.in
|
|
panels/info/Makefile
|
|
panels/info/gnome-info-panel.desktop.in
|
|
panels/power/Makefile
|
|
panels/power/gnome-power-panel.desktop.in
|
|
panels/power/icons/Makefile
|
|
panels/power/icons/16x16/Makefile
|
|
panels/power/icons/22x22/Makefile
|
|
panels/power/icons/24x24/Makefile
|
|
panels/power/icons/32x32/Makefile
|
|
panels/power/icons/48x48/Makefile
|
|
panels/power/icons/256x256/Makefile
|
|
panels/color/Makefile
|
|
panels/color/gnome-color-panel.desktop.in
|
|
panels/color/icons/Makefile
|
|
panels/color/icons/16x16/Makefile
|
|
panels/color/icons/22x22/Makefile
|
|
panels/color/icons/24x24/Makefile
|
|
panels/color/icons/32x32/Makefile
|
|
panels/color/icons/48x48/Makefile
|
|
panels/color/icons/64x64/Makefile
|
|
panels/color/icons/256x256/Makefile
|
|
panels/color/icons/scalable/Makefile
|
|
panels/printers/Makefile
|
|
panels/printers/gnome-printers-panel.desktop.in
|
|
panels/network/Makefile
|
|
panels/network/gnome-network-panel.desktop.in
|
|
panels/universal-access/Makefile
|
|
panels/universal-access/gnome-universal-access-panel.desktop.in
|
|
panels/user-accounts/Makefile
|
|
panels/user-accounts/data/Makefile
|
|
panels/user-accounts/data/gnome-user-accounts-panel.desktop.in
|
|
panels/user-accounts/data/faces/Makefile
|
|
panels/user-accounts/data/icons/Makefile
|
|
panels/wacom/Makefile
|
|
panels/wacom/gnome-wacom-panel.desktop.in
|
|
po/Makefile.in
|
|
shell/Makefile
|
|
shell/gnome-control-center.desktop.in
|
|
])
|
|
|
|
dnl due to a bug in intltool we need to expand something from the root last control-center.spec
|
|
AC_OUTPUT
|