From 5e22bc74d58bc978ca18e12db2b6a8d0291e9e9b Mon Sep 17 00:00:00 2001
From: Alexandre Rostovtsev <tetromino@gentoo.org>
Date: Thu, 26 Jun 2014 02:45:27 +0000
Subject: Really don't use gnome-online-accounts when
 USE=-gnome-online-accounts (bug #509514, thanks to poncho and Émeric
 Maschino).
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Package-Manager: portage-2.2.10/cvs/Linux x86_64
Manifest-Sign-Key: 0xCF0ADD61
---
 gnome-base/gnome-control-center/ChangeLog          |  10 +-
 gnome-base/gnome-control-center/Manifest           |  16 +-
 .../gnome-control-center-3.12.1-optional-r1.patch  | 535 +++++++++++++++++++++
 .../gnome-control-center-3.12.1-r1.ebuild          | 163 +++++++
 4 files changed, 718 insertions(+), 6 deletions(-)
 create mode 100644 gnome-base/gnome-control-center/files/gnome-control-center-3.12.1-optional-r1.patch
 create mode 100644 gnome-base/gnome-control-center/gnome-control-center-3.12.1-r1.ebuild

diff --git a/gnome-base/gnome-control-center/ChangeLog b/gnome-base/gnome-control-center/ChangeLog
index 0cc57069b93f..8e94d3196b90 100644
--- a/gnome-base/gnome-control-center/ChangeLog
+++ b/gnome-base/gnome-control-center/ChangeLog
@@ -1,6 +1,14 @@
 # ChangeLog for gnome-base/gnome-control-center
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-control-center/ChangeLog,v 1.154 2014/06/01 07:59:51 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-control-center/ChangeLog,v 1.155 2014/06/26 02:45:21 tetromino Exp $
+
+*gnome-control-center-3.12.1-r1 (26 Jun 2014)
+
+  26 Jun 2014; Alexandre Rostovtsev <tetromino@gentoo.org>
+  +gnome-control-center-3.12.1-r1.ebuild,
+  +files/gnome-control-center-3.12.1-optional-r1.patch:
+  Really don't use gnome-online-accounts when USE=-gnome-online-accounts (bug
+  #509514, thanks to poncho and Émeric Maschino).
 
   01 Jun 2014; Pacho Ramos <pacho@gentoo.org>
   gnome-control-center-3.10.3.ebuild:
diff --git a/gnome-base/gnome-control-center/Manifest b/gnome-base/gnome-control-center/Manifest
index e5140229a730..0f3e455e0d8d 100644
--- a/gnome-base/gnome-control-center/Manifest
+++ b/gnome-base/gnome-control-center/Manifest
@@ -9,19 +9,25 @@ AUX gnome-control-center-2.32.1-mime-handler2.patch 2229 SHA256 3a49a66bb08cbcd2
 AUX gnome-control-center-2.32.1-mime-handler3.patch 11957 SHA256 8637fdb6039d43d085cf7cf2915b46e744522b7a3976d1b64035a6be22491538 SHA512 c4a59d44853ce81c067626d1a51f3566a3cf754e98584d1a836072d8ea6b8a89fb6542f92b2237a4675c1f5cc296c76d28e39fb3e441cb8d6cc7f42877304307 WHIRLPOOL 20e47d5aa6670bee3a3e1dee8cd176e9c3909de2d60614b8d058a3c09b929e32761abd345592dc92f6cab32e2fb677ed4d87dfc63fc9b231a902b5dc4b3ed822
 AUX gnome-control-center-3.10.2-gentoo-paths.patch 4304 SHA256 63a8fd44d0585c141e3207b697266850215ee3e0254621c4aa15ae17469dd385 SHA512 5340686d2e0de699d495d30e6969f5c4fcc5ce735e43d659da326c9445821c6de142b8ab98c858cf7c33c6c2acbbc91aab8d145d32bc2a4a17caef99a09f8623 WHIRLPOOL ff8aac218544b8ea0caa2cd7210129ca5277275a8c7db3846e4ca8e8c5eed6d8ca1e0a9de415d52ab51bf624247bd248442cc18a79fb8ba0f0ec032cef81663d
 AUX gnome-control-center-3.10.2-optional.patch 13785 SHA256 d8a3a8a060b7f8715b4510c5b2b83c6825312ea5eea6c1728439118dc532113f SHA512 a6dde875ef42b6176ebadcf85e3c2b0b52f1bdffdd51544756c06fdf072a3182f4f2ae440bf1426c3516cab464d339413783176d15e59d6c9e3784e5e8bff8d2 WHIRLPOOL dfcdda7e20902a121178af0f099c2f6be231ce1a9a3ea37bf17f0a16d2c01291608bbb05b9dec353c4cfc231639608e3d88ce57c83cacbb654752098623dd5b4
