Skip to content
Commits on Source (66)
stages:
- build
build-meson:
image: archlinux:latest
stage: build
before_script:
- pacman -Syu --noconfirm
- pacman -S --noconfirm
meson git gcc dbus gcr glib2 gobject-introspection
gtk-doc gtk3 json-glib krb5 libsecret
libsoup3 vala webkit2gtk-4.1
script:
- meson setup -Dgtk_doc=true _build
- meson compile -C _build
- meson test -C _build
build-meson-nobackend:
image: fedora:latest
stage: build
before_script:
- dnf update -y
- dnf -y install
meson gcc dbus-devel glib2-devel gobject-introspection-devel
gtk3-devel rest-devel vala
script:
- meson setup -Dgtk_doc=false -Dgoabackend=false _build
- meson compile -C _build
- meson test -C _build
<https://www.gnu.org/software/gettext/manual/html_node/Users.html>
NULL =
SUBDIRS = data src
if BUILD_BACKEND
SUBDIRS += doc
endif
SUBDIRS += po
ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
DISTCHECK_CONFIGURE_FLAGS = \
--enable-documentation \
--enable-gtk-doc \
--enable-introspection \
$(NULL)
MAINTAINERCLEANFILES = \
$(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \
$(srcdir)/INSTALL \
$(srcdir)/config.h.in \
$(srcdir)/gtk-doc.make \
`find "$(srcdir)" -type f -name Makefile.in -print` \
$(NULL)
GITIGNOREFILES = \
m4 \
$(NULL)
-include $(top_srcdir)/git.mk
This diff is collapsed.
Overview of changes in 3.45.2
=============================
* Use debugging messages instead of warnings
* Fix documentation build
* Updated translations
- Abkhazian
Overview of changes in 3.45.1
=============================
* Removed providers
- Foursquare [#184]
- Facebook [#184]
- Flickr [!86]
* Port to libsoup3 [!73]
* Port to librest-1.0 [#186]
* Drop the Autotools build [!89]
* Update the Google OAuth2 provider [!79]
Overview of changes in 3.44.0
=============================
* Bugs fixed:
!69 Add .gitlab-ci.yml
!70 Update Fedora logo
!78 Silence -Wincompatible-pointer-types with GCC 11
* Updated translations:
Icelandic
Overview of changes in 3.43.1
=============================
......
......@@ -2,37 +2,6 @@ GNOME Online Accounts - Single sign-on framework for GNOME
==========================================================
Facebook
--------
OAuth 2.0:
https://developers.facebook.com/docs/authentication/
https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow
https://developers.facebook.com/docs/reference/dialogs/oauth/
https://developers.facebook.com/tools/explorer/
Scopes: https://developers.facebook.com/docs/authentication/permissions/
Notes:
The client-side flow returns the access_token and expires_in in the URI's
fragment, and does not provide a refresh_token. However, if the user denied
access then the error is returned in the URI's query. The URIs look like this:
- <get_redirect_uri>?#access_token=...
- <get_redirect_uri>?error=access_denied...#_=_
Flickr
------
OAuth 1.0: http://www.flickr.com/services/api/auth.oauth.html
Foursquare
----------
OAuth 2.0: https://developer.foursquare.com/overview/auth
Google
------
......
This diff is collapsed.
#! /bin/sh
# Wrapper for compilers which do not understand '-c -o'.
scriptversion=2018-03-07.03; # UTC
# Copyright (C) 1999-2020 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2, or (at your option)
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <https://www.gnu.org/licenses/>.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
nl='
'
# We need space, tab and new line, in precisely that order. Quoting is
# there to prevent tools from complaining about whitespace usage.
IFS=" "" $nl"
file_conv=
# func_file_conv build_file lazy
# Convert a $build file to $host form and store it in $file
# Currently only supports Windows hosts. If the determined conversion
# type is listed in (the comma separated) LAZY, no conversion will
# take place.
func_file_conv ()
{
file=$1
case $file in
/ | /[!/]*) # absolute file, and not a UNC file
if test -z "$file_conv"; then
# lazily determine how to convert abs files
case `uname -s` in
MINGW*)
file_conv=mingw
;;
CYGWIN* | MSYS*)
file_conv=cygwin
;;
*)
file_conv=wine
;;
esac
fi
case $file_conv/,$2, in
*,$file_conv,*)
;;
mingw/*)
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
;;
cygwin/* | msys/*)
file=`cygpath -m "$file" || echo "$file"`
;;
wine/*)
file=`winepath -w "$file" || echo "$file"`
;;
esac
;;
esac
}
# func_cl_dashL linkdir
# Make cl look for libraries in LINKDIR
func_cl_dashL ()
{
func_file_conv "$1"
if test -z "$lib_path"; then
lib_path=$file
else
lib_path="$lib_path;$file"
fi
linker_opts="$linker_opts -LIBPATH:$file"
}
# func_cl_dashl library
# Do a library search-path lookup for cl
func_cl_dashl ()
{
lib=$1
found=no
save_IFS=$IFS
IFS=';'
for dir in $lib_path $LIB
do
IFS=$save_IFS
if $shared && test -f "$dir/$lib.dll.lib"; then
found=yes
lib=$dir/$lib.dll.lib
break
fi
if test -f "$dir/$lib.lib"; then
found=yes
lib=$dir/$lib.lib
break
fi
if test -f "$dir/lib$lib.a"; then
found=yes
lib=$dir/lib$lib.a
break
fi
done
IFS=$save_IFS
if test "$found" != yes; then
lib=$lib.lib
fi
}
# func_cl_wrapper cl arg...
# Adjust compile command to suit cl
func_cl_wrapper ()
{
# Assume a capable shell
lib_path=
shared=:
linker_opts=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
eat=1
case $2 in
*.o | *.[oO][bB][jJ])
func_file_conv "$2"
set x "$@" -Fo"$file"
shift
;;
*)
func_file_conv "$2"
set x "$@" -Fe"$file"
shift
;;
esac
;;
-I)
eat=1
func_file_conv "$2" mingw
set x "$@" -I"$file"
shift
;;
-I*)
func_file_conv "${1#-I}" mingw
set x "$@" -I"$file"
shift
;;
-l)
eat=1
func_cl_dashl "$2"
set x "$@" "$lib"
shift
;;
-l*)
func_cl_dashl "${1#-l}"
set x "$@" "$lib"
shift
;;
-L)
eat=1
func_cl_dashL "$2"
;;
-L*)
func_cl_dashL "${1#-L}"
;;
-static)
shared=false
;;
-Wl,*)
arg=${1#-Wl,}
save_ifs="$IFS"; IFS=','
for flag in $arg; do
IFS="$save_ifs"
linker_opts="$linker_opts $flag"
done
IFS="$save_ifs"
;;
-Xlinker)
eat=1
linker_opts="$linker_opts $2"
;;
-*)
set x "$@" "$1"
shift
;;
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
func_file_conv "$1"
set x "$@" -Tp"$file"
shift
;;
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
func_file_conv "$1" mingw
set x "$@" "$file"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -n "$linker_opts"; then
linker_opts="-link$linker_opts"
fi
exec "$@" $linker_opts
exit 1
}
eat=
case $1 in
'')
echo "$0: No command. Try '$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: compile [--help] [--version] PROGRAM [ARGS]
Wrapper for compilers which do not understand '-c -o'.
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
arguments, and rename the output as expected.
If you are trying to build a whole package this is not the
right script to run: please start by reading the file 'INSTALL'.
Report bugs to <bug-automake@gnu.org>.
EOF
exit $?
;;
-v | --v*)
echo "compile $scriptversion"
exit $?
;;
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
func_cl_wrapper "$@" # Doesn't return...
;;
esac
ofile=
cfile=
for arg
do
if test -n "$eat"; then
eat=
else
case $1 in
-o)
# configure might choose to run compile as 'compile cc -o foo foo.c'.
# So we strip '-o arg' only if arg is an object.
eat=1
case $2 in
*.o | *.obj)
ofile=$2
;;
*)
set x "$@" -o "$2"
shift
;;
esac
;;
*.c)
cfile=$1
set x "$@" "$1"
shift
;;
*)
set x "$@" "$1"
shift
;;
esac
fi
shift
done
if test -z "$ofile" || test -z "$cfile"; then
# If no '-o' option was seen then we might have been invoked from a
# pattern rule where we don't need one. That is ok -- this is a
# normal compilation that the losing compiler can handle. If no
# '.c' file was seen then we are probably linking. That is also
# ok.
exec "$@"
fi
# Name of file we expect compiler to create.
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
# Create the lock directory.
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
# that we are using for the .o file. Also, base the name on the expected
# object file name, since that is what matters with a parallel build.
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
while true; do
if mkdir "$lockdir" >/dev/null 2>&1; then
break
fi
sleep 1
done
# FIXME: race condition here if user kills between mkdir and trap.
trap "rmdir '$lockdir'; exit 1" 1 2 15
# Run the compile.
"$@"
ret=$?
if test -f "$cofile"; then
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
elif test -f "${cofile}bj"; then
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
fi
rmdir "$lockdir"
exit $ret
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'before-save-hook 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
This diff is collapsed.
/* config.h.in. Generated from configure.ac by autoheader. */
/* Define to 1 if translation of program messages to the user's native
language is requested. */
#undef ENABLE_NLS
/* Define to use the GCR API */
#undef GCR_API_SUBJECT_TO_CHANGE
/* gettext domain */
#undef GETTEXT_PACKAGE
/* Enable goabackend library */
#undef GOA_BACKEND_ENABLED
/* Enable Microsoft Exchange data provider */
#undef GOA_EXCHANGE_ENABLED
/* ProviderType and extension point name */
#undef GOA_EXCHANGE_NAME
/* Facebook OAuth 2.0 client id */
#undef GOA_FACEBOOK_CLIENT_ID
/* Enable Facebook data provider */
#undef GOA_FACEBOOK_ENABLED
/* ProviderType and extension point name */
#undef GOA_FACEBOOK_NAME
/* Enable Fedora Account System provider */
#undef GOA_FEDORA_ENABLED
/* ProviderType and extension point name */
#undef GOA_FEDORA_NAME
/* Kerberos realm used by the Fedora Account System */
#undef GOA_FEDORA_REALM
/* Flickr OAuth 1.0 consumer key */
#undef GOA_FLICKR_CONSUMER_KEY
/* Flickr OAuth 1.0 consumer secret */
#undef GOA_FLICKR_CONSUMER_SECRET
/* Enable Flickr data provider */
#undef GOA_FLICKR_ENABLED
/* ProviderType and extension point name */
#undef GOA_FLICKR_NAME
/* Foursquare OAuth 2.0 client id */
#undef GOA_FOURSQUARE_CLIENT_ID
/* Enable Foursquare data provider */
#undef GOA_FOURSQUARE_ENABLED
/* ProviderType and extension point name */
#undef GOA_FOURSQUARE_NAME
/* Google OAuth 2.0 client id */
#undef GOA_GOOGLE_CLIENT_ID
/* Google OAuth 2.0 client secret */
#undef GOA_GOOGLE_CLIENT_SECRET
/* Enable Google data provider */
#undef GOA_GOOGLE_ENABLED
/* ProviderType and extension point name */
#undef GOA_GOOGLE_NAME
/* Enable IMAP/SMTP data provider */
#undef GOA_IMAP_SMTP_ENABLED
/* ProviderType and extension point name */
#undef GOA_IMAP_SMTP_NAME
/* Enable a WebKitWebInspector for the embedded web view */
#undef GOA_INSPECTOR_ENABLED
/* Enable Enterprise Identity data provider */
#undef GOA_KERBEROS_ENABLED
/* ProviderType and extension point name */
#undef GOA_KERBEROS_NAME
/* LastFM client id */
#undef GOA_LASTFM_CLIENT_ID
/* LastFM client secret */
#undef GOA_LASTFM_CLIENT_SECRET
/* Enable LastFM data provider */
#undef GOA_LASTFM_ENABLED
/* ProviderType and extension point name */
#undef GOA_LASTFM_NAME
/* Define to the GOA major version */
#undef GOA_MAJOR_VERSION
/* Enable Media Server provider */
#undef GOA_MEDIA_SERVER_ENABLED
/* ProviderType and extension point name */
#undef GOA_MEDIA_SERVER_NAME
/* Define to the GOA micro version */
#undef GOA_MICRO_VERSION
/* Define to the GOA minor version */
#undef GOA_MINOR_VERSION
/* Enable ownCloud data provider */
#undef GOA_OWNCLOUD_ENABLED
/* ProviderType and extension point name */
#undef GOA_OWNCLOUD_NAME
/* Path to the template file */
#undef GOA_TEMPLATE_FILE
/* Windows Live OAuth 2.0 client id */
#undef GOA_WINDOWS_LIVE_CLIENT_ID
/* Enable Windows Live data provider */
#undef GOA_WINDOWS_LIVE_ENABLED
/* ProviderType and extension point name */
#undef GOA_WINDOWS_LIVE_NAME
/* Define to 1 if you have the Mac OS X function
CFLocaleCopyPreferredLanguages in the CoreFoundation framework. */
#undef HAVE_CFLOCALECOPYPREFERREDLANGUAGES
/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in
the CoreFoundation framework. */
#undef HAVE_CFPREFERENCESCOPYAPPVALUE
/* Define if the GNU dcgettext() function is already present or preinstalled.
*/
#undef HAVE_DCGETTEXT
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define if the GNU gettext() function is already present or preinstalled. */
#undef HAVE_GETTEXT
/* Define if you have the iconv() function and it works. */
#undef HAVE_ICONV
/* Define to 1 if you have the <inttypes.h> header file. */
#undef HAVE_INTTYPES_H
/* Define to 1 if you have the <memory.h> header file. */
#undef HAVE_MEMORY_H
/* Define to 1 if you have the <stdint.h> header file. */
#undef HAVE_STDINT_H
/* Define to 1 if you have the <stdlib.h> header file. */
#undef HAVE_STDLIB_H
/* Define to 1 if you have the <strings.h> header file. */
#undef HAVE_STRINGS_H
/* Define to 1 if you have the <string.h> header file. */
#undef HAVE_STRING_H
/* Define to 1 if you have the <sys/stat.h> header file. */
#undef HAVE_SYS_STAT_H
/* Define to 1 if you have the <sys/types.h> header file. */
#undef HAVE_SYS_TYPES_H
/* have timerfd support */
#undef HAVE_TIMERFD
/* Define to 1 if you have the <unistd.h> header file. */
#undef HAVE_UNISTD_H
/* Define to the sub-directory where libtool stores uninstalled libraries. */
#undef LT_OBJDIR
/* Name of package */
#undef PACKAGE
/* Define to the address where bug reports for this package should be sent. */
#undef PACKAGE_BUGREPORT
/* Define to the full name of this package. */
#undef PACKAGE_NAME
/* Define to the full name and version of this package. */
#undef PACKAGE_STRING
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME
/* Define to the home page for this package. */
#undef PACKAGE_URL
/* Define to the version of this package. */
#undef PACKAGE_VERSION
/* Define to 1 if you have the ANSI C header files. */
#undef STDC_HEADERS
/* have timerfd support */
#undef TFD_TIMER_CANCEL_ON_SET
/* Version number of package */
#undef VERSION
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
m4_define([goa_major_version], [3])
m4_define([goa_minor_version], [43])
m4_define([goa_micro_version], [1])
m4_define([goa_nano_version], [0])
m4_define([goa_base_version],
[goa_major_version.goa_minor_version.goa_micro_version])
m4_define([goa_version],
[m4_if(goa_nano_version, 0, [goa_base_version],
[goa_base_version].[goa_nano_version])])
AC_INIT([GNOME Online Accounts],
[goa_version],
[https://gitlab.gnome.org/GNOME/gnome-online-accounts/issues],
[gnome-online-accounts],
[https://wiki.gnome.org/Projects/GnomeOnlineAccounts])
AM_INIT_AUTOMAKE([1.9 foreign dist-xz no-dist-gzip tar-ustar])
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR([src])
AC_CONFIG_HEADERS([config.h])
AM_MAINTAINER_MODE([enable])
AX_IS_RELEASE([git-directory])
AX_COMPILER_FLAGS([WARN_CFLAGS],
[WARN_LDFLAGS],
[$ax_is_release],
[],
[-Wno-cast-function-type -Wno-error=cast-function-type])
AC_PROG_CC
AC_PROG_LIBTOOL
PKG_PROG_PKG_CONFIG(0.16)
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
GOA_MAJOR_VERSION=goa_major_version
GOA_MINOR_VERSION=goa_minor_version
GOA_MICRO_VERSION=goa_micro_version
AC_SUBST(GOA_MAJOR_VERSION)
AC_SUBST(GOA_MINOR_VERSION)
AC_SUBST(GOA_MICRO_VERSION)
# Before making a release, the LT_VERSION string should be modified.
# The string is of the form C:R:A.
# - If interfaces have been changed or added, but binary compatibility has
# been preserved, change to C+1:0:A+1
# - If binary compatibility has been broken (eg removed or changed interfaces)
# change to C+1:0:0
# - If the interface is the same as the previous version, change to C:R+1:A
GOA_LT_VERSION=0:0:0
GOA_BACKEND_LT_VERSION=1:0:0
AC_SUBST(GOA_LT_VERSION)
AC_SUBST(GOA_BACKEND_LT_VERSION)
AC_DEFINE(GOA_MAJOR_VERSION,
[goa_major_version],
[Define to the GOA major version])
AC_DEFINE(GOA_MINOR_VERSION,
[goa_minor_version],
[Define to the GOA minor version])
AC_DEFINE(GOA_MICRO_VERSION,
[goa_micro_version],
[Define to the GOA micro version])
# Initialization
#
AX_REQUIRE_DEFINED([GLIB_GSETTINGS])
GLIB_GSETTINGS
AC_ARG_ENABLE([documentation],
AS_HELP_STRING([--enable-documentation], [enable man pages]),
[], [enable_documentation=no])
AM_CONDITIONAL(ENABLE_DOCUMENTATION, test x$enable_documentation = xyes)
if test x$enable_documentation = xyes; then
AC_PATH_PROG([XSLTPROC], [xsltproc])
if test -z "$XSLTPROC"; then
AC_MSG_ERROR([xsltproc is needed])
fi
fi
AX_REQUIRE_DEFINED([GTK_DOC_CHECK])
GTK_DOC_CHECK([1.3])
# Libraries
#
PKG_CHECK_MODULES(GLIB, [glib-2.0 gio-2.0 gio-unix-2.0 >= 2.52])
AC_SUBST(GLIB_CFLAGS)
AC_SUBST(GLIB_LIBS)
AX_REQUIRE_DEFINED([GOBJECT_INTROSPECTION_CHECK])
GOBJECT_INTROSPECTION_CHECK([0.6.2])
VAPIGEN_CHECK()
AC_ARG_ENABLE([backend],
[AS_HELP_STRING([--enable-backend],
[Enable goabackend library])],
[],
[enable_backend=yes])
AM_CONDITIONAL(BUILD_BACKEND, [test x$enable_backend != xno])
if test "$enable_backend" != "no"; then
AC_DEFINE(GOA_BACKEND_ENABLED, 1, [Enable goabackend library])
PKG_CHECK_MODULES(GTK, [gtk+-3.0 >= 3.19.12])
AC_SUBST(GTK_CFLAGS)
AC_SUBST(GTK_LIBS)
PKG_CHECK_MODULES(JAVASCRIPT_CORE_GTK, [javascriptcoregtk-4.0 >= 2.12.0])
AC_SUBST(JAVASCRIPT_CORE_GTK_CFLAGS)
AC_SUBST(JAVASCRIPT_CORE_GTK_LIBS)
PKG_CHECK_MODULES(WEBKIT_GTK, [webkit2gtk-4.0 >= 2.26.0])
AC_SUBST(WEBKIT_GTK_CFLAGS)
AC_SUBST(WEBKIT_GTK_LIBS)
PKG_CHECK_MODULES(LIBSOUP, [libsoup-2.4 >= 2.42])
AC_SUBST(LIBSOUP_CFLAGS)
AC_SUBST(LIBSOUP_LIBS)
PKG_CHECK_MODULES(JSON_GLIB, [json-glib-1.0])
AC_SUBST(JSON_GLIB_CFLAGS)
AC_SUBST(JSON_GLIB_LIBS)
PKG_CHECK_MODULES(REST, [rest-0.7])
AC_SUBST(REST_CFLAGS)
AC_SUBST(REST_LIBS)
PKG_CHECK_MODULES(SECRET, [libsecret-1])
AC_SUBST(SECRET_CFLAGS)
AC_SUBST(SECRET_LIBS)
PKG_CHECK_MODULES(LIBXML, [libxml-2.0])
AC_SUBST(LIBXML_CFLAGS)
AC_SUBST(LIBXML_LIBS)
fi
AC_ARG_ENABLE([inspector],
[AS_HELP_STRING([--enable-inspector], [Enable a WebKitWebInspector for the embedded web view])],
[],
[enable_inspector=no])
if test "$enable_inspector" != "no"; then
AC_DEFINE(GOA_INSPECTOR_ENABLED, 1, [Enable a WebKitWebInspector for the embedded web view])
fi
AC_ARG_WITH(template-file,
[AS_HELP_STRING([--with-template-file], [Path to the template file])],
[],
[])
AC_DEFINE_UNQUOTED(GOA_TEMPLATE_FILE, ["$with_template_file"], [Path to the template file])
# service providers
#
# Microsoft Exchange
AC_DEFINE(GOA_EXCHANGE_NAME, ["exchange"], [ProviderType and extension point name])
AC_ARG_ENABLE([exchange],
[AS_HELP_STRING([--enable-exchange], [Enable Microsoft Exchange provider])],
[],
[enable_exchange=yes])
if test "$enable_exchange" != "no"; then
AC_DEFINE(GOA_EXCHANGE_ENABLED, 1, [Enable Microsoft Exchange data provider])
fi
# Fedora
AC_DEFINE(GOA_FEDORA_NAME, ["fedora"], [ProviderType and extension point name])
AC_DEFINE(GOA_FEDORA_REALM, ["FEDORAPROJECT.ORG"], [Kerberos realm used by the Fedora Account System])
AC_ARG_ENABLE([fedora],
[AS_HELP_STRING([--enable-fedora], [Enable Fedora Account System support])],
[enable_fedora=$enableval],
[enable_fedora=auto])
AC_PATH_PROG([KRB5_CONFIG], krb5-config, none, $PATH:/usr/kerberos/bin)
if test "x$KRB5_CONFIG" != "xnone"; then
KRB5_LIBS="`${KRB5_CONFIG} --libs krb5`"
KRB5_CFLAGS="`${KRB5_CONFIG} --cflags krb5`"
PKG_CHECK_MODULES(GCR, gcr-3, [have_fedora=yes], [have_fedora=no])
else
KRB5_LIBS=""
KRB5_CFLAGS=""
have_fedora=no
fi
AC_SUBST(KRB5_CFLAGS)
AC_SUBST(KRB5_LIBS)
if test "$enable_fedora" != "no"; then
if test "$enable_fedora" == "yes" &&
test "$have_fedora" == "no" ; then
AC_MSG_ERROR([Fedora Account System support requested, but not available])
fi
enable_fedora=$have_fedora
if test "$enable_fedora" == "yes"; then
AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Define to use the GCR API])
AC_DEFINE(GOA_FEDORA_ENABLED, 1, [Enable Fedora Account System provider])
fi
else
enable_fedora=no
fi
AM_CONDITIONAL(BUILD_FEDORA, [test x$enable_fedora != xno])
# Flickr
AC_DEFINE(GOA_FLICKR_NAME, ["flickr"], [ProviderType and extension point name])
AC_ARG_ENABLE([flickr],
[AS_HELP_STRING([--enable-flickr], [Enable Flickr provider])],
[],
[enable_flickr=yes])
AC_ARG_WITH(flickr-consumer-key,
[AS_HELP_STRING([--with-flickr-consumer-key], [Flickr OAuth 1.0 consumer key])],
[],
[])
AC_ARG_WITH(flickr-consumer-secret,
[AS_HELP_STRING([--with-flickr-consumer-secret], [Flickr OAuth 1.0 consumer secret])],
[],
[])
if test "$with_flickr_consumer_key" = ""; then
with_flickr_consumer_key=ed00ad7e0869897506e23c0d18e34d01
fi
if test "$with_flickr_consumer_secret" = ""; then
with_flickr_consumer_secret=ebd556dd187188b1
fi
AC_DEFINE_UNQUOTED(GOA_FLICKR_CONSUMER_KEY, ["$with_flickr_consumer_key"], [Flickr OAuth 1.0 consumer key])
AC_DEFINE_UNQUOTED(GOA_FLICKR_CONSUMER_SECRET, ["$with_flickr_consumer_secret"], [Flickr OAuth 1.0 consumer secret])
if test "$enable_flickr" != "no"; then
AC_DEFINE(GOA_FLICKR_ENABLED, 1, [Enable Flickr data provider])
fi
# Foursquare
AC_DEFINE(GOA_FOURSQUARE_NAME, ["foursquare"], [ProviderType and extension point name])
AC_ARG_ENABLE([foursquare],
[AS_HELP_STRING([--enable-foursquare], [Enable Foursquare provider])],
[],
[enable_foursquare=yes])
AC_ARG_WITH(foursquare-client-id,
[AS_HELP_STRING([--with-foursquare-client-id], [Foursquare OAuth 2.0 client id])],
[],
[])
if test "$with_foursquare_client_id" = ""; then
with_foursquare_client_id="MBNU2NES5HASNDQJ25YPFGG2UGRZHPI3IYTNJGE0KIWT2HCF"
fi
AC_DEFINE_UNQUOTED(GOA_FOURSQUARE_CLIENT_ID, ["$with_foursquare_client_id"], [Foursquare OAuth 2.0 client id])
if test "$enable_foursquare" != "no"; then
AC_DEFINE(GOA_FOURSQUARE_ENABLED, 1, [Enable Foursquare data provider])
fi
# Google
AC_DEFINE(GOA_GOOGLE_NAME, ["google"], [ProviderType and extension point name])
AC_ARG_ENABLE([google],
[AS_HELP_STRING([--enable-google], [Enable Google provider])],
[],
[enable_google=yes])
AC_ARG_WITH(google-client-id,
[AS_HELP_STRING([--with-google-client-id], [Google OAuth 2.0 client id])],
[],
[])
AC_ARG_WITH(google-client-secret,
[AS_HELP_STRING([--with-google-client-secret], [Google OAuth 2.0 client secret])],
[],
[])
if test "$with_google_client_id" = ""; then
with_google_client_id=44438659992-7kgjeitenc16ssihbtdjbgguch7ju55s.apps.googleusercontent.com
fi
if test "$with_google_client_secret" = ""; then
with_google_client_secret=-gMLuQyDiI0XrQS_vx_mhuYF
fi
AC_DEFINE_UNQUOTED(GOA_GOOGLE_CLIENT_ID, ["$with_google_client_id"], [Google OAuth 2.0 client id])
AC_DEFINE_UNQUOTED(GOA_GOOGLE_CLIENT_SECRET, ["$with_google_client_secret"], [Google OAuth 2.0 client secret])
if test "$enable_google" != "no"; then
AC_DEFINE(GOA_GOOGLE_ENABLED, 1, [Enable Google data provider])
fi
# IMAP/SMTP
AC_DEFINE(GOA_IMAP_SMTP_NAME, ["imap_smtp"], [ProviderType and extension point name])
AC_ARG_ENABLE([imap-smtp],
[AS_HELP_STRING([--enable-imap-smtp], [Enable IMAP/SMTP provider])],
[],
[enable_imap_smtp=yes])
if test "$enable_imap_smtp" != "no"; then
AC_DEFINE(GOA_IMAP_SMTP_ENABLED, 1, [Enable IMAP/SMTP data provider])
fi
# Media Server
AC_DEFINE(GOA_MEDIA_SERVER_NAME, ["media-server"], [ProviderType and extension point name])
AC_ARG_ENABLE([media-server],
[AS_HELP_STRING([--enable-media-server], [Enable Media Server provider])],
[],
[enable_media_server=no])
if test "$enable_media_server" != "no"; then
AC_DEFINE(GOA_MEDIA_SERVER_ENABLED, 1, [Enable Media Server provider])
fi
# ownCloud
AC_DEFINE(GOA_OWNCLOUD_NAME, ["owncloud"], [ProviderType and extension point name])
AC_ARG_ENABLE([owncloud],
[AS_HELP_STRING([--enable-owncloud], [Enable ownCloud provider])],
[],
[enable_owncloud=yes])
if test "$enable_owncloud" != "no"; then
AC_DEFINE(GOA_OWNCLOUD_ENABLED, 1, [Enable ownCloud data provider])
fi
# Facebook
AC_DEFINE(GOA_FACEBOOK_NAME, ["facebook"], [ProviderType and extension point name])
AC_ARG_ENABLE([facebook],
[AS_HELP_STRING([--enable-facebook], [Enable Facebook provider])],
[],
[enable_facebook=yes])
AC_ARG_WITH(facebook-client-id,
[AS_HELP_STRING([--with-facebook-client-id], [Facebook OAuth 2.0 client id])],
[],
[])
if test "$with_facebook_client_id" = ""; then
with_facebook_client_id=297654143624603
fi
AC_DEFINE_UNQUOTED(GOA_FACEBOOK_CLIENT_ID, ["$with_facebook_client_id"], [Facebook OAuth 2.0 client id])
if test "$enable_facebook" != "no"; then
AC_DEFINE(GOA_FACEBOOK_ENABLED, 1, [Enable Facebook data provider])
fi
# Windows Live
AC_DEFINE(GOA_WINDOWS_LIVE_NAME, ["windows_live"], [ProviderType and extension point name])
AC_ARG_ENABLE([windows-live],
[AS_HELP_STRING([--enable-windows-live], [Enable Windows Live provider])],
[],
[enable_windows_live=yes])
AC_ARG_WITH(windows-live-client-id,
[AS_HELP_STRING([--with-windows-live-client-id], [Windows Live OAuth 2.0 client id])],
[],
[])
if test "$with_windows_live_client_id" = ""; then
with_windows_live_client_id=0000000044067703
fi
AC_DEFINE_UNQUOTED(GOA_WINDOWS_LIVE_CLIENT_ID, ["$with_windows_live_client_id"], [Windows Live OAuth 2.0 client id])
if test "$enable_windows_live" != "no"; then
AC_DEFINE(GOA_WINDOWS_LIVE_ENABLED, 1, [Enable Windows Live data provider])
fi
# Kerberos
AC_DEFINE(GOA_KERBEROS_NAME, ["kerberos"], [ProviderType and extension point name])
AC_ARG_ENABLE([kerberos],
[AS_HELP_STRING([--enable-kerberos], [Enable kerberos support])],
[enable_kerberos=$enableval],
[enable_kerberos=auto])
AC_PATH_PROG([KRB5_CONFIG], krb5-config, none, $PATH:/usr/kerberos/bin)
if test "x$KRB5_CONFIG" != "xnone"; then
KRB5_LIBS="`${KRB5_CONFIG} --libs krb5`"
KRB5_CFLAGS="`${KRB5_CONFIG} --cflags krb5`"
PKG_CHECK_MODULES(GCR, gcr-3, [have_kerberos=yes], [have_kerberos=no])
else
KRB5_LIBS=""
KRB5_CFLAGS=""
have_kerberos=no
fi
AC_SUBST(KRB5_CFLAGS)
AC_SUBST(KRB5_LIBS)
if test "$enable_kerberos" != "no"; then
if test "$enable_kerberos" == "yes" &&
test "$have_kerberos" == "no" ; then
AC_MSG_ERROR([kerberos support requested, but not available])
fi
enable_kerberos=$have_kerberos
if test "$enable_kerberos" == "yes"; then
AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Define to use the GCR API])
AC_DEFINE(GOA_KERBEROS_ENABLED, 1, [Enable Enterprise Identity data provider])
fi
else
enable_kerberos=no
fi
AM_CONDITIONAL(BUILD_KERBEROS, [test x$enable_kerberos != xno])
# Last.fm
AC_DEFINE(GOA_LASTFM_NAME, ["lastfm"], [ProviderType and extension point name])
AC_ARG_ENABLE([lastfm],
[AS_HELP_STRING([--enable-lastfm], [Enable Last.fm provider])],
[],
[enable_lastfm=yes])
AC_ARG_WITH(lastfm-client-id,
[AS_HELP_STRING([--with-lastfm-client-id], [Last.fm client id])],
[],
[])
AC_ARG_WITH(lastfm-client-secret,
[AS_HELP_STRING([--with-lastfm-client-secret], [Last.fm client secret])],
[],
[])
if test "$with_lastfm_client_id" = ""; then
with_lastfm_client_id="7a2461fe34c9c8124fb28ac750ba12fa"
fi
if test "$with_lastfm_client_secret" = ""; then
with_lastfm_client_secret="49ec391644459c417f3afe57ca246c5a"
fi
AC_DEFINE_UNQUOTED(GOA_LASTFM_CLIENT_ID, ["$with_lastfm_client_id"], [LastFM client id])
AC_DEFINE_UNQUOTED(GOA_LASTFM_CLIENT_SECRET, ["$with_lastfm_client_secret"], [LastFM client secret])
if test "$enable_lastfm" != "no"; then
AC_DEFINE(GOA_LASTFM_ENABLED, 1, [Enable LastFM data provider])
fi
# Identity service
#
AM_CONDITIONAL(BUILD_IDENTITY_SERVICE, [test x$enable_fedora != xno || test x$enable_kerberos != xno])
# Optional timerfd support
AC_MSG_CHECKING([for timerfd support])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#include <sys/timerfd.h>
#include <unistd.h>
],[
int
main (void)
{
struct itimerspec timer_spec = { 0 };
timerfd_settime (timerfd_create (CLOCK_MONOTONIC, TFD_CLOEXEC),
TFD_TIMER_ABSTIME,
&timer_spec,
NULL);
return 0;
}
])],
[have_timerfd=yes],
[have_timerfd=no])
AC_MSG_RESULT($have_timerfd)
if test x"$have_timerfd" = x"yes"; then
AC_DEFINE(HAVE_TIMERFD, 1, [have timerfd support])
dnl libc headers tend to trail kernel support
dnl so compensate if necessary
AC_MSG_CHECKING([for timerfd cancel-on-set support])
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([
#include <sys/timerfd.h>
#include <unistd.h>
],[
int
main (void)
{
struct itimerspec timer_spec = { 0 };
timerfd_settime (timerfd_create (CLOCK_MONOTONIC, TFD_CLOEXEC),
TFD_TIMER_ABSTIME | TFD_TIMER_CANCEL_ON_SET,
&timer_spec,
NULL);
return 0;
}
])],
[have_tfd_timer_cancel_on_set=yes],
[have_tfd_timer_cancel_on_set=no])
AC_MSG_RESULT($have_tfd_timer_cancel_on_set)
if test x"$have_tfd_timer_cancel_on_set" = x"no"; then
AC_DEFINE(TFD_TIMER_CANCEL_ON_SET, [(1 << 1)], [have timerfd support])
fi
fi
# Internationalization
#
GETTEXT_PACKAGE=gnome-online-accounts
AC_SUBST([GETTEXT_PACKAGE])
AC_DEFINE_UNQUOTED([GETTEXT_PACKAGE],["$GETTEXT_PACKAGE"],[gettext domain])
# FIXME: Remove AM_GNU_GETTEXT_VERSION once autoreconf supports REQUIRE_VERSION
AX_REQUIRE_DEFINED([AM_GNU_GETTEXT_VERSION])
AM_GNU_GETTEXT_VERSION([0.19.8])
AX_REQUIRE_DEFINED([AM_GNU_GETTEXT_REQUIRE_VERSION])
AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.8])
AX_REQUIRE_DEFINED([AM_GNU_GETTEXT])
AM_GNU_GETTEXT([external])
# goaconfig.h
#
AC_CONFIG_COMMANDS([src/goa/goaconfig.h],
[
outfile=src/goa/goaconfig.h-tmp
cat > $outfile <<\_______EOF
/* goaconfig.h
*
* This is a generated file. Please modify 'configure.ac'
*/
#ifndef __GOA_CONFIG_H__
#define __GOA_CONFIG_H__
G_BEGIN_DECLS
_______EOF
echo "#define GOA_MAJOR_VERSION $GOA_MAJOR_VERSION" >> $outfile
echo "#define GOA_MINOR_VERSION $GOA_MINOR_VERSION" >> $outfile
echo "#define GOA_MICRO_VERSION $GOA_MICRO_VERSION" >> $outfile
cat >> $outfile <<\_______EOF
G_END_DECLS
#endif /* __GOA_CONFIG_H__ */
_______EOF
if cmp -s $outfile src/goa/goaconfig.h; then
AC_MSG_NOTICE([src/goa/goaconfig.h is unchanged])
rm -f $outfile
else
mv $outfile src/goa/goaconfig.h
fi
],[
GOA_MAJOR_VERSION=$GOA_MAJOR_VERSION
GOA_MINOR_VERSION=$GOA_MINOR_VERSION
GOA_MICRO_VERSION=$GOA_MICRO_VERSION
])
# Generate
#
AC_OUTPUT([
Makefile
data/Makefile
data/icons/Makefile
data/icons/scalable/Makefile
data/icons/symbolic/Makefile
src/Makefile
src/goa/Makefile
src/goa/goa-1.0.pc
src/goabackend/Makefile
src/goabackend/goa-backend-1.0.pc
src/goaidentity/Makefile
src/daemon/Makefile
src/examples/Makefile
po/Makefile.in
doc/Makefile
doc/version.xml
])
dnl ==========================================================================
echo "
gnome-online-accounts $VERSION
===============================
prefix: ${prefix}
libdir: ${libdir}
libexecdir: ${libexecdir}
bindir: ${bindir}
sbindir: ${sbindir}
datadir: ${datadir}
sysconfdir: ${sysconfdir}
localstatedir: ${localstatedir}
compiler: ${CC}
cflags: ${CFLAGS}
cppflags: ${CPPFLAGS}
backend: ${enable_backend}
inspector: ${enable_inspector}
introspection: ${found_introspection}
template file: ${with_template_file}
Fedora Account System provider: ${enable_fedora}
Flickr provider: ${enable_flickr} (OAuth 1.0, key:${with_flickr_consumer_key} secret:${with_flickr_consumer_secret})
Foursquare provider: ${enable_foursquare} (id:${with_foursquare_client_id})
Google provider: ${enable_google} (OAuth 2.0, id:${with_google_client_id} secret:${with_google_client_secret})
IMAP/SMTP provider: ${enable_imap_smtp}
Media Server provider: ${enable_media_server}
Microsoft Exchange provider: ${enable_exchange}
ownCloud provider: ${enable_owncloud}
Kerberos provider: ${enable_kerberos}
Facebook provider: ${enable_facebook} (OAuth 2.0, id:${with_facebook_client_id})
Windows Live provider: ${enable_windows_live} (OAuth 2.0, id:${with_windows_live_client_id})
Last.fm provider: ${enable_lastfm} (id:${with_lastfm_client_id} secret:${with_lastfm_client_secret})
Maintainer mode: ${USE_MAINTAINER_MODE}
Building api docs: ${enable_gtk_doc}
"
NULL =
SUBDIRS = icons
gsettings_schema_files = org.gnome.online-accounts.gschema.xml
if BUILD_BACKEND
gsettings_SCHEMAS = $(gsettings_schema_files)
@GSETTINGS_RULES@
servicedir = $(datadir)/dbus-1/services
service_in_files = org.gnome.OnlineAccounts.service.in
if BUILD_KERBEROS
service_in_files += org.gnome.Identity.service.in
endif
service_DATA = $(service_in_files:.service.in=.service)
%.service: %.service.in Makefile
@sed -e "s|\@libexecdir\@|$(libexecdir)|" $< > $@
endif
EXTRA_DIST = \
$(gsettings_schema_files) \
dbus-interfaces.xml \
org.gnome.Identity.service.in \
org.gnome.OnlineAccounts.service.in \
$(NULL)
CLEANFILES = \
org.gnome.OnlineAccounts.service \
org.gnome.Identity.service \
$(NULL)
clean-local :
rm -f *~
-include $(top_srcdir)/git.mk
This diff is collapsed.
......@@ -186,7 +186,9 @@
Note that the #org.gnomeOnlineAccounts.Maps interface is added or
removed from the account asynchronously.
-->
<property name="MapsDisabled" type="b" access="readwrite"/>
<property name="MapsDisabled" type="b" access="readwrite">
<annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
</property>
<!-- MusicDisabled:
@since: 3.18.0
......@@ -272,7 +274,9 @@
Note that the #org.gnomeOnlineAccounts.ReadLater interface is added or
removed from the account asynchronously.
-->
<property name="ReadLaterDisabled" type="b" access="readwrite"/>
<property name="ReadLaterDisabled" type="b" access="readwrite">
<annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
</property>
<!--
Remove:
......@@ -686,8 +690,12 @@
An account object implements this interface if it provides
maps-like capabilities.
The #org.gnome.OnlineAccounts.Maps interface is not used by
any account.
-->
<interface name="org.gnome.OnlineAccounts.Maps">
<annotation name="org.freedesktop.DBus.Deprecated" value="true"/>
</interface>
<!--
......@@ -836,7 +844,7 @@
An account object implements this interface if it provides
read-later-like capabilities.
The #org.gnome.OnlineAccounts.Todo interface is not used by
The #org.gnome.OnlineAccounts.ReadLater interface is not used by
any account.
-->
<interface name="org.gnome.OnlineAccounts.ReadLater">
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.