diff options
author | David Zeuthen <davidz@redhat.com> | 2011-05-31 10:44:35 -0400 |
---|---|---|
committer | David Zeuthen <davidz@redhat.com> | 2011-05-31 10:44:35 -0400 |
commit | fdba6fdf6c44a83f433697d90c79c21d9c5e72aa (patch) | |
tree | d047d73f325abcd4ff03294007b874e86de1ea7b | |
parent | cbbcd748c1a1cdc1292509c80012bc285659476e (diff) |
Make it possible to enable/disable + configure API keys on a per-service basis
Signed-off-by: David Zeuthen <davidz@redhat.com>
-rw-r--r-- | configure.ac | 93 | ||||
-rw-r--r-- | src/goabackend/goafacebookprovider.c | 4 | ||||
-rw-r--r-- | src/goabackend/goagoogleprovider.c | 4 | ||||
-rw-r--r-- | src/goabackend/goaprovider.c | 13 | ||||
-rw-r--r-- | src/goabackend/goatwitterprovider.c | 4 | ||||
-rw-r--r-- | src/goabackend/goayahooprovider.c | 4 |
6 files changed, 110 insertions, 12 deletions
diff --git a/configure.ac b/configure.ac index 6a3a915..b3002c0 100644 --- a/configure.ac +++ b/configure.ac @@ -65,6 +65,90 @@ AC_SUBST(REST_LIBS) GOBJECT_INTROSPECTION_CHECK([0.6.2]) +# service providers +# + +# Google +with_google_consumer_key=anonymous +AC_ARG_WITH([google-consumer-key=KEY], + [AS_HELP_STRING([--with-google-consumer-key], + [Google OAuth 1.0 consumer key (anonymous)])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_GOOGLE_CONSUMER_KEY, ["$with_google_consumer_key"], [Google OAuth 1.0 consumer key]) +with_google_consumer_secret=anonymous +AC_ARG_WITH([google-consumer-secret=SECRET], + [AS_HELP_STRING([--with-google-consumer-secret], + [Google OAuth 1.0 consumer secret (anonymous)])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_GOOGLE_CONSUMER_SECRET, ["$with_google_consumer_secret"], [Google OAuth 1.0 consumer secret]) +AC_ARG_ENABLE([google], [AS_HELP_STRING([--enable-google], [Enable Google provider])], [], [enable_google=yes]) +if test "$enable_google" != "no"; then + AC_DEFINE(GOA_GOOGLE_ENABLED, 1, [Enable Google data provider]) +fi + +# Twitter +with_twitter_consumer_key=tlVEAXvkgqr0VUFyqVQ +AC_ARG_WITH([twitter-consumer-key=KEY], + [AS_HELP_STRING([--with-twitter-consumer-key], + [Twitter OAuth 1.0 consumer key])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_TWITTER_CONSUMER_KEY, ["$with_twitter_consumer_key"], [Twitter OAuth 1.0 consumer key]) +with_twitter_consumer_secret=RN2FBARWy7scDmWFwfhIA6Qwf6kPYxZ0PIpVWzgpdU +AC_ARG_WITH([twitter-consumer-secret=SECRET], + [AS_HELP_STRING([--with-twitter-consumer-secret], + [Twitter OAuth 1.0 consumer secret])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_TWITTER_CONSUMER_SECRET, ["$with_twitter_consumer_secret"], [Twitter OAuth 1.0 consumer secret]) +AC_ARG_ENABLE([twitter], [AS_HELP_STRING([--enable-twitter], [Enable Twitter provider])], [], [enable_twitter=yes]) +if test "$enable_twitter" != "no"; then + AC_DEFINE(GOA_TWITTER_ENABLED, 1, [Enable Twitter data provider]) +fi + +# Yahoo +with_yahoo_consumer_key=dj0yJmk9VnBYMGpGRVFBUVl3JmQ9WVdrOWNWZDZiVTUwTldNbWNHbzlPVFF5TURrNE5UWXkmcz1jb25zdW1lcnNlY3JldCZ4PTQ0 +AC_ARG_WITH([yahoo-consumer-key=KEY], + [AS_HELP_STRING([--with-yahoo-consumer-key], + [Yahoo OAuth 1.0 consumer key])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_YAHOO_CONSUMER_KEY, ["$with_yahoo_consumer_key"], [Yahoo OAuth 1.0 consumer key]) +with_yahoo_consumer_secret=33dd9ebe9f5724deabe657eff1de7c3f151cf7eb +AC_ARG_WITH([yahoo-consumer-secret=SECRET], + [AS_HELP_STRING([--with-yahoo-consumer-secret], + [Yahoo OAuth 1.0 consumer secret])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_YAHOO_CONSUMER_SECRET, ["$with_yahoo_consumer_secret"], [Yahoo OAuth 1.0 consumer secret]) +AC_ARG_ENABLE([yahoo], [AS_HELP_STRING([--enable-yahoo], [Enable Yahoo provider])], [], [enable_yahoo=yes]) +if test "$enable_yahoo" != "no"; then + AC_DEFINE(GOA_YAHOO_ENABLED, 1, [Enable Yahoo data provider]) +fi + +# Facebook +with_facebook_client_id=103995033022129 +AC_ARG_WITH([facebook-client-id=ID], + [AS_HELP_STRING([--with-facebook-client-id], + [Facebook OAuth 2.0 client id])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_FACEBOOK_CLIENT_ID, ["$with_facebook_client_id"], [Facebook OAuth 2.0 client id]) +with_facebook_client_secret=c3a9f8d49188a6dd8b596df48a90b94a +AC_ARG_WITH([facebook-client-secret=SECRET], + [AS_HELP_STRING([--with-facebook-client-secret], + [Facebook OAuth 2.0 client secret])], + [], + []) +AC_DEFINE_UNQUOTED(GOA_FACEBOOK_CLIENT_SECRET, ["$with_facebook_client_secret"], [Facebook OAuth 2.0 client secret]) +AC_ARG_ENABLE([facebook], [AS_HELP_STRING([--enable-facebook], [Enable Facebook provider])], [], [enable_facebook=yes]) +if test "$enable_facebook" != "no"; then + AC_DEFINE(GOA_FACEBOOK_ENABLED, 1, [Enable Facebook data provider]) +fi + + # Internationalization # @@ -102,8 +186,8 @@ doc/version.xml dnl ========================================================================== echo " - goa $VERSION - ============= + gnome-online-accounts $VERSION + =============================== prefix: ${prefix} libdir: ${libdir} @@ -119,6 +203,11 @@ echo " cppflags: ${CPPFLAGS} introspection: ${found_introspection} + Google provider: ${enable_google} (OAuth 1.0, key:${with_google_consumer_key} secret:${with_google_consumer_secret}) + Twitter provider: ${enable_twitter} (OAuth 1.0, key:${with_twitter_consumer_key} secret:${with_twitter_consumer_secret}) + Yahoo provider: ${enable_yahoo} (OAuth 1.0, key:${with_yahoo_consumer_key} secret:${with_yahoo_consumer_secret}) + Facebook provider: ${enable_facebook} (OAuth 2.0, id:${with_facebook_client_id} secret:${with_facebook_client_secret}) + Maintainer mode: ${USE_MAINTAINER_MODE} Building api docs: ${enable_gtk_doc} " diff --git a/src/goabackend/goafacebookprovider.c b/src/goabackend/goafacebookprovider.c index ac13e66..56a2d8b 100644 --- a/src/goabackend/goafacebookprovider.c +++ b/src/goabackend/goafacebookprovider.c @@ -111,13 +111,13 @@ get_scope (GoaOAuth2Provider *provider) static const gchar * get_client_id (GoaOAuth2Provider *provider) { - return "103995033022129"; + return GOA_FACEBOOK_CLIENT_ID; } static const gchar * get_client_secret (GoaOAuth2Provider *provider) { - return "c3a9f8d49188a6dd8b596df48a90b94a"; + return GOA_FACEBOOK_CLIENT_SECRET; } /* ---------------------------------------------------------------------------------------------------- */ diff --git a/src/goabackend/goagoogleprovider.c b/src/goabackend/goagoogleprovider.c index 096b25b..6edf355 100644 --- a/src/goabackend/goagoogleprovider.c +++ b/src/goabackend/goagoogleprovider.c @@ -81,13 +81,13 @@ get_provider_name (GoaProvider *_provider, static const gchar * get_consumer_key (GoaOAuthProvider *provider) { - return "anonymous"; + return GOA_GOOGLE_CONSUMER_KEY; } static const gchar * get_consumer_secret (GoaOAuthProvider *provider) { - return "anonymous"; + return GOA_GOOGLE_CONSUMER_SECRET; } static const gchar * diff --git a/src/goabackend/goaprovider.c b/src/goabackend/goaprovider.c index dda1da4..ab1e216 100644 --- a/src/goabackend/goaprovider.c +++ b/src/goabackend/goaprovider.c @@ -584,11 +584,20 @@ ensure_ep_and_builtins (void) extension_point = g_io_extension_point_register (GOA_PROVIDER_EXTENSION_POINT_NAME); g_io_extension_point_set_required_type (extension_point, GOA_TYPE_PROVIDER); +#ifdef GOA_GOOGLE_ENABLED type = GOA_TYPE_GOOGLE_PROVIDER; - type = GOA_TYPE_FACEBOOK_PROVIDER; +#endif +#ifdef GOA_YAHOO_ENABLED type = GOA_TYPE_YAHOO_PROVIDER; +#endif +#ifdef GOA_TWITTER_ENABLED type = GOA_TYPE_TWITTER_PROVIDER; - type = type; /* for -Wunused-but-set-variable */ +#endif +#ifdef GOA_FACEBOOK_ENABLED + type = GOA_TYPE_FACEBOOK_PROVIDER; +#endif + + type = type; /* silence -Wunused-but-set-variable */ g_once_init_leave (&once_init_value, 1); } diff --git a/src/goabackend/goatwitterprovider.c b/src/goabackend/goatwitterprovider.c index 018f97d..8808375 100644 --- a/src/goabackend/goatwitterprovider.c +++ b/src/goabackend/goatwitterprovider.c @@ -81,13 +81,13 @@ get_provider_name (GoaProvider *_provider, static const gchar * get_consumer_key (GoaOAuthProvider *provider) { - return "tlVEAXvkgqr0VUFyqVQ"; + return GOA_TWITTER_CONSUMER_KEY; } static const gchar * get_consumer_secret (GoaOAuthProvider *provider) { - return "RN2FBARWy7scDmWFwfhIA6Qwf6kPYxZ0PIpVWzgpdU"; + return GOA_TWITTER_CONSUMER_SECRET; } static const gchar * diff --git a/src/goabackend/goayahooprovider.c b/src/goabackend/goayahooprovider.c index f5e58a4..ba7471f 100644 --- a/src/goabackend/goayahooprovider.c +++ b/src/goabackend/goayahooprovider.c @@ -81,13 +81,13 @@ get_provider_name (GoaProvider *_provider, static const gchar * get_consumer_key (GoaOAuthProvider *provider) { - return "dj0yJmk9VnBYMGpGRVFBUVl3JmQ9WVdrOWNWZDZiVTUwTldNbWNHbzlPVFF5TURrNE5UWXkmcz1jb25zdW1lcnNlY3JldCZ4PTQ0"; + return GOA_YAHOO_CONSUMER_KEY; } static const gchar * get_consumer_secret (GoaOAuthProvider *provider) { - return "33dd9ebe9f5724deabe657eff1de7c3f151cf7eb"; + return GOA_YAHOO_CONSUMER_SECRET; } static const gchar * |