+AUX gnome-control-center-3.12.1-optional-r1.patch 19513 SHA256 f28ff1f142031f3a02abb91d4cfae5037f02caec4d11899ac50de35d1631a2c5 SHA512 949c808a34c6df8e66efba945af9561391fab52c32d2b3928361cdffd50f030c8c61f811f7fb1e601127bb38bb788f6a751cf78cd6f3757b255fd89722c3d15b WHIRLPOOL 72b91611ada4ebabf118d9af73511da186f470054533867ea78cc3cade2a4d40240b668ccd94ebecb5ce8098f0d48de13cdcb6dde3842be2eba57ae8a5b742fe
 AUX gnome-control-center-3.12.1-optional.patch 14081 SHA256 23abccc022b2e2fe5d99dd82b6e076651469859a15bc44b91bb7f28ad895f1ad SHA512 0969b16675056ba1d10bf77352d6dc5012239277fe02da640771b8400bf8afafbc456f3cce7b4eb52d230d460a3869151c917f88703b2c3cf58a6addfdca527a WHIRLPOOL c92c638e53a18e43a100bb383bc3df3e6b7e59d3d95cd89867d8b4e052571845d0a15bbc2ecea889246703fcb130a15887cbb7904f45ea73708636e108fdd654
 DIST gnome-control-center-2.32.1.tar.bz2 2280217 SHA256 7c568b57358e5c08f4d8dd76dbac7df2539135ad081872b60514b7a8ac797e66 SHA512 dc84bd222d1a2db0c4d10c56739e1d9da18945c579ae184f69080aa4b6fa0f0b908c5beafe82a82b6277630d685bed98fe8418421db4275653afbe302d810872 WHIRLPOOL 9b0fe4ed2bb741496642a57e178ca43049d53c71d9a82d311dc5a3ab6dfaf28019a8fa1b41a218b2ede11b4d0ac735034604dd9d952cb215e12327e71d0e69f4
 DIST gnome-control-center-3.10.3.tar.xz 6821248 SHA256 059172d5e7f8b6c385bcc1b73f966375b92a8456dd5eba8d7f8b75907c3324a6 SHA512 0289b5cbe56aeb10f1f28ef9fd66fbe3f3b3f977a1b1a5e8cd5d9089a8d8cae088b0d1abc44ae5a6a461d0a511cbd28446da8371738dbe4147889f40ee37822e WHIRLPOOL 9c5e496d3064c3a66bbb9bb8ede9153199b0e67beec872a3d334b10ac095215354aada524efbe4ccf7d1e3e935ab23f1ec2308a2aa5e9686225a9c5b456ea01e
 DIST gnome-control-center-3.12.1.tar.xz 6866544 SHA256 5297d448eff0ec58f6c0ad9fbd1b94bed0a850496df0ee65571c0622b49c1582 SHA512 35b765fc11182b0f7eec6bc31934f51ccbf01dde9f2e7deed6c84ca9811bd0a00783d75bd3fab7004fe41cc29740b6d6e0a7f3c6391a482eefcab0129d0278fe WHIRLPOOL 294a2f81a1b225814fd895dc7b579f0dec9c360983d3d683b4ff5bd47dd9ac91a84088485f872a7ef95e05f021469da9eaf5d987bd537a062f9a1525c03c4b47
 EBUILD gnome-control-center-2.32.1-r1.ebuild 2823 SHA256 2dfa1f6402c7ab7f4539183e15448a234cb6f80e38310c50f222536291d4d4c1 SHA512 562dcadbf348f7e0a25796fa03b5a32786549537fa2213c6ac279b942269a0e8c62a7a977da54c6939d82e87460ee77422032b337dd1959e26403312d82cf081 WHIRLPOOL 099ea3c37bba16bbc94308961365123ccdc80e8b0ec291e3d50a2607ea59fb6b2ce2deba45d1e66be0c3cb99f86b9c0ad55d087c20f90ae7fd93fe8983c8a722
 EBUILD gnome-control-center-3.10.3.ebuild 5097 SHA256 e092609a606d033d42f4dcf66c586a598aa89a7fb4bfe70efc5c5bbb884aaad8 SHA512 cc4d13b69f4d450b8bbd1fddfb80168594c31589233690da3c37896a1a54014ac0aa61b33043e3616fa4f8641eadb1682665d520531b0c47146fa403ad5c47d0 WHIRLPOOL 69e5eeb63573c6c7d49d535f1afd0d3ff9a291dc77bb31e36de65ff0d3afe80dfaf5f5bb8351eb634284bfdc8919b3c5dd0887c2095a1654f541ee79a76424bc
+EBUILD gnome-control-center-3.12.1-r1.ebuild 5025 SHA256 993f39aa4ab921eea5d0541142b37731d44230fdd9b82983239231304e7ba0a6 SHA512 996ded1006280347d97ce5c8e77953a2f9eb9f48e68e70685735b071342dea11d86a33406d15448c0618f9331028659dcdc9cc82a458c6a543fdddd74b419c56 WHIRLPOOL 3eb4e86c2b2e31b040abe5e4008310e95bb400645bc0689f705e8bb5c7ab9b56cd74fd2eecb0851bf5d6ed30716b3fa2285edec2b2d1db1aa03cad1a675035da
 EBUILD gnome-control-center-3.12.1.ebuild 5012 SHA256 fb95aee6294bdf7ce1f73ce60487233f78995236bf62a49f501c7565003556a2 SHA512 6a5c44215bf48b84fdb3599768380877b0606b6ec73605858274b4e773c23aa198530867512843ad20c189c1bbb5a60a27968432d1cee8d4e7a08cf56633aa99 WHIRLPOOL b08136e3746f17616ed17177f3a9e10aeef50c6a301af9075f83014576baa952a88adada0cee47a02601834a7431aac1c0f4946c1a9676381d515e6ad98e4683
-MISC ChangeLog 69334 SHA256 f40ee9c20996ae3b1177f0a5394a892376a41fa6727289b679d16994458a3a62 SHA512 f0dcdabea3b3dbe9eaa1e1d895be0966d85cd9d5c0fc908580fc694de5f1ac7c8ec6e487ec99bc79849334592d6879f2708ce59322720314d90324d7e20b0297 WHIRLPOOL 20509d2bfbfad24f6303fa7bd14197f887d3b910e20ebb9cd435aeb44aeb6255b7c856bb1f26e4a2cbca8d0c7a56d5749e7d50f6de61b73b3c5cf712dd1f531e
+MISC ChangeLog 69672 SHA256 e2311fd993e16db444a2fb3975c482c81ce7b7aada09e769dcf0e9b7d99e88fa SHA512 077def1112247871f6b3d77b0417de160380abbfefe8a1a9f555e2b61a336c4dd64b279c73eb0f6eaeed8e347ca8bd55b027655a9c27c5e2f41510caefb910bb WHIRLPOOL 272ad9e1d2ba202d41b7962f318696569e562e453ae83139458c9c62f30189a5ac42963757a44fc7c242f9cc4d63a9237b386495fd87e706ba03a292f3369e4c
 MISC metadata.xml 626 SHA256 c9a75efab859ae7807307d84c8c849b4b1c3874bfbb598934146295b5a3f4328 SHA512 be29f660669a454fa1d237dff0045fb574ca9919351e685bb15866a700995ee2de2c7379a60441d08830dfd1d5d5c43a74e731e2a2e92a13109959a42353a87f WHIRLPOOL 1b967098d536cffb46d6b1ae877fa131c7672eb17dd0f49d62dc97a8b6157efb6371664b63a71269aa951e3f59b68e6bce86d037204f4f43242b649081828fcb
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0.22 (GNU/Linux)
+Version: GnuPG v2
 
-iEYEAREIAAYFAlOK3XgACgkQCaWpQKGI+9RVhQCggzkHQTYmqrDQeBtTEG2DRc6w
-5sUAnRF4gwwvoWuOCM2vJvMfYY/Q8EY3
-=EQbI
+iQEcBAEBCAAGBQJTq4j9AAoJEJ0WA1zPCt1hGToH+gI4Yv0CEE/YU/N4XJSqANB2
+/dGEq/6BdGqD8wLlKz6O40Kl+ZNU1IACmZZlUse9zNBAMGcqhnAkURmXiKC+F4R0
+7TsfSvmMig5JHJg3rMD/sqP2MHz63TrYvI6Q9mCejqr8YmZj2+3+qKdZkAhDLMn+
+32VsaGXgqnoSgGqkkLdtF1Ne47QFCLnhVz+ocMuSVM4ji+9QUrHwckv6OSLpTO9o
+ITLpAGLsI75YBR82vgfQJsnKSJbrGbAIEUtgUxNNgSy/NlUWxM6RLHshkJgYHG41
+Hw5uuC21VpRA31B9Bd5lK/+xvzJFSch4XUC3N2nrqC2owmwmdlk2iW3AKgWyr2w=
+=pEUV
 -----END PGP SIGNATURE-----
diff --git a/gnome-base/gnome-control-center/files/gnome-control-center-3.12.1-optional-r1.patch b/gnome-base/gnome-control-center/files/gnome-control-center-3.12.1-optional-r1.patch
new file mode 100644
index 000000000000..d8850fd2cd30
--- /dev/null
+++ b/gnome-base/gnome-control-center/files/gnome-control-center-3.12.1-optional-r1.patch
@@ -0,0 +1,535 @@
+From f3758b9d5e1776f9752973d456aabad692a3addb Mon Sep 17 00:00:00 2001
+From: Alexandre Rostovtsev <tetromino@gentoo.org>
+Date: Fri, 25 Apr 2014 22:17:24 +0200
+Subject: [PATCH] Make bluetooth/colord/goa/kerberos/wacom optional
+
+Upstream is not interested in any part of this patch:
+
+https://bugzilla.gnome.org/show_bug.cgi?id=686840
+https://bugzilla.gnome.org/show_bug.cgi?id=697478
+https://bugzilla.gnome.org/show_bug.cgi?id=700145
+
+Dropped mm from this revision of the patch since it appears more
+complicated than ever to split it from the network panel.
+
+Signed-Off: Gilles Dartiguelongue <eva@gentoo.org>
+---
+ configure.ac                            | 156 ++++++++++++++++++++++++++------
+ panels/Makefile.am                      |  10 +-
+ panels/background/Makefile.am           |   8 +-
+ panels/background/bg-pictures-source.c  |  18 ++++
+ panels/user-accounts/um-realm-manager.c |   9 ++
+ shell/Makefile.am                       |  10 +-
+ shell/cc-panel-loader.c                 |   8 ++
+ 7 files changed, 183 insertions(+), 36 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 511f78d..278e0de 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -119,10 +119,6 @@ LIBGD_INIT([_view-common notification main-toolbar stack static])
+ PKG_CHECK_MODULES(LIBLANGUAGE, $COMMON_MODULES gnome-desktop-3.0 fontconfig)
+ PKG_CHECK_MODULES(LIBSHORTCUTS, $COMMON_MODULES x11)
+ PKG_CHECK_MODULES(SHELL, $COMMON_MODULES x11 polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
+-PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES libxml-2.0 gnome-desktop-3.0
+-                  gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION
+-                  goa-1.0 >= $GOA_REQUIRED_VERSION
+-                  grilo-0.2 >= $GRILO_REQUIRED_VERSION)
+ PKG_CHECK_MODULES(DATETIME_PANEL, $COMMON_MODULES
+                   gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
+                   polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION
+@@ -139,14 +135,64 @@ PKG_CHECK_MODULES(MOUSE_PANEL, $COMMON_MODULES xi >= 1.2
+                   gnome-settings-daemon >= $GSD_REQUIRED_VERSION x11)
+ PKG_CHECK_MODULES(NETWORK_PANEL, $COMMON_MODULES gmodule-2.0)
+ PKG_CHECK_MODULES(NOTIFICATIONS_PANEL, $COMMON_MODULES libgnome-menu-3.0)
+-PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0 >= $GOA_REQUIRED_VERSION)
++
++build_online_accounts=false
++background_online_accounts=
++AC_ARG_ENABLE(goa,
++       AC_HELP_STRING([--disable-goa],
++               [disable online accounts management panel]),
++       [case "${enableval}" in
++               yes) WANT_ONLINE_ACCOUNTS=yes ;;
++               no) WANT_ONLINE_ACCOUNTS=no ;;
++               *) AC_MSG_ERROR(bad value ${enableval} for --disable-goa) ;;
++       esac],
++       [WANT_ONLINE_ACCOUNTS=yes]) dnl Default value
++
++if test x$WANT_ONLINE_ACCOUNTS = xyes; then
++       PKG_CHECK_MODULES(ONLINE_ACCOUNTS_PANEL, $COMMON_MODULES goa-1.0 goa-backend-1.0 >= $GOA_REQUIRED_VERSION)
++       build_online_accounts=true
++       background_online_accounts="goa-1.0 >= $GOA_REQUIRED_VERSION grilo-0.2 >= $GRILO_REQUIRED_VERSION"
++fi
++if test "x$build_online_accounts" = xtrue ; then
++       AC_DEFINE(BUILD_ONLINE_ACCOUNTS, 1, [Define to 1 to build the Online Accounts panel])
++fi
++AM_CONDITIONAL(BUILD_ONLINE_ACCOUNTS, test "x$build_online_accounts" = "xtrue")
++AC_SUBST(ONLINE_ACCOUNTS_PANEL_CFLAGS)
++AC_SUBST(ONLINE_ACCOUNTS_PANEL_LIBS)
++
++PKG_CHECK_MODULES(BACKGROUND_PANEL, $COMMON_MODULES libxml-2.0 gnome-desktop-3.0
++                  gdk-pixbuf-2.0 >= $GDKPIXBUF_REQUIRED_VERSION
++                  $background_online_accounts)
++
+ PKG_CHECK_MODULES(POWER_PANEL, $COMMON_MODULES upower-glib >= 0.99.0
+                   gnome-settings-daemon >= $GSD_REQUIRED_VERSION)
+-PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES
+-                  colord >= $COLORD_REQUIRED_VERSION
+-                  colord-gtk >= $COLORD_GTK_REQUIRED_VERSION
+-                  libsoup-2.4
+-                  gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
++
++build_color=false
++AC_ARG_ENABLE(color,
++       AC_HELP_STRING([--disable-color],
++               [disable color management panel]),
++       [case "${enableval}" in
++               yes) WANT_COLOR=yes ;;
++               no) WANT_COLOR=no ;;
++               *) AC_MSG_ERROR(bad value ${enableval} for --disable-color) ;;
++       esac],
++       [WANT_COLOR=yes]) dnl Default value
++
++if test x$WANT_COLOR = xyes; then
++       PKG_CHECK_MODULES(COLOR_PANEL, $COMMON_MODULES
++               colord >= $COLORD_REQUIRED_VERSION
++               colord-gtk >= $COLORD_GTK_REQUIRED_VERSION
++               libsoup-2.4
++               gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION)
++       build_color=true
++fi
++if test "x$build_color" = xtrue ; then
++       AC_DEFINE(BUILD_COLOR, 1, [Define to 1 to build the Color panel])
++fi
++AM_CONDITIONAL(BUILD_COLOR, test "x$build_color" = "xtrue")
++AC_SUBST(COLOR_PANEL_CFLAGS)
++AC_SUBST(COLOR_PANEL_LIBS)
++
+ PKG_CHECK_MODULES(PRINTERS_PANEL, $COMMON_MODULES
+                   polkit-gobject-1 >= $POLKIT_REQUIRED_VERSION)
+ PKG_CHECK_MODULES(PRIVACY_PANEL, $COMMON_MODULES)
+@@ -206,8 +252,25 @@ fi
+ AM_CONDITIONAL(HAVE_NM_UNSTABLE, [test x$nm_unstable = xyes])
+ 
+ # Check for gnome-bluetooth
+-PKG_CHECK_MODULES(BLUETOOTH, $COMMON_MODULES gnome-bluetooth-1.0 >= 3.11.1,
+-		  [have_bluetooth=yes], have_bluetooth=no)
++have_bluetooth=no
++AC_ARG_ENABLE(bluetooth,
++       AC_HELP_STRING([--disable-bluetooth],
++               [disable bluetooth management panel]),
++       [case "${enableval}" in
++               yes) WANT_BLUETOOTH=yes ;;
++               no) WANT_BLUETOOTH=no ;;
++               *) AC_MSG_ERROR(bad value ${enableval} for --disable-bluetooth) ;;
++       esac],
++       [WANT_BLUETOOTH=yes]) dnl Default value
++
++if test x$WANT_BLUETOOTH = xyes; then
++       # Check for gnome-bluetooth
++       PKG_CHECK_MODULES(BLUETOOTH, $COMMON_MODULES gnome-bluetooth-1.0 >= 3.11.1,
++               [have_bluetooth=yes], have_bluetooth=no)
++       have_bluetooth=yes
++fi
++
++
+ if test "x$have_bluetooth" = xyes ; then
+ 	AC_DEFINE(BUILD_BLUETOOTH, 1, [Define to 1 to build the Bluetooth panel])
+ fi
+@@ -292,15 +355,27 @@ case $host_os in
+     if test "$host_cpu" = s390 -o "$host_cpu" = s390x; then
+       have_wacom=no
+     else
+-      PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
+-                        gnome-settings-daemon >= $GSD_REQUIRED_VERSION
+-                        xi >= 1.2 x11 libwacom >= $LIBWACOM_REQUIRED_VERSION
+-                        gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
+-                        clutter-gtk-1.0
+-                        clutter-1.0 >= $CLUTTER_REQUIRED_VERSION)
+-      have_wacom=yes
+-      AC_DEFINE(BUILD_WACOM, 1, [Define to 1 to build the Wacom panel])
+-      AC_DEFINE(HAVE_WACOM, 1, [Define to 1 is Wacom is supportted])
++      AC_ARG_ENABLE(wacom,
++                    AC_HELP_STRING([--disable-wacom],
++                                   [disable wacom management panel]),
++                    [case "${enableval}" in
++                            yes) WANT_WACOM=yes ;;
++                            no) WANT_WACOM=no ;;
++                            *) AC_MSG_ERROR(bad value ${enableval} for --disable-wacom) ;;
++		    esac],
++		    [WANT_WACOM=yes]) dnl Default value
++
++      if test x$WANT_WACOM = xyes; then
++        PKG_CHECK_MODULES(WACOM_PANEL, $COMMON_MODULES
++                          gnome-settings-daemon >= $GSD_REQUIRED_VERSION
++                          xi >= 1.2 x11 libwacom >= $LIBWACOM_REQUIRED_VERSION
++                          gnome-desktop-3.0 >= $GNOME_DESKTOP_REQUIRED_VERSION
++                          clutter-gtk-1.0
++                          clutter-1.0 >= $CLUTTER_REQUIRED_VERSION)
++        have_wacom=yes
++        AC_DEFINE(BUILD_WACOM, 1, [Define to 1 to build the Wacom panel])
++        AC_DEFINE(HAVE_WACOM, 1, [Define to 1 is Wacom is supportted])
++      fi
+     fi
+     ;;
+   *)
+@@ -310,16 +385,22 @@ esac
+ AM_CONDITIONAL(BUILD_WACOM, [test x${have_wacom} = xyes])
+ 
+ # Kerberos kerberos support
+-AC_PATH_PROG(KRB5_CONFIG, krb5-config, no)
+-if test "$KRB5_CONFIG" = "no"; then
+-  AC_MSG_ERROR([krb5-config executable not found in your path - should be installed with the kerberos libraries])
+-fi
+-
+-AC_MSG_CHECKING(for krb5 libraries and flags)
+-KRB5_CFLAGS="`$KRB5_CONFIG --cflags`"
+-KRB5_LIBS="`$KRB5_CONFIG --libs`"
+-AC_MSG_RESULT($KRB5_CFLAGS $KRB5_LIBS)
++AC_ARG_ENABLE([kerberos],
++              AS_HELP_STRING([--disable-kerberos], [disable kerberos support (default: enabled)]),,
++              [enable_kerberos=yes])
++
++if test x"$enable_kerberos" != x"no" ; then
++    AC_PATH_PROG(KRB5_CONFIG, krb5-config, no)
++    if test "$KRB5_CONFIG" = "no"; then
++      AC_MSG_ERROR([krb5-config executable not found in your path - should be installed with the kerberos libraries])
++    fi
+ 
++    AC_MSG_CHECKING(for krb5 libraries and flags)
++    KRB5_CFLAGS="`$KRB5_CONFIG --cflags`"
++    KRB5_LIBS="`$KRB5_CONFIG --libs`"
++    AC_MSG_RESULT($KRB5_CFLAGS $KRB5_LIBS)
++    AC_DEFINE(HAVE_KERBEROS, 1, [defined if krb5 is available])
++fi
+ AC_SUBST(KRB5_CFLAGS)
+ AC_SUBST(KRB5_LIBS)
+ 
+@@ -538,6 +619,11 @@ if test "x$have_bluetooth" = "xyes"; then
+ else
+ 	AC_MSG_NOTICE([   Bluetooth panel disabled])
+ fi
++if test "x$build_color" = "xtrue"; then
++	AC_MSG_NOTICE([** colord (Color panel)])
++else
++	AC_MSG_NOTICE([   Color panel disabled])
++fi
+ if test "x$enable_cups" = "xyes"; then
+ 	AC_MSG_NOTICE([** CUPS (Printers panel)])
+ else
+@@ -548,6 +634,16 @@ if test "x$have_cheese" = "xyes"; then
+ else
+ 	AC_MSG_NOTICE([   Users panel webcam support disabled])
+ fi
++if test "x$build_online_accounts" = "xtrue"; then
++       AC_MSG_NOTICE([** gnome-online-accounts (Online Accounts panel)])
++else
++       AC_MSG_NOTICE([   Online Accounts panel disabled])
++fi
++if test "x$build_wacom" = "xtrue"; then
++       AC_MSG_NOTICE([** libwacom (Wacom Graphics Tablet panel)])
++else
++       AC_MSG_NOTICE([   Wacom Graphics Tablet panel disabled])
++fi
+ if test "x$have_wacom" = "xyes"; then
+ 	AC_MSG_NOTICE([** wacom (Wacom tablet panel)])
+ else
+diff --git a/panels/Makefile.am b/panels/Makefile.am
+index 9961c25..0c54622 100644
+--- a/panels/Makefile.am
++++ b/panels/Makefile.am
+@@ -2,11 +2,9 @@ SUBDIRS= \
+ 	common \
+ 	background \
+ 	power \
+-	color \
+ 	display \
+ 	mouse \
+ 	notifications \
+-	online-accounts \
+ 	region \
+ 	info \
+ 	sound \
+@@ -18,6 +16,10 @@ SUBDIRS= \
+ 	privacy \
+ 	sharing
+ 
++if BUILD_COLOR
++SUBDIRS += color
++endif
++
+ if BUILD_WACOM
+ SUBDIRS += wacom
+ endif
+@@ -34,4 +36,8 @@ if BUILD_BLUETOOTH
+ SUBDIRS += bluetooth
+ endif
+ 
++if BUILD_ONLINE_ACCOUNTS
++SUBDIRS += online-accounts
++endif
++
+ -include $(top_srcdir)/git.mk
+diff --git a/panels/background/Makefile.am b/panels/background/Makefile.am
+index c3de612..5a2af7f 100644
+--- a/panels/background/Makefile.am
++++ b/panels/background/Makefile.am
+@@ -27,8 +27,6 @@ libbackground_chooser_la_SOURCES =	\
+ 	$(BUILT_SOURCES)		\
+ 	cc-background-chooser-dialog.c	\
+ 	cc-background-chooser-dialog.h	\
+-	cc-background-grilo-miner.c	\
+-	cc-background-grilo-miner.h	\
+ 	cc-background-item.c		\
+ 	cc-background-item.h		\
+ 	cc-background-xml.c		\
+@@ -42,6 +40,12 @@ libbackground_chooser_la_SOURCES =	\
+ 	bg-colors-source.c		\
+ 	bg-colors-source.h
+ 
++if BUILD_ONLINE_ACCOUNTS
++libbackground_chooser_la_SOURCES +=	\
++	cc-background-grilo-miner.c	\
++	cc-background-grilo-miner.h
++endif
++
+ libbackground_chooser_la_LIBADD = $(PANEL_LIBS) $(BACKGROUND_PANEL_LIBS)
+ 
+ libbackground_la_SOURCES =		\
+diff --git a/panels/background/bg-pictures-source.c b/panels/background/bg-pictures-source.c
+index 0c5c6c0..ec6b54b 100644
+--- a/panels/background/bg-pictures-source.c
++++ b/panels/background/bg-pictures-source.c
+@@ -23,12 +23,16 @@
+ 
+ #include "bg-pictures-source.h"
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+ #include "cc-background-grilo-miner.h"
++#endif
+ #include "cc-background-item.h"
+ 
+ #include <string.h>
+ #include <gio/gio.h>
++#ifdef BUILD_ONLINE_ACCOUNTS
+ #include <grilo.h>
++#endif
+ #include <libgnome-desktop/gnome-desktop-thumbnail.h>
+ #include <gdesktop-enums.h>
+ 
+@@ -45,7 +49,9 @@ struct _BgPicturesSourcePrivate
+ {
+   GCancellable *cancellable;
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+   CcBackgroundGriloMiner *grl_miner;
++#endif
+ 
+   GnomeDesktopThumbnailFactory *thumb_factory;
+ 
+@@ -83,7 +89,9 @@ bg_pictures_source_dispose (GObject *object)
+       g_clear_object (&priv->cancellable);
+     }
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+   g_clear_object (&priv->grl_miner);
++#endif
+   g_clear_object (&priv->thumb_factory);
+ 
+   G_OBJECT_CLASS (bg_pictures_source_parent_class)->dispose (object);
+@@ -419,10 +427,13 @@ add_single_file (BgPicturesSource *bg_source,
+     {
+       GFile *native_file;
+       GFile *thumbnail_file = NULL;
++#ifdef BUILD_ONLINE_ACCOUNTS
+       GrlMedia *media;
++#endif
+       gchar *native_dir;
+       gchar *native_path;
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+       media = g_object_get_data (G_OBJECT (file), "grl-media");
+       if (media != NULL)
+         {
+@@ -435,6 +446,7 @@ add_single_file (BgPicturesSource *bg_source,
+           thumbnail_uri = grl_media_get_thumbnail (media);
+           thumbnail_file = g_file_new_for_uri (thumbnail_uri);
+         }
++#endif /* BUILD_ONLINE_ACCOUNTS */
+ 
+       native_path = gnome_desktop_thumbnail_path_for_uri (source_uri, GNOME_DESKTOP_THUMBNAIL_SIZE_LARGE);
+       native_file = g_file_new_for_path (native_path);
+@@ -492,6 +504,7 @@ add_single_file_from_info (BgPicturesSource *bg_source,
+   return add_single_file (bg_source, file, content_type, mtime);
+ }
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+ static gboolean
+ add_single_file_from_media (BgPicturesSource *bg_source,
+                             GFile            *file,
+@@ -511,6 +524,7 @@ add_single_file_from_media (BgPicturesSource *bg_source,
+ 
+   return add_single_file (bg_source, file, content_type, (guint64) mtime_unix);
+ }
++#endif /* BUILD_ONLINE_ACCOUNTS */
+ 
+ gboolean
+ bg_pictures_source_add (BgPicturesSource *bg_source,
+@@ -820,6 +834,7 @@ files_changed_cb (GFileMonitor      *monitor,
+     }
+ }
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+ static void
+ media_found_cb (BgPicturesSource *self, GrlMedia *media)
+ {
+@@ -831,6 +846,7 @@ media_found_cb (BgPicturesSource *self, GrlMedia *media)
+   g_object_set_data_full (G_OBJECT (file), "grl-media", g_object_ref (media), g_object_unref);
+   add_single_file_from_media (self, file, media);
+ }
++#endif /* BUILD_ONLINE_ACCOUNTS */
+ 
+ static void
+ bg_pictures_source_init (BgPicturesSource *self)
+@@ -897,9 +913,11 @@ bg_pictures_source_init (BgPicturesSource *self)
+ 
+   g_object_unref (dir);
+ 
++#ifdef BUILD_ONLINE_ACCOUNTS
+   priv->grl_miner = cc_background_grilo_miner_new ();
+   g_signal_connect_swapped (priv->grl_miner, "media-found", G_CALLBACK (media_found_cb), self);
+   cc_background_grilo_miner_start (priv->grl_miner);
++#endif /* BUILD_ONLINE_ACCOUNTS */
+ 
+   priv->thumb_factory =
+     gnome_desktop_thumbnail_factory_new (GNOME_DESKTOP_THUMBNAIL_SIZE_LARGE);
+diff --git a/panels/user-accounts/um-realm-manager.c b/panels/user-accounts/um-realm-manager.c
+index 0849160..58d50a6 100644
+--- a/panels/user-accounts/um-realm-manager.c
++++ b/panels/user-accounts/um-realm-manager.c
+@@ -22,7 +22,9 @@
+ 
+ #include "um-realm-manager.h"
+ 
++#ifdef HAVE_KERBEROS
+ #include <krb5/krb5.h>
++#endif
+ 
+ #include <glib.h>
+ #include <glib/gi18n.h>
+@@ -696,6 +698,7 @@ login_closure_free (gpointer data)
+         g_slice_free (LoginClosure, login);
+ }
+ 
++#ifdef HAVE_KERBEROS
+ static krb5_error_code
+ login_perform_kinit (krb5_context k5,
+                      const gchar *realm,
+@@ -759,12 +762,14 @@ login_perform_kinit (krb5_context k5,
+ 
+         return code;
+ }
++#endif /* HAVE_KERBEROS */
+ 
+ static void
+ kinit_thread_func (GSimpleAsyncResult *async,
+                    GObject *object,
+                    GCancellable *cancellable)
+ {
++#ifdef HAVE_KERBEROS
+         LoginClosure *login = g_simple_async_result_get_op_res_gpointer (async);
+         krb5_context k5 = NULL;
+         krb5_error_code code;
+@@ -842,6 +847,10 @@ kinit_thread_func (GSimpleAsyncResult *async,
+ 
+         if (k5)
+                 krb5_free_context (k5);
++#else /* HAVE_KERBEROS */
++        g_simple_async_result_set_error (async, UM_REALM_ERROR, UM_REALM_ERROR_GENERIC,
++                                         _("gnome-control-center was built without kerberos support"));
++#endif
+ }
+ 
+ void
+diff --git a/shell/Makefile.am b/shell/Makefile.am
+index ad7a68f..cc968ac 100644
+--- a/shell/Makefile.am
++++ b/shell/Makefile.am
+@@ -52,14 +52,12 @@ gnome_control_center_LDADD =						\
+ 	$(top_builddir)/libgd/libgd.la					\
+ 	$(top_builddir)/panels/common/liblanguage.la			\
+ 	$(top_builddir)/panels/background/libbackground.la		\
+-	$(top_builddir)/panels/color/libcolor.la			\
+ 	$(top_builddir)/panels/datetime/libdate_time.la			\
+ 	$(top_builddir)/panels/display/libdisplay.la			\
+ 	$(top_builddir)/panels/info/libinfo.la				\
+ 	$(top_builddir)/panels/keyboard/libkeyboard.la			\
+ 	$(top_builddir)/panels/mouse/libmouse-properties.la		\
+ 	$(top_builddir)/panels/notifications/libnotifications.la	\
+-	$(top_builddir)/panels/online-accounts/libonline-accounts.la	\
+ 	$(top_builddir)/panels/power/libpower.la			\
+ 	$(top_builddir)/panels/privacy/libprivacy.la			\
+ 	$(top_builddir)/panels/region/libregion.la			\
+@@ -85,6 +83,14 @@ if BUILD_BLUETOOTH
+ gnome_control_center_LDADD += $(top_builddir)/panels/bluetooth/libbluetooth.la
+ endif
+ 
++if BUILD_COLOR
++gnome_control_center_LDADD += $(top_builddir)/panels/color/libcolor.la
++endif
++
++if BUILD_ONLINE_ACCOUNTS
++gnome_control_center_LDADD += $(top_builddir)/panels/online-accounts/libonline-accounts.la
++endif
++
+ AM_CPPFLAGS = -DGNOMELOCALEDIR="\"$(datadir)/locale\""
+ 
+ # Dbus service file
+diff --git a/shell/cc-panel-loader.c b/shell/cc-panel-loader.c
+index 26576dc..8a92f95 100644
+--- a/shell/cc-panel-loader.c
++++ b/shell/cc-panel-loader.c
+@@ -33,7 +33,9 @@ extern GType cc_background_panel_get_type (void);
+ #ifdef BUILD_BLUETOOTH
+ extern GType cc_bluetooth_panel_get_type (void);
+ #endif /* BUILD_BLUETOOTH */
++#ifdef BUILD_COLOR
+ extern GType cc_color_panel_get_type (void);
++#endif /* BUILD_COLOR */
+ extern GType cc_date_time_panel_get_type (void);
+ extern GType cc_display_panel_get_type (void);
+ extern GType cc_info_panel_get_type (void);
+@@ -43,7 +45,9 @@ extern GType cc_mouse_panel_get_type (void);
+ extern GType cc_network_panel_get_type (void);
+ #endif /* BUILD_NETWORK */
+ extern GType cc_notifications_panel_get_type (void);
++#ifdef BUILD_ONLINE_ACCOUNTS
+ extern GType cc_goa_panel_get_type (void);
++#endif /* BUILD_ONLINE_ACCOUNTS */
+ extern GType cc_power_panel_get_type (void);
+ #ifdef BUILD_PRINTERS
+ extern GType cc_printers_panel_get_type (void);
+@@ -77,7 +81,9 @@ static struct {
+ #ifdef BUILD_BLUETOOTH
+   PANEL_TYPE("bluetooth",        cc_bluetooth_panel_get_type    ),
+ #endif
++#ifdef BUILD_COLOR
+   PANEL_TYPE("color",            cc_color_panel_get_type        ),
++#endif
+   PANEL_TYPE("datetime",         cc_date_time_panel_get_type    ),
+   PANEL_TYPE("display",          cc_display_panel_get_type      ),
+   PANEL_TYPE("info",             cc_info_panel_get_type         ),
+@@ -87,7 +93,9 @@ static struct {
+   PANEL_TYPE("network",          cc_network_panel_get_type      ),
+ #endif
+   PANEL_TYPE("notifications",    cc_notifications_panel_get_type),
++#ifdef BUILD_ONLINE_ACCOUNTS
+   PANEL_TYPE("online-accounts",  cc_goa_panel_get_type          ),
++#endif
+   PANEL_TYPE("power",            cc_power_panel_get_type        ),
+ #ifdef BUILD_PRINTERS
+   PANEL_TYPE("printers",         cc_printers_panel_get_type     ),
+-- 
+2.0.0
+
diff --git a/gnome-base/gnome-control-center/gnome-control-center-3.12.1-r1.ebuild b/gnome-base/gnome-control-center/gnome-control-center-3.12.1-r1.ebuild
new file mode 100644
index 000000000000..3c00dca214f2
--- /dev/null
+++ b/gnome-base/gnome-control-center/gnome-control-center-3.12.1-r1.ebuild
@@ -0,0 +1,163 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/gnome-base/gnome-control-center/gnome-control-center-3.12.1-r1.ebuild,v 1.1 2014/06/26 02:45:21 tetromino Exp $
+
+EAPI="5"
+GCONF_DEBUG="yes"
+GNOME2_LA_PUNT="yes" # gmodule is used, which uses dlopen
+
+inherit autotools bash-completion-r1 eutils gnome2
+
+DESCRIPTION="GNOME's main interface to configure various aspects of the desktop"
+HOMEPAGE="https://git.gnome.org/browse/gnome-control-center/"
+
+LICENSE="GPL-2+"
+SLOT="2"
+IUSE="+bluetooth +colord +cups +gnome-online-accounts +i18n input_devices_wacom kerberos v4l"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~x86-linux ~x86-solaris"
+
+# False positives caused by nested configure scripts
+QA_CONFIGURE_OPTIONS=".*"
+
+# gnome-session-2.91.6-r1 is needed so that 10-user-dirs-update is run at login
+# g-s-d[policykit] needed for bug #403527
+#
+# kerberos unfortunately means mit-krb5; build fails with heimdal
+
+# FIXME: modemmanager is not optional
+#        networkmanager is not optional
+
+COMMON_DEPEND="
+	>=dev-libs/glib-2.39.91:2
+	>=x11-libs/gdk-pixbuf-2.23.0:2
+	>=x11-libs/gtk+-3.11.1:3
+	>=gnome-base/gsettings-desktop-schemas-3.9.91
+	>=gnome-base/gnome-desktop-3.11.3:3=
+	>=gnome-base/gnome-settings-daemon-3.8.3[colord?,policykit]
+
+	>=dev-libs/libpwquality-1.2.2
+	dev-libs/libxml2:2
+	gnome-base/gnome-menus:3
+	gnome-base/libgtop:2=
+	media-libs/fontconfig
+
+	>=media-libs/libcanberra-0.13[gtk3]
+	>=media-sound/pulseaudio-2[glib]
+	>=sys-auth/polkit-0.97
+	>=sys-power/upower-0.99
+	>=x11-libs/libnotify-0.7.3:0=
+
+	>=gnome-extra/nm-applet-0.9.7.995
+	>=net-misc/networkmanager-0.9.8[modemmanager]
+	>=net-misc/modemmanager-0.7.990
+
+	virtual/opengl
+	x11-apps/xmodmap
+	x11-libs/libX11
+	x11-libs/libXxf86misc
+	>=x11-libs/libXi-1.2
+
+	bluetooth? ( >=net-wireless/gnome-bluetooth-3.11.1:= )
+	colord? (
+		net-libs/libsoup:2.4
+		>=x11-misc/colord-0.1.34:0=
+		>=x11-libs/colord-gtk-0.1.24 )
+	cups? (
+		>=net-print/cups-1.4[dbus]
+		|| ( >=net-fs/samba-3.6.14-r1[smbclient] >=net-fs/samba-4.0.0[client] ) )
+	gnome-online-accounts? (
+		>=media-libs/grilo-0.2.6:0.2
+		>=net-libs/gnome-online-accounts-3.9.90 )
+	i18n? ( >=app-i18n/ibus-1.5.2 )
+	kerberos? ( app-crypt/mit-krb5 )
+	v4l? (
+		media-libs/gstreamer:1.0
+		media-libs/clutter-gtk:1.0
+		>=media-video/cheese-3.5.91 )
+	input_devices_wacom? (
+		>=dev-libs/libwacom-0.7
+		>=media-libs/clutter-1.11.3:1.0
+		media-libs/clutter-gtk:1.0
+		>=x11-libs/libXi-1.2 )
+"
+# <gnome-color-manager-3.1.2 has file collisions with g-c-c-3.1.x
+# libgnomekbd needed only for gkbd-keyboard-display tool
+RDEPEND="${COMMON_DEPEND}
+	|| ( ( app-admin/openrc-settingsd sys-auth/consolekit ) >=sys-apps/systemd-31 )
+	>=sys-apps/accountsservice-0.6.30
+	x11-themes/gnome-icon-theme-symbolic
+	colord? ( >=gnome-extra/gnome-color-manager-3 )
+	cups? (
+		>=app-admin/system-config-printer-gnome-1.3.5
+		net-print/cups-pk-helper )
+	input_devices_wacom? ( gnome-base/gnome-settings-daemon[input_devices_wacom] )
+	i18n? ( >=gnome-base/libgnomekbd-3 )
+
+	!<gnome-base/gdm-2.91.94
+	!<gnome-extra/gnome-color-manager-3.1.2
+	!gnome-extra/gnome-media[pulseaudio]
+	!<gnome-extra/gnome-media-2.32.0-r300
+	!<net-wireless/gnome-bluetooth-3.3.2
+"
+# PDEPEND to avoid circular dependency
+PDEPEND=">=gnome-base/gnome-session-2.91.6-r1"
+
+DEPEND="${COMMON_DEPEND}
+	x11-proto/xproto
+	x11-proto/xf86miscproto
+	x11-proto/kbproto
+
+	dev-libs/libxml2:2
+	dev-libs/libxslt
+	>=dev-util/intltool-0.40.1
+	>=sys-devel/gettext-0.17
+	virtual/pkgconfig
+
+	cups? ( sys-apps/sed )
+
+	gnome-base/gnome-common
+"
+# Needed for autoreconf
+#	gnome-base/gnome-common
+
+src_prepare() {
+	# Gentoo handles completions in a different directory, bugs #465094 and #477390
+	sed -i "s|^completiondir =.*|completiondir = $(get_bashcompdir)|" \
+		shell/Makefile.am || die "sed completiondir failed"
+
+	# Make some panels and dependencies optional; requires eautoreconf
+	# https://bugzilla.gnome.org/686840, 697478, 700145
+	epatch "${FILESDIR}"/${PN}-3.12.1-optional-r1.patch
+
+	# Fix some absolute paths to be appropriate for Gentoo
+	epatch "${FILESDIR}"/${PN}-3.10.2-gentoo-paths.patch
+
+	epatch_user
+
+	eautoreconf
+
+	# panels/datetime/Makefile.am gets touched by "gentoo-paths" patch.
+	# We need to touch timedated{c,h} to prevent them from being
+	# regenerated (bug #415901)
+	# Upstream think they should be removed, preventing compilation errors too
+	# (https://bugzilla.gnome.org/704822)
+	[[ -f panels/datetime/timedated.h ]] && rm -f panels/datetime/timedated.h
+	[[ -f panels/datetime/timedated.c ]] && rm -f panels/datetime/timedated.c
+
+	gnome2_src_prepare
+}
+
+src_configure() {
+	gnome2_src_configure \
+		--disable-update-mimedb \
+		--disable-static \
+		--enable-documentation \
+		$(use_enable bluetooth) \
+		$(use_enable colord color) \
+		$(use_enable cups) \
+		$(use_enable gnome-online-accounts goa) \
+		$(use_enable i18n ibus) \
+		$(use_enable kerberos) \
+		$(use_with v4l cheese) \
+		$(use_enable input_devices_wacom wacom)
+}
-- 
cgit v1.2.3-65-gdbad